@inkeep/agents-manage-ui 0.0.0-dev-20251016161232 → 0.0.0-dev-20251016203440
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
- package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +144 -135
- package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/build-manifest.json +2 -2
- package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1674.js +3 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1735.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2263.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{6007.js → 4629.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{5922.js → 4999.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{3274.js → 505.js} +10 -10
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{7165.js → 5395.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5450.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5732.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{4177.js → 5831.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{8764.js → 7468.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7711.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7714.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7848.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7988.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{6129.js → 7990.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8905.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9063.js +7 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9795.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9973.js +3 -0
- package/.next/standalone/agents-manage-ui/.next/server/middleware-manifest.json +5 -5
- package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{1175-9259b947ca7c4ea8.js → 1175-aadbf39b68307a3c.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/13328-0f3bd90a602ad30b.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/1499-20f18a3858daee94.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/19317-031cfdbe64ae32fe.js +7 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-4e54773f184c33cd.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/24795-f6ff0a018a869289.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{23624-6eacc9668906f9e7.js → 37775-eeaab573593358e7.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/49717-c3caecdba1246d8f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{85002-c901436c356dfb2c.js → 50861-a7d1ef782e5eb35e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/55244-84901b87c4a2322e.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/66030-6542a249844c5b64.js +20 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/69823-6ad72f5c7feb1b6a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{92948-6687161eef852218.js → 77490-cf6320ff9aced250.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/88211-4e7159211556d4e5.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{64438-2c5f9dad5610028e.js → 92160-0e9ba9d3fc9f7a53.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{94167-1d0eb19e0f384370.js → 94167-f0c70d698c14e444.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-9ee5691d81ce475d.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-83486367e603203b.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-0aa111a8d2898709.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-cca7e5cde39d85a4.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/{page-27719e82ceabf41b.js → page-19eaaa175e12cae3.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/{page-226f63b2fe6da006.js → page-2bb38182b90cf1fb.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-a67ee5d26220d10b.js → page-090371a01670c6e3.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-30140bc737c7f93d.js → page-6a943663c7dc3ef3.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-7c1c1371f5eeda7a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-f2bd22786e50bde9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/{page-b783d7c6df76cba0.js → page-fad27d770cd62d19.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-bef2767b0404d5f1.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-031ef9e1ac584cb9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-07db6760153791ce.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-f84f892ea999f9f5.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-fa678e7bc12be499.js → page-b52db9884e7955e1.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-cde4e868a722d45e.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-f53307160ddb6445.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-cc4c33bd4ff08151.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-a8aec9fda5c17b5f.js → page-7f433259d499bc2b.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-130484743447356a.js → page-d7f81fb8018ccb8f.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-75f9c6864af20a89.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-7c2f02fd040828a7.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{layout-8a2a8a9230be8bae.js → layout-bcb6ff141051e95f.js} +1 -1
- package/.next/standalone/agents-manage-ui/package.json +3 -3
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/addepar.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/adobe-workfront.svg +5 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/adp-run.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/autotask.svg +11 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/avoma.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/bullhorn.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/clerk.svg +5 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/cursor.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/datacandy.svg +23 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/datto-rmm.svg +14 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/dayforce.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/fairing.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/fillout.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/float.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/folk.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/google-workspace-admin.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/heap.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/hover.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/instantly.svg +1 -1
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/itglue.svg +8 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/jazzhr.svg +20 -8
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/jobber.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/jobdiva.svg +24 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/jumpcloud.svg +4 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/kintone.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/mcp-dynamic.svg +36 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/microsoft-excel.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/pax8.svg +16 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/paycor.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/pipedream.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/private-api-bearer.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/recruitee.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/roller.svg +10 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/sellsy.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/skio.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/snapchat.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/snipe-it.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/tailscale.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/webex.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/yotpo.svg +1 -0
- package/.next/standalone/agents-manage-ui/public/assets/provider-icons/zoho-calendar.svg +1 -0
- package/.next/standalone/packages/agents-core/package.json +2 -2
- package/package.json +7 -7
- package/public/assets/provider-icons/addepar.svg +1 -0
- package/public/assets/provider-icons/adobe-workfront.svg +5 -0
- package/public/assets/provider-icons/adp-run.svg +1 -0
- package/public/assets/provider-icons/autotask.svg +11 -0
- package/public/assets/provider-icons/avoma.svg +1 -0
- package/public/assets/provider-icons/bullhorn.svg +1 -0
- package/public/assets/provider-icons/clerk.svg +5 -0
- package/public/assets/provider-icons/cursor.svg +1 -0
- package/public/assets/provider-icons/datacandy.svg +23 -0
- package/public/assets/provider-icons/datto-rmm.svg +14 -0
- package/public/assets/provider-icons/dayforce.svg +1 -0
- package/public/assets/provider-icons/fairing.svg +1 -0
- package/public/assets/provider-icons/fillout.svg +1 -0
- package/public/assets/provider-icons/float.svg +1 -0
- package/public/assets/provider-icons/folk.svg +1 -0
- package/public/assets/provider-icons/google-workspace-admin.svg +1 -0
- package/public/assets/provider-icons/heap.svg +1 -0
- package/public/assets/provider-icons/hover.svg +1 -0
- package/public/assets/provider-icons/instantly.svg +1 -1
- package/public/assets/provider-icons/itglue.svg +8 -0
- package/public/assets/provider-icons/jazzhr.svg +20 -8
- package/public/assets/provider-icons/jobber.svg +1 -0
- package/public/assets/provider-icons/jobdiva.svg +24 -0
- package/public/assets/provider-icons/jumpcloud.svg +4 -0
- package/public/assets/provider-icons/kintone.svg +1 -0
- package/public/assets/provider-icons/mcp-dynamic.svg +36 -0
- package/public/assets/provider-icons/microsoft-excel.svg +1 -0
- package/public/assets/provider-icons/pax8.svg +16 -0
- package/public/assets/provider-icons/paycor.svg +1 -0
- package/public/assets/provider-icons/pipedream.svg +1 -0
- package/public/assets/provider-icons/private-api-bearer.svg +1 -0
- package/public/assets/provider-icons/recruitee.svg +1 -0
- package/public/assets/provider-icons/roller.svg +10 -0
- package/public/assets/provider-icons/sellsy.svg +1 -0
- package/public/assets/provider-icons/skio.svg +1 -0
- package/public/assets/provider-icons/snapchat.svg +1 -0
- package/public/assets/provider-icons/snipe-it.svg +1 -0
- package/public/assets/provider-icons/tailscale.svg +1 -0
- package/public/assets/provider-icons/webex.svg +1 -0
- package/public/assets/provider-icons/yotpo.svg +1 -0
- package/public/assets/provider-icons/zoho-calendar.svg +1 -0
- package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.tsx +3 -1
- package/src/app/[tenantId]/projects/[projectId]/credentials/page.tsx +12 -2
- package/src/components/agent/playground/chat-widget.tsx +1 -1
- package/src/components/credentials/credential-item.tsx +4 -4
- package/src/components/icons/provider-icon.tsx +17 -5
- package/src/components/mcp-servers/form/mcp-server-form.tsx +89 -16
- package/src/components/mcp-servers/selection/mcp-server-selection.tsx +1 -4
- package/src/components/mcp-servers/view-mcp-server-details.tsx +60 -32
- package/src/hooks/use-nango-connect.ts +41 -2
- package/src/hooks/use-oauth-login.ts +199 -87
- package/src/lib/__tests__/provider-icons-sync.test.ts +47 -0
- package/src/lib/mcp-tools/nango.ts +7 -3
- package/src/lib/provider-icons.ts +610 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1040.js +0 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1776.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/272.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3427.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5797.js +0 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6212.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9121.js +0 -7
- package/.next/standalone/agents-manage-ui/.next/static/chunks/19520-0295797f1e0568bb.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-e9fbb01ca4fb2ec1.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/26999-8c9c5e5ec54db482.js +0 -20
- package/.next/standalone/agents-manage-ui/.next/static/chunks/38249-f530c1a1527a3b8f.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/62092-ae9394efd9c69e92.js +0 -7
- package/.next/standalone/agents-manage-ui/.next/static/chunks/68266-1f459b102467a36a.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/68430-1140499bac28d9c1.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/86268-f453965133b1fff9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/92775-85a0732a5fe07d43.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-689abb75c4a6856e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-bdaad4e538a82ee7.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-e00d85d12b3205d8.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-e890cb0c2667dcce.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-c69264867a8e001a.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-12f453809f0302a4.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-8e0dc8888fc6ca8e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-b4a535838eab2b4a.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-4a9720fe172c379b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-6b00b9ebe2c137fa.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-138db92933a30700.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-2743544beb6d3242.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-a4af2bd7c3a55f97.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-b4daa51a2cbdbadc.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-ea7f605336867f82.js +0 -1
- package/src/components/credentials/credentials-list.tsx +0 -36
- /package/.next/standalone/agents-manage-ui/.next/static/{GVjHhJr1FlU2g81OnXLa3 → vKUX6HvYxsPbIAsRI3Yi9}/_buildManifest.js +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{GVjHhJr1FlU2g81OnXLa3 → vKUX6HvYxsPbIAsRI3Yi9}/_ssgManifest.js +0 -0
|
@@ -26,7 +26,7 @@ Efficiency: ${(c/(c+d)*100).toPrecision(2)}%`}}var l=c(32677);class m{constructo
|
|
|
26
26
|
Wasted: ${f}px (${(f/h*100).toFixed(2)}%)
|
|
27
27
|
Restricted: ${g}px (${(g/h*100).toFixed(2)}%) (hard to allocate)
|
|
28
28
|
Efficiency: ${1===j?"100":(100*j).toFixed(2)}%
|
|
29
|
-
Slabs: ${this._slabs.length} of ${Math.floor(this._canvas.width/i)*Math.floor(this._canvas.height/i)}`}}function n(a,b,c){let d=a.get(b);d||(d=[],a.set(b,d)),d.push(c)}var o=function(a,b){return function(c,d){b(c,d,a)}};let p=class extends e.jG{static{d=this}get version(){return this._version}static{this.maximumGlyphCount=5e3}get usedArea(){return this._usedArea}get source(){return this._canvas}get glyphs(){return this._glyphInOrderSet.values()}constructor(a,b,c,d,g){switch(super(),this._logService=d,this._version=0,this._usedArea={left:0,top:0,right:0,bottom:0},this._glyphMap=new f.QO,this._glyphInOrderSet=new Set,this._canvas=new OffscreenCanvas(b,b),this._colorMap=g.getColorTheme().tokenColorMap,c){case"shelf":this._allocator=new k(this._canvas,a);break;case"slab":this._allocator=new m(this._canvas,a);break;default:this._allocator=c(this._canvas,a)}this._register((0,e.s)(()=>{this._canvas.width=1,this._canvas.height=1}))}getGlyph(a,b,c,d){return this._glyphMap.get(b,c,d,a.cacheKey)??this._createGlyph(a,b,c,d)}_createGlyph(a,b,c,e){if(this._glyphInOrderSet.size>=d.maximumGlyphCount)return;let f=a.rasterizeGlyph(b,c,e,this._colorMap),h=this._allocator.allocate(f);if(void 0!==h)return this._glyphMap.set(h,b,c,e,a.cacheKey),this._glyphInOrderSet.add(h),this._version++,this._usedArea.right=Math.max(this._usedArea.right,h.x+h.w-1),this._usedArea.bottom=Math.max(this._usedArea.bottom,h.y+h.h-1),this._logService.getLevel()===g.$b.Trace&&this._logService.trace("New glyph",{chars:b,tokenMetadata:c,decorationStyleSetId:e,rasterizedGlyph:f,glyph:h}),h}getUsagePreview(){return this._allocator.getUsagePreview()}getStats(){return this._allocator.getStats()}};p=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([o(3,g.rr),o(4,h.Gy)],p)},11053:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=(0,c(29715).u1)("codeEditorService")},11314:(a,b,c)=>{"use strict";c.d(b,{$w:()=>s,AS:()=>j,Ay:()=>e,BO:()=>r,Cm:()=>n,HE:()=>p,VD:()=>f,Xm:()=>i,jG:()=>o,lC:()=>h,mp:()=>q,qE:()=>k,s:()=>m});var d=c(16374);function e(a){return a}function f(a){}function g(a,b){}function h(a){return a}function i(a){return"object"==typeof a&&null!==a&&"function"==typeof a.dispose&&0===a.dispose.length}function j(a){if(d.f.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function k(...a){let b=m(()=>j(a));!1;return b}class l{constructor(a){this._isDisposed=!1,this._fn=a,e(this)}dispose(){if(!this._isDisposed){if(!this._fn)throw Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,f(this),this._fn()}}}function m(a){return new l(a)}class n{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1,e(this)}dispose(){this._isDisposed||(f(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{j(this._toDispose)}finally{this._toDispose.clear()}}add(a){if(!a||a===o.None)return a;if(a===this)throw Error("Cannot register a disposable on itself!");return g(a,this),this._isDisposed?n.DISABLE_DISPOSED_WARNING||console.warn(Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(a),a}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}}class o{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new n,e(this),g(this._store,this)}dispose(){f(this),this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}}class p{constructor(){this._isDisposed=!1,e(this)}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),a&&g(a,this),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,f(this),this._value?.dispose(),this._value=void 0}}class q{constructor(a){this._disposable=a,this._counter=1}acquire(){return this._counter++,this}release(){return 0==--this._counter&&this._disposable.dispose(),this}}class r{constructor(a){this.object=a}dispose(){}}class s{constructor(){this._store=new Map,this._isDisposed=!1,e(this)}dispose(){f(this),this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{j(this._store.values())}finally{this._store.clear()}}get(a){return this._store.get(a)}set(a,b,c=!1){this._isDisposed&&console.warn(Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),c||this._store.get(a)?.dispose(),this._store.set(a,b),g(b,this)}deleteAndDispose(a){this._store.get(a)?.dispose(),this._store.delete(a)}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}},11487:()=>{},11583:(a,b,c)=>{"use strict";c.d(b,{B6:()=>d,Fd:()=>t,LC:()=>q,P8:()=>p,Pi:()=>o,er:()=>m,iZ:()=>u,n4:()=>n,o1:()=>v,pD:()=>r,su:()=>k,uJ:()=>s});var d,e=c(31122),f=c(18920),g=c(76687),h=c(56167),i=c(98447),j=c(45640);function k(a){return(0,j.I)(a,!0)}class l{constructor(a){this._ignorePathCasing=a}compare(a,b,c=!1){return a===b?0:(0,i.UD)(this.getComparisonKey(a,c),this.getComparisonKey(b,c))}isEqual(a,b,c=!1){return a===b||!!a&&!!b&&this.getComparisonKey(a,c)===this.getComparisonKey(b,c)}getComparisonKey(a,b=!1){return a.with({path:this._ignorePathCasing(a)?a.path.toLowerCase():void 0,fragment:b?null:void 0}).toString()}isEqualOrParent(a,b,c=!1){if(a.scheme===b.scheme){if(a.scheme===f.ny.file)return e._1(k(a),k(b),this._ignorePathCasing(a))&&a.query===b.query&&(c||a.fragment===b.fragment);if(w(a.authority,b.authority))return e._1(a.path,b.path,this._ignorePathCasing(a),"/")&&a.query===b.query&&(c||a.fragment===b.fragment)}return!1}joinPath(a,...b){return j.r.joinPath(a,...b)}basenameOrAuthority(a){return p(a)||a.authority}basename(a){return g.SA.basename(a.path)}extname(a){return g.SA.extname(a.path)}dirname(a){let b;return 0===a.path.length?a:(a.scheme===f.ny.file?b=j.r.file(g.pD(k(a))).path:(b=g.SA.dirname(a.path),a.authority&&b.length&&47!==b.charCodeAt(0)&&(console.error(`dirname("${a.toString})) resulted in a relative path`),b="/")),a.with({path:b}))}normalizePath(a){let b;return a.path.length?(b=a.scheme===f.ny.file?j.r.file(g.S8(k(a))).path:g.SA.normalize(a.path),a.with({path:b})):a}relativePath(a,b){if(a.scheme!==b.scheme||!w(a.authority,b.authority))return;if(a.scheme===f.ny.file){let c=g.V8(k(a),k(b));return h.uF?e.TH(c):c}let c=a.path||"/",d=b.path||"/";if(this._ignorePathCasing(a)){let a=0;for(let b=Math.min(c.length,d.length);a<b&&(c.charCodeAt(a)===d.charCodeAt(a)||c.charAt(a).toLowerCase()===d.charAt(a).toLowerCase());a++);c=d.substr(0,a)+c.substr(a)}return g.SA.relative(c,d)}resolvePath(a,b){if(a.scheme===f.ny.file){let c=j.r.file(g.hd(k(a),b));return a.with({authority:c.authority,path:c.path})}return b=e.kb(b),a.with({path:g.SA.resolve(a.path,b)})}isAbsolutePath(a){return!!a.path&&"/"===a.path[0]}isEqualAuthority(a,b){return a===b||void 0!==a&&void 0!==b&&(0,i.Q_)(a,b)}hasTrailingPathSeparator(a,b=g.Vn){if(a.scheme===f.ny.file){let c=k(a);return c.length>e.Zn(c).length&&c[c.length-1]===b}{let b=a.path;return b.length>1&&47===b.charCodeAt(b.length-1)&&!/^[a-zA-Z]:(\/$|\\$)/.test(a.fsPath)}}removeTrailingPathSeparator(a,b=g.Vn){return x(a,b)?a.with({path:a.path.substr(0,a.path.length-1)}):a}addTrailingPathSeparator(a,b=g.Vn){let c=!1;if(a.scheme===f.ny.file){let d=k(a);c=void 0!==d&&d.length===e.Zn(d).length&&d[d.length-1]===b}else{b="/";let d=a.path;c=1===d.length&&47===d.charCodeAt(d.length-1)}return c||x(a,b)?a:a.with({path:a.path+"/"})}}let m=new l(()=>!1);new l(a=>a.scheme!==f.ny.file||!h.j9),new l(a=>!0);let n=m.isEqual.bind(m);m.isEqualOrParent.bind(m),m.getComparisonKey.bind(m);let o=m.basenameOrAuthority.bind(m),p=m.basename.bind(m),q=m.extname.bind(m),r=m.dirname.bind(m),s=m.joinPath.bind(m),t=m.normalizePath.bind(m),u=m.relativePath.bind(m),v=m.resolvePath.bind(m);m.isAbsolutePath.bind(m);let w=m.isEqualAuthority.bind(m),x=m.hasTrailingPathSeparator.bind(m);m.removeTrailingPathSeparator.bind(m),m.addTrailingPathSeparator.bind(m),function(a){a.META_DATA_LABEL="label",a.META_DATA_DESCRIPTION="description",a.META_DATA_SIZE="size",a.META_DATA_MIME="mime",a.parseMetaData=function(b){let c=new Map;b.path.substring(b.path.indexOf(";")+1,b.path.lastIndexOf(";")).split(";").forEach(a=>{let[b,d]=a.split(":");b&&d&&c.set(b,d)});let d=b.path.substring(0,b.path.indexOf(";"));return d&&c.set(a.META_DATA_MIME,d),c}}(d||(d={}))},11628:(a,b,c)=>{"use strict";c.d(b,{x:()=>f});var d=c(49982),e=c(56167);let f={DateTimeFormat:(a,b)=>new d.d(()=>{try{return new Intl.DateTimeFormat(a,b)}catch{return new Intl.DateTimeFormat(void 0,b)}}),Collator:(a,b)=>new d.d(()=>{try{return new Intl.Collator(a,b)}catch{return new Intl.Collator(void 0,b)}}),Segmenter:(a,b)=>new d.d(()=>{try{return new Intl.Segmenter(a,b)}catch{return new Intl.Segmenter(void 0,b)}}),Locale:(a,b)=>new d.d(()=>{try{return new Intl.Locale(a,b)}catch{return new Intl.Locale(e.ti,b)}}),NumberFormat:(a,b)=>new d.d(()=>{try{return new Intl.NumberFormat(a,b)}catch{return new Intl.NumberFormat(void 0,b)}})}},11866:(a,b,c)=>{"use strict";c.d(b,{Np:()=>f,jA:()=>g,z9:()=>e});var d=c(15380);function e(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.ICodeEditor}function f(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.IDiffEditor}function g(a){return e(a)?a:f(a)?a.getModifiedEditor():a&&"object"==typeof a&&"function"==typeof a.onDidChangeActiveEditor&&e(a.activeCodeEditor)?a.activeCodeEditor:null}},12650:()=>{},12783:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});class d{constructor(a,b,c,d,e,f,g){this.id=a,this.label=b,this.alias=c,this.metadata=d,this._precondition=e,this._run=f,this._contextKeyService=g}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(a){return this.isSupported()?this._run(a):Promise.resolve(void 0)}}},13516:()=>{},13655:(a,b,c)=>{"use strict";c.d(b,{G$:()=>i,Of:()=>f,r0:()=>g,rr:()=>h});var d=c(25536);class e{constructor(a,b,c=b){this.modifierLabels=[null],this.modifierLabels[2]=a,this.modifierLabels[1]=b,this.modifierLabels[3]=c}toLabel(a,b,c){if(0===b.length)return null;let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=c(f);if(null===g)return null;d[e]=function(a,b,c){if(null===b)return"";let d=[];return a.ctrlKey&&d.push(c.ctrlKey),a.shiftKey&&d.push(c.shiftKey),a.altKey&&d.push(c.altKey),a.metaKey&&d.push(c.metaKey),""!==b&&d.push(b),d.join(c.separator)}(f,g,this.modifierLabels[a])}return d.join(" ")}}let f=new e({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:d.kg(35,"Ctrl"),shiftKey:d.kg(36,"Shift"),altKey:d.kg(37,"Alt"),metaKey:d.kg(38,"Windows"),separator:"+"},{ctrlKey:d.kg(39,"Ctrl"),shiftKey:d.kg(40,"Shift"),altKey:d.kg(41,"Alt"),metaKey:d.kg(42,"Super"),separator:"+"}),g=new e({ctrlKey:d.kg(43,"Control"),shiftKey:d.kg(44,"Shift"),altKey:d.kg(45,"Option"),metaKey:d.kg(46,"Command"),separator:"+"},{ctrlKey:d.kg(47,"Control"),shiftKey:d.kg(48,"Shift"),altKey:d.kg(49,"Alt"),metaKey:d.kg(50,"Windows"),separator:"+"},{ctrlKey:d.kg(51,"Control"),shiftKey:d.kg(52,"Shift"),altKey:d.kg(53,"Alt"),metaKey:d.kg(54,"Super"),separator:"+"}),h=new e({ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Cmd",separator:"+"},{ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Super",separator:"+"}),i=new e({ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"cmd",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"win",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"meta",separator:"+"})},13816:(a,b,c)=>{"use strict";c.d(b,{J:()=>f,U:()=>e});var d=c(29715);let e=(0,d.u1)("textResourceConfigurationService"),f=(0,d.u1)("textResourcePropertiesService")},14088:(a,b,c)=>{"use strict";c.d(b,{Ho:()=>b4,kI:()=>b5,Bz:()=>bW,oL:()=>bX});var d,e,f,g=c(54734),h=c(23949),i=c(88347),j=c(60734),k=c(11314),l=c(98447),m=c(45640),n=c(6657),o=c(25146),p=c(79677),q=c(59317),r=c(32146),s=c(93835),t=c(81190),u=c(59298),v=c(34747),w=c(65576),x=c(61004);class y{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class z{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class A extends z{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var B=c(88662),C=c(63506),D=c(25247),E=c(41502),F=c(23316),G=c(38066),H=c(41500);class I extends k.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=new j.vl,this.denseKeyProvider=new F.Mg,this.brackets=new C.Z(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{let a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new G._(this.textModel.getValue(),a);this.initialAstWithoutTokens=(0,E.T)(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new B.c((0,D.qe)(a.fromLineNumber-1,0),(0,D.qe)(a.toLineNumber,0),(0,D.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=B.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,H.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,H.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(a,b,c){let d=new G.tk(this.textModel,this.brackets);return(0,E.T)(d,a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,D.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,D.qe)(a.endLineNumber-1,a.endColumn-1);return new g.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;b:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,D.QB)(c,i.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)){if((0,D.o0)(d,f)){b=i;continue b}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,D.QB)(c,n.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)){if((0,D.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue b}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new y((0,D.Qx)(c,d),h-1,0,!0));case 1:return g(new y((0,D.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,D.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,D.VL)(a.getStartPosition()),d=(0,D.VL)(a.getEndPosition());return new g.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new J(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,D.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new A((0,D.Qx)(c,d),(0,D.Qx)(c,l),b.closingBracket?(0,D.Qx)((0,D.QB)(l,b.child?.length||D.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,D.QB)(c,k.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,D.QB)(d,c.length),(0,D.vr)(b,f)&&(0,D.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,D.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,D.QB)(c,f.length),(0,D.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,D.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,D.Vp,b.length,(0,D.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,D.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,D.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,D.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,D.Vp,b.length,(0,D.VL)(a))}}class J{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class K extends k.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new k.HE),this.onDidChangeEmitter=new j.vl,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new k.Cm;this.bracketPairsTree.value=(a=c.add(new I(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||g.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||g.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||g.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(q.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?N(this._findMatchingBracketUp(g,d,L(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(q.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,g.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,q.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=L(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,w.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,w.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,w.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=x.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof M)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,w.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=x.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof M?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof M?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return M.INSTANCE;let j=x.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,w.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return M.INSTANCE;let j=x.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,w.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,w.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,w.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=q.Q.fromPositions(c),b=this.getBracketPairsInRange(q.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=L(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return M.INSTANCE;let h=x.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,w.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function L(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class M{static{this.INSTANCE=new M}constructor(){this._searchCanceledBrand=void 0}}function N(a){return a instanceof M?null:a}var O=c(27499),P=c(42484);class Q extends k.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new R,this.onDidChangeEmitter=new j.vl,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d){return d||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new q.Q(1,1,this.textModel.getLineCount(),1),a,b):[]}}class R{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,P.zy)((a,b)=>{let c=[O.sN,O.lQ,O.ss,O.l5,O.sH,O.zp],d=new R;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(O.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var S=c(33840),T=c(72070);class U{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function V(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new U;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(f=0,e.spacesDiff=0,e.looksLikeAlignment=!1;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=k?0:.1*d;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=i[4]/2&&(l=2)}return{insertSpaces:k,tabSize:l}}function W(a){return(1&a.metadata)>>>0}function X(a,b){a.metadata=254&a.metadata|(0|b)}function Y(a){return(2&a.metadata)>>>1==1}function Z(a,b){a.metadata=253&a.metadata|!!b<<1}function $(a){return(4&a.metadata)>>>2==1}function _(a,b){a.metadata=251&a.metadata|!!b<<2}function aa(a){return(64&a.metadata)>>>6==1}function ab(a,b){a.metadata=191&a.metadata|!!b<<6}function ac(a){return(128&a.metadata)>>>7==1}function ad(a,b){a.metadata=127&a.metadata|!!b<<7}function ae(a,b){a.metadata=231&a.metadata|b<<3}function af(a,b){a.metadata=223&a.metadata|!!b<<5}class ag{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,X(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,_(this,!1),ab(this,!1),ae(this,1),af(this,!1),ad(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,Z(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;_(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),ab(this,null!==this.options.glyphMarginClassName),ae(this,this.options.stickiness),af(this,this.options.collapseOnReplaceEdit),ad(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let ah=new ag(null,0,0);ah.parent=ah,ah.left=ah,ah.right=ah,X(ah,0);class ai{constructor(){this.root=ah,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===ah?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==ah;){if(Y(i)){Z(i.left,!1),Z(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!Y(i.left)){if(j+i.maxEnd<b){Z(i,!0);continue}if(i.left!==ah){i=i.left;continue}}if((k=j+i.start)>c){Z(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&$(i)&&(a=!1),f&&ac(i)&&(a=!1),h&&!aa(i)&&(a=!1),a&&(m[n++]=i)}if(Z(i,!0),i.right!==ah&&!Y(i.right)){j+=i.delta,i=i.right;continue}}return Z(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===ah?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==ah;){if(Y(g)){Z(g.left,!1),Z(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==ah&&!Y(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&$(g)&&(a=!1),d&&ac(g)&&(a=!1),f&&!aa(g)&&(a=!1),a&&(k[l++]=g),Z(g,!0),g.right!==ah&&!Y(g.right)){h+=g.delta,g=g.right;continue}}return Z(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==ah;){if(Y(c)){Z(c.left,!1),Z(c.right,!1),c=c.parent;continue}if(c.left!==ah&&!Y(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),Z(c,!0),c.right!==ah&&!Y(c.right)){c=c.right;continue}}return Z(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==ah;){if(Y(b)){Z(b.left,!1),Z(b.right,!1),b=b.parent;continue}if(b.left!==ah&&!Y(b.left)){b=b.left;continue}if(b.right!==ah&&!Y(b.right)){b=b.right;continue}c[d++]=b,Z(b,!0)}return Z(a.root,!1),c}(this)}insert(a){ak(this,a),this._normalizeDeltaIfNecessary()}delete(a){al(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==ah;){if(Y(d)){Z(d.left,!1),Z(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!Y(d.left)){if(e+d.maxEnd<b){Z(d,!0);continue}if(d.left!==ah){d=d.left;continue}}if((f=e+d.start)>c){Z(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),Z(d,!0),d.right!==ah&&!Y(d.right)){e+=d.delta,d=d.right;continue}}return Z(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)al(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==ah;){if(Y(e)){Z(e.left,!1),Z(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),aq(e),e=e.parent;continue}if(!Y(e.left)){if(f+e.maxEnd<b){Z(e,!0);continue}if(e.left!==ah){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),Z(e,!0);continue}if(Z(e,!0),e.right!==ah&&!Y(e.right)){f+=e.delta,e=e.right;continue}}Z(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&aj(k,g,b,a)&&(l=!0),!n&&aj(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&aj(k,g,b+j,a)&&(l=!0),!n&&aj(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&aj(k,g,c,f)&&(a.start=b+d,l=!0),!n&&aj(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,ak(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==ah;){if(b.left!==ah&&!Y(b.left)){b=b.left;continue}if(b.right!==ah&&!Y(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,aq(b),Z(b,!0),Z(b.left,!1),Z(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}Z(a.root,!1)}(this))}}function aj(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function ak(a,b){if(a.root===ah)return b.parent=ah,b.left=ah,b.right=ah,X(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===ah){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===ah){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=ah,b.right=ah,X(b,1)})(a,b),ar(b.parent);let c=b;for(;c!==a.root&&1===W(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===W(b)?(X(c.parent,0),X(b,0),X(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&an(a,c=c.parent),X(c.parent,0),X(c.parent.parent,1),ao(a,c.parent.parent))}else{let b=c.parent.parent.left;1===W(b)?(X(c.parent,0),X(b,0),X(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&ao(a,c=c.parent),X(c.parent,0),X(c.parent.parent,1),an(a,c.parent.parent))}return X(a.root,0),b}function al(a,b){let c,d,e;if(b.left===ah?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===ah?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==ah;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,X(c,0),b.detach(),am(),aq(c),a.root.parent=ah;return}let f=1===W(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,X(d,W(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==ah&&(d.left.parent=d),d.right!==ah&&(d.right.parent=d)),b.detach(),f){ar(c.parent),d!==b&&(ar(d),ar(d.parent)),am();return}for(ar(c),ar(c.parent),d!==b&&(ar(d),ar(d.parent));c!==a.root&&0===W(c);)c===c.parent.left?(1===W(e=c.parent.right)&&(X(e,0),X(c.parent,1),an(a,c.parent),e=c.parent.right),0===W(e.left)&&0===W(e.right)?(X(e,1),c=c.parent):(0===W(e.right)&&(X(e.left,0),X(e,1),ao(a,e),e=c.parent.right),X(e,W(c.parent)),X(c.parent,0),X(e.right,0),an(a,c.parent),c=a.root)):(1===W(e=c.parent.left)&&(X(e,0),X(c.parent,1),ao(a,c.parent),e=c.parent.left),0===W(e.left)&&0===W(e.right)?(X(e,1),c=c.parent):(0===W(e.left)&&(X(e.right,0),X(e,1),an(a,e),e=c.parent.left),X(e,W(c.parent)),X(c.parent,0),X(e.left,0),ao(a,c.parent),c=a.root));X(c,0),am()}function am(){ah.parent=ah,ah.delta=0,ah.start=0,ah.end=0}function an(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==ah&&(c.left.parent=b),c.parent=b.parent,b.parent===ah?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,aq(b),aq(c)}function ao(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==ah&&(c.right.parent=b),c.parent=b.parent,b.parent===ah?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,aq(b),aq(c)}function ap(a){let b=a.end;if(a.left!==ah){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==ah){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function aq(a){a.maxEnd=ap(a)}function ar(a){for(;a!==ah;){let b=ap(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class as{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==at)return au(this.right);let a=this;for(;a.parent!==at&&a.parent.left!==a;)a=a.parent;return a.parent===at?at:a.parent}prev(){if(this.left!==at)return av(this.left);let a=this;for(;a.parent!==at&&a.parent.right!==a;)a=a.parent;return a.parent===at?at:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let at=new as(null,0);function au(a){for(;a.left!==at;)a=a.left;return a}function av(a){for(;a.right!==at;)a=a.right;return a}function aw(a){return a===at?0:a.size_left+a.piece.length+aw(a.right)}function ax(a){return a===at?0:a.lf_left+a.piece.lineFeedCnt+ax(a.right)}function ay(){at.parent=at}function az(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==at&&(c.left.parent=b),c.parent=b.parent,b.parent===at?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function aA(a,b){let c=b.left;b.left=c.right,c.right!==at&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===at?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function aB(a,b){let c,d,e;if(c=b.left===at?(d=b).right:b.right===at?(d=b).left:(d=au(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),ay(),a.root.parent=at;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,aE(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,aE(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==at&&(d.left.parent=d),d.right!==at&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,aE(a,d)),b.detach(),c.parent.left===c){let b=aw(c),d=ax(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,aD(a,c.parent,e,f)}}if(aE(a,c.parent),f)return void ay();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,az(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,aA(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,az(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,aA(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,az(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,aA(a,c.parent),c=a.root));c.color=0,ay()}function aC(a,b){for(aE(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&az(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aA(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&aA(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,az(a,b.parent.parent))}a.root.color=0}function aD(a,b,c,d){for(;b!==a.root&&b!==at;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function aE(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=aw((b=b.parent).left)-b.size_left,d=ax(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}at.parent=at,at.left=at,at.right=at,at.color=0;var aF=c(70544);function aG(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class aH{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function aI(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?aG(c):c}class aJ{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class aK{constructor(a,b){this.buffer=a,this.lineStarts=b}}class aL{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==at&&a.iterate(a.root,a=>(a!==at&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class aM{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class aN{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new aK("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=at,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=aI(a[b].buffer));let c=new aJ(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new aM(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new aK(j,aI(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new aK(b,aI(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new aL(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==at;)if(d.left!==at&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==at;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new p.y(c+1,a+1)}return new p.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===at){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new p.y(c+1,e+1)}b=b.right}return new p.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==at;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===at)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===at)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),r=this.offsetInBuffer(a.piece.bufferIndex,e),s=this.offsetInBuffer(a.piece.bufferIndex,f),t={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(r,s),n=a=>a+r,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(r));do if(l=b.next(m)){if(n(l.index)>=s)return j;this.positionInBuffer(a,n(l.index)-p,t);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,t),f=t.line===e.line?t.column-e.column+d:t.column+1,g=f+l[0].length;if(k[j++]=(0,aF.dr)(new q.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=s)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new aF.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,aF.wC)(k,c,j,l,h))||(g[f++]=new v.Dg(new q.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,aF.dr)(new q.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==at){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new aJ(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new aJ(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===at)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();aB(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==at&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new aJ(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",aD(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)aB(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=aI(c);b.push(new aJ(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new aK(c,e))}let c=aI(a);return b.push(new aJ(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new aK(a,c)),b}let b=this._buffers[0].buffer.length,c=aI(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new aJ(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==at;)if(c.left!==at&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==at;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==at;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new aJ(c.bufferIndex,c.start,b,g,j),aD(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new aJ(c.bufferIndex,b,c.end,f,j),aD(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new aJ(d.bufferIndex,d.start,b,i,j),aD(this,a,j-g,i-h);let k=new aJ(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=aI(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new aJ(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,aD(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==at;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==at;)if(c.left!==at&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==at;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===at||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==at&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new aJ(a.piece.bufferIndex,a.piece.start,c,g,f),aD(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new aJ(b.piece.bufferIndex,h,b.piece.end,j,i),aD(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)aB(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)aB(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new aJ(a.bufferIndex,b,a.end,e,d),aD(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===at)return b(at);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===at)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new as(b,1);if(c.left=at,c.right=at,c.parent=at,c.size_left=0,c.lf_left=0,this.root===at)this.root=c,c.color=0;else if(a.right===at)a.right=c,c.parent=a;else{let b=au(a.right);b.left=c,c.parent=b}return aC(this,c),c}rbInsertLeft(a,b){let c=new as(b,1);if(c.left=at,c.right=at,c.parent=at,c.size_left=0,c.lf_left=0,this.root===at)this.root=c,c.color=0;else if(a.left===at)a.left=c,c.parent=a;else{let b=av(a.left);b.right=c,c.parent=b}return aC(this,c),c}}var aO=c(43613);class aP extends k.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new j.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new aN(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new q.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)l.pc(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=l.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=l.lT(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!l.aC(c.text)),!d&&a&&(d=l.E_(c.text)),!e&&a&&(e=l.$X(c.text))}let j="",k=0,m=0,o=0;if(c.text){let a;[k,m,o,a]=(0,n.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:m,lastLineLength:o,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(aP._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?aP._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===l.HG(d)))&&k.push({lineNumber:a,oldContent:d})}}let m=null;if(c){let a=0;m=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,m[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new aO.k(c.rangeOffset,e,f,c.text)}}i||m.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let o=this._doApplyEdits(h),p=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),p=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===l.HG(d)&&p.push(b)}}return this._onDidChangeContent.fire(),new v.F4(m,o,p)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new q.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new q.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,n.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(aP._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new q.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new q.Q(g,h,g,h+j.firstLineLength):new q.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new q.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=q.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=q.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class aQ{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=aI(d);c[a]=new aK(d,e)}let d=new aP(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class aR{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&l.LU(a)&&(this.BOM=l.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new aH(aG(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new aK(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=l.E_(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=l.$X(a)))}finish(a=!0){return this._finish(),new aQ(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=aI(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var aS=c(55866),aT=c(28161),aU=c(21005),aV=c(40565),aW=c(31512),aX=c(43589),aY=c(37457);class aZ{constructor(){this._onDidChangeVisibleRanges=new j.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,aX.Yd)(this),this.visibleLineRanges=(0,aX.C)({owner:this,equalsFn:(0,aY.S3)((0,aY.r)())},a=>(this._viewsChanged.read(a),aW.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new a_(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}}class a${constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,g.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class a_{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,aX.Zh)({owner:this,equalsFn:(0,aY.KC)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new a$(a.map(a=>new aW.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class a0 extends k.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new aV.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,g.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class a1 extends k.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}var a2=c(56167),a3=c(66153),a4=c(91295),a5=c(48363);function a6(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function a7(a,b){do{if(a.currentNode.nextSibling){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}a.currentNode.parent&&a6(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var a8=function(a,b){return function(c,d){b(c,d,a)}};let a9=class extends k.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,aX.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,aX.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new aV.Pq,this._tree=(0,aX.FY)(this,void 0),this.tree=this._tree,this._register((0,k.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new q.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,aX.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=a5.W.ofRange(q.Q.lift(b.range)),c=a5.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=a6(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=a7(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=a7(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new q.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&ba(c[d],{startIndex:l,endIndex:m,startPosition:j,endPosition:k})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new q.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=q.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new q.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=q.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,a2._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||ba(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function ba(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}a9=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([a8(5,a3.rr),a8(6,a4.k)],a9);var bb=c(29715),bc=c(34509),bd=c(95967),be=c(4380);class bf{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,g.nK)(this._store,a,c)}}class bg{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class bh{constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bg(a,[b]))}finalize(){return this._tokens}}class bi{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new bl(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class bj extends bi{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=bo(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=bo(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new aU.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=bo(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new aU.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=bo(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=bk(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=bo(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function bk(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class bl{constructor(a){this.lineCount=a,this._tokenizationStateStore=new bm,this._invalidEndStatesLineNumbers=new bn,this._invalidEndStatesLineNumbers.addRange(new bd.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new i.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new bd.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new bd.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,n.W)(b.text);this.acceptChange(new aW.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new bd.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new i.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class bm{constructor(){this._lineEndStates=new bf(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class bn{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new bd.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new bd.L(c.start,a):this._ranges.splice(b,1,new bd.L(c.start,a),new bd.L(a+1,c.endExclusive))}}addRange(a){bd.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new bd.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new bd.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function bo(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,i.dz)(a)}return g||(g=(0,be.Lh)(a.encodeLanguageId(b),f)),aU.f7.convertToEndOffset(g.tokens,d.length),g}class bp{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,aV.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,a2._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new bh,c=bc.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new aW.M(a,b))}}class bq{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new bq(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),br(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),br(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function br(a){return void 0!==a.token}function bs(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(br(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=bq.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new bq(c.height+1);return b.appendChild(a),b.appendChild(c),b}}!function(a){a[a.None=0]="None",a[a.ViewportGuess=1]="ViewportGuess",a[a.EditGuess=2]="EditGuess",a[a.Accurate=3]="Accurate"}(d||(d={}));class bt{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:d.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=bs(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],d.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){br(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(br(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){br(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(br(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!br(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?bq.create(k,l):k.height>l.height?bs(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(br(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=bq.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?bq.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!br(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!br(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(br(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(br(a)&&(a.tokenQuality=d.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(br(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(br(a)&&a.tokenQuality!==d.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(br(b)&&b.tokenQuality!==d.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(br(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var bu=c(46339);let bv=(0,bb.u1)("treeSitterThemeService"),bw=class extends k.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,e,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=e,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new j.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,aX.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new bt(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),d.None),this._register((0,aX.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,aX.Y)({owner:this,changeTracker:(0,aX.jv)({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new i.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,e=this._tokenStore.getTokenAt(c);e?(a={startOffsetInclusive:e.startOffsetInclusive,length:e.length+b.text.length-b.rangeLength,token:e.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(e?.length??0,[a],d.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new aU.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new q.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new aU.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:q.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(bu.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),e=this._textModel.getVersionId();if(this._rangeHasTokens(b,d.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,d.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(e,[{newTokens:g,oldRangeLength:i}],d.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new q.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=bk(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new q.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(bu.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new p.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new p.y(g,i),k=q.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new q.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let e;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);e=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[e],d.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,a2._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new q.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],d.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bc.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=bx[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(by)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bc.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new q.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};bw=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){bv(a,b,4)}],bw);let bx={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},by=/[\{\}\[\]\<\>\(\)]/g;var bz=c(30950),bA=function(a,b){return function(c,d){b(c,d,a)}};let bB=class extends a1{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new j.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;let g=new aX.BK(this._treeSitterLibraryService.getParserClass()),h=(0,aX.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,aX.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,a);if(!d)return;let e=new b;if(a.store.add((0,k.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(a9,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,aX.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(bw,b,c,this._languageIdCodec,d))}),this._register((0,aX.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return aU.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};bB=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bA(4,bz.t),bA(5,bb._Y)],bB);class bC{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=g.nK(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=bC._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a!==k&&(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new aU.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f of this._pieces)f.acceptEdit(a,b,c,d,e)}}var bD=c(42350);let bE=new Uint32Array(0).buffer;class bF{static deleteBeginning(a,b){return null===a||a===bE?a:bF.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===bE)return a;let c=bG(a),d=c[c.length-2];return bF.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===bE||b===c)return a;let f=bG(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return bE;let h=aU.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===bE)return a;if(a===bE)return b;if(null===a)return a;if(null===b)return null;let c=bG(a),d=bG(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===bE)return a;let d=bG(a),e=d.length>>>1,f=aU.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function bG(a){return a instanceof Uint32Array?a:new Uint32Array(a)}var bH=c(48268);class bI{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==bE)return new aU.f7(bG(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=bJ(this._languageIdCodec.encodeLanguageId(a)),new aU.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?bG(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=bH.x.getLanguageId(d[1])!==a),!b)return bE}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=bJ(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=g.nK(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=bI._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!bI._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=bG(a),d=bG(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new p.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=bF.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=bF.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=bF.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=bF.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=bF.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=bF.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=bF.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function bJ(a){return(0|a|0x2008400)>>>0}class bK extends a1{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new j.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new k.HE),this._tokens=new bI(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new k.HE),this._attachedViewStates=this._register(new k.$w),this._register(bD.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new a0(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new bl(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=bD.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,i.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new bj(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},backgroundTokenizationFinished:()=>{2!==this._backgroundTokenizationState&&(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new bp(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new bI(this._languageIdCodec),this._debugBackgroundStates=new bl(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,n.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}refreshAllVisibleLineTokens(){let a=aW.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new bh,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new bh;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new p.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var bL=function(a,b){return function(c,d){b(c,d,a)}};let bM=e=class extends aT._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._languageIdObs=(0,aX.FY)(this,this._languageId),this._useTreeSitter=(0,aX.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,aX.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(bB,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new bK(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new bC(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new j.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new j.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,n.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new i.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),f=d.findTokenIndexAtOffset(b.column-1),[g,h]=e._findLanguageBoundaries(d,f),i=(0,aS.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(f)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(f>0&&g===b.column-1){let[g,h]=e._findLanguageBoundaries(d,f-1),i=(0,aS.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(f-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new p.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};bM=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bL(4,t.L),bL(5,u.JZ),bL(6,bb._Y),bL(7,bz.t)],bM);var bN=c(71760),bO=c(89535),bP=c(20715),bQ=c(42715),bR=function(a,b){return function(c,d){b(c,d,a)}};function bS(a,b){return("string"==typeof a?function(a){let b=new aR;return b.acceptChunk(a),b.finish()}(a):v.nk(a)?function(a){let b,c=new aR;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a).create(b)}let bT=0;class bU{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let bV=()=>{throw Error("Invalid change accessor")},bW=class extends k.jG{static{f=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:s.R.tabSize,indentSize:s.R.indentSize,insertSpaces:s.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:s.R.trimAutoWhitespace,largeFileOptimizations:s.R.largeFileOptimizations,bracketPairColorizationOptions:s.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=V(a,b.tabSize,b.insertSpaces);return new v.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new v.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.slowEvent(b=>a(b.contentChangedEvent))}onDidChangeContentOrInjectedText(a){return(0,k.qE)(this._eventEmitter.fastEvent(b=>a(b)),this._onDidChangeInjectedText.event(b=>a(b)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,g,h,i){super(),this._undoRedoService=e,this._languageService=g,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new j.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new ca((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new j.vl),this._onDidChangeAttached=this._register(new j.vl),this._onDidChangeInjectedText=this._register(new j.vl),this._onDidChangeLineHeight=this._register(new j.vl),this._onDidChangeFont=this._register(new j.vl),this._eventEmitter=this._register(new cb),this._languageSelectionListener=this._register(new k.HE),this._deltaDecorationCallCnt=0,this._attachedViews=new aZ,bT++,this.id="$model"+bT,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=m.r.parse("inmemory://model/"+bT):this._associatedResource=d,this._attachedEditorCount=0;let{textBuffer:n,disposable:o}=bS(a,c.defaultEOL);this._buffer=n,this._bufferDisposable=o;let p=this._buffer.getLineCount(),r=this._buffer.getValueLengthInRange(new q.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=r>f.LARGE_FILE_SIZE_THRESHOLD||p>f.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=r>f.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=f.resolveOptions(this._buffer,c);let s="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new K(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new T.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new Q(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(bM,this,this._bracketPairs,s,this._attachedViews),this._isTooLargeForSyncing=r>f._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=l.tk(bT),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new b$,this._commandManager=new S.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(s),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new aP([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=k.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new i.D7("Model is disposed!")}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._eventEmitter.fire(new bN.Ic(a,b)))}setValue(a,b=bQ.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,i.Qg)();let{textBuffer:c,disposable:d}=bS(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new b$,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new bN.HP([new bN.Wn],this._versionId,!1,!1),this._createContentChanged2(new q.Q(1,1,f,g),0,e,new p.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new bN.HP([new bN.mS],this._versionId,!1,!1),this._createContentChanged2(new q.Q(1,1,e,f),0,d,new p.y(e,f),this.getValue(),!1,!1,!1,!0,bQ.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,aq(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new v.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=V(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,o.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(l._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new i.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new bU(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new i.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof q.Q&&!(a instanceof r.L)?a:new q.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if(l.pc(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new p.y(1,1);if(d>f)return new p.y(f,this.getLineMaxColumn(f));if(e<=1)return new p.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new p.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if(l.pc(a))return new p.y(d,e-1)}return new p.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof p.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=l.pc(a),h=l.pc(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof q.Q&&!(a instanceof r.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=l.pc(a),h=l.pc(b);return c||h?d===f&&e===g?new q.Q(d,e-1,f,g-1):c&&h?new q.Q(d,e-1,f,g+1):c?new q.Q(d,e-1,f,g):new q.Q(d,e,f,g+1):new q.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new q.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&(Array.isArray(b)||(b=[b]),b.every(a=>q.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>q.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new aF.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>aF.hB.findMatches(this,new aF.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new aF.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new q.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(aF.hB.findNextMatch(this,new aF.lt(a,c,d,e),g,f),j.length>0||(i=new q.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return aF.hB.findNextMatch(this,new aF.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return aF.hB.findPreviousMatch(this,new aF.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){return a instanceof v.Wo?a:new v.Wo(a.identifier||null,this.validateRange(a.range),a.text,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new q.Q(d,1,d,e);b.push(new v.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new q.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new q.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d,this.applyEdits(a,!1),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??bQ.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c){let d=this._buffer.getLineCount(),e=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),f=this._buffer.getLineCount(),h=e.changes;if(this._trimAutoWhitespaceLines=e.trimAutoWhitespaceLineNumbers,0!==h.length){for(let a=0,b=h.length;a<b;a++){let b=h[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=d;for(let c=0,d=h.length;c<d;c++){let d=h[c],[e]=(0,n.W)(d.text);this._onDidChangeDecorations.fire();let i=d.range.startLineNumber,j=d.range.endLineNumber,k=j-i,l=Math.min(k,e),m=e-k,o=f-b-m+i,q=o+e,r=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new p.y(o,1)),this.getOffsetAt(new p.y(q,this.getLineMaxColumn(q))),0),s=bN.uK.fromDecorations(r),t=new g.j3(s);for(let b=l;b>=0;b--){let c=i+b,d=o+b;t.takeFromEndWhile(a=>a.lineNumber>d);let e=t.takeFromEndWhile(a=>a.lineNumber===d);a.push(new bN.U0(c,this.getLineContent(d),e))}if(l<k){let b=i+l;a.push(new bN.E$(b+1,j))}if(l<e){let c=new g.j3(s),d=i+l,h=e-l,j=f-b-h+d+1,k=[],m=[];for(let a=0;a<h;a++){let b=j+a;m[a]=this.getLineContent(b),c.takeWhile(a=>a.lineNumber<b),k[a]=c.takeWhile(a=>a.lineNumber===b)}a.push(new bN.bg(d+1,i+e,m,k))}b+=m}this._emitContentChangedEvent(new bN.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:h,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[h.length]})}return null===e.reverseEdits?void 0:e.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new bN.U0(a,this.getLineContent(a),this._getInjectedTextInLine(a)));this._onDidChangeInjectedText.fire(new bN.vn(b))}if(b&&b.size>0){let a=Array.from(b).map(a=>new bN.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new bN.zq(a))}if(c&&c.size>0){let a=Array.from(c).map(a=>new bN.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new bN.dT(a))}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,b7(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,i.dz)(a)}return c.addDecoration=bV,c.changeDecoration=bV,c.changeDecorationOptions=bV,c.removeDecoration=bV,c.deltaDecorations=bV,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,i.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:b6[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(b6[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let h=this.getLineCount(),i=Math.min(h,Math.max(1,a)),j=Math.min(h,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new q.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,g.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let h=this.validateRange(a),i=this._getDecorationsInRange(h,b,c,d,f);return(0,g.E4)(i,this._decorationProvider.getDecorationsInRange(h,b,c,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){return this._decorationsTree.getAllCustomLineHeights(this,a)}_getInjectedTextInLine(a){let b=this._buffer.getOffsetAt(a,1),c=b+this._buffer.getLineLength(a),d=this._decorationsTree.getInjectedTextInInterval(this,b,c,0);return bN.uK.fromDecorations(d).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return d.concat(this._decorationProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==bZ(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new ag(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=b7(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return bX(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function bX(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}function bY(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function bZ(a){return!!a.options.after||!!a.options.before}bW=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bR(4,bO.$D),bR(5,t.L),bR(6,u.JZ),bR(7,bb._Y)],bW);class b${constructor(){this._decorationsTree0=new ai,this._decorationsTree1=new ai,this._injectedTextDecorationsTree=new ai}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){bZ(a)?this._injectedTextDecorationsTree.insert(a):bY(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){bZ(a)?this._injectedTextDecorationsTree.delete(a):bY(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){bZ(a)?this._injectedTextDecorationsTree.resolveNode(a,b):bY(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function b_(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class b0{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class b1 extends b0{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:v.A5.Center}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class b2{constructor(a){this.position=a?.position??v.ZS.Center,this.persistLane=a?.persistLane}}class b3 extends b0{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?h.Q1.fromHex(a):b.getColor(a.id)}}class b4{static from(a){return a instanceof b4?a:new b4(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class b5{static register(a){return new b5(a)}static createDynamic(a){return new b5(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?b_(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?b_(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new b1(a.overviewRuler):null,this.minimap=a.minimap?new b3(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new b2(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?b_(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?b_(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?b_(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?l.jy(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?b_(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?b_(a.marginClassName):null,this.inlineClassName=a.inlineClassName?b_(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?b_(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?b_(a.afterContentClassName):null,this.after=a.after?b4.from(a.after):null,this.before=a.before?b4.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}b5.EMPTY=b5.register({description:"empty"});let b6=[b5.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),b5.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),b5.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),b5.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function b7(a){return a instanceof b5?a:b5.createDynamic(a)}class b8{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class b9{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}class ca extends k.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new j.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new bP.iD([],b8.toKey)),this._affectedLineHeights.add(new b8(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new bP.iD([],b9.toKey)),this._affectedFontLines.add(new b9(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(a)}}class cb extends k.jG{constructor(){super(),this._fastEmitter=this._register(new j.vl),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new j.vl),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(b),this._slowEmitter.fire(b)}}fire(a){if(this._deferredCnt>0)return void(this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a);this._fastEmitter.fire(a),this._slowEmitter.fire(a)}}},14418:()=>{},14635:(a,b,c)=>{"use strict";c.d(b,{Qi:()=>h,XO:()=>d,bs:()=>i});var d,e=c(60734);let f=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});!function(a){a.isCancellationToken=function(b){return b===a.None||b===a.Cancelled||b instanceof g||!!b&&"object"==typeof b&&"boolean"==typeof b.isCancellationRequested&&"function"==typeof b.onCancellationRequested},a.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:e.Jh.None}),a.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:f})}(d||(d={}));class g{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?f:(this._emitter||(this._emitter=new e.vl),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class h{constructor(a){this._token=void 0,this._parentListener=void 0,this._parentListener=a&&a.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new g),this._token}cancel(){this._token?this._token instanceof g&&this._token.cancel():this._token=d.Cancelled}dispose(a=!1){a&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof g&&this._token.dispose():this._token=d.None}}function i(a){let b=new h;return a.add({dispose(){b.cancel()}}),b.token}},15267:()=>{},15380:(a,b,c)=>{"use strict";c.d(b,{_:()=>d});let d={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"}},16282:()=>{},16342:(a,b,c)=>{"use strict";c.d(b,{Pj:()=>A,jX:()=>B,vg:()=>D,_V:()=>H});var d=c(54734),e=c(14635),f=c(88347),g=c(16374),h=c(71373),i=c(46339),j=c(45640),k=c(46319),l=c(11866),m=c(79677),n=c(59317),o=c(32146),p=c(65320),q=c(55830),r=c(40778),s=c(70511);class t{constructor(a){this.value=a,this._lower=a.toLowerCase()}static toKey(a){return"string"==typeof a?a.toLowerCase():a._lower}}class u{constructor(a){if(this._set=new Set,a)for(let b of a)this.add(b)}add(a){this._set.add(t.toKey(a))}has(a){return this._set.has(t.toKey(a))}}var v=c(29715),w=c(88482),x=c(66153),y=c(3341);function z(a,b,c){let d=[],e=new u;for(let b of a.ordered(c))d.push(b),b.extensionId&&e.add(b.extensionId);for(let a of b.ordered(c)){if(a.extensionId){if(e.has(a.extensionId))continue;e.add(a.extensionId)}d.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits:(b,c,d)=>a.provideDocumentRangeFormattingEdits(b,b.getFullModelRange(),c,d)})}return d}class A{static{this._selectors=new h.w}static setFormatterSelector(a){return{dispose:A._selectors.unshift(a)}}static async select(a,b,c,d){if(0===a.length)return;let e=g.f.first(A._selectors);if(e)return await e(a,b,c,d)}}async function B(a,b,c,d,e,f,g){let h=a.get(v._Y),{documentRangeFormattingEditProvider:i}=a.get(w.u),j=(0,l.z9)(b)?b.getModel():b,k=i.ordered(j),m=await A.select(k,j,d,2);m&&(e.report(m),await h.invokeFunction(C,m,b,c,f,g))}async function C(a,b,c,e,f,g){let h,i,j=a.get(p.w),m=a.get(x.rr),q=a.get(y.Nt);(0,l.z9)(c)?(h=c.getModel(),i=new k.gI(c,5,void 0,f)):(h=c,i=new k.ER(c,f));let s=[],t=0;for(let a of(0,d._j)(e).sort(n.Q.compareRangesUsingStarts))t>0&&n.Q.areIntersectingOrTouching(s[t-1],a)?s[t-1]=n.Q.fromPositions(s[t-1].getStartPosition(),a.getEndPosition()):t=s.push(a);let u=async a=>{m.trace("[format][provideDocumentRangeFormattingEdits] (request)",b.extensionId?.value,a);let c=await b.provideDocumentRangeFormattingEdits(h,a,h.getFormattingOptions(),i.token)||[];return m.trace("[format][provideDocumentRangeFormattingEdits] (response)",b.extensionId?.value,c),c},v=(a,b)=>{if(!a.length||!b.length)return!1;let c=a.reduce((a,b)=>n.Q.plusRange(a,b.range),a[0].range);if(!b.some(a=>n.Q.intersectRanges(c,a.range)))return!1;for(let c of a)for(let a of b)if(n.Q.intersectRanges(c.range,a.range))return!0;return!1},w=[],z=[];try{if("function"==typeof b.provideDocumentRangesFormattingEdits){m.trace("[format][provideDocumentRangeFormattingEdits] (request)",b.extensionId?.value,s);let a=await b.provideDocumentRangesFormattingEdits(h,s,h.getFormattingOptions(),i.token)||[];m.trace("[format][provideDocumentRangeFormattingEdits] (response)",b.extensionId?.value,a),z.push(a)}else{for(let a of s){if(i.token.isCancellationRequested)return!0;z.push(await u(a))}for(let a=0;a<s.length;++a)for(let b=a+1;b<s.length;++b){if(i.token.isCancellationRequested)return!0;if(v(z[a],z[b])){let c=n.Q.plusRange(s[a],s[b]),d=await u(c);s.splice(b,1),s.splice(a,1),s.push(c),z.splice(b,1),z.splice(a,1),z.push(d),a=0,b=0}}}for(let a of z){if(i.token.isCancellationRequested)return!0;let b=await j.computeMoreMinimalEdits(h.uri,a);b&&w.push(...b)}if(i.token.isCancellationRequested)return!0}finally{i.dispose()}if(0===w.length)return!1;if((0,l.z9)(c))r.c.execute(c,w,!0),c.revealPositionInCenterIfOutsideViewport(c.getPosition(),1);else{let[{range:a}]=w,b=new o.L(a.startLineNumber,a.startColumn,a.endLineNumber,a.endColumn);h.pushEditOperations([b],w.map(a=>({text:a.text,range:n.Q.lift(a.range),forceMoveMarkers:!0})),a=>{for(let{range:c}of a)if(n.Q.areIntersectingOrTouching(c,b))return[new o.L(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)];return null})}return q.playSignal(y.Rh.format,{userGesture:g}),!0}async function D(a,b,c,d,e,f){let g=a.get(v._Y),h=a.get(w.u),i=(0,l.z9)(b)?b.getModel():b,j=z(h.documentFormattingEditProvider,h.documentRangeFormattingEditProvider,i),k=await A.select(j,i,c,1);k&&(d.report(k),await g.invokeFunction(E,k,b,c,e,f))}async function E(a,b,c,d,e,f){let g,h,i,j=a.get(p.w),m=a.get(y.Nt);(0,l.z9)(c)?(g=c.getModel(),h=new k.gI(c,5,void 0,e)):(g=c,h=new k.ER(c,e));try{let a=await b.provideDocumentFormattingEdits(g,g.getFormattingOptions(),h.token);if(i=await j.computeMoreMinimalEdits(g.uri,a),h.token.isCancellationRequested)return!0}finally{h.dispose()}if(!i||0===i.length)return!1;if((0,l.z9)(c))r.c.execute(c,i,2!==d),2!==d&&c.revealPositionInCenterIfOutsideViewport(c.getPosition(),1);else{let[{range:a}]=i,b=new o.L(a.startLineNumber,a.startColumn,a.endLineNumber,a.endColumn);g.pushEditOperations([b],i.map(a=>({text:a.text,range:n.Q.lift(a.range),forceMoveMarkers:!0})),a=>{for(let{range:c}of a)if(n.Q.areIntersectingOrTouching(c,b))return[new o.L(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)];return null})}return m.playSignal(y.Rh.format,{userGesture:f}),!0}async function F(a,b,c,e,g,h){for(let i of b.documentRangeFormattingEditProvider.ordered(c)){let b=await Promise.resolve(i.provideDocumentRangeFormattingEdits(c,e,g,h)).catch(f.M_);if((0,d.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}async function G(a,b,c,e,g){for(let h of z(b.documentFormattingEditProvider,b.documentRangeFormattingEditProvider,c)){let b=await Promise.resolve(h.provideDocumentFormattingEdits(c,e,g)).catch(f.M_);if((0,d.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}function H(a,b,c,d,e,g,h){let i=b.onTypeFormattingEditProvider.ordered(c);return 0===i.length||0>i[0].autoFormatTriggerCharacters.indexOf(e)?Promise.resolve(void 0):Promise.resolve(i[0].provideOnTypeFormattingEdits(c,d,e,g,h)).catch(f.M_).then(b=>a.computeMoreMinimalEdits(c.uri,b))}s.w.registerCommand("_executeFormatRangeProvider",async function(a,...b){let[c,d,f]=b;(0,i.j)(j.r.isUri(c)),(0,i.j)(n.Q.isIRange(d));let g=a.get(q.b),h=a.get(p.w),k=a.get(w.u),l=await g.createModelReference(c);try{return F(h,k,l.object.textEditorModel,n.Q.lift(d),f,e.XO.None)}finally{l.dispose()}}),s.w.registerCommand("_executeFormatDocumentProvider",async function(a,...b){let[c,d]=b;(0,i.j)(j.r.isUri(c));let f=a.get(q.b),g=a.get(p.w),h=a.get(w.u),k=await f.createModelReference(c);try{return G(g,h,k.object.textEditorModel,d,e.XO.None)}finally{k.dispose()}}),s.w.registerCommand("_executeFormatOnTypeProvider",async function(a,...b){let[c,d,f,g]=b;(0,i.j)(j.r.isUri(c)),(0,i.j)(m.y.isIPosition(d)),(0,i.j)("string"==typeof f);let h=a.get(q.b),k=a.get(p.w),l=a.get(w.u),n=await h.createModelReference(c);try{return H(k,l,n.object.textEditorModel,m.y.lift(d),f,g,e.XO.None)}finally{n.dispose()}})},16374:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});var d,e=c(46339);!function(a){function b(a){return!!a&&"object"==typeof a&&"function"==typeof a[Symbol.iterator]}a.is=b;let c=Object.freeze([]);function*d(a){yield a}a.empty=function(){return c},a.single=d,a.wrap=function(a){return b(a)?a:d(a)},a.from=function(a){return a||c},a.reverse=function*(a){for(let b=a.length-1;b>=0;b--)yield a[b]},a.isEmpty=function(a){return!a||!0===a[Symbol.iterator]().next().done},a.first=function(a){return a[Symbol.iterator]().next().value},a.some=function(a,b){let c=0;for(let d of a)if(b(d,c++))return!0;return!1},a.every=function(a,b){let c=0;for(let d of a)if(!b(d,c++))return!1;return!0},a.find=function(a,b){for(let c of a)if(b(c))return c},a.filter=function*(a,b){for(let c of a)b(c)&&(yield c)},a.map=function*(a,b){let c=0;for(let d of a)yield b(d,c++)},a.flatMap=function*(a,b){let c=0;for(let d of a)yield*b(d,c++)},a.concat=function*(...a){for(let b of a)(0,e.xZ)(b)?yield*b:yield b},a.reduce=function(a,b,c){let d=c;for(let c of a)d=b(d,c);return d},a.length=function(a){let b=0;for(let c of a)b++;return b},a.slice=function*(a,b,c=a.length){for(b<-a.length&&(b=0),b<0&&(b+=a.length),c<0?c+=a.length:c>a.length&&(c=a.length);b<c;b++)yield a[b]},a.consume=function(b,c=1/0){let d=[];if(0===c)return[d,b];let e=b[Symbol.iterator]();for(let b=0;b<c;b++){let b=e.next();if(b.done)return[d,a.empty()];d.push(b.value)}return[d,{[Symbol.iterator]:()=>e}]},a.asyncToArray=async function(a){let b=[];for await(let c of a)b.push(c);return b},a.asyncToArrayFlat=async function(a){let b=[];for await(let c of a)b=b.concat(c);return b}}(d||(d={}))},16749:(a,b,c)=>{"use strict";c.d(b,{wZ:()=>k,zL:()=>j,UW:()=>n,Md:()=>p});var d=c(25536),e=c(98447),f=c(29892),g=c(22889);class h{constructor(a,b,c,d){this.endIndex=a,this.type=b,this.metadata=c,this.containsRTL=d,this._linePartBrand=void 0}isWhitespace(){return!!(1&this.metadata)}isPseudoAfter(){return!!(4&this.metadata)}}var i=c(34747);class j{get isLTR(){return!this.containsRTL&&this.textDirection!==i.z4.RTL}constructor(a,b,c,d,e,f,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w=!1){this.useMonospaceOptimizations=a,this.canUseHalfwidthRightwardsArrow=b,this.lineContent=c,this.continuesWithWrappedLine=d,this.isBasicASCII=e,this.containsRTL=f,this.fauxIndentLength=h,this.lineTokens=i,this.lineDecorations=j.sort(g.d.compare),this.tabSize=k,this.startVisibleColumn=l,this.spaceWidth=m,this.stopRenderingLineAfter=p,this.renderWhitespace="all"===q?4:"boundary"===q?1:"selection"===q?2:3*("trailing"===q),this.renderControlCharacters=r,this.fontLigatures=s,this.selectionsOnLine=t&&t.sort((a,b)=>a.start<b.start?-1:1),this.renderNewLineWhenEmpty=w,this.textDirection=u,this.verticalScrollbarSize=v,Math.abs(o-m)<Math.abs(n-m)?(this.renderSpaceWidth=o,this.renderSpaceCharCode=11825):(this.renderSpaceWidth=n,this.renderSpaceCharCode=183)}sameSelection(a){if(null===this.selectionsOnLine)return null===a;if(null===a||a.length!==this.selectionsOnLine.length)return!1;for(let b=0;b<this.selectionsOnLine.length;b++)if(!this.selectionsOnLine[b].equals(a[b]))return!1;return!0}equals(a){return this.useMonospaceOptimizations===a.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineContent===a.lineContent&&this.continuesWithWrappedLine===a.continuesWithWrappedLine&&this.isBasicASCII===a.isBasicASCII&&this.containsRTL===a.containsRTL&&this.fauxIndentLength===a.fauxIndentLength&&this.tabSize===a.tabSize&&this.startVisibleColumn===a.startVisibleColumn&&this.spaceWidth===a.spaceWidth&&this.renderSpaceWidth===a.renderSpaceWidth&&this.renderSpaceCharCode===a.renderSpaceCharCode&&this.stopRenderingLineAfter===a.stopRenderingLineAfter&&this.renderWhitespace===a.renderWhitespace&&this.renderControlCharacters===a.renderControlCharacters&&this.fontLigatures===a.fontLigatures&&g.d.equalsArr(this.lineDecorations,a.lineDecorations)&&this.lineTokens.equals(a.lineTokens)&&this.sameSelection(a.selectionsOnLine)&&this.textDirection===a.textDirection&&this.verticalScrollbarSize===a.verticalScrollbarSize&&this.renderNewLineWhenEmpty===a.renderNewLineWhenEmpty}}class k{constructor(a,b){this.partIndex=a,this.charIndex=b}}class l{static getPartIndex(a){return(0xffff0000&a)>>>16}static getCharIndex(a){return(65535&a)>>>0}constructor(a,b){this.length=a,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(a,b,c,d){this._data[a-1]=(0|c|b<<16)>>>0,this._horizontalOffset[a-1]=d}getHorizontalOffset(a){return 0===this._horizontalOffset.length?0:this._horizontalOffset[a-1]}charOffsetToPartData(a){return 0===this.length?0:a<0?this._data[0]:a>=this.length?this._data[this.length-1]:this._data[a]}getDomPosition(a){let b=this.charOffsetToPartData(a-1);return new k(l.getPartIndex(b),l.getCharIndex(b))}getColumn(a,b){return this.partDataToCharOffset(a.partIndex,b,a.charIndex)+1}partDataToCharOffset(a,b,c){let d;if(0===this.length)return 0;let e=(0|c|a<<16)>>>0,f=0,g=this.length-1;for(;f+1<g;){let a=f+g>>>1,b=this._data[a];if(b===e)return a;b>e?g=a:f=a}if(f===g)return f;let h=this._data[f],i=this._data[g];if(h===e)return f;if(i===e)return g;let j=l.getPartIndex(h),k=l.getCharIndex(h);return d=j!==l.getPartIndex(i)?b:l.getCharIndex(i),c-k<=d-c?f:g}}class m{constructor(a,b){this._renderLineOutputBrand=void 0,this.characterMapping=a,this.containsForeignElements=b}}function n(a,b){if(0===a.lineContent.length){if(a.lineDecorations.length>0){b.appendString("<span>");let c=0,d=0,e=0;for(let f of a.lineDecorations)(1===f.type||2===f.type)&&(b.appendString('<span class="'),b.appendString(f.className),b.appendString('"></span>'),1===f.type&&(e|=1,c++),2===f.type&&(e|=2,d++));b.appendString("</span>");let f=new l(1,c+d);return f.setColumnInfo(1,c,0,0),new m(f,e)}return a.renderNewLineWhenEmpty?b.appendString("<span><span>\n</span></span>"):b.appendString("<span><span></span></span>"),new m(new l(0,0),0)}return function(a,b){var c;let f=a.fontIsMonospace,g=a.canUseHalfwidthRightwardsArrow,h=a.containsForeignElements,i=a.lineContent,j=a.len,k=a.isOverflowing,n=a.overflowingCharCount,o=a.parts,p=a.fauxIndentLength,q=a.tabSize,s=a.startVisibleColumn,t=a.spaceWidth,u=a.renderSpaceCharCode,v=a.renderWhitespace,w=a.renderControlCharacters,x=new l(j+1,o.length),y=!1,z=0,A=s,B=0,C=0,D=0;b.appendString("<span>");for(let a=0,c=o.length;a<c;a++){let c=o[a],d=c.endIndex,k=c.type,l=c.containsRTL,m=0!==v&&c.isWhitespace(),n=m&&!f&&("mtkw"===k||!h),s=z===d&&c.isPseudoAfter();if(B=0,b.appendString("<span "),l&&b.appendString('style="unicode-bidi:isolate" '),b.appendString('class="'),b.appendString(n?"mtkz":k),b.appendASCIICharCode(34),m){let c=0;{let a=z,b=A;for(;a<d;a++){let d=(9===i.charCodeAt(a)?q-b%q:1)|0;c+=d,a>=p&&(b+=d)}}for(n&&(b.appendString(' style="width:'),b.appendString(String(t*c)),b.appendString('px"')),b.appendASCIICharCode(62);z<d;z++){let c,d;if(x.setColumnInfo(z+1,a-D,B,C),D=0,9===i.charCodeAt(z)){d=c=q-A%q|0,!g||d>1?b.appendCharCode(8594):b.appendCharCode(65515);for(let a=2;a<=d;a++)b.appendCharCode(160)}else c=2,d=1,b.appendCharCode(u),b.appendCharCode(8204);B+=c,C+=d,z>=p&&(A+=d)}}else for(b.appendASCIICharCode(62);z<d;z++){x.setColumnInfo(z+1,a-D,B,C),D=0;let c=i.charCodeAt(z),d=1,f=1;switch(c){case 9:f=d=q-A%q;for(let a=1;a<=d;a++)b.appendCharCode(160);break;case 32:b.appendCharCode(160);break;case 60:b.appendString("<");break;case 62:b.appendString(">");break;case 38:b.appendString("&");break;case 0:w?b.appendCharCode(9216):b.appendString("�");break;case 65279:case 8232:case 8233:case 133:b.appendCharCode(65533);break;default:e.ne(c)&&f++,w&&c<32?b.appendCharCode(9216+c):w&&127===c?b.appendCharCode(9249):w&&r(c)?(b.appendString("[U+"),b.appendString(c.toString(16).toUpperCase().padStart(4,"0")),b.appendString("]"),f=d=8):b.appendCharCode(c)}B+=d,C+=f,z>=p&&(A+=f)}s?D++:D=0,z>=j&&!y&&c.isPseudoAfter()&&(y=!0,x.setColumnInfo(z+1,a,B,C)),b.appendString("</span>")}return y||x.setColumnInfo(j+1,o.length-1,B,C),k&&(b.appendString('<span class="mtkoverflow">'),b.appendString(d.kg(792,"Show more ({0})",(c=n)<1024?d.kg(793,"{0} chars",c):c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1024/1024).toFixed(1)} MB`)),b.appendString("</span>")),b.appendString("</span>"),new m(x,h)}(function(a){let b,c,d,f=a.lineContent;-1!==a.stopRenderingLineAfter&&a.stopRenderingLineAfter<f.length?(b=!0,c=f.length-a.stopRenderingLineAfter,d=a.stopRenderingLineAfter):(b=!1,c=0,d=f.length);let i=function(a,b,c,d,f){let g=[],i=0;d>0&&(g[i++]=new h(d,"",0,!1));let j=d;for(let k=0,l=c.getCount();k<l;k++){let l=c.getEndOffset(k);if(l<=d)continue;let m=c.getClassName(k);if(l>=f){let c=!!b&&e.E_(a.substring(j,f));g[i++]=new h(f,m,0,c);break}let n=!!b&&e.E_(a.substring(j,l));g[i++]=new h(l,m,0,n),j=l}return g}(f,a.containsRTL,a.lineTokens,a.fauxIndentLength,d);a.renderControlCharacters&&!a.isBasicASCII&&(i=function(a,b){let c=[],d=new h(0,"",0,!1),e=0;for(let f of b){let b=f.endIndex;for(;e<b;e++)r(a.charCodeAt(e))&&(e>d.endIndex&&(d=new h(e,f.type,f.metadata,f.containsRTL),c.push(d)),d=new h(e+1,"mtkcontrol",f.metadata,!1),c.push(d));e>d.endIndex&&(d=new h(b,f.type,f.metadata,f.containsRTL),c.push(d))}return c}(f,i)),(4===a.renderWhitespace||1===a.renderWhitespace||2===a.renderWhitespace&&a.selectionsOnLine||3===a.renderWhitespace&&!a.continuesWithWrappedLine)&&(i=function(a,b,c,d){let f,g=a.continuesWithWrappedLine,i=a.fauxIndentLength,j=a.tabSize,k=a.startVisibleColumn,l=a.useMonospaceOptimizations,m=a.selectionsOnLine,n=1===a.renderWhitespace,o=3===a.renderWhitespace,p=a.renderSpaceWidth!==a.spaceWidth,q=[],r=0,s=0,t=d[0].type,u=d[s].containsRTL,v=d[s].endIndex,w=d.length,x=!1,y=e.HG(b);-1===y?(x=!0,y=c,f=c):f=e.lT(b);let z=!1,A=0,B=m&&m[A],C=k%j;for(let a=i;a<c;a++){let g,k=b.charCodeAt(a);if(B&&B.endExclusive<=a&&(A++,B=m&&m[A]),a<y||a>f)g=!0;else if(9===k)g=!0;else if(32===k)if(n)if(z)g=!0;else{let d=a+1<c?b.charCodeAt(a+1):0;g=32===d||9===d}else g=!0;else g=!1;if(g&&m&&(g=!!B&&B.start<=a&&a<B.endExclusive),g&&o&&(g=x||a>f),g&&u&&a>=y&&a<=f&&(g=!1),z){if(!g||!l&&C>=j){if(p){let b=r>0?q[r-1].endIndex:i;for(let c=b+1;c<=a;c++)q[r++]=new h(c,"mtkw",1,!1)}else q[r++]=new h(a,"mtkw",1,!1);C%=j}}else(a===v||g&&a>i)&&(q[r++]=new h(a,t,0,u),C%=j);for(9===k?C=j:e.ne(k)?C+=2:C++,z=g;a===v;)if(++s<w)t=d[s].type,u=d[s].containsRTL,v=d[s].endIndex;else break}let D=!1;if(z)if(g&&n){let a=c>0?b.charCodeAt(c-1):0,d=c>1?b.charCodeAt(c-2):0;(32!==a||32===d||9===d)&&(D=!0)}else D=!0;if(D)if(p){let a=r>0?q[r-1].endIndex:i;for(let b=a+1;b<=c;b++)q[r++]=new h(b,"mtkw",1,!1)}else q[r++]=new h(c,"mtkw",1,!1);else q[r++]=new h(c,t,0,u);return q}(a,f,d,i));let j=0;if(a.lineDecorations.length>0){for(let b=0,c=a.lineDecorations.length;b<c;b++){let c=a.lineDecorations[b];3===c.type||1===c.type?j|=1:2===c.type&&(j|=2)}i=function(a,b,c,d){d.sort(g.d.compare);let e=g.Bs.normalize(a,d),f=e.length,i=0,j=[],k=0,l=0;for(let a=0,b=c.length;a<b;a++){let b=c[a],d=b.endIndex,g=b.type,m=b.metadata,n=b.containsRTL;for(;i<f&&e[i].startOffset<d;){let a=e[i];if(a.startOffset>l&&(l=a.startOffset,j[k++]=new h(l,g,m,n)),a.endOffset+1<=d)l=a.endOffset+1,j[k++]=new h(l,g+" "+a.className,m|a.metadata,n),i++;else{l=d,j[k++]=new h(l,g+" "+a.className,m|a.metadata,n);break}}d>l&&(l=d,j[k++]=new h(l,g,m,n))}let m=c[c.length-1].endIndex;if(i<f&&e[i].startOffset===m)for(;i<f&&e[i].startOffset===m;){let a=e[i];j[k++]=new h(l,a.className,a.metadata,!1),i++}return j}(f,0,i,a.lineDecorations)}return a.containsRTL||(i=function(a,b,c){let d=0,e=[],f=0;if(c)for(let c=0,g=b.length;c<g;c++){let g=b[c],i=g.endIndex;if(d+50<i){let b=g.type,c=g.metadata,j=g.containsRTL,k=-1,l=d;for(let g=d;g<i;g++)32===a.charCodeAt(g)&&(k=g),-1!==k&&g-l>=50&&(e[f++]=new h(k+1,b,c,j),l=k+1,k=-1);l!==i&&(e[f++]=new h(i,b,c,j))}else e[f++]=g;d=i}else for(let a=0,c=b.length;a<c;a++){let c=b[a],g=c.endIndex,i=g-d;if(i>50){let a=c.type,b=c.metadata,j=c.containsRTL,k=Math.ceil(i/50);for(let c=1;c<k;c++){let g=d+50*c;e[f++]=new h(g,a,b,j)}e[f++]=new h(g,a,b,j)}else e[f++]=c;d=g}return e}(f,i,!a.isBasicASCII||a.fontLigatures)),new q(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,f,d,b,c,i,j,a.fauxIndentLength,a.tabSize,a.startVisibleColumn,a.spaceWidth,a.renderSpaceCharCode,a.renderWhitespace,a.renderControlCharacters)}(a),b)}class o{constructor(a,b,c){this.characterMapping=a,this.html=b,this.containsForeignElements=c}}function p(a){let b=new f.fe(1e4),c=n(a,b);return new o(c.characterMapping,b.build(),c.containsForeignElements)}class q{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){this.fontIsMonospace=a,this.canUseHalfwidthRightwardsArrow=b,this.lineContent=c,this.len=d,this.isOverflowing=e,this.overflowingCharCount=f,this.parts=g,this.containsForeignElements=h,this.fauxIndentLength=i,this.tabSize=j,this.startVisibleColumn=k,this.spaceWidth=l,this.renderSpaceCharCode=m,this.renderWhitespace=n,this.renderControlCharacters=o}}function r(a){return a<32?9!==a:127===a||!!(a>=8234)&&!!(a<=8238)||!!(a>=8294)&&!!(a<=8297)||!!(a>=8206)&&!!(a<=8207)||1564===a}},16817:(a,b,c)=>{"use strict";c.d(b,{s:()=>e});var d=c(29949);class e{static whitespaceVisibleColumn(a,b,c){let e=a.length,f=0,g=-1,h=-1;for(let i=0;i<e;i++){if(i===b)return[g,h,f];switch(f%c==0&&(g=i,h=f),a.charCodeAt(i)){case 32:f+=1;break;case 9:f=d.A.nextRenderTabStop(f,c);break;default:return[-1,-1,-1]}}return b===e?[g,h,f]:[-1,-1,-1]}static atomicPosition(a,b,c,f){let g,h=a.length,[i,j,k]=e.whitespaceVisibleColumn(a,b,c);if(-1===k)return -1;switch(f){case 0:g=!0;break;case 1:g=!1;break;case 2:if(k%c==0)return b;g=k%c<=c/2}if(g){if(-1===i)return -1;let b=j;for(let e=i;e<h;++e){if(b===j+c)return i;switch(a.charCodeAt(e)){case 32:b+=1;break;case 9:b=d.A.nextRenderTabStop(b,c);break;default:return -1}}return b===j+c?i:-1}let l=d.A.nextRenderTabStop(k,c),m=k;for(let e=b;e<h;e++){if(m===l)return e;switch(a.charCodeAt(e)){case 32:m+=1;break;case 9:m=d.A.nextRenderTabStop(m,c);break;default:return -1}}return m===l?h:-1}}},17520:()=>{},18155:(a,b,c)=>{"use strict";c.d(b,{b:()=>d,t:()=>e});let d=function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID.bind(crypto);let a=new Uint8Array(16),b=[];for(let a=0;a<256;a++)b.push(a.toString(16).padStart(2,"0"));return function(){crypto.getRandomValues(a),a[6]=15&a[6]|64,a[8]=63&a[8]|128;let c=0,d="";return d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]]}}();function e(a){return`${a}-${d()}`}},18401:(a,b,c)=>{"use strict";c.d(b,{HJ:()=>k,LN:()=>h,YH:()=>j,ih:()=>l,rc:()=>g,wv:()=>i});var d=c(60734),e=c(11314),f=c(25536);class g extends e.jG{get onDidChange(){return this._onDidChange.event}constructor(a,b="",c="",e=!0,f){super(),this._onDidChange=this._register(new d.vl),this._enabled=!0,this._id=a,this._label=b,this._cssClass=c,this._enabled=e,this._actionCallback=f}get id(){return this._id}get label(){return this._label}set label(a){this._setLabel(a)}_setLabel(a){this._label!==a&&(this._label=a,this._onDidChange.fire({label:a}))}get tooltip(){return this._tooltip||""}set tooltip(a){this._setTooltip(a)}_setTooltip(a){this._tooltip!==a&&(this._tooltip=a,this._onDidChange.fire({tooltip:a}))}get class(){return this._cssClass}set class(a){this._setClass(a)}_setClass(a){this._cssClass!==a&&(this._cssClass=a,this._onDidChange.fire({class:a}))}get enabled(){return this._enabled}set enabled(a){this._setEnabled(a)}_setEnabled(a){this._enabled!==a&&(this._enabled=a,this._onDidChange.fire({enabled:a}))}get checked(){return this._checked}set checked(a){this._setChecked(a)}_setChecked(a){this._checked!==a&&(this._checked=a,this._onDidChange.fire({checked:a}))}async run(a,b){this._actionCallback&&await this._actionCallback(a)}}class h extends e.jG{constructor(){super(...arguments),this._onWillRun=this._register(new d.vl),this._onDidRun=this._register(new d.vl)}get onWillRun(){return this._onWillRun.event}get onDidRun(){return this._onDidRun.event}async run(a,b){let c;if(a.enabled){this._onWillRun.fire({action:a});try{await this.runAction(a,b)}catch(a){c=a}this._onDidRun.fire({action:a,error:c})}}async runAction(a,b){await a.run(b)}}class i{constructor(){this.id=i.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...a){let b=[];for(let c of a)c.length&&(b=b.length?[...b,new i,...c]:c);return b}static{this.ID="vs.actions.separator"}async run(){}}class j{get actions(){return this._actions}constructor(a,b,c,d){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=a,this.label=b,this.class=d,this._actions=c}async run(){}}class k extends g{static{this.ID="vs.actions.empty"}constructor(){super(k.ID,f.kg(28,"(empty)"),void 0,!1)}}function l(a){return{id:a.id,label:a.label,tooltip:a.tooltip??a.label,class:a.class,enabled:a.enabled??!0,checked:a.checked,run:async(...b)=>a.run(...b)}}},18732:(a,b,c)=>{"use strict";c.d(b,{B8:()=>aa,MH:()=>T,_C:()=>d,W0:()=>J,Bm:()=>function a(b){return!!("A"===b.tagName&&b.classList.contains("monaco-button")||"DIV"===b.tagName&&b.classList.contains("monaco-button-dropdown"))||!b.classList.contains("monaco-list")&&!!b.parentElement&&a(b.parentElement)},b$:()=>I,bm:()=>H,mh:()=>R,tX:()=>Q,Es:()=>L,xu:()=>K,bG:()=>V});var d,e,f=c(32677),g=c(76136),h=c(88077),i=c(67397),j=c(31662),k=c(98350),l=c(98867);class m{constructor(a){this.spliceables=a}splice(a,b,c){this.spliceables.forEach(d=>d.splice(a,b,c))}}var n=c(54734),o=c(40565),p=c(23949),q=c(53578),r=c(60734),s=c(58557),t=c(11314),u=c(61496),v=c(56167),w=c(46339);c(45669);class x extends Error{constructor(a,b){super(`ListError [${a}] ${b}`)}}var y=c(85157),z=c(21280),A=c(43589),B=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};class C{constructor(a){this.trait=a,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(a){return a}renderElement(a,b,c){let d=this.renderedElements.findIndex(a=>a.templateData===c);if(d>=0){let a=this.renderedElements[d];this.trait.unrender(c),a.index=b}else this.renderedElements.push({index:b,templateData:c});this.trait.renderIndex(b,c)}splice(a,b,c){let d=[];for(let e of this.renderedElements)e.index<a?d.push(e):e.index>=a+b&&d.push({index:e.index+c-b,templateData:e.templateData});this.renderedElements=d}renderIndexes(a){for(let{index:b,templateData:c}of this.renderedElements)a.indexOf(b)>-1&&this.trait.renderIndex(b,c)}disposeTemplate(a){let b=this.renderedElements.findIndex(b=>b.templateData===a);b<0||this.renderedElements.splice(b,1)}}class D{get onChange(){return this._onChange.event}get name(){return this._trait}get renderer(){return new C(this)}constructor(a){this._trait=a,this.indexes=[],this.sortedIndexes=[],this._onChange=new r.vl}splice(a,b,c){let d=c.length-b,e=a+b,f=[],g=0;for(;g<this.sortedIndexes.length&&this.sortedIndexes[g]<a;)f.push(this.sortedIndexes[g++]);for(let b=0;b<c.length;b++)c[b]&&f.push(b+a);for(;g<this.sortedIndexes.length&&this.sortedIndexes[g]>=e;)f.push(this.sortedIndexes[g++]+d);this.renderer.splice(a,b,c.length),this._set(f,f)}renderIndex(a,b){b.classList.toggle(this._trait,this.contains(a))}unrender(a){a.classList.remove(this._trait)}set(a,b){return this._set(a,[...a].sort(Y),b)}_set(a,b,c){let d=this.indexes,e=this.sortedIndexes;this.indexes=a,this.sortedIndexes=b;let f=X(e,a);return this.renderer.renderIndexes(f),this._onChange.fire({indexes:a,browserEvent:c}),d}get(){return this.indexes}contains(a){return(0,n.El)(this.sortedIndexes,a,Y)>=0}dispose(){(0,t.AS)(this._onChange)}}B([q.B],D.prototype,"renderer",null);class E extends D{constructor(a){super("selected"),this.setAriaSelected=a}renderIndex(a,b){super.renderIndex(a,b),this.setAriaSelected&&(this.contains(a)?b.setAttribute("aria-selected","true"):b.setAttribute("aria-selected","false"))}}class F{constructor(a,b,c){this.trait=a,this.view=b,this.identityProvider=c}splice(a,b,c){if(!this.identityProvider)return this.trait.splice(a,b,Array(c.length).fill(!1));let d=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(0===d.length)return this.trait.splice(a,b,Array(c.length).fill(!1));let e=new Set(d),f=c.map(a=>e.has(this.identityProvider.getId(a).toString()));this.trait.splice(a,b,f)}}function G(a,b){return!!a.classList.contains(b)||!a.classList.contains("monaco-list")&&!!a.parentElement&&G(a.parentElement,b)}function H(a){return G(a,"monaco-editor")}function I(a){return G(a,"monaco-custom-toggle")}function J(a){return G(a,"action-item")}function K(a){return G(a,"monaco-tree-sticky-row")}function L(a){return a.classList.contains("monaco-tree-sticky-container")}class M{get onKeyDown(){return r.Jh.chain(this.disposables.add(new i.f(this.view.domNode,"keydown")).event,a=>a.filter(a=>!(0,f.yD)(a.target)).map(a=>new j.Z(a)))}constructor(a,b,c){this.list=a,this.view=b,this.disposables=new t.Cm,this.multipleSelectionDisposables=new t.Cm,this.multipleSelectionSupport=c.multipleSelectionSupport,this.disposables.add(this.onKeyDown(a=>{switch(a.keyCode){case 3:return this.onEnter(a);case 16:return this.onUpArrow(a);case 18:return this.onDownArrow(a);case 11:return this.onPageUpArrow(a);case 12:return this.onPageDownArrow(a);case 9:return this.onEscape(a);case 31:this.multipleSelectionSupport&&(v.zx?a.metaKey:a.ctrlKey)&&this.onCtrlA(a)}}))}updateOptions(a){void 0!==a.multipleSelectionSupport&&(this.multipleSelectionSupport=a.multipleSelectionSupport)}onEnter(a){a.preventDefault(),a.stopPropagation(),this.list.setSelection(this.list.getFocus(),a.browserEvent)}onUpArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusPrevious(1,!1,a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onDownArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusNext(1,!1,a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onPageUpArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusPreviousPage(a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onPageDownArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusNextPage(a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onCtrlA(a){a.preventDefault(),a.stopPropagation(),this.list.setSelection((0,n.y1)(this.list.length),a.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(a){this.list.getSelection().length&&(a.preventDefault(),a.stopPropagation(),this.list.setSelection([],a.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}B([q.B],M.prototype,"onKeyDown",null),function(a){a[a.Automatic=0]="Automatic",a[a.Trigger=1]="Trigger"}(d||(d={})),function(a){a[a.Idle=0]="Idle",a[a.Typing=1]="Typing"}(e||(e={}));let N=new class{mightProducePrintableCharacter(a){return!a.ctrlKey&&!a.metaKey&&!a.altKey&&(a.keyCode>=31&&a.keyCode<=56||a.keyCode>=21&&a.keyCode<=30||a.keyCode>=98&&a.keyCode<=107||a.keyCode>=85&&a.keyCode<=95)}};class O{constructor(a,b,c,f,g){this.list=a,this.view=b,this.keyboardNavigationLabelProvider=c,this.keyboardNavigationEventFilter=f,this.delegate=g,this.enabled=!1,this.state=e.Idle,this.mode=d.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new t.Cm,this.disposables=new t.Cm,this.updateOptions(a.options)}updateOptions(a){a.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=a.typeNavigationMode??d.Automatic}enable(){if(this.enabled)return;let a=!1,b=r.Jh.chain(this.enabledDisposables.add(new i.f(this.view.domNode,"keydown")).event,b=>b.filter(a=>!(0,f.yD)(a.target)).filter(()=>this.mode===d.Automatic||this.triggered).map(a=>new j.Z(a)).filter(b=>a||this.keyboardNavigationEventFilter(b)).filter(a=>this.delegate.mightProducePrintableCharacter(a)).forEach(a=>f.fs.stop(a,!0)).map(a=>a.browserEvent.key)),c=r.Jh.debounce(b,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);r.Jh.reduce(r.Jh.any(b,c),(a,b)=>null===b?null:(a||"")+b,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),c(this.onClear,this,this.enabledDisposables),b(()=>a=!0,void 0,this.enabledDisposables),c(()=>a=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){let a=this.list.getFocus();if(a.length>0&&a[0]===this.previouslyFocused){let b=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(a[0]));"string"==typeof b?(0,l.xE)(b):b&&(0,l.xE)(b.get())}this.previouslyFocused=-1}onInput(a){if(!a){this.state=e.Idle,this.triggered=!1;return}let b=this.list.getFocus(),c=b.length>0?b[0]:0,d=+(this.state===e.Idle);this.state=e.Typing;for(let b=0;b<this.list.length;b++){let e=(c+b+d)%this.list.length,f=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(this.view.element(e)),g=f&&f.toString();if(this.list.options.typeNavigationEnabled){if(void 0!==g){if((0,s.WP)(a,g)){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}let b=(0,s.O)(a,g);if(b&&b[0].end-b[0].start>1&&1===b.length){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}}}else if(void 0===g||(0,s.WP)(a,g)){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class P{constructor(a,b){this.list=a,this.view=b,this.disposables=new t.Cm;let c=r.Jh.chain(this.disposables.add(new i.f(b.domNode,"keydown")).event,a=>a.filter(a=>!(0,f.yD)(a.target)).map(a=>new j.Z(a)));r.Jh.chain(c,a=>a.filter(a=>2===a.keyCode&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&!a.altKey))(this.onTab,this,this.disposables)}onTab(a){if(a.target!==this.view.domNode)return;let b=this.list.getFocus();if(0===b.length)return;let c=this.view.domElement(b[0]);if(!c)return;let d=c.querySelector("[tabIndex]");if(!d||!(0,f.sb)(d)||-1===d.tabIndex)return;let e=(0,f.zk)(d).getComputedStyle(d);"hidden"!==e.visibility&&"none"!==e.display&&(a.preventDefault(),a.stopPropagation(),d.focus())}dispose(){this.disposables.dispose()}}function Q(a){return v.zx?a.browserEvent.metaKey:a.browserEvent.ctrlKey}function R(a){return a.browserEvent.shiftKey}let S={isSelectionSingleChangeEvent:Q,isSelectionRangeChangeEvent:R};class T{get onPointer(){return this._onPointer.event}constructor(a){this.list=a,this.disposables=new t.Cm,this._onPointer=this.disposables.add(new r.vl),!1!==a.options.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||S),this.mouseSupport=void 0===a.options.mouseSupport||!!a.options.mouseSupport,this.mouseSupport&&(a.onMouseDown(this.onMouseDown,this,this.disposables),a.onContextMenu(this.onContextMenu,this,this.disposables),a.onMouseDblClick(this.onDoubleClick,this,this.disposables),a.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(k.q.addTarget(a.getHTMLElement()))),r.Jh.any(a.onMouseClick,a.onMouseMiddleClick,a.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(a){void 0!==a.multipleSelectionSupport&&(this.multipleSelectionController=void 0,a.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||S))}isSelectionSingleChangeEvent(a){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionSingleChangeEvent(a)}isSelectionRangeChangeEvent(a){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionRangeChangeEvent(a)}isSelectionChangeEvent(a){return this.isSelectionSingleChangeEvent(a)||this.isSelectionRangeChangeEvent(a)}onMouseDown(a){H(a.browserEvent.target)||(0,f.bq)()!==a.browserEvent.target&&this.list.domFocus()}onContextMenu(a){if((0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target))return;let b=void 0===a.index?[]:[a.index];this.list.setFocus(b,a.browserEvent)}onViewPointer(a){var b;if(!this.mouseSupport||(0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target)||a.browserEvent.isHandledByList)return;a.browserEvent.isHandledByList=!0;let c=a.index;if(void 0===c){this.list.setFocus([],a.browserEvent),this.list.setSelection([],a.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(a))return this.changeSelection(a);this.list.setFocus([c],a.browserEvent),this.list.setAnchor(c),b=a.browserEvent,(0,f.Er)(b)&&2===b.button||this.list.setSelection([c],a.browserEvent),this._onPointer.fire(a)}onDoubleClick(a){if((0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target)||this.isSelectionChangeEvent(a)||a.browserEvent.isHandledByList)return;a.browserEvent.isHandledByList=!0;let b=this.list.getFocus();this.list.setSelection(b,a.browserEvent)}changeSelection(a){let b=a.index,c=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(a)){void 0===c&&(c=this.list.getFocus()[0]??b,this.list.setAnchor(c));let d=Math.min(c,b),e=Math.max(c,b),f=(0,n.y1)(d,e+1),g=this.list.getSelection(),h=function(a,b){let c=a.indexOf(b);if(-1===c)return[];let d=[],e=c-1;for(;e>=0&&a[e]===b-(c-e);)d.push(a[e--]);for(d.reverse(),e=c;e<a.length&&a[e]===b+(e-c);)d.push(a[e++]);return d}(X(g,[c]),c);if(0===h.length)return;let i=X(f,function(a,b){let c=[],d=0,e=0;for(;d<a.length||e<b.length;)if(d>=a.length)c.push(b[e++]);else if(e>=b.length)c.push(a[d++]);else if(a[d]===b[e]){d++,e++;continue}else a[d]<b[e]?c.push(a[d++]):e++;return c}(g,h));this.list.setSelection(i,a.browserEvent),this.list.setFocus([b],a.browserEvent)}else if(this.isSelectionSingleChangeEvent(a)){let c=this.list.getSelection(),d=c.filter(a=>a!==b);this.list.setFocus([b]),this.list.setAnchor(b),c.length===d.length?this.list.setSelection([...d,b],a.browserEvent):this.list.setSelection(d,a.browserEvent)}}dispose(){this.disposables.dispose()}}class U{constructor(a,b){this.styleElement=a,this.selectorSuffix=b}style(a){let b=this.selectorSuffix&&`.${this.selectorSuffix}`,c=[];a.listBackground&&c.push(`.monaco-list${b} .monaco-list-rows { background: ${a.listBackground}; }`),a.listFocusBackground&&(c.push(`.monaco-list${b}:focus .monaco-list-row.focused { background-color: ${a.listFocusBackground}; }`),c.push(`.monaco-list${b}:focus .monaco-list-row.focused:hover { background-color: ${a.listFocusBackground}; }`)),a.listFocusForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.focused { color: ${a.listFocusForeground}; }`),a.listActiveSelectionBackground&&(c.push(`.monaco-list${b}:focus .monaco-list-row.selected { background-color: ${a.listActiveSelectionBackground}; }`),c.push(`.monaco-list${b}:focus .monaco-list-row.selected:hover { background-color: ${a.listActiveSelectionBackground}; }`)),a.listActiveSelectionForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.selected { color: ${a.listActiveSelectionForeground}; }`),a.listActiveSelectionIconForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.selected .codicon { color: ${a.listActiveSelectionIconForeground}; }`),a.listFocusAndSelectionBackground&&c.push(`
|
|
29
|
+
Slabs: ${this._slabs.length} of ${Math.floor(this._canvas.width/i)*Math.floor(this._canvas.height/i)}`}}function n(a,b,c){let d=a.get(b);d||(d=[],a.set(b,d)),d.push(c)}var o=function(a,b){return function(c,d){b(c,d,a)}};let p=class extends e.jG{static{d=this}get version(){return this._version}static{this.maximumGlyphCount=5e3}get usedArea(){return this._usedArea}get source(){return this._canvas}get glyphs(){return this._glyphInOrderSet.values()}constructor(a,b,c,d,g){switch(super(),this._logService=d,this._version=0,this._usedArea={left:0,top:0,right:0,bottom:0},this._glyphMap=new f.QO,this._glyphInOrderSet=new Set,this._canvas=new OffscreenCanvas(b,b),this._colorMap=g.getColorTheme().tokenColorMap,c){case"shelf":this._allocator=new k(this._canvas,a);break;case"slab":this._allocator=new m(this._canvas,a);break;default:this._allocator=c(this._canvas,a)}this._register((0,e.s)(()=>{this._canvas.width=1,this._canvas.height=1}))}getGlyph(a,b,c,d){return this._glyphMap.get(b,c,d,a.cacheKey)??this._createGlyph(a,b,c,d)}_createGlyph(a,b,c,e){if(this._glyphInOrderSet.size>=d.maximumGlyphCount)return;let f=a.rasterizeGlyph(b,c,e,this._colorMap),h=this._allocator.allocate(f);if(void 0!==h)return this._glyphMap.set(h,b,c,e,a.cacheKey),this._glyphInOrderSet.add(h),this._version++,this._usedArea.right=Math.max(this._usedArea.right,h.x+h.w-1),this._usedArea.bottom=Math.max(this._usedArea.bottom,h.y+h.h-1),this._logService.getLevel()===g.$b.Trace&&this._logService.trace("New glyph",{chars:b,tokenMetadata:c,decorationStyleSetId:e,rasterizedGlyph:f,glyph:h}),h}getUsagePreview(){return this._allocator.getUsagePreview()}getStats(){return this._allocator.getStats()}};p=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([o(3,g.rr),o(4,h.Gy)],p)},11053:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=(0,c(29715).u1)("codeEditorService")},11314:(a,b,c)=>{"use strict";c.d(b,{$w:()=>s,AS:()=>j,Ay:()=>e,BO:()=>r,Cm:()=>n,HE:()=>p,VD:()=>f,Xm:()=>i,jG:()=>o,lC:()=>h,mp:()=>q,qE:()=>k,s:()=>m});var d=c(16374);function e(a){return a}function f(a){}function g(a,b){}function h(a){return a}function i(a){return"object"==typeof a&&null!==a&&"function"==typeof a.dispose&&0===a.dispose.length}function j(a){if(d.f.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function k(...a){let b=m(()=>j(a));!1;return b}class l{constructor(a){this._isDisposed=!1,this._fn=a,e(this)}dispose(){if(!this._isDisposed){if(!this._fn)throw Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,f(this),this._fn()}}}function m(a){return new l(a)}class n{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1,e(this)}dispose(){this._isDisposed||(f(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{j(this._toDispose)}finally{this._toDispose.clear()}}add(a){if(!a||a===o.None)return a;if(a===this)throw Error("Cannot register a disposable on itself!");return g(a,this),this._isDisposed?n.DISABLE_DISPOSED_WARNING||console.warn(Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(a),a}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}}class o{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new n,e(this),g(this._store,this)}dispose(){f(this),this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}}class p{constructor(){this._isDisposed=!1,e(this)}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),a&&g(a,this),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,f(this),this._value?.dispose(),this._value=void 0}}class q{constructor(a){this._disposable=a,this._counter=1}acquire(){return this._counter++,this}release(){return 0==--this._counter&&this._disposable.dispose(),this}}class r{constructor(a){this.object=a}dispose(){}}class s{constructor(){this._store=new Map,this._isDisposed=!1,e(this)}dispose(){f(this),this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{j(this._store.values())}finally{this._store.clear()}}get(a){return this._store.get(a)}set(a,b,c=!1){this._isDisposed&&console.warn(Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),c||this._store.get(a)?.dispose(),this._store.set(a,b),g(b,this)}deleteAndDispose(a){this._store.get(a)?.dispose(),this._store.delete(a)}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}},11487:()=>{},11583:(a,b,c)=>{"use strict";c.d(b,{B6:()=>d,Fd:()=>t,LC:()=>q,P8:()=>p,Pi:()=>o,er:()=>m,iZ:()=>u,n4:()=>n,o1:()=>v,pD:()=>r,su:()=>k,uJ:()=>s});var d,e=c(31122),f=c(18920),g=c(76687),h=c(56167),i=c(98447),j=c(45640);function k(a){return(0,j.I)(a,!0)}class l{constructor(a){this._ignorePathCasing=a}compare(a,b,c=!1){return a===b?0:(0,i.UD)(this.getComparisonKey(a,c),this.getComparisonKey(b,c))}isEqual(a,b,c=!1){return a===b||!!a&&!!b&&this.getComparisonKey(a,c)===this.getComparisonKey(b,c)}getComparisonKey(a,b=!1){return a.with({path:this._ignorePathCasing(a)?a.path.toLowerCase():void 0,fragment:b?null:void 0}).toString()}isEqualOrParent(a,b,c=!1){if(a.scheme===b.scheme){if(a.scheme===f.ny.file)return e._1(k(a),k(b),this._ignorePathCasing(a))&&a.query===b.query&&(c||a.fragment===b.fragment);if(w(a.authority,b.authority))return e._1(a.path,b.path,this._ignorePathCasing(a),"/")&&a.query===b.query&&(c||a.fragment===b.fragment)}return!1}joinPath(a,...b){return j.r.joinPath(a,...b)}basenameOrAuthority(a){return p(a)||a.authority}basename(a){return g.SA.basename(a.path)}extname(a){return g.SA.extname(a.path)}dirname(a){let b;return 0===a.path.length?a:(a.scheme===f.ny.file?b=j.r.file(g.pD(k(a))).path:(b=g.SA.dirname(a.path),a.authority&&b.length&&47!==b.charCodeAt(0)&&(console.error(`dirname("${a.toString})) resulted in a relative path`),b="/")),a.with({path:b}))}normalizePath(a){let b;return a.path.length?(b=a.scheme===f.ny.file?j.r.file(g.S8(k(a))).path:g.SA.normalize(a.path),a.with({path:b})):a}relativePath(a,b){if(a.scheme!==b.scheme||!w(a.authority,b.authority))return;if(a.scheme===f.ny.file){let c=g.V8(k(a),k(b));return h.uF?e.TH(c):c}let c=a.path||"/",d=b.path||"/";if(this._ignorePathCasing(a)){let a=0;for(let b=Math.min(c.length,d.length);a<b&&(c.charCodeAt(a)===d.charCodeAt(a)||c.charAt(a).toLowerCase()===d.charAt(a).toLowerCase());a++);c=d.substr(0,a)+c.substr(a)}return g.SA.relative(c,d)}resolvePath(a,b){if(a.scheme===f.ny.file){let c=j.r.file(g.hd(k(a),b));return a.with({authority:c.authority,path:c.path})}return b=e.kb(b),a.with({path:g.SA.resolve(a.path,b)})}isAbsolutePath(a){return!!a.path&&"/"===a.path[0]}isEqualAuthority(a,b){return a===b||void 0!==a&&void 0!==b&&(0,i.Q_)(a,b)}hasTrailingPathSeparator(a,b=g.Vn){if(a.scheme===f.ny.file){let c=k(a);return c.length>e.Zn(c).length&&c[c.length-1]===b}{let b=a.path;return b.length>1&&47===b.charCodeAt(b.length-1)&&!/^[a-zA-Z]:(\/$|\\$)/.test(a.fsPath)}}removeTrailingPathSeparator(a,b=g.Vn){return x(a,b)?a.with({path:a.path.substr(0,a.path.length-1)}):a}addTrailingPathSeparator(a,b=g.Vn){let c=!1;if(a.scheme===f.ny.file){let d=k(a);c=void 0!==d&&d.length===e.Zn(d).length&&d[d.length-1]===b}else{b="/";let d=a.path;c=1===d.length&&47===d.charCodeAt(d.length-1)}return c||x(a,b)?a:a.with({path:a.path+"/"})}}let m=new l(()=>!1);new l(a=>a.scheme!==f.ny.file||!h.j9),new l(a=>!0);let n=m.isEqual.bind(m);m.isEqualOrParent.bind(m),m.getComparisonKey.bind(m);let o=m.basenameOrAuthority.bind(m),p=m.basename.bind(m),q=m.extname.bind(m),r=m.dirname.bind(m),s=m.joinPath.bind(m),t=m.normalizePath.bind(m),u=m.relativePath.bind(m),v=m.resolvePath.bind(m);m.isAbsolutePath.bind(m);let w=m.isEqualAuthority.bind(m),x=m.hasTrailingPathSeparator.bind(m);m.removeTrailingPathSeparator.bind(m),m.addTrailingPathSeparator.bind(m),function(a){a.META_DATA_LABEL="label",a.META_DATA_DESCRIPTION="description",a.META_DATA_SIZE="size",a.META_DATA_MIME="mime",a.parseMetaData=function(b){let c=new Map;b.path.substring(b.path.indexOf(";")+1,b.path.lastIndexOf(";")).split(";").forEach(a=>{let[b,d]=a.split(":");b&&d&&c.set(b,d)});let d=b.path.substring(0,b.path.indexOf(";"));return d&&c.set(a.META_DATA_MIME,d),c}}(d||(d={}))},11628:(a,b,c)=>{"use strict";c.d(b,{x:()=>f});var d=c(49982),e=c(56167);let f={DateTimeFormat:(a,b)=>new d.d(()=>{try{return new Intl.DateTimeFormat(a,b)}catch{return new Intl.DateTimeFormat(void 0,b)}}),Collator:(a,b)=>new d.d(()=>{try{return new Intl.Collator(a,b)}catch{return new Intl.Collator(void 0,b)}}),Segmenter:(a,b)=>new d.d(()=>{try{return new Intl.Segmenter(a,b)}catch{return new Intl.Segmenter(void 0,b)}}),Locale:(a,b)=>new d.d(()=>{try{return new Intl.Locale(a,b)}catch{return new Intl.Locale(e.ti,b)}}),NumberFormat:(a,b)=>new d.d(()=>{try{return new Intl.NumberFormat(a,b)}catch{return new Intl.NumberFormat(void 0,b)}})}},11866:(a,b,c)=>{"use strict";c.d(b,{Np:()=>f,jA:()=>g,z9:()=>e});var d=c(15380);function e(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.ICodeEditor}function f(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.IDiffEditor}function g(a){return e(a)?a:f(a)?a.getModifiedEditor():a&&"object"==typeof a&&"function"==typeof a.onDidChangeActiveEditor&&e(a.activeCodeEditor)?a.activeCodeEditor:null}},12650:()=>{},12783:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});class d{constructor(a,b,c,d,e,f,g){this.id=a,this.label=b,this.alias=c,this.metadata=d,this._precondition=e,this._run=f,this._contextKeyService=g}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(a){return this.isSupported()?this._run(a):Promise.resolve(void 0)}}},13516:()=>{},13655:(a,b,c)=>{"use strict";c.d(b,{G$:()=>i,Of:()=>f,r0:()=>g,rr:()=>h});var d=c(25536);class e{constructor(a,b,c=b){this.modifierLabels=[null],this.modifierLabels[2]=a,this.modifierLabels[1]=b,this.modifierLabels[3]=c}toLabel(a,b,c){if(0===b.length)return null;let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=c(f);if(null===g)return null;d[e]=function(a,b,c){if(null===b)return"";let d=[];return a.ctrlKey&&d.push(c.ctrlKey),a.shiftKey&&d.push(c.shiftKey),a.altKey&&d.push(c.altKey),a.metaKey&&d.push(c.metaKey),""!==b&&d.push(b),d.join(c.separator)}(f,g,this.modifierLabels[a])}return d.join(" ")}}let f=new e({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:d.kg(35,"Ctrl"),shiftKey:d.kg(36,"Shift"),altKey:d.kg(37,"Alt"),metaKey:d.kg(38,"Windows"),separator:"+"},{ctrlKey:d.kg(39,"Ctrl"),shiftKey:d.kg(40,"Shift"),altKey:d.kg(41,"Alt"),metaKey:d.kg(42,"Super"),separator:"+"}),g=new e({ctrlKey:d.kg(43,"Control"),shiftKey:d.kg(44,"Shift"),altKey:d.kg(45,"Option"),metaKey:d.kg(46,"Command"),separator:"+"},{ctrlKey:d.kg(47,"Control"),shiftKey:d.kg(48,"Shift"),altKey:d.kg(49,"Alt"),metaKey:d.kg(50,"Windows"),separator:"+"},{ctrlKey:d.kg(51,"Control"),shiftKey:d.kg(52,"Shift"),altKey:d.kg(53,"Alt"),metaKey:d.kg(54,"Super"),separator:"+"}),h=new e({ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Cmd",separator:"+"},{ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Super",separator:"+"}),i=new e({ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"cmd",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"win",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"meta",separator:"+"})},13816:(a,b,c)=>{"use strict";c.d(b,{J:()=>f,U:()=>e});var d=c(29715);let e=(0,d.u1)("textResourceConfigurationService"),f=(0,d.u1)("textResourcePropertiesService")},14088:(a,b,c)=>{"use strict";c.d(b,{Ho:()=>b4,kI:()=>b5,Bz:()=>bW,oL:()=>bX});var d,e,f,g=c(54734),h=c(23949),i=c(88347),j=c(60734),k=c(11314),l=c(98447),m=c(45640),n=c(6657),o=c(25146),p=c(79677),q=c(59317),r=c(32146),s=c(93835),t=c(81190),u=c(59298),v=c(34747),w=c(65576),x=c(61004);class y{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class z{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class A extends z{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var B=c(88662),C=c(63506),D=c(25247),E=c(41502),F=c(23316),G=c(38066),H=c(41500);class I extends k.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=new j.vl,this.denseKeyProvider=new F.Mg,this.brackets=new C.Z(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{let a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new G._(this.textModel.getValue(),a);this.initialAstWithoutTokens=(0,E.T)(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new B.c((0,D.qe)(a.fromLineNumber-1,0),(0,D.qe)(a.toLineNumber,0),(0,D.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=B.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,H.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,H.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(a,b,c){let d=new G.tk(this.textModel,this.brackets);return(0,E.T)(d,a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,D.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,D.qe)(a.endLineNumber-1,a.endColumn-1);return new g.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;b:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,D.QB)(c,i.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)){if((0,D.o0)(d,f)){b=i;continue b}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,D.QB)(c,n.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)){if((0,D.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue b}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new y((0,D.Qx)(c,d),h-1,0,!0));case 1:return g(new y((0,D.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,D.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,D.VL)(a.getStartPosition()),d=(0,D.VL)(a.getEndPosition());return new g.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new J(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,D.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new A((0,D.Qx)(c,d),(0,D.Qx)(c,l),b.closingBracket?(0,D.Qx)((0,D.QB)(l,b.child?.length||D.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,D.QB)(c,k.length),(0,D.vr)(c,f)&&(0,D.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,D.QB)(d,c.length),(0,D.vr)(b,f)&&(0,D.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,D.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,D.QB)(c,f.length),(0,D.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,D.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,D.Vp,b.length,(0,D.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,D.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,D.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,D.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,D.Vp,b.length,(0,D.VL)(a))}}class J{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class K extends k.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new k.HE),this.onDidChangeEmitter=new j.vl,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new k.Cm;this.bracketPairsTree.value=(a=c.add(new I(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||g.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||g.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||g.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(q.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?N(this._findMatchingBracketUp(g,d,L(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(q.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,g.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,q.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=L(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,w.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,w.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,w.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=x.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof M)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,w.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=x.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof M?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof M?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return M.INSTANCE;let j=x.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,w.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return M.INSTANCE;let j=x.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,w.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,w.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=x.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,w.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=x.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=q.Q.fromPositions(c),b=this.getBracketPairsInRange(q.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=L(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return M.INSTANCE;let h=x.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,w.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return N(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function L(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class M{static{this.INSTANCE=new M}constructor(){this._searchCanceledBrand=void 0}}function N(a){return a instanceof M?null:a}var O=c(27499),P=c(42484);class Q extends k.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new R,this.onDidChangeEmitter=new j.vl,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d){return d||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new q.Q(1,1,this.textModel.getLineCount(),1),a,b):[]}}class R{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,P.zy)((a,b)=>{let c=[O.sN,O.lQ,O.ss,O.l5,O.sH,O.zp],d=new R;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(O.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var S=c(33840),T=c(72070);class U{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function V(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new U;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(f=0,e.spacesDiff=0,e.looksLikeAlignment=!1;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=k?0:.1*d;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=i[4]/2&&(l=2)}return{insertSpaces:k,tabSize:l}}function W(a){return(1&a.metadata)>>>0}function X(a,b){a.metadata=254&a.metadata|(0|b)}function Y(a){return(2&a.metadata)>>>1==1}function Z(a,b){a.metadata=253&a.metadata|!!b<<1}function $(a){return(4&a.metadata)>>>2==1}function _(a,b){a.metadata=251&a.metadata|!!b<<2}function aa(a){return(64&a.metadata)>>>6==1}function ab(a,b){a.metadata=191&a.metadata|!!b<<6}function ac(a){return(128&a.metadata)>>>7==1}function ad(a,b){a.metadata=127&a.metadata|!!b<<7}function ae(a,b){a.metadata=231&a.metadata|b<<3}function af(a,b){a.metadata=223&a.metadata|!!b<<5}class ag{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,X(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,_(this,!1),ab(this,!1),ae(this,1),af(this,!1),ad(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,Z(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;_(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),ab(this,null!==this.options.glyphMarginClassName),ae(this,this.options.stickiness),af(this,this.options.collapseOnReplaceEdit),ad(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let ah=new ag(null,0,0);ah.parent=ah,ah.left=ah,ah.right=ah,X(ah,0);class ai{constructor(){this.root=ah,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===ah?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==ah;){if(Y(i)){Z(i.left,!1),Z(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!Y(i.left)){if(j+i.maxEnd<b){Z(i,!0);continue}if(i.left!==ah){i=i.left;continue}}if((k=j+i.start)>c){Z(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&$(i)&&(a=!1),f&&ac(i)&&(a=!1),h&&!aa(i)&&(a=!1),a&&(m[n++]=i)}if(Z(i,!0),i.right!==ah&&!Y(i.right)){j+=i.delta,i=i.right;continue}}return Z(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===ah?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==ah;){if(Y(g)){Z(g.left,!1),Z(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==ah&&!Y(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&$(g)&&(a=!1),d&&ac(g)&&(a=!1),f&&!aa(g)&&(a=!1),a&&(k[l++]=g),Z(g,!0),g.right!==ah&&!Y(g.right)){h+=g.delta,g=g.right;continue}}return Z(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==ah;){if(Y(c)){Z(c.left,!1),Z(c.right,!1),c=c.parent;continue}if(c.left!==ah&&!Y(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),Z(c,!0),c.right!==ah&&!Y(c.right)){c=c.right;continue}}return Z(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==ah;){if(Y(b)){Z(b.left,!1),Z(b.right,!1),b=b.parent;continue}if(b.left!==ah&&!Y(b.left)){b=b.left;continue}if(b.right!==ah&&!Y(b.right)){b=b.right;continue}c[d++]=b,Z(b,!0)}return Z(a.root,!1),c}(this)}insert(a){ak(this,a),this._normalizeDeltaIfNecessary()}delete(a){al(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==ah;){if(Y(d)){Z(d.left,!1),Z(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!Y(d.left)){if(e+d.maxEnd<b){Z(d,!0);continue}if(d.left!==ah){d=d.left;continue}}if((f=e+d.start)>c){Z(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),Z(d,!0),d.right!==ah&&!Y(d.right)){e+=d.delta,d=d.right;continue}}return Z(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)al(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==ah;){if(Y(e)){Z(e.left,!1),Z(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),aq(e),e=e.parent;continue}if(!Y(e.left)){if(f+e.maxEnd<b){Z(e,!0);continue}if(e.left!==ah){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),Z(e,!0);continue}if(Z(e,!0),e.right!==ah&&!Y(e.right)){f+=e.delta,e=e.right;continue}}Z(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&aj(k,g,b,a)&&(l=!0),!n&&aj(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&aj(k,g,b+j,a)&&(l=!0),!n&&aj(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&aj(k,g,c,f)&&(a.start=b+d,l=!0),!n&&aj(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,ak(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==ah;){if(b.left!==ah&&!Y(b.left)){b=b.left;continue}if(b.right!==ah&&!Y(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,aq(b),Z(b,!0),Z(b.left,!1),Z(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}Z(a.root,!1)}(this))}}function aj(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function ak(a,b){if(a.root===ah)return b.parent=ah,b.left=ah,b.right=ah,X(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===ah){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===ah){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=ah,b.right=ah,X(b,1)})(a,b),ar(b.parent);let c=b;for(;c!==a.root&&1===W(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===W(b)?(X(c.parent,0),X(b,0),X(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&an(a,c=c.parent),X(c.parent,0),X(c.parent.parent,1),ao(a,c.parent.parent))}else{let b=c.parent.parent.left;1===W(b)?(X(c.parent,0),X(b,0),X(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&ao(a,c=c.parent),X(c.parent,0),X(c.parent.parent,1),an(a,c.parent.parent))}return X(a.root,0),b}function al(a,b){let c,d,e;if(b.left===ah?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===ah?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==ah;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,X(c,0),b.detach(),am(),aq(c),a.root.parent=ah;return}let f=1===W(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,X(d,W(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==ah&&(d.left.parent=d),d.right!==ah&&(d.right.parent=d)),b.detach(),f){ar(c.parent),d!==b&&(ar(d),ar(d.parent)),am();return}for(ar(c),ar(c.parent),d!==b&&(ar(d),ar(d.parent));c!==a.root&&0===W(c);)c===c.parent.left?(1===W(e=c.parent.right)&&(X(e,0),X(c.parent,1),an(a,c.parent),e=c.parent.right),0===W(e.left)&&0===W(e.right)?(X(e,1),c=c.parent):(0===W(e.right)&&(X(e.left,0),X(e,1),ao(a,e),e=c.parent.right),X(e,W(c.parent)),X(c.parent,0),X(e.right,0),an(a,c.parent),c=a.root)):(1===W(e=c.parent.left)&&(X(e,0),X(c.parent,1),ao(a,c.parent),e=c.parent.left),0===W(e.left)&&0===W(e.right)?(X(e,1),c=c.parent):(0===W(e.left)&&(X(e.right,0),X(e,1),an(a,e),e=c.parent.left),X(e,W(c.parent)),X(c.parent,0),X(e.left,0),ao(a,c.parent),c=a.root));X(c,0),am()}function am(){ah.parent=ah,ah.delta=0,ah.start=0,ah.end=0}function an(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==ah&&(c.left.parent=b),c.parent=b.parent,b.parent===ah?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,aq(b),aq(c)}function ao(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==ah&&(c.right.parent=b),c.parent=b.parent,b.parent===ah?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,aq(b),aq(c)}function ap(a){let b=a.end;if(a.left!==ah){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==ah){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function aq(a){a.maxEnd=ap(a)}function ar(a){for(;a!==ah;){let b=ap(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class as{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==at)return au(this.right);let a=this;for(;a.parent!==at&&a.parent.left!==a;)a=a.parent;return a.parent===at?at:a.parent}prev(){if(this.left!==at)return av(this.left);let a=this;for(;a.parent!==at&&a.parent.right!==a;)a=a.parent;return a.parent===at?at:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let at=new as(null,0);function au(a){for(;a.left!==at;)a=a.left;return a}function av(a){for(;a.right!==at;)a=a.right;return a}function aw(a){return a===at?0:a.size_left+a.piece.length+aw(a.right)}function ax(a){return a===at?0:a.lf_left+a.piece.lineFeedCnt+ax(a.right)}function ay(){at.parent=at}function az(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==at&&(c.left.parent=b),c.parent=b.parent,b.parent===at?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function aA(a,b){let c=b.left;b.left=c.right,c.right!==at&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===at?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function aB(a,b){let c,d,e;if(c=b.left===at?(d=b).right:b.right===at?(d=b).left:(d=au(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),ay(),a.root.parent=at;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,aE(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,aE(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==at&&(d.left.parent=d),d.right!==at&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,aE(a,d)),b.detach(),c.parent.left===c){let b=aw(c),d=ax(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,aD(a,c.parent,e,f)}}if(aE(a,c.parent),f)return void ay();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,az(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,aA(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,az(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,aA(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,az(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,aA(a,c.parent),c=a.root));c.color=0,ay()}function aC(a,b){for(aE(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&az(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aA(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&aA(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,az(a,b.parent.parent))}a.root.color=0}function aD(a,b,c,d){for(;b!==a.root&&b!==at;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function aE(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=aw((b=b.parent).left)-b.size_left,d=ax(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}at.parent=at,at.left=at,at.right=at,at.color=0;var aF=c(70544);function aG(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class aH{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function aI(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?aG(c):c}class aJ{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class aK{constructor(a,b){this.buffer=a,this.lineStarts=b}}class aL{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==at&&a.iterate(a.root,a=>(a!==at&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class aM{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class aN{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new aK("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=at,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=aI(a[b].buffer));let c=new aJ(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new aM(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new aK(j,aI(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new aK(b,aI(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new aL(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==at;)if(d.left!==at&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==at;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new p.y(c+1,a+1)}return new p.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===at){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new p.y(c+1,e+1)}b=b.right}return new p.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==at;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===at)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===at)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),r=this.offsetInBuffer(a.piece.bufferIndex,e),s=this.offsetInBuffer(a.piece.bufferIndex,f),t={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(r,s),n=a=>a+r,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(r));do if(l=b.next(m)){if(n(l.index)>=s)return j;this.positionInBuffer(a,n(l.index)-p,t);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,t),f=t.line===e.line?t.column-e.column+d:t.column+1,g=f+l[0].length;if(k[j++]=(0,aF.dr)(new q.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=s)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new aF.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,aF.wC)(k,c,j,l,h))||(g[f++]=new v.Dg(new q.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,aF.dr)(new q.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==at){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new aJ(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new aJ(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===at)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();aB(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==at&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new aJ(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",aD(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)aB(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=aI(c);b.push(new aJ(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new aK(c,e))}let c=aI(a);return b.push(new aJ(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new aK(a,c)),b}let b=this._buffers[0].buffer.length,c=aI(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new aJ(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==at;)if(c.left!==at&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==at;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==at;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new aJ(c.bufferIndex,c.start,b,g,j),aD(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new aJ(c.bufferIndex,b,c.end,f,j),aD(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new aJ(d.bufferIndex,d.start,b,i,j),aD(this,a,j-g,i-h);let k=new aJ(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=aI(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new aJ(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,aD(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==at;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==at;)if(c.left!==at&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==at;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===at||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==at&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new aJ(a.piece.bufferIndex,a.piece.start,c,g,f),aD(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new aJ(b.piece.bufferIndex,h,b.piece.end,j,i),aD(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)aB(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)aB(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new aJ(a.bufferIndex,b,a.end,e,d),aD(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===at)return b(at);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===at)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new as(b,1);if(c.left=at,c.right=at,c.parent=at,c.size_left=0,c.lf_left=0,this.root===at)this.root=c,c.color=0;else if(a.right===at)a.right=c,c.parent=a;else{let b=au(a.right);b.left=c,c.parent=b}return aC(this,c),c}rbInsertLeft(a,b){let c=new as(b,1);if(c.left=at,c.right=at,c.parent=at,c.size_left=0,c.lf_left=0,this.root===at)this.root=c,c.color=0;else if(a.left===at)a.left=c,c.parent=a;else{let b=av(a.left);b.right=c,c.parent=b}return aC(this,c),c}}var aO=c(43613);class aP extends k.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new j.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new aN(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new q.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)l.pc(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=l.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=l.lT(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!l.aC(c.text)),!d&&a&&(d=l.E_(c.text)),!e&&a&&(e=l.$X(c.text))}let j="",k=0,m=0,o=0;if(c.text){let a;[k,m,o,a]=(0,n.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:m,lastLineLength:o,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(aP._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?aP._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===l.HG(d)))&&k.push({lineNumber:a,oldContent:d})}}let m=null;if(c){let a=0;m=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,m[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new aO.k(c.rangeOffset,e,f,c.text)}}i||m.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let o=this._doApplyEdits(h),p=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),p=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===l.HG(d)&&p.push(b)}}return this._onDidChangeContent.fire(),new v.F4(m,o,p)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new q.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new q.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,n.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(aP._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new q.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new q.Q(g,h,g,h+j.firstLineLength):new q.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new q.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=q.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=q.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class aQ{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=aI(d);c[a]=new aK(d,e)}let d=new aP(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class aR{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&l.LU(a)&&(this.BOM=l.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new aH(aG(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new aK(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=l.E_(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=l.$X(a)))}finish(a=!0){return this._finish(),new aQ(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=aI(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var aS=c(55866),aT=c(28161),aU=c(21005),aV=c(40565),aW=c(31512),aX=c(43589),aY=c(37457);class aZ{constructor(){this._onDidChangeVisibleRanges=new j.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,aX.Yd)(this),this.visibleLineRanges=(0,aX.C)({owner:this,equalsFn:(0,aY.S3)((0,aY.r)())},a=>(this._viewsChanged.read(a),aW.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new a_(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}}class a${constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,g.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class a_{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,aX.Zh)({owner:this,equalsFn:(0,aY.KC)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new a$(a.map(a=>new aW.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class a0 extends k.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new aV.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,g.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class a1 extends k.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}var a2=c(56167),a3=c(66153),a4=c(91295),a5=c(48363);function a6(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function a7(a,b){do{if(a.currentNode.nextSibling){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}a.currentNode.parent&&a6(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var a8=function(a,b){return function(c,d){b(c,d,a)}};let a9=class extends k.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,aX.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,aX.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new aV.Pq,this._tree=(0,aX.FY)(this,void 0),this.tree=this._tree,this._register((0,k.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new q.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,aX.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=a5.W.ofRange(q.Q.lift(b.range)),c=a5.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=a6(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=a7(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=a7(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new q.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&ba(c[d],{startIndex:l,endIndex:m,startPosition:j,endPosition:k})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new q.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=q.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new q.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=q.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,a2._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||ba(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function ba(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}a9=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([a8(5,a3.rr),a8(6,a4.k)],a9);var bb=c(29715),bc=c(34509),bd=c(95967),be=c(4380);class bf{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,g.nK)(this._store,a,c)}}class bg{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class bh{constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bg(a,[b]))}finalize(){return this._tokens}}class bi{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new bl(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class bj extends bi{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=bo(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=bo(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new aU.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=bo(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new aU.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=bo(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=bk(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=bo(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function bk(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class bl{constructor(a){this.lineCount=a,this._tokenizationStateStore=new bm,this._invalidEndStatesLineNumbers=new bn,this._invalidEndStatesLineNumbers.addRange(new bd.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new i.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new bd.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new bd.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,n.W)(b.text);this.acceptChange(new aW.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new bd.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new i.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class bm{constructor(){this._lineEndStates=new bf(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class bn{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new bd.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new bd.L(c.start,a):this._ranges.splice(b,1,new bd.L(c.start,a),new bd.L(a+1,c.endExclusive))}}addRange(a){bd.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new bd.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new bd.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function bo(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,i.dz)(a)}return g||(g=(0,be.Lh)(a.encodeLanguageId(b),f)),aU.f7.convertToEndOffset(g.tokens,d.length),g}class bp{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,aV.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,a2._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new bh,c=bc.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new aW.M(a,b))}}class bq{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new bq(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),br(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),br(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function br(a){return void 0!==a.token}function bs(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(br(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=bq.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new bq(c.height+1);return b.appendChild(a),b.appendChild(c),b}}!function(a){a[a.None=0]="None",a[a.ViewportGuess=1]="ViewportGuess",a[a.EditGuess=2]="EditGuess",a[a.Accurate=3]="Accurate"}(d||(d={}));class bt{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:d.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=bs(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],d.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){br(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(br(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){br(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(br(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!br(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?bq.create(k,l):k.height>l.height?bs(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(br(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=bq.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?bq.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!br(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!br(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(br(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(br(a)&&(a.tokenQuality=d.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(br(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(br(a)&&a.tokenQuality!==d.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(br(b)&&b.tokenQuality!==d.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(br(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var bu=c(46339);let bv=(0,bb.u1)("treeSitterThemeService"),bw=class extends k.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,e,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=e,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new j.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,aX.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new bt(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),d.None),this._register((0,aX.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,aX.Y)({owner:this,changeTracker:(0,aX.jv)({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new i.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,e=this._tokenStore.getTokenAt(c);e?(a={startOffsetInclusive:e.startOffsetInclusive,length:e.length+b.text.length-b.rangeLength,token:e.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(e?.length??0,[a],d.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new aU.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new q.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new aU.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:q.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(bu.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),e=this._textModel.getVersionId();if(this._rangeHasTokens(b,d.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,d.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(e,[{newTokens:g,oldRangeLength:i}],d.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new q.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=bk(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new q.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(bu.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new p.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new p.y(g,i),k=q.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new q.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let e;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);e=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[e],d.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,a2._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new q.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],d.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bc.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=bx[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(by)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bc.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new q.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};bw=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){bv(a,b,4)}],bw);let bx={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},by=/[\{\}\[\]\<\>\(\)]/g;var bz=c(30950),bA=function(a,b){return function(c,d){b(c,d,a)}};let bB=class extends a1{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new j.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;let g=new aX.BK(this._treeSitterLibraryService.getParserClass()),h=(0,aX.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,aX.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,a);if(!d)return;let e=new b;if(a.store.add((0,k.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(a9,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,aX.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(bw,b,c,this._languageIdCodec,d))}),this._register((0,aX.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return aU.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};bB=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bA(4,bz.t),bA(5,bb._Y)],bB);class bC{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=g.nK(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=bC._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a!==k&&(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new aU.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f of this._pieces)f.acceptEdit(a,b,c,d,e)}}var bD=c(42350);let bE=new Uint32Array(0).buffer;class bF{static deleteBeginning(a,b){return null===a||a===bE?a:bF.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===bE)return a;let c=bG(a),d=c[c.length-2];return bF.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===bE||b===c)return a;let f=bG(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return bE;let h=aU.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===bE)return a;if(a===bE)return b;if(null===a)return a;if(null===b)return null;let c=bG(a),d=bG(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===bE)return a;let d=bG(a),e=d.length>>>1,f=aU.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function bG(a){return a instanceof Uint32Array?a:new Uint32Array(a)}var bH=c(48268);class bI{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==bE)return new aU.f7(bG(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=bJ(this._languageIdCodec.encodeLanguageId(a)),new aU.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?bG(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=bH.x.getLanguageId(d[1])!==a),!b)return bE}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=bJ(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=g.nK(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=bI._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!bI._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=bG(a),d=bG(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new p.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=bF.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=bF.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=bF.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=bF.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=bF.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=bF.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=bF.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function bJ(a){return(0|a|0x2008400)>>>0}class bK extends a1{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new j.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new k.HE),this._tokens=new bI(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new k.HE),this._attachedViewStates=this._register(new k.$w),this._register(bD.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new a0(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new bl(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=bD.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,i.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new bj(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},backgroundTokenizationFinished:()=>{2!==this._backgroundTokenizationState&&(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new bp(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new bI(this._languageIdCodec),this._debugBackgroundStates=new bl(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,n.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}refreshAllVisibleLineTokens(){let a=aW.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new bh,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new bh;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new p.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var bL=function(a,b){return function(c,d){b(c,d,a)}};let bM=e=class extends aT._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._languageIdObs=(0,aX.FY)(this,this._languageId),this._useTreeSitter=(0,aX.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,aX.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(bB,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new bK(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new bC(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new j.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new j.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new j.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,n.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new i.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),f=d.findTokenIndexAtOffset(b.column-1),[g,h]=e._findLanguageBoundaries(d,f),i=(0,aS.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(f)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(f>0&&g===b.column-1){let[g,h]=e._findLanguageBoundaries(d,f-1),i=(0,aS.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(f-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new p.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};bM=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bL(4,t.L),bL(5,u.JZ),bL(6,bb._Y),bL(7,bz.t)],bM);var bN=c(71760),bO=c(89535),bP=c(20715),bQ=c(42715),bR=function(a,b){return function(c,d){b(c,d,a)}};function bS(a,b){return("string"==typeof a?function(a){let b=new aR;return b.acceptChunk(a),b.finish()}(a):v.nk(a)?function(a){let b,c=new aR;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a).create(b)}let bT=0;class bU{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let bV=()=>{throw Error("Invalid change accessor")},bW=class extends k.jG{static{f=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:s.R.tabSize,indentSize:s.R.indentSize,insertSpaces:s.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:s.R.trimAutoWhitespace,largeFileOptimizations:s.R.largeFileOptimizations,bracketPairColorizationOptions:s.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=V(a,b.tabSize,b.insertSpaces);return new v.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new v.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.slowEvent(b=>a(b.contentChangedEvent))}onDidChangeContentOrInjectedText(a){return(0,k.qE)(this._eventEmitter.fastEvent(b=>a(b)),this._onDidChangeInjectedText.event(b=>a(b)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,g,h,i){super(),this._undoRedoService=e,this._languageService=g,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new j.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new ca((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new j.vl),this._onDidChangeAttached=this._register(new j.vl),this._onDidChangeInjectedText=this._register(new j.vl),this._onDidChangeLineHeight=this._register(new j.vl),this._onDidChangeFont=this._register(new j.vl),this._eventEmitter=this._register(new cb),this._languageSelectionListener=this._register(new k.HE),this._deltaDecorationCallCnt=0,this._attachedViews=new aZ,bT++,this.id="$model"+bT,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=m.r.parse("inmemory://model/"+bT):this._associatedResource=d,this._attachedEditorCount=0;let{textBuffer:n,disposable:o}=bS(a,c.defaultEOL);this._buffer=n,this._bufferDisposable=o;let p=this._buffer.getLineCount(),r=this._buffer.getValueLengthInRange(new q.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=r>f.LARGE_FILE_SIZE_THRESHOLD||p>f.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=r>f.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=f.resolveOptions(this._buffer,c);let s="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new K(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new T.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new Q(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(bM,this,this._bracketPairs,s,this._attachedViews),this._isTooLargeForSyncing=r>f._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=l.tk(bT),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new b$,this._commandManager=new S.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(s),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new aP([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=k.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new i.D7("Model is disposed!")}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._eventEmitter.fire(new bN.Ic(a,b)))}setValue(a,b=bQ.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,i.Qg)();let{textBuffer:c,disposable:d}=bS(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new b$,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new bN.HP([new bN.Wn],this._versionId,!1,!1),this._createContentChanged2(new q.Q(1,1,f,g),0,e,new p.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new bN.HP([new bN.mS],this._versionId,!1,!1),this._createContentChanged2(new q.Q(1,1,e,f),0,d,new p.y(e,f),this.getValue(),!1,!1,!1,!0,bQ.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,aq(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new v.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=V(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,o.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(l._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new i.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new bU(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new i.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new i.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof q.Q&&!(a instanceof r.L)?a:new q.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if(l.pc(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new p.y(1,1);if(d>f)return new p.y(f,this.getLineMaxColumn(f));if(e<=1)return new p.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new p.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if(l.pc(a))return new p.y(d,e-1)}return new p.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof p.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=l.pc(a),h=l.pc(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof q.Q&&!(a instanceof r.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=l.pc(a),h=l.pc(b);return c||h?d===f&&e===g?new q.Q(d,e-1,f,g-1):c&&h?new q.Q(d,e-1,f,g+1):c?new q.Q(d,e-1,f,g):new q.Q(d,e,f,g+1):new q.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new q.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&(Array.isArray(b)||(b=[b]),b.every(a=>q.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>q.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new aF.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>aF.hB.findMatches(this,new aF.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new aF.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new q.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(aF.hB.findNextMatch(this,new aF.lt(a,c,d,e),g,f),j.length>0||(i=new q.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return aF.hB.findNextMatch(this,new aF.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return aF.hB.findPreviousMatch(this,new aF.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){return a instanceof v.Wo?a:new v.Wo(a.identifier||null,this.validateRange(a.range),a.text,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new q.Q(d,1,d,e);b.push(new v.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new q.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new q.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d,this.applyEdits(a,!1),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??bQ.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c){let d=this._buffer.getLineCount(),e=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),f=this._buffer.getLineCount(),h=e.changes;if(this._trimAutoWhitespaceLines=e.trimAutoWhitespaceLineNumbers,0!==h.length){for(let a=0,b=h.length;a<b;a++){let b=h[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=d;for(let c=0,d=h.length;c<d;c++){let d=h[c],[e]=(0,n.W)(d.text);this._onDidChangeDecorations.fire();let i=d.range.startLineNumber,j=d.range.endLineNumber,k=j-i,l=Math.min(k,e),m=e-k,o=f-b-m+i,q=o+e,r=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new p.y(o,1)),this.getOffsetAt(new p.y(q,this.getLineMaxColumn(q))),0),s=bN.uK.fromDecorations(r),t=new g.j3(s);for(let b=l;b>=0;b--){let c=i+b,d=o+b;t.takeFromEndWhile(a=>a.lineNumber>d);let e=t.takeFromEndWhile(a=>a.lineNumber===d);a.push(new bN.U0(c,this.getLineContent(d),e))}if(l<k){let b=i+l;a.push(new bN.E$(b+1,j))}if(l<e){let c=new g.j3(s),d=i+l,h=e-l,j=f-b-h+d+1,k=[],m=[];for(let a=0;a<h;a++){let b=j+a;m[a]=this.getLineContent(b),c.takeWhile(a=>a.lineNumber<b),k[a]=c.takeWhile(a=>a.lineNumber===b)}a.push(new bN.bg(d+1,i+e,m,k))}b+=m}this._emitContentChangedEvent(new bN.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:h,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[h.length]})}return null===e.reverseEdits?void 0:e.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new bN.U0(a,this.getLineContent(a),this._getInjectedTextInLine(a)));this._onDidChangeInjectedText.fire(new bN.vn(b))}if(b&&b.size>0){let a=Array.from(b).map(a=>new bN.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new bN.zq(a))}if(c&&c.size>0){let a=Array.from(c).map(a=>new bN.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new bN.dT(a))}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,b7(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,i.dz)(a)}return c.addDecoration=bV,c.changeDecoration=bV,c.changeDecorationOptions=bV,c.removeDecoration=bV,c.deltaDecorations=bV,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,i.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:b6[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(b6[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let h=this.getLineCount(),i=Math.min(h,Math.max(1,a)),j=Math.min(h,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new q.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,g.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let h=this.validateRange(a),i=this._getDecorationsInRange(h,b,c,d,f);return(0,g.E4)(i,this._decorationProvider.getDecorationsInRange(h,b,c,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){return this._decorationsTree.getAllCustomLineHeights(this,a)}_getInjectedTextInLine(a){let b=this._buffer.getOffsetAt(a,1),c=b+this._buffer.getLineLength(a),d=this._decorationsTree.getInjectedTextInInterval(this,b,c,0);return bN.uK.fromDecorations(d).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return d.concat(this._decorationProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==bZ(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new ag(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=b7(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return bX(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function bX(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}function bY(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function bZ(a){return!!a.options.after||!!a.options.before}bW=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bR(4,bO.$D),bR(5,t.L),bR(6,u.JZ),bR(7,bb._Y)],bW);class b${constructor(){this._decorationsTree0=new ai,this._decorationsTree1=new ai,this._injectedTextDecorationsTree=new ai}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){bZ(a)?this._injectedTextDecorationsTree.insert(a):bY(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){bZ(a)?this._injectedTextDecorationsTree.delete(a):bY(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){bZ(a)?this._injectedTextDecorationsTree.resolveNode(a,b):bY(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function b_(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class b0{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class b1 extends b0{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:v.A5.Center}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class b2{constructor(a){this.position=a?.position??v.ZS.Center,this.persistLane=a?.persistLane}}class b3 extends b0{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?h.Q1.fromHex(a):b.getColor(a.id)}}class b4{static from(a){return a instanceof b4?a:new b4(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class b5{static register(a){return new b5(a)}static createDynamic(a){return new b5(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?b_(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?b_(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new b1(a.overviewRuler):null,this.minimap=a.minimap?new b3(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new b2(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?b_(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?b_(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?b_(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?l.jy(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?b_(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?b_(a.marginClassName):null,this.inlineClassName=a.inlineClassName?b_(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?b_(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?b_(a.afterContentClassName):null,this.after=a.after?b4.from(a.after):null,this.before=a.before?b4.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}b5.EMPTY=b5.register({description:"empty"});let b6=[b5.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),b5.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),b5.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),b5.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function b7(a){return a instanceof b5?a:b5.createDynamic(a)}class b8{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class b9{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}class ca extends k.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new j.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new bP.iD([],b8.toKey)),this._affectedLineHeights.add(new b8(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new bP.iD([],b9.toKey)),this._affectedFontLines.add(new b9(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(a)}}class cb extends k.jG{constructor(){super(),this._fastEmitter=this._register(new j.vl),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new j.vl),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(b),this._slowEmitter.fire(b)}}fire(a){if(this._deferredCnt>0)return void(this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a);this._fastEmitter.fire(a),this._slowEmitter.fire(a)}}},14418:()=>{},14635:(a,b,c)=>{"use strict";c.d(b,{Qi:()=>h,XO:()=>d,bs:()=>i});var d,e=c(60734);let f=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});!function(a){a.isCancellationToken=function(b){return b===a.None||b===a.Cancelled||b instanceof g||!!b&&"object"==typeof b&&"boolean"==typeof b.isCancellationRequested&&"function"==typeof b.onCancellationRequested},a.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:e.Jh.None}),a.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:f})}(d||(d={}));class g{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?f:(this._emitter||(this._emitter=new e.vl),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class h{constructor(a){this._token=void 0,this._parentListener=void 0,this._parentListener=a&&a.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new g),this._token}cancel(){this._token?this._token instanceof g&&this._token.cancel():this._token=d.Cancelled}dispose(a=!1){a&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof g&&this._token.dispose():this._token=d.None}}function i(a){let b=new h;return a.add({dispose(){b.cancel()}}),b.token}},15267:()=>{},15380:(a,b,c)=>{"use strict";c.d(b,{_:()=>d});let d={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"}},16282:()=>{},16342:(a,b,c)=>{"use strict";c.d(b,{Pj:()=>A,jX:()=>B,vg:()=>D,_V:()=>H});var d=c(54734),e=c(14635),f=c(88347),g=c(16374),h=c(71373),i=c(46339),j=c(45640),k=c(46319),l=c(11866),m=c(79677),n=c(59317),o=c(32146),p=c(65320),q=c(55830),r=c(40778),s=c(70511);class t{constructor(a){this.value=a,this._lower=a.toLowerCase()}static toKey(a){return"string"==typeof a?a.toLowerCase():a._lower}}class u{constructor(a){if(this._set=new Set,a)for(let b of a)this.add(b)}add(a){this._set.add(t.toKey(a))}has(a){return this._set.has(t.toKey(a))}}var v=c(29715),w=c(88482),x=c(66153),y=c(3341);function z(a,b,c){let d=[],e=new u;for(let b of a.ordered(c))d.push(b),b.extensionId&&e.add(b.extensionId);for(let a of b.ordered(c)){if(a.extensionId){if(e.has(a.extensionId))continue;e.add(a.extensionId)}d.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits:(b,c,d)=>a.provideDocumentRangeFormattingEdits(b,b.getFullModelRange(),c,d)})}return d}class A{static{this._selectors=new h.w}static setFormatterSelector(a){return{dispose:A._selectors.unshift(a)}}static async select(a,b,c,d){if(0===a.length)return;let e=g.f.first(A._selectors);if(e)return await e(a,b,c,d)}}async function B(a,b,c,d,e,f,g){let h=a.get(v._Y),{documentRangeFormattingEditProvider:i}=a.get(w.u),j=(0,l.z9)(b)?b.getModel():b,k=i.ordered(j),m=await A.select(k,j,d,2);m&&(e.report(m),await h.invokeFunction(C,m,b,c,f,g))}async function C(a,b,c,e,f,g){let h,i,j=a.get(p.w),m=a.get(x.rr),q=a.get(y.Nt);(0,l.z9)(c)?(h=c.getModel(),i=new k.gI(c,5,void 0,f)):(h=c,i=new k.ER(c,f));let s=[],t=0;for(let a of(0,d._j)(e).sort(n.Q.compareRangesUsingStarts))t>0&&n.Q.areIntersectingOrTouching(s[t-1],a)?s[t-1]=n.Q.fromPositions(s[t-1].getStartPosition(),a.getEndPosition()):t=s.push(a);let u=async a=>{m.trace("[format][provideDocumentRangeFormattingEdits] (request)",b.extensionId?.value,a);let c=await b.provideDocumentRangeFormattingEdits(h,a,h.getFormattingOptions(),i.token)||[];return m.trace("[format][provideDocumentRangeFormattingEdits] (response)",b.extensionId?.value,c),c},v=(a,b)=>{if(!a.length||!b.length)return!1;let c=a.reduce((a,b)=>n.Q.plusRange(a,b.range),a[0].range);if(!b.some(a=>n.Q.intersectRanges(c,a.range)))return!1;for(let c of a)for(let a of b)if(n.Q.intersectRanges(c.range,a.range))return!0;return!1},w=[],z=[];try{if("function"==typeof b.provideDocumentRangesFormattingEdits){m.trace("[format][provideDocumentRangeFormattingEdits] (request)",b.extensionId?.value,s);let a=await b.provideDocumentRangesFormattingEdits(h,s,h.getFormattingOptions(),i.token)||[];m.trace("[format][provideDocumentRangeFormattingEdits] (response)",b.extensionId?.value,a),z.push(a)}else{for(let a of s){if(i.token.isCancellationRequested)return!0;z.push(await u(a))}for(let a=0;a<s.length;++a)for(let b=a+1;b<s.length;++b){if(i.token.isCancellationRequested)return!0;if(v(z[a],z[b])){let c=n.Q.plusRange(s[a],s[b]),d=await u(c);s.splice(b,1),s.splice(a,1),s.push(c),z.splice(b,1),z.splice(a,1),z.push(d),a=0,b=0}}}for(let a of z){if(i.token.isCancellationRequested)return!0;let b=await j.computeMoreMinimalEdits(h.uri,a);b&&w.push(...b)}if(i.token.isCancellationRequested)return!0}finally{i.dispose()}if(0===w.length)return!1;if((0,l.z9)(c))r.c.execute(c,w,!0),c.revealPositionInCenterIfOutsideViewport(c.getPosition(),1);else{let[{range:a}]=w,b=new o.L(a.startLineNumber,a.startColumn,a.endLineNumber,a.endColumn);h.pushEditOperations([b],w.map(a=>({text:a.text,range:n.Q.lift(a.range),forceMoveMarkers:!0})),a=>{for(let{range:c}of a)if(n.Q.areIntersectingOrTouching(c,b))return[new o.L(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)];return null})}return q.playSignal(y.Rh.format,{userGesture:g}),!0}async function D(a,b,c,d,e,f){let g=a.get(v._Y),h=a.get(w.u),i=(0,l.z9)(b)?b.getModel():b,j=z(h.documentFormattingEditProvider,h.documentRangeFormattingEditProvider,i),k=await A.select(j,i,c,1);k&&(d.report(k),await g.invokeFunction(E,k,b,c,e,f))}async function E(a,b,c,d,e,f){let g,h,i,j=a.get(p.w),m=a.get(y.Nt);(0,l.z9)(c)?(g=c.getModel(),h=new k.gI(c,5,void 0,e)):(g=c,h=new k.ER(c,e));try{let a=await b.provideDocumentFormattingEdits(g,g.getFormattingOptions(),h.token);if(i=await j.computeMoreMinimalEdits(g.uri,a),h.token.isCancellationRequested)return!0}finally{h.dispose()}if(!i||0===i.length)return!1;if((0,l.z9)(c))r.c.execute(c,i,2!==d),2!==d&&c.revealPositionInCenterIfOutsideViewport(c.getPosition(),1);else{let[{range:a}]=i,b=new o.L(a.startLineNumber,a.startColumn,a.endLineNumber,a.endColumn);g.pushEditOperations([b],i.map(a=>({text:a.text,range:n.Q.lift(a.range),forceMoveMarkers:!0})),a=>{for(let{range:c}of a)if(n.Q.areIntersectingOrTouching(c,b))return[new o.L(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)];return null})}return m.playSignal(y.Rh.format,{userGesture:f}),!0}async function F(a,b,c,e,g,h){for(let i of b.documentRangeFormattingEditProvider.ordered(c)){let b=await Promise.resolve(i.provideDocumentRangeFormattingEdits(c,e,g,h)).catch(f.M_);if((0,d.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}async function G(a,b,c,e,g){for(let h of z(b.documentFormattingEditProvider,b.documentRangeFormattingEditProvider,c)){let b=await Promise.resolve(h.provideDocumentFormattingEdits(c,e,g)).catch(f.M_);if((0,d.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}function H(a,b,c,d,e,g,h){let i=b.onTypeFormattingEditProvider.ordered(c);return 0===i.length||0>i[0].autoFormatTriggerCharacters.indexOf(e)?Promise.resolve(void 0):Promise.resolve(i[0].provideOnTypeFormattingEdits(c,d,e,g,h)).catch(f.M_).then(b=>a.computeMoreMinimalEdits(c.uri,b))}s.w.registerCommand("_executeFormatRangeProvider",async function(a,...b){let[c,d,f]=b;(0,i.j)(j.r.isUri(c)),(0,i.j)(n.Q.isIRange(d));let g=a.get(q.b),h=a.get(p.w),k=a.get(w.u),l=await g.createModelReference(c);try{return F(h,k,l.object.textEditorModel,n.Q.lift(d),f,e.XO.None)}finally{l.dispose()}}),s.w.registerCommand("_executeFormatDocumentProvider",async function(a,...b){let[c,d]=b;(0,i.j)(j.r.isUri(c));let f=a.get(q.b),g=a.get(p.w),h=a.get(w.u),k=await f.createModelReference(c);try{return G(g,h,k.object.textEditorModel,d,e.XO.None)}finally{k.dispose()}}),s.w.registerCommand("_executeFormatOnTypeProvider",async function(a,...b){let[c,d,f,g]=b;(0,i.j)(j.r.isUri(c)),(0,i.j)(m.y.isIPosition(d)),(0,i.j)("string"==typeof f);let h=a.get(q.b),k=a.get(p.w),l=a.get(w.u),n=await h.createModelReference(c);try{return H(k,l,n.object.textEditorModel,m.y.lift(d),f,g,e.XO.None)}finally{n.dispose()}})},16374:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});var d,e=c(46339);!function(a){function b(a){return!!a&&"object"==typeof a&&"function"==typeof a[Symbol.iterator]}a.is=b;let c=Object.freeze([]);function*d(a){yield a}a.empty=function(){return c},a.single=d,a.wrap=function(a){return b(a)?a:d(a)},a.from=function(a){return a||c},a.reverse=function*(a){for(let b=a.length-1;b>=0;b--)yield a[b]},a.isEmpty=function(a){return!a||!0===a[Symbol.iterator]().next().done},a.first=function(a){return a[Symbol.iterator]().next().value},a.some=function(a,b){let c=0;for(let d of a)if(b(d,c++))return!0;return!1},a.every=function(a,b){let c=0;for(let d of a)if(!b(d,c++))return!1;return!0},a.find=function(a,b){for(let c of a)if(b(c))return c},a.filter=function*(a,b){for(let c of a)b(c)&&(yield c)},a.map=function*(a,b){let c=0;for(let d of a)yield b(d,c++)},a.flatMap=function*(a,b){let c=0;for(let d of a)yield*b(d,c++)},a.concat=function*(...a){for(let b of a)(0,e.xZ)(b)?yield*b:yield b},a.reduce=function(a,b,c){let d=c;for(let c of a)d=b(d,c);return d},a.length=function(a){let b=0;for(let c of a)b++;return b},a.slice=function*(a,b,c=a.length){for(b<-a.length&&(b=0),b<0&&(b+=a.length),c<0?c+=a.length:c>a.length&&(c=a.length);b<c;b++)yield a[b]},a.consume=function(b,c=1/0){let d=[];if(0===c)return[d,b];let e=b[Symbol.iterator]();for(let b=0;b<c;b++){let b=e.next();if(b.done)return[d,a.empty()];d.push(b.value)}return[d,{[Symbol.iterator]:()=>e}]},a.asyncToArray=async function(a){let b=[];for await(let c of a)b.push(c);return b},a.asyncToArrayFlat=async function(a){let b=[];for await(let c of a)b=b.concat(c);return b}}(d||(d={}))},16749:(a,b,c)=>{"use strict";c.d(b,{wZ:()=>k,zL:()=>j,UW:()=>n,Md:()=>p});var d=c(25536),e=c(98447),f=c(29892),g=c(22889);class h{constructor(a,b,c,d){this.endIndex=a,this.type=b,this.metadata=c,this.containsRTL=d,this._linePartBrand=void 0}isWhitespace(){return!!(1&this.metadata)}isPseudoAfter(){return!!(4&this.metadata)}}var i=c(34747);class j{get isLTR(){return!this.containsRTL&&this.textDirection!==i.z4.RTL}constructor(a,b,c,d,e,f,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w=!1){this.useMonospaceOptimizations=a,this.canUseHalfwidthRightwardsArrow=b,this.lineContent=c,this.continuesWithWrappedLine=d,this.isBasicASCII=e,this.containsRTL=f,this.fauxIndentLength=h,this.lineTokens=i,this.lineDecorations=j.sort(g.d.compare),this.tabSize=k,this.startVisibleColumn=l,this.spaceWidth=m,this.stopRenderingLineAfter=p,this.renderWhitespace="all"===q?4:"boundary"===q?1:"selection"===q?2:3*("trailing"===q),this.renderControlCharacters=r,this.fontLigatures=s,this.selectionsOnLine=t&&t.sort((a,b)=>a.start<b.start?-1:1),this.renderNewLineWhenEmpty=w,this.textDirection=u,this.verticalScrollbarSize=v,Math.abs(o-m)<Math.abs(n-m)?(this.renderSpaceWidth=o,this.renderSpaceCharCode=11825):(this.renderSpaceWidth=n,this.renderSpaceCharCode=183)}sameSelection(a){if(null===this.selectionsOnLine)return null===a;if(null===a||a.length!==this.selectionsOnLine.length)return!1;for(let b=0;b<this.selectionsOnLine.length;b++)if(!this.selectionsOnLine[b].equals(a[b]))return!1;return!0}equals(a){return this.useMonospaceOptimizations===a.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineContent===a.lineContent&&this.continuesWithWrappedLine===a.continuesWithWrappedLine&&this.isBasicASCII===a.isBasicASCII&&this.containsRTL===a.containsRTL&&this.fauxIndentLength===a.fauxIndentLength&&this.tabSize===a.tabSize&&this.startVisibleColumn===a.startVisibleColumn&&this.spaceWidth===a.spaceWidth&&this.renderSpaceWidth===a.renderSpaceWidth&&this.renderSpaceCharCode===a.renderSpaceCharCode&&this.stopRenderingLineAfter===a.stopRenderingLineAfter&&this.renderWhitespace===a.renderWhitespace&&this.renderControlCharacters===a.renderControlCharacters&&this.fontLigatures===a.fontLigatures&&g.d.equalsArr(this.lineDecorations,a.lineDecorations)&&this.lineTokens.equals(a.lineTokens)&&this.sameSelection(a.selectionsOnLine)&&this.textDirection===a.textDirection&&this.verticalScrollbarSize===a.verticalScrollbarSize&&this.renderNewLineWhenEmpty===a.renderNewLineWhenEmpty}}class k{constructor(a,b){this.partIndex=a,this.charIndex=b}}class l{static getPartIndex(a){return(0xffff0000&a)>>>16}static getCharIndex(a){return(65535&a)>>>0}constructor(a,b){this.length=a,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(a,b,c,d){this._data[a-1]=(0|c|b<<16)>>>0,this._horizontalOffset[a-1]=d}getHorizontalOffset(a){return 0===this._horizontalOffset.length?0:this._horizontalOffset[a-1]}charOffsetToPartData(a){return 0===this.length?0:a<0?this._data[0]:a>=this.length?this._data[this.length-1]:this._data[a]}getDomPosition(a){let b=this.charOffsetToPartData(a-1);return new k(l.getPartIndex(b),l.getCharIndex(b))}getColumn(a,b){return this.partDataToCharOffset(a.partIndex,b,a.charIndex)+1}partDataToCharOffset(a,b,c){let d;if(0===this.length)return 0;let e=(0|c|a<<16)>>>0,f=0,g=this.length-1;for(;f+1<g;){let a=f+g>>>1,b=this._data[a];if(b===e)return a;b>e?g=a:f=a}if(f===g)return f;let h=this._data[f],i=this._data[g];if(h===e)return f;if(i===e)return g;let j=l.getPartIndex(h),k=l.getCharIndex(h);return d=j!==l.getPartIndex(i)?b:l.getCharIndex(i),c-k<=d-c?f:g}}class m{constructor(a,b){this._renderLineOutputBrand=void 0,this.characterMapping=a,this.containsForeignElements=b}}function n(a,b){if(0===a.lineContent.length){if(a.lineDecorations.length>0){b.appendString("<span>");let c=0,d=0,e=0;for(let f of a.lineDecorations)(1===f.type||2===f.type)&&(b.appendString('<span class="'),b.appendString(f.className),b.appendString('"></span>'),1===f.type&&(e|=1,c++),2===f.type&&(e|=2,d++));b.appendString("</span>");let f=new l(1,c+d);return f.setColumnInfo(1,c,0,0),new m(f,e)}return a.renderNewLineWhenEmpty?b.appendString("<span><span>\n</span></span>"):b.appendString("<span><span></span></span>"),new m(new l(0,0),0)}return function(a,b){var c;let f=a.fontIsMonospace,g=a.canUseHalfwidthRightwardsArrow,h=a.containsForeignElements,i=a.lineContent,j=a.len,k=a.isOverflowing,n=a.overflowingCharCount,o=a.parts,p=a.fauxIndentLength,q=a.tabSize,s=a.startVisibleColumn,t=a.spaceWidth,u=a.renderSpaceCharCode,v=a.renderWhitespace,w=a.renderControlCharacters,x=new l(j+1,o.length),y=!1,z=0,A=s,B=0,C=0,D=0;b.appendString("<span>");for(let a=0,c=o.length;a<c;a++){let c=o[a],d=c.endIndex,k=c.type,l=c.containsRTL,m=0!==v&&c.isWhitespace(),n=m&&!f&&("mtkw"===k||!h),s=z===d&&c.isPseudoAfter();if(B=0,b.appendString("<span "),l&&b.appendString('style="unicode-bidi:isolate" '),b.appendString('class="'),b.appendString(n?"mtkz":k),b.appendASCIICharCode(34),m){let c=0;{let a=z,b=A;for(;a<d;a++){let d=(9===i.charCodeAt(a)?q-b%q:1)|0;c+=d,a>=p&&(b+=d)}}for(n&&(b.appendString(' style="width:'),b.appendString(String(t*c)),b.appendString('px"')),b.appendASCIICharCode(62);z<d;z++){let c,d;if(x.setColumnInfo(z+1,a-D,B,C),D=0,9===i.charCodeAt(z)){d=c=q-A%q|0,!g||d>1?b.appendCharCode(8594):b.appendCharCode(65515);for(let a=2;a<=d;a++)b.appendCharCode(160)}else c=2,d=1,b.appendCharCode(u),b.appendCharCode(8204);B+=c,C+=d,z>=p&&(A+=d)}}else for(b.appendASCIICharCode(62);z<d;z++){x.setColumnInfo(z+1,a-D,B,C),D=0;let c=i.charCodeAt(z),d=1,f=1;switch(c){case 9:f=d=q-A%q;for(let a=1;a<=d;a++)b.appendCharCode(160);break;case 32:b.appendCharCode(160);break;case 60:b.appendString("<");break;case 62:b.appendString(">");break;case 38:b.appendString("&");break;case 0:w?b.appendCharCode(9216):b.appendString("�");break;case 65279:case 8232:case 8233:case 133:b.appendCharCode(65533);break;default:e.ne(c)&&f++,w&&c<32?b.appendCharCode(9216+c):w&&127===c?b.appendCharCode(9249):w&&r(c)?(b.appendString("[U+"),b.appendString(c.toString(16).toUpperCase().padStart(4,"0")),b.appendString("]"),f=d=8):b.appendCharCode(c)}B+=d,C+=f,z>=p&&(A+=f)}s?D++:D=0,z>=j&&!y&&c.isPseudoAfter()&&(y=!0,x.setColumnInfo(z+1,a,B,C)),b.appendString("</span>")}return y||x.setColumnInfo(j+1,o.length-1,B,C),k&&(b.appendString('<span class="mtkoverflow">'),b.appendString(d.kg(792,"Show more ({0})",(c=n)<1024?d.kg(793,"{0} chars",c):c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1024/1024).toFixed(1)} MB`)),b.appendString("</span>")),b.appendString("</span>"),new m(x,h)}(function(a){let b,c,d,f=a.lineContent;-1!==a.stopRenderingLineAfter&&a.stopRenderingLineAfter<f.length?(b=!0,c=f.length-a.stopRenderingLineAfter,d=a.stopRenderingLineAfter):(b=!1,c=0,d=f.length);let i=function(a,b,c,d,f){let g=[],i=0;d>0&&(g[i++]=new h(d,"",0,!1));let j=d;for(let k=0,l=c.getCount();k<l;k++){let l=c.getEndOffset(k);if(l<=d)continue;let m=c.getClassName(k);if(l>=f){let c=!!b&&e.E_(a.substring(j,f));g[i++]=new h(f,m,0,c);break}let n=!!b&&e.E_(a.substring(j,l));g[i++]=new h(l,m,0,n),j=l}return g}(f,a.containsRTL,a.lineTokens,a.fauxIndentLength,d);a.renderControlCharacters&&!a.isBasicASCII&&(i=function(a,b){let c=[],d=new h(0,"",0,!1),e=0;for(let f of b){let b=f.endIndex;for(;e<b;e++)r(a.charCodeAt(e))&&(e>d.endIndex&&(d=new h(e,f.type,f.metadata,f.containsRTL),c.push(d)),d=new h(e+1,"mtkcontrol",f.metadata,!1),c.push(d));e>d.endIndex&&(d=new h(b,f.type,f.metadata,f.containsRTL),c.push(d))}return c}(f,i)),(4===a.renderWhitespace||1===a.renderWhitespace||2===a.renderWhitespace&&a.selectionsOnLine||3===a.renderWhitespace&&!a.continuesWithWrappedLine)&&(i=function(a,b,c,d){let f,g=a.continuesWithWrappedLine,i=a.fauxIndentLength,j=a.tabSize,k=a.startVisibleColumn,l=a.useMonospaceOptimizations,m=a.selectionsOnLine,n=1===a.renderWhitespace,o=3===a.renderWhitespace,p=a.renderSpaceWidth!==a.spaceWidth,q=[],r=0,s=0,t=d[0].type,u=d[s].containsRTL,v=d[s].endIndex,w=d.length,x=!1,y=e.HG(b);-1===y?(x=!0,y=c,f=c):f=e.lT(b);let z=!1,A=0,B=m&&m[A],C=k%j;for(let a=i;a<c;a++){let g,k=b.charCodeAt(a);if(B&&B.endExclusive<=a&&(A++,B=m&&m[A]),a<y||a>f)g=!0;else if(9===k)g=!0;else if(32===k)if(n)if(z)g=!0;else{let d=a+1<c?b.charCodeAt(a+1):0;g=32===d||9===d}else g=!0;else g=!1;if(g&&m&&(g=!!B&&B.start<=a&&a<B.endExclusive),g&&o&&(g=x||a>f),g&&u&&a>=y&&a<=f&&(g=!1),z){if(!g||!l&&C>=j){if(p){let b=r>0?q[r-1].endIndex:i;for(let c=b+1;c<=a;c++)q[r++]=new h(c,"mtkw",1,!1)}else q[r++]=new h(a,"mtkw",1,!1);C%=j}}else(a===v||g&&a>i)&&(q[r++]=new h(a,t,0,u),C%=j);for(9===k?C=j:e.ne(k)?C+=2:C++,z=g;a===v;)if(++s<w)t=d[s].type,u=d[s].containsRTL,v=d[s].endIndex;else break}let D=!1;if(z)if(g&&n){let a=c>0?b.charCodeAt(c-1):0,d=c>1?b.charCodeAt(c-2):0;(32!==a||32===d||9===d)&&(D=!0)}else D=!0;if(D)if(p){let a=r>0?q[r-1].endIndex:i;for(let b=a+1;b<=c;b++)q[r++]=new h(b,"mtkw",1,!1)}else q[r++]=new h(c,"mtkw",1,!1);else q[r++]=new h(c,t,0,u);return q}(a,f,d,i));let j=0;if(a.lineDecorations.length>0){for(let b=0,c=a.lineDecorations.length;b<c;b++){let c=a.lineDecorations[b];3===c.type||1===c.type?j|=1:2===c.type&&(j|=2)}i=function(a,b,c,d){d.sort(g.d.compare);let e=g.Bs.normalize(a,d),f=e.length,i=0,j=[],k=0,l=0;for(let a=0,b=c.length;a<b;a++){let b=c[a],d=b.endIndex,g=b.type,m=b.metadata,n=b.containsRTL;for(;i<f&&e[i].startOffset<d;){let a=e[i];if(a.startOffset>l&&(l=a.startOffset,j[k++]=new h(l,g,m,n)),a.endOffset+1<=d)l=a.endOffset+1,j[k++]=new h(l,g+" "+a.className,m|a.metadata,n),i++;else{l=d,j[k++]=new h(l,g+" "+a.className,m|a.metadata,n);break}}d>l&&(l=d,j[k++]=new h(l,g,m,n))}let m=c[c.length-1].endIndex;if(i<f&&e[i].startOffset===m)for(;i<f&&e[i].startOffset===m;){let a=e[i];j[k++]=new h(l,a.className,a.metadata,!1),i++}return j}(f,0,i,a.lineDecorations)}return a.containsRTL||(i=function(a,b,c){let d=0,e=[],f=0;if(c)for(let c=0,g=b.length;c<g;c++){let g=b[c],i=g.endIndex;if(d+50<i){let b=g.type,c=g.metadata,j=g.containsRTL,k=-1,l=d;for(let g=d;g<i;g++)32===a.charCodeAt(g)&&(k=g),-1!==k&&g-l>=50&&(e[f++]=new h(k+1,b,c,j),l=k+1,k=-1);l!==i&&(e[f++]=new h(i,b,c,j))}else e[f++]=g;d=i}else for(let a=0,c=b.length;a<c;a++){let c=b[a],g=c.endIndex,i=g-d;if(i>50){let a=c.type,b=c.metadata,j=c.containsRTL,k=Math.ceil(i/50);for(let c=1;c<k;c++){let g=d+50*c;e[f++]=new h(g,a,b,j)}e[f++]=new h(g,a,b,j)}else e[f++]=c;d=g}return e}(f,i,!a.isBasicASCII||a.fontLigatures)),new q(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,f,d,b,c,i,j,a.fauxIndentLength,a.tabSize,a.startVisibleColumn,a.spaceWidth,a.renderSpaceCharCode,a.renderWhitespace,a.renderControlCharacters)}(a),b)}class o{constructor(a,b,c){this.characterMapping=a,this.html=b,this.containsForeignElements=c}}function p(a){let b=new f.fe(1e4),c=n(a,b);return new o(c.characterMapping,b.build(),c.containsForeignElements)}class q{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){this.fontIsMonospace=a,this.canUseHalfwidthRightwardsArrow=b,this.lineContent=c,this.len=d,this.isOverflowing=e,this.overflowingCharCount=f,this.parts=g,this.containsForeignElements=h,this.fauxIndentLength=i,this.tabSize=j,this.startVisibleColumn=k,this.spaceWidth=l,this.renderSpaceCharCode=m,this.renderWhitespace=n,this.renderControlCharacters=o}}function r(a){return a<32?9!==a:127===a||!!(a>=8234)&&!!(a<=8238)||!!(a>=8294)&&!!(a<=8297)||!!(a>=8206)&&!!(a<=8207)||1564===a}},16817:(a,b,c)=>{"use strict";c.d(b,{s:()=>e});var d=c(29949);class e{static whitespaceVisibleColumn(a,b,c){let e=a.length,f=0,g=-1,h=-1;for(let i=0;i<e;i++){if(i===b)return[g,h,f];switch(f%c==0&&(g=i,h=f),a.charCodeAt(i)){case 32:f+=1;break;case 9:f=d.A.nextRenderTabStop(f,c);break;default:return[-1,-1,-1]}}return b===e?[g,h,f]:[-1,-1,-1]}static atomicPosition(a,b,c,f){let g,h=a.length,[i,j,k]=e.whitespaceVisibleColumn(a,b,c);if(-1===k)return -1;switch(f){case 0:g=!0;break;case 1:g=!1;break;case 2:if(k%c==0)return b;g=k%c<=c/2}if(g){if(-1===i)return -1;let b=j;for(let e=i;e<h;++e){if(b===j+c)return i;switch(a.charCodeAt(e)){case 32:b+=1;break;case 9:b=d.A.nextRenderTabStop(b,c);break;default:return -1}}return b===j+c?i:-1}let l=d.A.nextRenderTabStop(k,c),m=k;for(let e=b;e<h;e++){if(m===l)return e;switch(a.charCodeAt(e)){case 32:m+=1;break;case 9:m=d.A.nextRenderTabStop(m,c);break;default:return -1}}return m===l?h:-1}}},17520:()=>{},18155:(a,b,c)=>{"use strict";c.d(b,{b:()=>d,t:()=>e});let d=function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID.bind(crypto);let a=new Uint8Array(16),b=[];for(let a=0;a<256;a++)b.push(a.toString(16).padStart(2,"0"));return function(){crypto.getRandomValues(a),a[6]=15&a[6]|64,a[8]=63&a[8]|128;let c=0,d="";return d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]]}}();function e(a){return`${a}-${d()}`}},18401:(a,b,c)=>{"use strict";c.d(b,{HJ:()=>k,LN:()=>h,YH:()=>j,ih:()=>l,rc:()=>g,wv:()=>i});var d=c(60734),e=c(11314),f=c(25536);class g extends e.jG{get onDidChange(){return this._onDidChange.event}constructor(a,b="",c="",e=!0,f){super(),this._onDidChange=this._register(new d.vl),this._enabled=!0,this._id=a,this._label=b,this._cssClass=c,this._enabled=e,this._actionCallback=f}get id(){return this._id}get label(){return this._label}set label(a){this._setLabel(a)}_setLabel(a){this._label!==a&&(this._label=a,this._onDidChange.fire({label:a}))}get tooltip(){return this._tooltip||""}set tooltip(a){this._setTooltip(a)}_setTooltip(a){this._tooltip!==a&&(this._tooltip=a,this._onDidChange.fire({tooltip:a}))}get class(){return this._cssClass}set class(a){this._setClass(a)}_setClass(a){this._cssClass!==a&&(this._cssClass=a,this._onDidChange.fire({class:a}))}get enabled(){return this._enabled}set enabled(a){this._setEnabled(a)}_setEnabled(a){this._enabled!==a&&(this._enabled=a,this._onDidChange.fire({enabled:a}))}get checked(){return this._checked}set checked(a){this._setChecked(a)}_setChecked(a){this._checked!==a&&(this._checked=a,this._onDidChange.fire({checked:a}))}async run(a,b){this._actionCallback&&await this._actionCallback(a)}}class h extends e.jG{constructor(){super(...arguments),this._onWillRun=this._register(new d.vl),this._onDidRun=this._register(new d.vl)}get onWillRun(){return this._onWillRun.event}get onDidRun(){return this._onDidRun.event}async run(a,b){let c;if(a.enabled){this._onWillRun.fire({action:a});try{await this.runAction(a,b)}catch(a){c=a}this._onDidRun.fire({action:a,error:c})}}async runAction(a,b){await a.run(b)}}class i{constructor(){this.id=i.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...a){let b=[];for(let c of a)c.length&&(b=b.length?[...b,new i,...c]:c);return b}static{this.ID="vs.actions.separator"}async run(){}}class j{get actions(){return this._actions}constructor(a,b,c,d){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=a,this.label=b,this.class=d,this._actions=c}async run(){}}class k extends g{static{this.ID="vs.actions.empty"}constructor(){super(k.ID,f.kg(28,"(empty)"),void 0,!1)}}function l(a){return{id:a.id,label:a.label,tooltip:a.tooltip??a.label,class:a.class,enabled:a.enabled??!0,checked:a.checked,run:async(...b)=>a.run(...b)}}},18668:(a,b,c)=>{"use strict";c.d(b,{M:()=>f});var d=c(60734);class e{constructor(){this._onDidChange=new d.vl,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}let f=new e},18732:(a,b,c)=>{"use strict";c.d(b,{B8:()=>aa,MH:()=>T,_C:()=>d,W0:()=>J,Bm:()=>function a(b){return!!("A"===b.tagName&&b.classList.contains("monaco-button")||"DIV"===b.tagName&&b.classList.contains("monaco-button-dropdown"))||!b.classList.contains("monaco-list")&&!!b.parentElement&&a(b.parentElement)},b$:()=>I,bm:()=>H,mh:()=>R,tX:()=>Q,Es:()=>L,xu:()=>K,bG:()=>V});var d,e,f=c(32677),g=c(76136),h=c(88077),i=c(67397),j=c(31662),k=c(98350),l=c(98867);class m{constructor(a){this.spliceables=a}splice(a,b,c){this.spliceables.forEach(d=>d.splice(a,b,c))}}var n=c(54734),o=c(40565),p=c(23949),q=c(53578),r=c(60734),s=c(58557),t=c(11314),u=c(61496),v=c(56167),w=c(46339);c(45669);class x extends Error{constructor(a,b){super(`ListError [${a}] ${b}`)}}var y=c(85157),z=c(21280),A=c(43589),B=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};class C{constructor(a){this.trait=a,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(a){return a}renderElement(a,b,c){let d=this.renderedElements.findIndex(a=>a.templateData===c);if(d>=0){let a=this.renderedElements[d];this.trait.unrender(c),a.index=b}else this.renderedElements.push({index:b,templateData:c});this.trait.renderIndex(b,c)}splice(a,b,c){let d=[];for(let e of this.renderedElements)e.index<a?d.push(e):e.index>=a+b&&d.push({index:e.index+c-b,templateData:e.templateData});this.renderedElements=d}renderIndexes(a){for(let{index:b,templateData:c}of this.renderedElements)a.indexOf(b)>-1&&this.trait.renderIndex(b,c)}disposeTemplate(a){let b=this.renderedElements.findIndex(b=>b.templateData===a);b<0||this.renderedElements.splice(b,1)}}class D{get onChange(){return this._onChange.event}get name(){return this._trait}get renderer(){return new C(this)}constructor(a){this._trait=a,this.indexes=[],this.sortedIndexes=[],this._onChange=new r.vl}splice(a,b,c){let d=c.length-b,e=a+b,f=[],g=0;for(;g<this.sortedIndexes.length&&this.sortedIndexes[g]<a;)f.push(this.sortedIndexes[g++]);for(let b=0;b<c.length;b++)c[b]&&f.push(b+a);for(;g<this.sortedIndexes.length&&this.sortedIndexes[g]>=e;)f.push(this.sortedIndexes[g++]+d);this.renderer.splice(a,b,c.length),this._set(f,f)}renderIndex(a,b){b.classList.toggle(this._trait,this.contains(a))}unrender(a){a.classList.remove(this._trait)}set(a,b){return this._set(a,[...a].sort(Y),b)}_set(a,b,c){let d=this.indexes,e=this.sortedIndexes;this.indexes=a,this.sortedIndexes=b;let f=X(e,a);return this.renderer.renderIndexes(f),this._onChange.fire({indexes:a,browserEvent:c}),d}get(){return this.indexes}contains(a){return(0,n.El)(this.sortedIndexes,a,Y)>=0}dispose(){(0,t.AS)(this._onChange)}}B([q.B],D.prototype,"renderer",null);class E extends D{constructor(a){super("selected"),this.setAriaSelected=a}renderIndex(a,b){super.renderIndex(a,b),this.setAriaSelected&&(this.contains(a)?b.setAttribute("aria-selected","true"):b.setAttribute("aria-selected","false"))}}class F{constructor(a,b,c){this.trait=a,this.view=b,this.identityProvider=c}splice(a,b,c){if(!this.identityProvider)return this.trait.splice(a,b,Array(c.length).fill(!1));let d=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(0===d.length)return this.trait.splice(a,b,Array(c.length).fill(!1));let e=new Set(d),f=c.map(a=>e.has(this.identityProvider.getId(a).toString()));this.trait.splice(a,b,f)}}function G(a,b){return!!a.classList.contains(b)||!a.classList.contains("monaco-list")&&!!a.parentElement&&G(a.parentElement,b)}function H(a){return G(a,"monaco-editor")}function I(a){return G(a,"monaco-custom-toggle")}function J(a){return G(a,"action-item")}function K(a){return G(a,"monaco-tree-sticky-row")}function L(a){return a.classList.contains("monaco-tree-sticky-container")}class M{get onKeyDown(){return r.Jh.chain(this.disposables.add(new i.f(this.view.domNode,"keydown")).event,a=>a.filter(a=>!(0,f.yD)(a.target)).map(a=>new j.Z(a)))}constructor(a,b,c){this.list=a,this.view=b,this.disposables=new t.Cm,this.multipleSelectionDisposables=new t.Cm,this.multipleSelectionSupport=c.multipleSelectionSupport,this.disposables.add(this.onKeyDown(a=>{switch(a.keyCode){case 3:return this.onEnter(a);case 16:return this.onUpArrow(a);case 18:return this.onDownArrow(a);case 11:return this.onPageUpArrow(a);case 12:return this.onPageDownArrow(a);case 9:return this.onEscape(a);case 31:this.multipleSelectionSupport&&(v.zx?a.metaKey:a.ctrlKey)&&this.onCtrlA(a)}}))}updateOptions(a){void 0!==a.multipleSelectionSupport&&(this.multipleSelectionSupport=a.multipleSelectionSupport)}onEnter(a){a.preventDefault(),a.stopPropagation(),this.list.setSelection(this.list.getFocus(),a.browserEvent)}onUpArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusPrevious(1,!1,a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onDownArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusNext(1,!1,a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onPageUpArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusPreviousPage(a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onPageDownArrow(a){a.preventDefault(),a.stopPropagation(),this.list.focusNextPage(a.browserEvent);let b=this.list.getFocus()[0];this.list.setAnchor(b),this.list.reveal(b),this.view.domNode.focus()}onCtrlA(a){a.preventDefault(),a.stopPropagation(),this.list.setSelection((0,n.y1)(this.list.length),a.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(a){this.list.getSelection().length&&(a.preventDefault(),a.stopPropagation(),this.list.setSelection([],a.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}B([q.B],M.prototype,"onKeyDown",null),function(a){a[a.Automatic=0]="Automatic",a[a.Trigger=1]="Trigger"}(d||(d={})),function(a){a[a.Idle=0]="Idle",a[a.Typing=1]="Typing"}(e||(e={}));let N=new class{mightProducePrintableCharacter(a){return!a.ctrlKey&&!a.metaKey&&!a.altKey&&(a.keyCode>=31&&a.keyCode<=56||a.keyCode>=21&&a.keyCode<=30||a.keyCode>=98&&a.keyCode<=107||a.keyCode>=85&&a.keyCode<=95)}};class O{constructor(a,b,c,f,g){this.list=a,this.view=b,this.keyboardNavigationLabelProvider=c,this.keyboardNavigationEventFilter=f,this.delegate=g,this.enabled=!1,this.state=e.Idle,this.mode=d.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new t.Cm,this.disposables=new t.Cm,this.updateOptions(a.options)}updateOptions(a){a.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=a.typeNavigationMode??d.Automatic}enable(){if(this.enabled)return;let a=!1,b=r.Jh.chain(this.enabledDisposables.add(new i.f(this.view.domNode,"keydown")).event,b=>b.filter(a=>!(0,f.yD)(a.target)).filter(()=>this.mode===d.Automatic||this.triggered).map(a=>new j.Z(a)).filter(b=>a||this.keyboardNavigationEventFilter(b)).filter(a=>this.delegate.mightProducePrintableCharacter(a)).forEach(a=>f.fs.stop(a,!0)).map(a=>a.browserEvent.key)),c=r.Jh.debounce(b,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);r.Jh.reduce(r.Jh.any(b,c),(a,b)=>null===b?null:(a||"")+b,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),c(this.onClear,this,this.enabledDisposables),b(()=>a=!0,void 0,this.enabledDisposables),c(()=>a=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){let a=this.list.getFocus();if(a.length>0&&a[0]===this.previouslyFocused){let b=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(a[0]));"string"==typeof b?(0,l.xE)(b):b&&(0,l.xE)(b.get())}this.previouslyFocused=-1}onInput(a){if(!a){this.state=e.Idle,this.triggered=!1;return}let b=this.list.getFocus(),c=b.length>0?b[0]:0,d=+(this.state===e.Idle);this.state=e.Typing;for(let b=0;b<this.list.length;b++){let e=(c+b+d)%this.list.length,f=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(this.view.element(e)),g=f&&f.toString();if(this.list.options.typeNavigationEnabled){if(void 0!==g){if((0,s.WP)(a,g)){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}let b=(0,s.O)(a,g);if(b&&b[0].end-b[0].start>1&&1===b.length){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}}}else if(void 0===g||(0,s.WP)(a,g)){this.previouslyFocused=c,this.list.setFocus([e]),this.list.reveal(e);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class P{constructor(a,b){this.list=a,this.view=b,this.disposables=new t.Cm;let c=r.Jh.chain(this.disposables.add(new i.f(b.domNode,"keydown")).event,a=>a.filter(a=>!(0,f.yD)(a.target)).map(a=>new j.Z(a)));r.Jh.chain(c,a=>a.filter(a=>2===a.keyCode&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&!a.altKey))(this.onTab,this,this.disposables)}onTab(a){if(a.target!==this.view.domNode)return;let b=this.list.getFocus();if(0===b.length)return;let c=this.view.domElement(b[0]);if(!c)return;let d=c.querySelector("[tabIndex]");if(!d||!(0,f.sb)(d)||-1===d.tabIndex)return;let e=(0,f.zk)(d).getComputedStyle(d);"hidden"!==e.visibility&&"none"!==e.display&&(a.preventDefault(),a.stopPropagation(),d.focus())}dispose(){this.disposables.dispose()}}function Q(a){return v.zx?a.browserEvent.metaKey:a.browserEvent.ctrlKey}function R(a){return a.browserEvent.shiftKey}let S={isSelectionSingleChangeEvent:Q,isSelectionRangeChangeEvent:R};class T{get onPointer(){return this._onPointer.event}constructor(a){this.list=a,this.disposables=new t.Cm,this._onPointer=this.disposables.add(new r.vl),!1!==a.options.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||S),this.mouseSupport=void 0===a.options.mouseSupport||!!a.options.mouseSupport,this.mouseSupport&&(a.onMouseDown(this.onMouseDown,this,this.disposables),a.onContextMenu(this.onContextMenu,this,this.disposables),a.onMouseDblClick(this.onDoubleClick,this,this.disposables),a.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(k.q.addTarget(a.getHTMLElement()))),r.Jh.any(a.onMouseClick,a.onMouseMiddleClick,a.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(a){void 0!==a.multipleSelectionSupport&&(this.multipleSelectionController=void 0,a.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||S))}isSelectionSingleChangeEvent(a){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionSingleChangeEvent(a)}isSelectionRangeChangeEvent(a){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionRangeChangeEvent(a)}isSelectionChangeEvent(a){return this.isSelectionSingleChangeEvent(a)||this.isSelectionRangeChangeEvent(a)}onMouseDown(a){H(a.browserEvent.target)||(0,f.bq)()!==a.browserEvent.target&&this.list.domFocus()}onContextMenu(a){if((0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target))return;let b=void 0===a.index?[]:[a.index];this.list.setFocus(b,a.browserEvent)}onViewPointer(a){var b;if(!this.mouseSupport||(0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target)||a.browserEvent.isHandledByList)return;a.browserEvent.isHandledByList=!0;let c=a.index;if(void 0===c){this.list.setFocus([],a.browserEvent),this.list.setSelection([],a.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(a))return this.changeSelection(a);this.list.setFocus([c],a.browserEvent),this.list.setAnchor(c),b=a.browserEvent,(0,f.Er)(b)&&2===b.button||this.list.setSelection([c],a.browserEvent),this._onPointer.fire(a)}onDoubleClick(a){if((0,f.yD)(a.browserEvent.target)||H(a.browserEvent.target)||this.isSelectionChangeEvent(a)||a.browserEvent.isHandledByList)return;a.browserEvent.isHandledByList=!0;let b=this.list.getFocus();this.list.setSelection(b,a.browserEvent)}changeSelection(a){let b=a.index,c=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(a)){void 0===c&&(c=this.list.getFocus()[0]??b,this.list.setAnchor(c));let d=Math.min(c,b),e=Math.max(c,b),f=(0,n.y1)(d,e+1),g=this.list.getSelection(),h=function(a,b){let c=a.indexOf(b);if(-1===c)return[];let d=[],e=c-1;for(;e>=0&&a[e]===b-(c-e);)d.push(a[e--]);for(d.reverse(),e=c;e<a.length&&a[e]===b+(e-c);)d.push(a[e++]);return d}(X(g,[c]),c);if(0===h.length)return;let i=X(f,function(a,b){let c=[],d=0,e=0;for(;d<a.length||e<b.length;)if(d>=a.length)c.push(b[e++]);else if(e>=b.length)c.push(a[d++]);else if(a[d]===b[e]){d++,e++;continue}else a[d]<b[e]?c.push(a[d++]):e++;return c}(g,h));this.list.setSelection(i,a.browserEvent),this.list.setFocus([b],a.browserEvent)}else if(this.isSelectionSingleChangeEvent(a)){let c=this.list.getSelection(),d=c.filter(a=>a!==b);this.list.setFocus([b]),this.list.setAnchor(b),c.length===d.length?this.list.setSelection([...d,b],a.browserEvent):this.list.setSelection(d,a.browserEvent)}}dispose(){this.disposables.dispose()}}class U{constructor(a,b){this.styleElement=a,this.selectorSuffix=b}style(a){let b=this.selectorSuffix&&`.${this.selectorSuffix}`,c=[];a.listBackground&&c.push(`.monaco-list${b} .monaco-list-rows { background: ${a.listBackground}; }`),a.listFocusBackground&&(c.push(`.monaco-list${b}:focus .monaco-list-row.focused { background-color: ${a.listFocusBackground}; }`),c.push(`.monaco-list${b}:focus .monaco-list-row.focused:hover { background-color: ${a.listFocusBackground}; }`)),a.listFocusForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.focused { color: ${a.listFocusForeground}; }`),a.listActiveSelectionBackground&&(c.push(`.monaco-list${b}:focus .monaco-list-row.selected { background-color: ${a.listActiveSelectionBackground}; }`),c.push(`.monaco-list${b}:focus .monaco-list-row.selected:hover { background-color: ${a.listActiveSelectionBackground}; }`)),a.listActiveSelectionForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.selected { color: ${a.listActiveSelectionForeground}; }`),a.listActiveSelectionIconForeground&&c.push(`.monaco-list${b}:focus .monaco-list-row.selected .codicon { color: ${a.listActiveSelectionIconForeground}; }`),a.listFocusAndSelectionBackground&&c.push(`
|
|
30
30
|
.monaco-drag-image${b},
|
|
31
31
|
.monaco-list${b}:focus .monaco-list-row.selected.focused { background-color: ${a.listFocusAndSelectionBackground}; }
|
|
32
32
|
`),a.listFocusAndSelectionForeground&&c.push(`
|
|
@@ -202,7 +202,7 @@ ${(0,aw.ih)(a)}
|
|
|
202
202
|
:host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; }
|
|
203
203
|
:host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; }
|
|
204
204
|
:host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; }
|
|
205
|
-
`,dc=class extends aE.jG{constructor(a){super(),this.layoutService=a,this.contextView=this._register(new da(this.layoutService.mainContainer,1)),this.layout(),this._register(a.onDidLayoutContainer(()=>this.layout()))}showContextView(a,b,c){let d;d=b?b===this.layoutService.getContainer((0,bC.zk)(b))?1:c?3:2:1,this.contextView.setContainer(b??this.layoutService.activeContainer,d),this.contextView.show(a);let e={close:()=>{this.openContextView===e&&this.hideContextView()}};return this.openContextView=e,e}layout(){this.contextView.layout()}hideContextView(a){this.contextView.hide(a),this.openContextView=void 0}};dc=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(g=cn.x,function(a,b){g(a,b,0)})],dc);class dd extends dc{getContextViewElement(){return this.contextView.getViewElement()}}function de(a){return"object"==typeof a&&"markdown"in a&&"markdownNotSupportedFallback"in a}class df{constructor(a,b,c){this.hoverDelegate=a,this.target=b,this.fadeInAnimation=c}async update(a,b,c){let d;if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),!this.isDisposed){if((0,c0.Kg)(a)||(0,bC.sb)(a)||void 0===a)d=a;else{let e;this._cancellationTokenSource=new at.Qi;let f=this._cancellationTokenSource.token;if((e=de(a)?(0,c0.Tn)(a.markdown)?a.markdown(f).then(b=>b??a.markdownNotSupportedFallback):a.markdown??a.markdownNotSupportedFallback:a.element(f))instanceof Promise?(this._hoverWidget||this.show((0,a_.kg)(75,"Loading..."),b,c),d=await e):d=e,this.isDisposed||f.isCancellationRequested)return}this.show(d,b,c)}}show(a,b,c){let d=this._hoverWidget;if(this.hasContent(a)){let e={content:a,target:this.target,actions:c?.actions,linkHandler:c?.linkHandler,trapFocus:c?.trapFocus,appearance:{showPointer:"element"===this.hoverDelegate.placement,skipFadeInAnimation:!this.fadeInAnimation||!!d,showHoverHint:c?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(e,b)}d?.dispose()}hasContent(a){return!!a&&(!(0,c$.VS)(a)||!!a.value)}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var dg=c(32765),dh=c(69262),di=c(24246),dj=function(a,b){return function(c,d){b(c,d,a)}};let dk=class extends aE.jG{constructor(a,b,c,d,e,f){super(),this._instantiationService=a,this._configurationService=b,this._keybindingService=d,this._layoutService=e,this._accessibilityService=f,this._currentDelayedHoverWasShown=!1,this._delayedHovers=new Map,this._managedHovers=new Map,this._register(c.onDidShowContextMenu(()=>this.hideHover())),this._contextViewHandler=this._register(new dc(this._layoutService)),this._register(dg.f.registerCommandAndKeybindingRule({id:"workbench.action.showHover",weight:199,when:dh.R.editorTextFocus.negate(),primary:(0,av.m5)(2089,2087),handler:()=>{this._showAndFocusHoverForActiveElement()}}))}showInstantHover(a,b,c,d){let e=this._createHover(a,c);if(e)return this._showHover(e,a,b),e}showDelayedHover(a,b){if(void 0===a.id&&(a.id=dm(a.content)),!this._currentDelayedHover||this._currentDelayedHoverWasShown){if(this._currentHover?.isLocked)return;if(dl(this._currentHoverOptions)===dl(a))return this._currentHover;if(this._currentHover&&!this._currentHover.isDisposed&&void 0!==this._currentDelayedHoverGroupId&&this._currentDelayedHoverGroupId===b?.groupId)return this.showInstantHover({...a,appearance:{...a.appearance,skipFadeInAnimation:!0}})}else if(this._currentDelayedHover&&dl(this._currentHoverOptions)===dl(a))return this._currentDelayedHover;let c=this._createHover(a,void 0);if(!c){this._currentDelayedHover=void 0,this._currentDelayedHoverWasShown=!1,this._currentDelayedHoverGroupId=void 0;return}return this._currentDelayedHover=c,this._currentDelayedHoverWasShown=!1,this._currentDelayedHoverGroupId=b?.groupId,(0,aJ.wR)(this._configurationService.getValue("workbench.hover.delay")).then(()=>{c&&!c.isDisposed&&(this._currentDelayedHoverWasShown=!0,this._showHover(c,a))}),c}setupDelayedHover(a,b,c){return this._setupDelayedHover(a,()=>({..."function"==typeof b?b():b,target:a}),c)}setupDelayedHoverAtMouse(a,b,c){return this._setupDelayedHover(a,c=>({..."function"==typeof b?b():b,target:{targetElements:[a],x:void 0!==c?c.x+10:void 0}}),c)}_setupDelayedHover(a,b,c){let d=new aE.Cm;return d.add((0,bC.ko)(a,bC.Bx.MOUSE_OVER,a=>{this.showDelayedHover(b(a),{groupId:c?.groupId})})),c?.setupKeyboardEvents&&d.add((0,bC.ko)(a,bC.Bx.KEY_DOWN,a=>{let c=new c6.Z(a);(c.equals(10)||c.equals(3))&&this.showInstantHover(b(),!0)})),this._delayedHovers.set(a,{show:a=>{this.showInstantHover(b(),a)}}),d.add((0,aE.s)(()=>this._delayedHovers.delete(a))),d}_createHover(a,b){if(this._currentDelayedHover=void 0,this._currentHover?.isLocked||(void 0===a.id&&(a.id=dm(a.content)),dl(this._currentHoverOptions)===dl(a)))return;this._currentHoverOptions=a,this._lastHoverOptions=a;let c=a.trapFocus||this._accessibilityService.isScreenReaderOptimized(),d=(0,bC.bq)();!b&&(c&&d?d.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=d):this._lastFocusedElementBeforeOpen=void 0);let e=new aE.Cm,f=this._instantiationService.createInstance(c3,a);if(a.persistence?.sticky&&(f.isLocked=!0),a.position?.hoverPosition&&!(0,c0.Et)(a.position.hoverPosition)&&(a.target={targetElements:(0,bC.sb)(a.target)?[a.target]:a.target.targetElements,x:a.position.hoverPosition.x+10}),f.onDispose(()=>{this._currentHover?.domNode&&(0,bC.nR)(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),dl(this._currentHoverOptions)===dl(a)&&this.doHideHover(),e.dispose()},void 0,e),!a.container){let b=(0,bC.sb)(a.target)?a.target:a.target.targetElements[0];a.container=this._layoutService.getContainer((0,bC.zk)(b))}if(f.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,e),a.persistence?.sticky)e.add((0,bC.ko)((0,bC.zk)(a.container).document,bC.Bx.MOUSE_DOWN,a=>{(0,bC.QX)(a.target,f.domNode)||this.doHideHover()}));else{if("targetElements"in a.target)for(let b of a.target.targetElements)e.add((0,bC.ko)(b,bC.Bx.CLICK,()=>this.hideHover()));else e.add((0,bC.ko)(a.target,bC.Bx.CLICK,()=>this.hideHover()));let b=(0,bC.bq)();if(b){let c=(0,bC.zk)(b).document;e.add((0,bC.ko)(b,bC.Bx.KEY_DOWN,b=>this._keyDown(b,f,!!a.persistence?.hideOnKeyDown))),e.add((0,bC.ko)(c,bC.Bx.KEY_DOWN,b=>this._keyDown(b,f,!!a.persistence?.hideOnKeyDown))),e.add((0,bC.ko)(b,bC.Bx.KEY_UP,a=>this._keyUp(a,f))),e.add((0,bC.ko)(c,bC.Bx.KEY_UP,a=>this._keyUp(a,f)))}}if("IntersectionObserver"in aD.G){let b=new IntersectionObserver(a=>this._intersectionChange(a,f),{threshold:0}),c="targetElements"in a.target?a.target.targetElements[0]:a.target;b.observe(c),e.add((0,aE.s)(()=>b.disconnect()))}return this._currentHover=f,f}_showHover(a,b,c){this._contextViewHandler.showContextView(new dp(a,c),b.container)}hideHover(a){!(!a&&this._currentHover?.isLocked)&&this._currentHoverOptions&&this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(a,b){a[a.length-1].isIntersecting||b.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showInstantHover(this._lastHoverOptions,!0,!0)}_showAndFocusHoverForActiveElement(){let a=(0,bC.bq)();for(;a;){let b=this._delayedHovers.get(a)??this._managedHovers.get(a);if(b)return void b.show(!0);a=a.parentElement}}_keyDown(a,b,c){if("Alt"===a.key){b.isLocked=!0;return}let d=new c6.Z(a);this._keybindingService.resolveKeyboardEvent(d).getSingleModifierDispatchChords().some(a=>!!a)||0!==this._keybindingService.softDispatch(d,d.target).kind||c&&(!this._currentHoverOptions?.trapFocus||"Tab"!==a.key)&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(a,b){"Alt"===a.key&&(b.isLocked=!1,b.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(a,b,c,d){let e,f;if(a.showNativeHover){var g=b,h=c;function i(a){a?g.setAttribute("title",a):g.removeAttribute("title")}return i(dn(h)),{update:a=>i(dn(a)),show:()=>{},hide:()=>{},dispose:()=>i(void 0)}}b.setAttribute("custom-hover","true"),""!==b.title&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",b.title),b.title="");let j=(b,c)=>{let d=void 0!==f;b&&(f?.dispose(),f=void 0),c&&(e?.dispose(),e=void 0),d&&(a.onDidHideHover?.(),f=void 0)},k=(e,g,h,i)=>new aJ.pc(async()=>{(!f||f.isDisposed)&&(f=new df(a,h||b,e>0),await f.update("function"==typeof c?c():c,g,{...d,trapFocus:i}))},e),l=new aE.Cm,m=!1;l.add((0,bC.ko)(b,bC.Bx.MOUSE_DOWN,()=>{m=!0,j(!0,!0)},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_UP,()=>{m=!1},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_LEAVE,a=>{m=!1,j(!1,a.fromElement===b)},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_OVER,d=>{if(e)return;let f=new aE.Cm,g={targetElements:[b],dispose:()=>{}};(void 0===a.placement||"mouse"===a.placement)&&f.add((0,bC.ko)(b,bC.Bx.MOUSE_MOVE,a=>{g.x=a.x+10,(0,bC.sb)(a.target)&&dq(a.target,b)!==b&&j(!0,!0)},!0)),e=f,(0,bC.sb)(d.target)&&dq(d.target,b)!==b||f.add(k("function"==typeof a.delay?a.delay(c):a.delay,!1,g))},!0)),(0,bC.yD)(b)||l.add((0,bC.ko)(b,bC.Bx.FOCUS,()=>{if(m||e)return;let d=new aE.Cm;d.add((0,bC.ko)(b,bC.Bx.BLUR,()=>j(!0,!0),!0)),d.add(k("function"==typeof a.delay?a.delay(c):a.delay,!1,{targetElements:[b],dispose:()=>{}})),e=d},!0));let n={show:a=>{j(!1,!0),k(0,a,void 0,a)},hide:()=>{j(!0,!0)},update:async(a,b)=>{c=a,await f?.update(c,void 0,b)},dispose:()=>{this._managedHovers.delete(b),l.dispose(),j(!0,!0)}};return this._managedHovers.set(b,n),n}showManagedHover(a){let b=this._managedHovers.get(a);b&&b.show(!0)}dispose(){this._managedHovers.forEach(a=>a.dispose()),super.dispose()}};function dl(a){if(void 0!==a)return a?.id??a}function dm(a){if(!(0,bC.sb)(a))return"string"==typeof a?a.toString():a.value}function dn(a){let b="function"==typeof a?a():a;return(0,c0.Kg)(b)?(0,di.pS)(b):de(b)?b.markdownNotSupportedFallback:void 0}dk=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dj(0,cU._Y),dj(1,b1.pG),dj(2,cT.Z),dj(3,cV.b),dj(4,cn.x),dj(5,c_.j)],dk);class dp{get anchorPosition(){return this._hover.anchor}constructor(a,b=!1){this._hover=a,this._focus=b,this.layer=1}render(a){return this._hover.render(a),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function dq(a,b){for(b=b??(0,bC.zk)(a).document.body;!a.hasAttribute("custom-hover")&&a!==b;)a=a.parentElement;return a}(0,ck.v)(cS.TN,dk,1),(0,ch.zy)((a,b)=>{let c=a.getColor(cR.oZ8);c&&(b.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${c.transparent(.5)}; }`),b.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${c.transparent(.5)}; }`))}),c(86031);var dr=c(99695),ds=c(10401),dt=c(64087),du=c(56877),dv=c(55830),dw=c(70511),dx=c(9888),dy=c(43310),dz=c(59714),dA=c(61059);function dB(a){return Object.isFrozen(a)?a:dy.ol(a)}class dC{static createEmptyModel(a){return new dC({},[],[],void 0,a)}constructor(a,b,c,d,e){this._contents=a,this._keys=b,this._overrides=c,this.raw=d,this.logService=e,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw){let a=(Array.isArray(this.raw)?this.raw:[this.raw]).map(a=>{if(a instanceof dC)return a;let b=new dD("",this.logService);return b.parseRaw(a),b.configurationModel});this._rawConfiguration=a.reduce((a,b)=>b===a?b:a.merge(b),a[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return 0===this._keys.length&&0===Object.keys(this._contents).length&&0===this._overrides.length}getValue(a){return a?(0,b1.gD)(this.contents,a):this.contents}inspect(a,b){let c=this;return{get value(){return dB(c.rawConfiguration.getValue(a))},get override(){return b?dB(c.rawConfiguration.getOverrideValue(a,b)):void 0},get merged(){return dB(b?c.rawConfiguration.override(b).getValue(a):c.rawConfiguration.getValue(a))},get overrides(){let b=[];for(let{contents:d,identifiers:e,keys:f}of c.rawConfiguration.overrides){let g=new dC(d,f,[],void 0,c.logService).getValue(a);void 0!==g&&b.push({identifiers:e,value:g})}return b.length?dB(b):void 0}}}getOverrideValue(a,b){let c=this.getContentsForOverrideIdentifer(b);return c?a?(0,b1.gD)(c,a):c:void 0}override(a){let b=this.overrideConfigurations.get(a);return b||(b=this.createOverrideConfigurationModel(a),this.overrideConfigurations.set(a,b)),b}merge(...a){let b=dy.Go(this.contents),c=dy.Go(this.overrides),d=[...this.keys],e=this.raw?Array.isArray(this.raw)?[...this.raw]:[this.raw]:[this];for(let f of a)if(e.push(...f.raw?Array.isArray(f.raw)?f.raw:[f.raw]:[f]),!f.isEmpty()){for(let a of(this.mergeContents(b,f.contents),f.overrides)){let[b]=c.filter(b=>a$.aI(b.identifiers,a.identifiers));b?(this.mergeContents(b.contents,a.contents),b.keys.push(...a.keys),b.keys=a$.dM(b.keys)):c.push(dy.Go(a))}for(let a of f.keys)-1===d.indexOf(a)&&d.push(a)}return new dC(b,d,c,!e.length||e.every(a=>a instanceof dC)?void 0:e,this.logService)}createOverrideConfigurationModel(a){let b=this.getContentsForOverrideIdentifer(a);if(!b||"object"!=typeof b||!Object.keys(b).length)return this;let c={};for(let a of a$.dM([...Object.keys(this.contents),...Object.keys(b)])){let d=this.contents[a],e=b[a];e&&("object"==typeof d&&"object"==typeof e?(d=dy.Go(d),this.mergeContents(d,e)):d=e),c[a]=d}return new dC(c,this.keys,this.overrides,void 0,this.logService)}mergeContents(a,b){for(let c of Object.keys(b)){if(c in a&&c0.Gv(a[c])&&c0.Gv(b[c])){this.mergeContents(a[c],b[c]);continue}a[c]=dy.Go(b[c])}}getContentsForOverrideIdentifer(a){let b=null,c=null,d=a=>{a&&(c?this.mergeContents(c,a):c=dy.Go(a))};for(let c of this.overrides)1===c.identifiers.length&&c.identifiers[0]===a?b=c.contents:c.identifiers.includes(a)&&d(c.contents);return d(b),c}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(a,b){this.updateValue(a,b,!1)}removeValue(a){let b=this.keys.indexOf(a);-1!==b&&(this.keys.splice(b,1),(0,b1.iB)(this.contents,a),dz.rC.test(a)&&this.overrides.splice(this.overrides.findIndex(b=>a$.aI(b.identifiers,(0,dz.Gv)(a))),1))}updateValue(a,b,c){if((0,b1.kW)(this.contents,a,b,a=>this.logService.error(a)),(c=c||-1===this.keys.indexOf(a))&&this.keys.push(a),dz.rC.test(a)){let b=(0,dz.Gv)(a),c={identifiers:b,keys:Object.keys(this.contents[a]),contents:(0,b1.ad)(this.contents[a],a=>this.logService.error(a))},d=this.overrides.findIndex(a=>a$.aI(a.identifiers,b));-1!==d?this.overrides[d]=c:this.overrides.push(c)}}}class dD{constructor(a,b){this._name=a,this.logService=b,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||dC.createEmptyModel(this.logService)}parseRaw(a,b){this._raw=a;let{contents:c,keys:d,overrides:e,restricted:f,hasExcludedProperties:g}=this.doParseRaw(a,b);this._configurationModel=new dC(c,d,e,g?[a]:void 0,this.logService),this._restrictedConfigurations=f||[]}doParseRaw(a,b){let c=dA.O.as(dz.Fd.Configuration),d=c.getConfigurationProperties(),e=c.getExcludedConfigurationProperties(),f=this.filter(a,d,e,!0,b);a=f.raw;let g=(0,b1.ad)(a,a=>this.logService.error(`Conflict in settings file ${this._name}: ${a}`));return{contents:g,keys:Object.keys(a),overrides:this.toOverrides(a,a=>this.logService.error(`Conflict in settings file ${this._name}: ${a}`)),restricted:f.restricted,hasExcludedProperties:f.hasExcludedProperties}}filter(a,b,c,d,e){let f=!1;if(!e?.scopes&&!e?.skipRestricted&&!e?.skipUnregistered&&!e?.exclude?.length)return{raw:a,restricted:[],hasExcludedProperties:f};let g={},h=[];for(let i in a)if(dz.rC.test(i)&&d){let d=this.filter(a[i],b,c,!1,e);g[i]=d.raw,f=f||d.hasExcludedProperties,h.push(...d.restricted)}else{let d=b[i];d?.restricted&&h.push(i),this.shouldInclude(i,d,c,e)?g[i]=a[i]:f=!0}return{raw:g,restricted:h,hasExcludedProperties:f}}shouldInclude(a,b,c,d){if(d.exclude?.includes(a))return!1;if(d.include?.includes(a))return!0;if(d.skipRestricted&&b?.restricted||d.skipUnregistered&&!b)return!1;let e=b??c[a],f=e?void 0!==e.scope?e.scope:4:void 0;return void 0===f||void 0===d.scopes||d.scopes.includes(f)}toOverrides(a,b){let c=[];for(let d of Object.keys(a))if(dz.rC.test(d)){let e={};for(let b in a[d])e[b]=a[d][b];c.push({identifiers:(0,dz.Gv)(d),keys:Object.keys(e),contents:(0,b1.ad)(e,b)})}return c}}class dE{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m){this.key=a,this.overrides=b,this._value=c,this.overrideIdentifiers=d,this.defaultConfiguration=e,this.policyConfiguration=f,this.applicationConfiguration=g,this.userConfiguration=h,this.localUserConfiguration=i,this.remoteUserConfiguration=j,this.workspaceConfiguration=k,this.folderConfigurationModel=l,this.memoryConfigurationModel=m}toInspectValue(a){return a?.value!==void 0||a?.override!==void 0||a?.overrides!==void 0?a:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class dF{constructor(a,b,c,d,e,f,g,h,i,j){this._defaultConfiguration=a,this._policyConfiguration=b,this._applicationConfiguration=c,this._localUserConfiguration=d,this._remoteUserConfiguration=e,this._workspaceConfiguration=f,this._folderConfigurations=g,this._memoryConfiguration=h,this._memoryConfigurationByResource=i,this.logService=j,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new dx.fT,this._userConfiguration=null}getValue(a,b,c){return this.getConsolidatedConfigurationModel(a,b,c).getValue(a)}updateValue(a,b,c={}){let d;c.resource?(d=this._memoryConfigurationByResource.get(c.resource))||(d=dC.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(c.resource,d)):d=this._memoryConfiguration,void 0===b?d.removeValue(a):d.setValue(a,b),c.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(a,b,c){let d=this.getConsolidatedConfigurationModel(a,b,c),e=this.getFolderConfigurationModelForResource(b.resource,c),f=b.resource&&this._memoryConfigurationByResource.get(b.resource)||this._memoryConfiguration,g=new Set;for(let b of d.overrides)for(let c of b.identifiers)void 0!==d.getOverrideValue(a,c)&&g.add(c);return new dE(a,b,d.getValue(a),g.size?[...g]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,c?this._workspaceConfiguration:void 0,e||void 0,f)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){if(!this._userConfiguration)if(this._remoteUserConfiguration.isEmpty())this._userConfiguration=this._localUserConfiguration;else{let a=this._localUserConfiguration.merge(this._remoteUserConfiguration);this._userConfiguration=new dC(a.contents,a.keys,a.overrides,void 0,this.logService)}return this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(a,b,c){let d=this.getConsolidatedConfigurationModelForResource(b,c);if(b.overrideIdentifier&&(d=d.override(b.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&void 0!==this._policyConfiguration.getValue(a))for(let a of(d=d.merge(),this._policyConfiguration.keys))d.setValue(a,this._policyConfiguration.getValue(a));return d}getConsolidatedConfigurationModelForResource({resource:a},b){let c=this.getWorkspaceConsolidatedConfiguration();if(b&&a){let d=b.getFolder(a);d&&(c=this.getFolderConsolidatedConfiguration(d.uri)||c);let e=this._memoryConfigurationByResource.get(a);e&&(c=c.merge(e))}return c}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(a){let b=this._foldersConsolidatedConfigurations.get(a);if(!b){let c=this.getWorkspaceConsolidatedConfiguration(),d=this._folderConfigurations.get(a);d?(b=c.merge(d),this._foldersConsolidatedConfigurations.set(a,b)):b=c}return b}getFolderConfigurationModelForResource(a,b){if(b&&a){let c=b.getFolder(a);if(c)return this._folderConfigurations.get(c.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys,raw:Array.isArray(this.applicationConfiguration.raw)?void 0:this.applicationConfiguration.raw},userLocal:{contents:this.localUserConfiguration.contents,overrides:this.localUserConfiguration.overrides,keys:this.localUserConfiguration.keys,raw:Array.isArray(this.localUserConfiguration.raw)?void 0:this.localUserConfiguration.raw},userRemote:{contents:this.remoteUserConfiguration.contents,overrides:this.remoteUserConfiguration.overrides,keys:this.remoteUserConfiguration.keys,raw:Array.isArray(this.remoteUserConfiguration.raw)?void 0:this.remoteUserConfiguration.raw},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((a,b)=>{let{contents:c,overrides:d,keys:e}=this._folderConfigurations.get(b);return a.push([b,{contents:c,overrides:d,keys:e}]),a},[])}}static parse(a,b){let c=this.parseConfigurationModel(a.defaults,b),d=this.parseConfigurationModel(a.policy,b),e=this.parseConfigurationModel(a.application,b),f=this.parseConfigurationModel(a.userLocal,b),g=this.parseConfigurationModel(a.userRemote,b);return new dF(c,d,e,f,g,this.parseConfigurationModel(a.workspace,b),a.folders.reduce((a,c)=>(a.set(aw.r.revive(c[0]),this.parseConfigurationModel(c[1],b)),a),new dx.fT),dC.createEmptyModel(b),new dx.fT,b)}static parseConfigurationModel(a,b){return new dC(a.contents,a.keys,a.overrides,a.raw,b)}}class dG{constructor(a,b,c,d,e){for(let f of(this.change=a,this.previous=b,this.currentConfiguraiton=c,this.currentWorkspace=d,this.logService=e,this._marker="\n",this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0,a.keys))this.affectedKeys.add(f);for(let[,b]of a.overrides)for(let a of b)this.affectedKeys.add(a);for(let a of(this._affectsConfigStr=this._marker,this.affectedKeys))this._affectsConfigStr+=a+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=dF.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(a,b){let c=this._marker+a,d=this._affectsConfigStr.indexOf(c);if(d<0)return!1;let e=d+c.length;if(e>=this._affectsConfigStr.length)return!1;let f=this._affectsConfigStr.charCodeAt(e);if(f!==this._markerCode1&&f!==this._markerCode2)return!1;if(b){let c=this.previousConfiguration?this.previousConfiguration.getValue(a,b,this.previous?.workspace):void 0,d=this.currentConfiguraiton.getValue(a,b,this.currentWorkspace);return!dy.aI(c,d)}return!0}}var dH=c(96287);let dI={kind:0},dJ={kind:1};class dK{constructor(a,b,c){for(let b of(this._log=c,this._defaultKeybindings=a,this._defaultBoundCommands=new Map,a)){let a=b.command;a&&"-"!==a.charAt(0)&&this._defaultBoundCommands.set(a,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=dK.handleRemovals([].concat(a).concat(b));for(let a=0,b=this._keybindings.length;a<b;a++){let b=this._keybindings[a];if(0===b.chords.length)continue;let c=b.when?.substituteConstants();c&&0===c.type||this._addKeyPress(b.chords[0],b)}}static _isTargetedForRemoval(a,b,c){if(b){for(let c=0;c<b.length;c++)if(b[c]!==a.chords[c])return!1}return(!c||1===c.type||!!a.when&&!!(0,cj.jQ)(c,a.when))&&!0}static handleRemovals(a){let b=new Map;for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.command&&"-"===d.command.charAt(0)){let a=d.command.substring(1);b.has(a)?b.get(a).push(d):b.set(a,[d])}}if(0===b.size)return a;let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d];if(!e.command||0===e.command.length){c.push(e);continue}if("-"===e.command.charAt(0))continue;let f=b.get(e.command);if(!f||!e.isDefault){c.push(e);continue}let g=!1;for(let a of f){let b=a.when;if(this._isTargetedForRemoval(e,a.chords,b)){g=!0;break}}if(!g){c.push(e);continue}}return c}_addKeyPress(a,b){let c=this._map.get(a);if(void 0===c){this._map.set(a,[b]),this._addToLookupMap(b);return}for(let a=c.length-1;a>=0;a--){let d=c[a];if(d.command===b.command)continue;let e=!0;for(let a=1;a<d.chords.length&&a<b.chords.length;a++)if(d.chords[a]!==b.chords[a]){e=!1;break}e&&dK.whenIsEntirelyIncluded(d.when,b.when)&&this._removeFromLookupMap(d)}c.push(b),this._addToLookupMap(b)}_addToLookupMap(a){if(!a.command)return;let b=this._lookupMap.get(a.command);void 0===b?(b=[a],this._lookupMap.set(a.command,b)):b.push(a)}_removeFromLookupMap(a){if(!a.command)return;let b=this._lookupMap.get(a.command);if(void 0!==b){for(let c=0,d=b.length;c<d;c++)if(b[c]===a)return void b.splice(c,1)}}static whenIsEntirelyIncluded(a,b){return!b||1===b.type||!!a&&1!==a.type&&(0,cj.M0)(a,b)}getKeybindings(){return this._keybindings}lookupPrimaryKeybinding(a,b,c=!1){let d=this._lookupMap.get(a);if(void 0===d||0===d.length)return null;if(1===d.length&&!c)return d[0];for(let a=d.length-1;a>=0;a--){let c=d[a];if(b.contextMatchesRules(c.when))return c}return c?null:d[d.length-1]}resolve(a,b,c){var d;let e=[...b,c];this._log(`| Resolving ${e}`);let f=this._map.get(e[0]);if(void 0===f)return this._log("\\ No keybinding entries."),dI;let g=null;if(e.length<2)g=f;else{g=[];for(let a=0,b=f.length;a<b;a++){let b=f[a];if(e.length>b.chords.length)continue;let c=!0;for(let a=1;a<e.length;a++)if(b.chords[a]!==e[a]){c=!1;break}c&&g.push(b)}}let h=this._findCommand(a,g);return h?e.length<h.chords.length?(this._log(`\\ From ${g.length} keybinding entries, awaiting ${h.chords.length-e.length} more chord(s), when: ${dL(h.when)}, source: ${dM(h)}.`),dJ):(this._log(`\\ From ${g.length} keybinding entries, matched ${h.command}, when: ${dL(h.when)}, source: ${dM(h)}.`),d=h.command,{kind:2,commandId:d,commandArgs:h.commandArgs,isBubble:h.bubble}):(this._log(`\\ From ${g.length} keybinding entries, no when clauses matched the context.`),dI)}_findCommand(a,b){for(let c=b.length-1;c>=0;c--){let d=b[c];if(dK._contextMatchesRules(a,d.when))return d}return null}static _contextMatchesRules(a,b){return!b||b.evaluate(a)}}function dL(a){return a?`${a.serialize()}`:"no when condition"}function dM(a){return a.extensionId?a.isBuiltinExtension?`built-in extension ${a.extensionId}`:`user extension ${a.extensionId}`:a.isDefault?"built-in":"user"}let dN=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class dO extends aE.jG{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:au.Jh.None}get inChordMode(){return this._currentChords.length>0}constructor(a,b,c,d,e){super(),this._contextKeyService=a,this._commandService=b,this._telemetryService=c,this._notificationService=d,this._logService=e,this._onDidUpdateKeybindings=this._register(new au.vl),this._currentChords=[],this._currentChordChecker=new aJ.vb,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=dP.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new aJ.pc,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(a){this._logging&&this._logService.info(`[KeybindingService]: ${a}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(a,b,c=!1){let d=this._getResolver().lookupPrimaryKeybinding(a,b||this._contextKeyService,c);if(d)return d.resolvedKeybinding}dispatchEvent(a,b){return this._dispatch(a,b)}softDispatch(a,b){this._log("/ Soft dispatching keyboard event");let c=this.resolveKeyboardEvent(a);if(c.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),dI;let[d]=c.getDispatchChords();if(null===d)return this._log("\\ Keyboard event cannot be dispatched"),dI;let e=this._contextKeyService.getContext(b),f=this._currentChords.map(({keypress:a})=>a);return this._getResolver().resolve(e,f,d)}_scheduleLeaveChordMode(){let a=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus())return void this._leaveChordMode();Date.now()-a>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(a,b){switch(this._currentChords.push({keypress:a,label:b}),this._currentChords.length){case 0:throw(0,aK.iH)("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(a_.kg(1684,"({0}) was pressed. Waiting for second key of chord...",b));break;default:{let a=this._currentChords.map(({label:a})=>a).join(", ");this._currentChordStatusMessage=this._notificationService.status(a_.kg(1685,"({0}) was pressed. Waiting for next key of chord...",a))}}this._scheduleLeaveChordMode(),dH.M.enabled&&dH.M.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.close(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],dH.M.enable()}_dispatch(a,b){return this._doDispatch(this.resolveKeyboardEvent(a),b,!1)}_singleModifierDispatch(a,b){let c=this.resolveKeyboardEvent(a),[d]=c.getSingleModifierDispatchChords();if(d)return this._ignoreSingleModifiers.has(d)?(this._log(`+ Ignoring single modifier ${d} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=dP.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=dP.EMPTY,null===this._currentSingleModifier)?(this._log(`+ Storing single modifier for possible chord ${d}.`),this._currentSingleModifier=d,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):d===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${d} ${d}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(c,b,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${d}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1);let[e]=c.getChords();return this._ignoreSingleModifiers=new dP(e),null!==this._currentSingleModifier&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(a,b,c=!1){let d=!1;if(a.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let e=null,f=null;if(c){let[b]=a.getSingleModifierDispatchChords();e=b,f=b?[b]:[]}else[e]=a.getDispatchChords(),f=this._currentChords.map(({keypress:a})=>a);if(null===e)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),d;let g=this._contextKeyService.getContext(b),h=a.getLabel(),i=this._getResolver().resolve(g,f,e);switch(i.kind){case 0:if(this._logService.trace("KeybindingService#dispatch",h,"[ No matching keybinding ]"),this.inChordMode){let a=this._currentChords.map(({label:a})=>a).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${a}, ${h}".`),this._notificationService.status(a_.kg(1686,"The key combination ({0}, {1}) is not a command.",a,h),{hideAfter:1e4}),this._leaveChordMode(),d=!0}return d;case 1:return this._logService.trace("KeybindingService#dispatch",h,"[ Several keybindings match - more chords needed ]"),d=!0,this._expectAnotherChord(e,h),this._log(1===this._currentChords.length?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),d;case 2:if(this._logService.trace("KeybindingService#dispatch",h,`[ Will dispatch command ${i.commandId} ]`),null===i.commandId||""===i.commandId){if(this.inChordMode){let a=this._currentChords.map(({label:a})=>a).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${a}, ${h}".`),this._notificationService.status(a_.kg(1687,"The key combination ({0}, {1}) is not a command.",a,h),{hideAfter:1e4}),this._leaveChordMode(),d=!0}}else{this.inChordMode&&this._leaveChordMode(),i.isBubble||(d=!0),this._log(`+ Invoking command ${i.commandId}.`),this._currentlyDispatchingCommandId=i.commandId;try{void 0===i.commandArgs?this._commandService.executeCommand(i.commandId).then(void 0,a=>this._notificationService.warn(a)):this._commandService.executeCommand(i.commandId,i.commandArgs).then(void 0,a=>this._notificationService.warn(a))}finally{this._currentlyDispatchingCommandId=null}dN.test(i.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:i.commandId,from:"keybinding",detail:a.getUserSettingsLabel()??void 0})}return d}}mightProducePrintableCharacter(a){return!a.ctrlKey&&!a.metaKey&&(!!(a.keyCode>=31)&&!!(a.keyCode<=56)||!!(a.keyCode>=21)&&!!(a.keyCode<=30))}}class dP{static{this.EMPTY=new dP(null)}constructor(a){this._ctrlKey=!!a&&a.ctrlKey,this._shiftKey=!!a&&a.shiftKey,this._altKey=!!a&&a.altKey,this._metaKey=!!a&&a.metaKey}has(a){switch(a){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}}class dQ{constructor(a,b,c,d,e,f,g){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=a,this.chords=a?dR(a.getDispatchChords()):[],a&&0===this.chords.length&&(this.chords=dR(a.getSingleModifierDispatchChords())),this.bubble=!!b&&94===b.charCodeAt(0),this.command=this.bubble?b.substr(1):b,this.commandArgs=c,this.when=d,this.isDefault=e,this.extensionId=f,this.isBuiltinExtension=g}}function dR(a){let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];if(!d)return[];b.push(d)}return b}var dS=c(13655);class dT extends dr.z5{constructor(a,b){if(super(),0===b.length)throw(0,aK.Qg)("chords");this._os=a,this._chords=b}getLabel(){return dS.Of.toLabel(this._os,this._chords,a=>this._getLabel(a))}getAriaLabel(){return dS.r0.toLabel(this._os,this._chords,a=>this._getAriaLabel(a))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:dS.rr.toLabel(this._os,this._chords,a=>this._getElectronAccelerator(a))}getUserSettingsLabel(){return dS.G$.toLabel(this._os,this._chords,a=>this._getUserSettingsLabel(a))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(a=>this._getChord(a))}_getChord(a){return new dr.FW(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,this._getLabel(a),this._getAriaLabel(a))}getDispatchChords(){return this._chords.map(a=>this._getChordDispatch(a))}getSingleModifierDispatchChords(){return this._chords.map(a=>this._getSingleModifierChordDispatch(a))}}class dU extends dT{constructor(a,b){super(b,a)}_keyCodeToUILabel(a){if(2===this._os)switch(a){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return av.YM.toString(a)}_getLabel(a){return a.isDuplicateModifierCase()?"":this._keyCodeToUILabel(a.keyCode)}_getAriaLabel(a){return a.isDuplicateModifierCase()?"":av.YM.toString(a.keyCode)}_getElectronAccelerator(a){return av.YM.toElectronAccelerator(a.keyCode)}_getUserSettingsLabel(a){if(a.isDuplicateModifierCase())return"";let b=av.YM.toUserSettingsUS(a.keyCode);return b?b.toLowerCase():b}_getChordDispatch(a){return dU.getDispatchStr(a)}static getDispatchStr(a){if(a.isModifierKey())return null;let b="";return a.ctrlKey&&(b+="ctrl+"),a.shiftKey&&(b+="shift+"),a.altKey&&(b+="alt+"),a.metaKey&&(b+="meta+"),b+=av.YM.toString(a.keyCode)}_getSingleModifierChordDispatch(a){return 5!==a.keyCode||a.shiftKey||a.altKey||a.metaKey?4!==a.keyCode||a.ctrlKey||a.altKey||a.metaKey?6!==a.keyCode||a.ctrlKey||a.shiftKey||a.metaKey?57!==a.keyCode||a.ctrlKey||a.shiftKey||a.altKey?null:"meta":"alt":"shift":"ctrl"}static _scanCodeToKeyCode(a){let b=av.Fo[a];if(-1!==b)return b;switch(a){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:break;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(a){if(!a)return null;if(a instanceof dr.dG)return a;let b=this._scanCodeToKeyCode(a.scanCode);return 0===b?null:new dr.dG(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,b)}static resolveKeybinding(a,b){let c=dR(a.chords.map(a=>this._toKeyCodeChord(a)));return c.length>0?[new dU(c,b)]:[]}}var dV=c(39705),dW=c(55067),dX=c(91295),dY=c(33903),dZ=c(47717),d$=c(11583),d_=c(21681),d0=c(38178),d1=c(64336),d2=c(76687);let d3=[],d4=[],d5=[];function d6(a,b=!1){!function(a,b,c){var d,e;let f=(d=a,e=b,{id:d.id,mime:d.mime,filename:d.filename,extension:d.extension,filepattern:d.filepattern,firstline:d.firstline,userConfigured:e,filenameLowercase:d.filename?d.filename.toLowerCase():void 0,extensionLowercase:d.extension?d.extension.toLowerCase():void 0,filepatternLowercase:d.filepattern?(0,d0.qg)(d.filepattern.toLowerCase()):void 0,filepatternOnPath:!!d.filepattern&&d.filepattern.indexOf(d2.SA.sep)>=0});d3.push(f),f.userConfigured?d5.push(f):d4.push(f),c&&!f.userConfigured&&d3.forEach(a=>{a.mime!==f.mime&&!a.userConfigured&&(f.extension&&a.extension===f.extension&&console.warn(`Overwriting extension <<${f.extension}>> to now point to mime <<${f.mime}>>`),f.filename&&a.filename===f.filename&&console.warn(`Overwriting filename <<${f.filename}>> to now point to mime <<${f.mime}>>`),f.filepattern&&a.filepattern===f.filepattern&&console.warn(`Overwriting filepattern <<${f.filepattern}>> to now point to mime <<${f.mime}>>`),f.firstline&&a.firstline===f.firstline&&console.warn(`Overwriting firstline <<${f.firstline}>> to now point to mime <<${f.mime}>>`))})}(a,!1,b)}function d7(a,b,c){let d,e,f;for(let g=c.length-1;g>=0;g--){let h=c[g];if(b===h.filenameLowercase){d=h;break}if(h.filepattern&&(!e||h.filepattern.length>e.filepattern.length)){let c=h.filepatternOnPath?a:b;h.filepatternLowercase?.(c)&&(e=h)}h.extension&&(!f||h.extension.length>f.extension.length)&&b.endsWith(h.extensionLowercase)&&(f=h)}return d||e||f||void 0}let d8=Object.prototype.hasOwnProperty,d9="vs.editor.nullLanguage";class ea{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(d9,0),this._register(bR.vH,1),this._nextLanguageId=2}_register(a,b){this._languageIdToLanguage[b]=a,this._languageToLanguageId.set(a,b)}register(a){if(this._languageToLanguageId.has(a))return;let b=this._nextLanguageId++;this._register(a,b)}encodeLanguageId(a){return this._languageToLanguageId.get(a)||0}decodeLanguageId(a){return this._languageIdToLanguage[a]||d9}}class eb extends aE.jG{static{this.instanceCount=0}constructor(a=!0,b=!1){super(),this._onDidChange=this._register(new au.vl),this.onDidChange=this._onDidChange.event,eb.instanceCount++,this._warnOnOverwrite=b,this.languageIdCodec=new ea,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},a&&(this._initializeFromRegistry(),this._register(bR.W6.onDidChangeLanguages(a=>{this._initializeFromRegistry()})))}dispose(){eb.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},d3=d3.filter(a=>a.userConfigured),d4=[];let a=[].concat(bR.W6.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(a)}_registerLanguages(a){for(let b of a)this._registerLanguage(b);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(a=>{let b=this._languages[a];b.name&&(this._nameMap[b.name]=b.identifier),b.aliases.forEach(a=>{this._lowercaseNameMap[a.toLowerCase()]=b.identifier}),b.mimetypes.forEach(a=>{this._mimeTypesMap[a]=b.identifier})}),dA.O.as(dz.Fd.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(a){let b,c=a.id;d8.call(this._languages,c)?b=this._languages[c]:(this.languageIdCodec.register(c),b={identifier:c,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[c]=b),this._mergeLanguage(b,a)}_mergeLanguage(a,b){let c=b.id,d=null;if(Array.isArray(b.mimetypes)&&b.mimetypes.length>0&&(a.mimetypes.push(...b.mimetypes),d=b.mimetypes[0]),d||(d=`text/x-${c}`,a.mimetypes.push(d)),Array.isArray(b.extensions))for(let e of(b.configuration?a.extensions=b.extensions.concat(a.extensions):a.extensions=a.extensions.concat(b.extensions),b.extensions))d6({id:c,mime:d,extension:e},this._warnOnOverwrite);if(Array.isArray(b.filenames))for(let e of b.filenames)d6({id:c,mime:d,filename:e},this._warnOnOverwrite),a.filenames.push(e);if(Array.isArray(b.filenamePatterns))for(let a of b.filenamePatterns)d6({id:c,mime:d,filepattern:a},this._warnOnOverwrite);if("string"==typeof b.firstLine&&b.firstLine.length>0){let a=b.firstLine;"^"!==a.charAt(0)&&(a="^"+a);try{let b=new RegExp(a);(0,aF.eY)(b)||d6({id:c,mime:d,firstline:b},this._warnOnOverwrite)}catch(c){console.warn(`[${b.id}]: Invalid regular expression \`${a}\`: `,c)}}a.aliases.push(c);let e=null;if(void 0!==b.aliases&&Array.isArray(b.aliases)&&(e=0===b.aliases.length?[null]:b.aliases),null!==e)for(let b of e)b&&0!==b.length&&a.aliases.push(b);let f=null!==e&&e.length>0;if(f&&null===e[0]);else{let b=(f?e[0]:null)||c;(f||!a.name)&&(a.name=b)}b.configuration&&a.configurationFiles.push(b.configuration),b.icon&&a.icons.push(b.icon)}isRegisteredLanguageId(a){return!!a&&d8.call(this._languages,a)}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(a){let b=a.toLowerCase();return d8.call(this._lowercaseNameMap,b)?this._lowercaseNameMap[b]:null}getLanguageIdByMimeType(a){return a&&d8.call(this._mimeTypesMap,a)?this._mimeTypesMap[a]:null}guessLanguageIdByFilepathOrFirstLine(a,b){return a||b?(function(a,b){let c;if(a)switch(a.scheme){case aZ.ny.file:c=a.fsPath;break;case aZ.ny.data:c=d$.B6.parseMetaData(a).get(d$.B6.META_DATA_LABEL);break;case aZ.ny.vscodeNotebookCell:c=void 0;break;default:c=a.path}if(!c)return[{id:"unknown",mime:d1.K.unknown}];c=c.toLowerCase();let d=(0,d2.P8)(c),e=d7(c,d,d5);if(e)return[e,{id:bR.vH,mime:d1.K.text}];let f=d7(c,d,d4);if(f)return[f,{id:bR.vH,mime:d1.K.text}];if(b){let a=function(a){if((0,aF.LU)(a)&&(a=a.substr(1)),a.length>0)for(let b=d3.length-1;b>=0;b--){let c=d3[b];if(!c.firstline)continue;let d=a.match(c.firstline);if(d&&d.length>0)return c}}(b);if(a)return[a,{id:bR.vH,mime:d1.K.text}]}return[{id:"unknown",mime:d1.K.unknown}]})(a,b).map(a=>a.id):[]}}var ec=c(43589);class ed extends aE.jG{static{this.instanceCount=0}constructor(a=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new au.vl),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new au.vl),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new au.vl({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,ed.instanceCount++,this._registry=this._register(new eb(!0,a)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){ed.instanceCount--,super.dispose()}isRegisteredLanguageId(a){return this._registry.isRegisteredLanguageId(a)}getLanguageIdByLanguageName(a){return this._registry.getLanguageIdByLanguageName(a)}getLanguageIdByMimeType(a){return this._registry.getLanguageIdByMimeType(a)}guessLanguageIdByFilepathOrFirstLine(a,b){return this._registry.guessLanguageIdByFilepathOrFirstLine(a,b).at(0)??null}createById(a){return new ee(this.onDidChange,()=>this._createAndGetLanguageIdentifier(a))}createByFilepathOrFirstLine(a,b){return new ee(this.onDidChange,()=>{let c=this.guessLanguageIdByFilepathOrFirstLine(a,b);return this._createAndGetLanguageIdentifier(c)})}_createAndGetLanguageIdentifier(a){return a&&this.isRegisteredLanguageId(a)||(a=bR.vH),a}requestBasicLanguageFeatures(a){this._requestedBasicLanguages.has(a)||(this._requestedBasicLanguages.add(a),this._onDidRequestBasicLanguageFeatures.fire(a))}requestRichLanguageFeatures(a){this._requestedRichLanguages.has(a)||(this._requestedRichLanguages.add(a),this.requestBasicLanguageFeatures(a),aA.dG.getOrCreate(a),this._onDidRequestRichLanguageFeatures.fire(a))}}class ee{constructor(a,b){this._value=(0,ec.y0)(this,a,()=>b()),this.onDidChange=au.Jh.fromObservable(this._value)}get languageId(){return this._value.get()}}var ef=c(18401),eg=c(20846),eh=c(79487),ei=c(21280),ej=c(88637),ek=c(98350),el=c(76136),em=c(51043),en=c(82962),eo=c(87229),ep=c(90399),eq=c(23140),er=c(81633);let es=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,et=/(&)?(&)([^\s&])/g;!function(a){a[a.Right=0]="Right",a[a.Left=1]="Left"}(ah||(ah={})),function(a){a[a.Above=0]="Above",a[a.Below=1]="Below"}(ai||(ai={}));class eu extends em.E{constructor(a,b,c,d){a.classList.add("monaco-menu-container"),a.setAttribute("role","presentation");let e=document.createElement("div");e.classList.add("monaco-menu"),e.setAttribute("role","presentation"),super(e,{orientation:1,actionViewItemProvider:a=>this.doGetActionViewItem(a,c,f),context:c.context,actionRunner:c.actionRunner,ariaLabel:c.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...aL.zx||aL.j9?[10]:[]],keyDown:!0}}),this.menuStyles=d,this.menuElement=e,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(a,d),this._register(ek.q.addTarget(e)),this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{new c6.Z(a).equals(2)&&a.preventDefault()})),c.enableMnemonics&&this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{let b=a.key.toLocaleLowerCase();if(this.mnemonics.has(b)){bC.fs.stop(a,!0);let c=this.mnemonics.get(b);if(1===c.length&&(c[0]instanceof ew&&c[0].container&&this.focusItemByElement(c[0].container),c[0].onClick(a)),c.length>1){let a=c.shift();a&&a.container&&(this.focusItemByElement(a.container),c.push(a)),this.mnemonics.set(b,c)}}})),aL.j9&&this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{let b=new c6.Z(a);b.equals(14)||b.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),bC.fs.stop(a,!0)):(b.equals(13)||b.equals(12))&&(this.focusedItem=0,this.focusPrevious(),bC.fs.stop(a,!0))})),this._register((0,bC.ko)(this.domNode,bC.Bx.MOUSE_OUT,a=>{let b=a.relatedTarget;(0,bC.QX)(b,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),a.stopPropagation())})),this._register((0,bC.ko)(this.actionsList,bC.Bx.MOUSE_OVER,a=>{let b=a.target;if(b&&(0,bC.QX)(b,this.actionsList)&&b!==this.actionsList){for(;b.parentElement!==this.actionsList&&null!==b.parentElement;)b=b.parentElement;if(b.classList.contains("action-item")){let a=this.focusedItem;this.setFocusedItem(b),a!==this.focusedItem&&this.updateFocus()}}})),this._register(ek.q.addTarget(this.actionsList)),this._register((0,bC.ko)(this.actionsList,ek.B.Tap,a=>{let b=a.initialTarget;if(b&&(0,bC.QX)(b,this.actionsList)&&b!==this.actionsList){for(;b.parentElement!==this.actionsList&&null!==b.parentElement;)b=b.parentElement;if(b.classList.contains("action-item")){let a=this.focusedItem;this.setFocusedItem(b),a!==this.focusedItem&&this.updateFocus()}}}));let f={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new eo.MU(e,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));let g=this.scrollableElement.getDomNode();g.style.position="",this.styleScrollElement(g,d),this._register((0,bC.ko)(e,ek.B.Change,a=>{bC.fs.stop(a,!0);let b=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:b-a.translationY})})),this._register((0,bC.ko)(g,bC.Bx.MOUSE_UP,a=>{a.preventDefault()}));let h=(0,bC.zk)(a);e.style.maxHeight=`${Math.max(10,h.innerHeight-a.getBoundingClientRect().top-35)}px`,b=b.filter((a,d)=>c.submenuIds?.has(a.id)?(console.warn(`Found submenu cycle: ${a.id}`),!1):(!(a instanceof ef.wv)||d!==b.length-1&&0!==d&&!(b[d-1]instanceof ef.wv))&&!0),this.push(b,{icon:!0,label:!0,isMenu:!0}),a.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(a=>!(a instanceof ex)).forEach((a,b,c)=>{a.updatePositionInSet(b+1,c.length)})}initializeOrUpdateStyleSheet(a,b){this.styleSheet||((0,bC.Cl)(a)?this.styleSheet=(0,el.li)(a):(eu.globalStyleSheet||(eu.globalStyleSheet=(0,el.li)()),this.styleSheet=eu.globalStyleSheet)),this.styleSheet.textContent=function(a,b){let c=`
|
|
205
|
+
`,dc=class extends aE.jG{constructor(a){super(),this.layoutService=a,this.contextView=this._register(new da(this.layoutService.mainContainer,1)),this.layout(),this._register(a.onDidLayoutContainer(()=>this.layout()))}showContextView(a,b,c){let d;d=b?b===this.layoutService.getContainer((0,bC.zk)(b))?1:c?3:2:1,this.contextView.setContainer(b??this.layoutService.activeContainer,d),this.contextView.show(a);let e={close:()=>{this.openContextView===e&&this.hideContextView()}};return this.openContextView=e,e}layout(){this.contextView.layout()}hideContextView(a){this.contextView.hide(a),this.openContextView=void 0}};dc=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(g=cn.x,function(a,b){g(a,b,0)})],dc);class dd extends dc{getContextViewElement(){return this.contextView.getViewElement()}}function de(a){return"object"==typeof a&&"markdown"in a&&"markdownNotSupportedFallback"in a}class df{constructor(a,b,c){this.hoverDelegate=a,this.target=b,this.fadeInAnimation=c}async update(a,b,c){let d;if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),!this.isDisposed){if((0,c0.Kg)(a)||(0,bC.sb)(a)||void 0===a)d=a;else{let e;this._cancellationTokenSource=new at.Qi;let f=this._cancellationTokenSource.token;if((e=de(a)?(0,c0.Tn)(a.markdown)?a.markdown(f).then(b=>b??a.markdownNotSupportedFallback):a.markdown??a.markdownNotSupportedFallback:a.element(f))instanceof Promise?(this._hoverWidget||this.show((0,a_.kg)(75,"Loading..."),b,c),d=await e):d=e,this.isDisposed||f.isCancellationRequested)return}this.show(d,b,c)}}show(a,b,c){let d=this._hoverWidget;if(this.hasContent(a)){let e={content:a,target:this.target,actions:c?.actions,linkHandler:c?.linkHandler,trapFocus:c?.trapFocus,appearance:{showPointer:"element"===this.hoverDelegate.placement,skipFadeInAnimation:!this.fadeInAnimation||!!d,showHoverHint:c?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(e,b)}d?.dispose()}hasContent(a){return!!a&&(!(0,c$.VS)(a)||!!a.value)}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var dg=c(32765),dh=c(69262),di=c(24246),dj=function(a,b){return function(c,d){b(c,d,a)}};let dk=class extends aE.jG{constructor(a,b,c,d,e,f){super(),this._instantiationService=a,this._configurationService=b,this._keybindingService=d,this._layoutService=e,this._accessibilityService=f,this._currentDelayedHoverWasShown=!1,this._delayedHovers=new Map,this._managedHovers=new Map,this._register(c.onDidShowContextMenu(()=>this.hideHover())),this._contextViewHandler=this._register(new dc(this._layoutService)),this._register(dg.f.registerCommandAndKeybindingRule({id:"workbench.action.showHover",weight:199,when:dh.R.editorTextFocus.negate(),primary:(0,av.m5)(2089,2087),handler:()=>{this._showAndFocusHoverForActiveElement()}}))}showInstantHover(a,b,c,d){let e=this._createHover(a,c);if(e)return this._showHover(e,a,b),e}showDelayedHover(a,b){if(void 0===a.id&&(a.id=dm(a.content)),!this._currentDelayedHover||this._currentDelayedHoverWasShown){if(this._currentHover?.isLocked)return;if(dl(this._currentHoverOptions)===dl(a))return this._currentHover;if(this._currentHover&&!this._currentHover.isDisposed&&void 0!==this._currentDelayedHoverGroupId&&this._currentDelayedHoverGroupId===b?.groupId)return this.showInstantHover({...a,appearance:{...a.appearance,skipFadeInAnimation:!0}})}else if(this._currentDelayedHover&&dl(this._currentHoverOptions)===dl(a))return this._currentDelayedHover;let c=this._createHover(a,void 0);if(!c){this._currentDelayedHover=void 0,this._currentDelayedHoverWasShown=!1,this._currentDelayedHoverGroupId=void 0;return}return this._currentDelayedHover=c,this._currentDelayedHoverWasShown=!1,this._currentDelayedHoverGroupId=b?.groupId,(0,aJ.wR)(this._configurationService.getValue("workbench.hover.delay")).then(()=>{c&&!c.isDisposed&&(this._currentDelayedHoverWasShown=!0,this._showHover(c,a))}),c}setupDelayedHover(a,b,c){return this._setupDelayedHover(a,()=>({..."function"==typeof b?b():b,target:a}),c)}setupDelayedHoverAtMouse(a,b,c){return this._setupDelayedHover(a,c=>({..."function"==typeof b?b():b,target:{targetElements:[a],x:void 0!==c?c.x+10:void 0}}),c)}_setupDelayedHover(a,b,c){let d=new aE.Cm;return d.add((0,bC.ko)(a,bC.Bx.MOUSE_OVER,a=>{this.showDelayedHover(b(a),{groupId:c?.groupId})})),c?.setupKeyboardEvents&&d.add((0,bC.ko)(a,bC.Bx.KEY_DOWN,a=>{let c=new c6.Z(a);(c.equals(10)||c.equals(3))&&this.showInstantHover(b(),!0)})),this._delayedHovers.set(a,{show:a=>{this.showInstantHover(b(),a)}}),d.add((0,aE.s)(()=>this._delayedHovers.delete(a))),d}_createHover(a,b){if(this._currentDelayedHover=void 0,this._currentHover?.isLocked||(void 0===a.id&&(a.id=dm(a.content)),dl(this._currentHoverOptions)===dl(a)))return;this._currentHoverOptions=a,this._lastHoverOptions=a;let c=a.trapFocus||this._accessibilityService.isScreenReaderOptimized(),d=(0,bC.bq)();!b&&(c&&d?d.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=d):this._lastFocusedElementBeforeOpen=void 0);let e=new aE.Cm,f=this._instantiationService.createInstance(c3,a);if(a.persistence?.sticky&&(f.isLocked=!0),a.position?.hoverPosition&&!(0,c0.Et)(a.position.hoverPosition)&&(a.target={targetElements:(0,bC.sb)(a.target)?[a.target]:a.target.targetElements,x:a.position.hoverPosition.x+10}),f.onDispose(()=>{this._currentHover?.domNode&&(0,bC.nR)(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),dl(this._currentHoverOptions)===dl(a)&&this.doHideHover(),e.dispose()},void 0,e),!a.container){let b=(0,bC.sb)(a.target)?a.target:a.target.targetElements[0];a.container=this._layoutService.getContainer((0,bC.zk)(b))}if(f.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,e),a.persistence?.sticky)e.add((0,bC.ko)((0,bC.zk)(a.container).document,bC.Bx.MOUSE_DOWN,a=>{(0,bC.QX)(a.target,f.domNode)||this.doHideHover()}));else{if("targetElements"in a.target)for(let b of a.target.targetElements)e.add((0,bC.ko)(b,bC.Bx.CLICK,()=>this.hideHover()));else e.add((0,bC.ko)(a.target,bC.Bx.CLICK,()=>this.hideHover()));let b=(0,bC.bq)();if(b){let c=(0,bC.zk)(b).document;e.add((0,bC.ko)(b,bC.Bx.KEY_DOWN,b=>this._keyDown(b,f,!!a.persistence?.hideOnKeyDown))),e.add((0,bC.ko)(c,bC.Bx.KEY_DOWN,b=>this._keyDown(b,f,!!a.persistence?.hideOnKeyDown))),e.add((0,bC.ko)(b,bC.Bx.KEY_UP,a=>this._keyUp(a,f))),e.add((0,bC.ko)(c,bC.Bx.KEY_UP,a=>this._keyUp(a,f)))}}if("IntersectionObserver"in aD.G){let b=new IntersectionObserver(a=>this._intersectionChange(a,f),{threshold:0}),c="targetElements"in a.target?a.target.targetElements[0]:a.target;b.observe(c),e.add((0,aE.s)(()=>b.disconnect()))}return this._currentHover=f,f}_showHover(a,b,c){this._contextViewHandler.showContextView(new dp(a,c),b.container)}hideHover(a){!(!a&&this._currentHover?.isLocked)&&this._currentHoverOptions&&this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(a,b){a[a.length-1].isIntersecting||b.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showInstantHover(this._lastHoverOptions,!0,!0)}_showAndFocusHoverForActiveElement(){let a=(0,bC.bq)();for(;a;){let b=this._delayedHovers.get(a)??this._managedHovers.get(a);if(b)return void b.show(!0);a=a.parentElement}}_keyDown(a,b,c){if("Alt"===a.key){b.isLocked=!0;return}let d=new c6.Z(a);this._keybindingService.resolveKeyboardEvent(d).getSingleModifierDispatchChords().some(a=>!!a)||0!==this._keybindingService.softDispatch(d,d.target).kind||c&&(!this._currentHoverOptions?.trapFocus||"Tab"!==a.key)&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(a,b){"Alt"===a.key&&(b.isLocked=!1,b.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(a,b,c,d){let e,f;if(a.showNativeHover){var g=b,h=c;function i(a){a?g.setAttribute("title",a):g.removeAttribute("title")}return i(dn(h)),{update:a=>i(dn(a)),show:()=>{},hide:()=>{},dispose:()=>i(void 0)}}b.setAttribute("custom-hover","true"),""!==b.title&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",b.title),b.title="");let j=(b,c)=>{let d=void 0!==f;b&&(f?.dispose(),f=void 0),c&&(e?.dispose(),e=void 0),d&&(a.onDidHideHover?.(),f=void 0)},k=(e,g,h,i)=>new aJ.pc(async()=>{(!f||f.isDisposed)&&(f=new df(a,h||b,e>0),await f.update("function"==typeof c?c():c,g,{...d,trapFocus:i}))},e),l=new aE.Cm,m=!1;l.add((0,bC.ko)(b,bC.Bx.MOUSE_DOWN,()=>{m=!0,j(!0,!0)},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_UP,()=>{m=!1},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_LEAVE,a=>{m=!1,j(!1,a.fromElement===b)},!0)),l.add((0,bC.ko)(b,bC.Bx.MOUSE_OVER,d=>{if(e)return;let f=new aE.Cm,g={targetElements:[b],dispose:()=>{}};(void 0===a.placement||"mouse"===a.placement)&&f.add((0,bC.ko)(b,bC.Bx.MOUSE_MOVE,a=>{g.x=a.x+10,(0,bC.sb)(a.target)&&dq(a.target,b)!==b&&j(!0,!0)},!0)),e=f,(0,bC.sb)(d.target)&&dq(d.target,b)!==b||f.add(k("function"==typeof a.delay?a.delay(c):a.delay,!1,g))},!0)),(0,bC.yD)(b)||l.add((0,bC.ko)(b,bC.Bx.FOCUS,()=>{if(m||e)return;let d=new aE.Cm;d.add((0,bC.ko)(b,bC.Bx.BLUR,()=>j(!0,!0),!0)),d.add(k("function"==typeof a.delay?a.delay(c):a.delay,!1,{targetElements:[b],dispose:()=>{}})),e=d},!0));let n={show:a=>{j(!1,!0),k(0,a,void 0,a)},hide:()=>{j(!0,!0)},update:async(a,b)=>{c=a,await f?.update(c,void 0,b)},dispose:()=>{this._managedHovers.delete(b),l.dispose(),j(!0,!0)}};return this._managedHovers.set(b,n),n}showManagedHover(a){let b=this._managedHovers.get(a);b&&b.show(!0)}dispose(){this._managedHovers.forEach(a=>a.dispose()),super.dispose()}};function dl(a){if(void 0!==a)return a?.id??a}function dm(a){if(!(0,bC.sb)(a))return"string"==typeof a?a.toString():a.value}function dn(a){let b="function"==typeof a?a():a;return(0,c0.Kg)(b)?(0,di.pS)(b):de(b)?b.markdownNotSupportedFallback:void 0}dk=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dj(0,cU._Y),dj(1,b1.pG),dj(2,cT.Z),dj(3,cV.b),dj(4,cn.x),dj(5,c_.j)],dk);class dp{get anchorPosition(){return this._hover.anchor}constructor(a,b=!1){this._hover=a,this._focus=b,this.layer=1}render(a){return this._hover.render(a),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function dq(a,b){for(b=b??(0,bC.zk)(a).document.body;!a.hasAttribute("custom-hover")&&a!==b;)a=a.parentElement;return a}(0,ck.v)(cS.TN,dk,1),(0,ch.zy)((a,b)=>{let c=a.getColor(cR.oZ8);c&&(b.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${c.transparent(.5)}; }`),b.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${c.transparent(.5)}; }`))}),c(86031);var dr=c(99695),ds=c(10401),dt=c(64087),du=c(56877),dv=c(55830),dw=c(70511),dx=c(9888),dy=c(43310),dz=c(59714),dA=c(61059);function dB(a){return Object.isFrozen(a)?a:dy.ol(a)}class dC{static createEmptyModel(a){return new dC({},[],[],void 0,a)}constructor(a,b,c,d,e){this._contents=a,this._keys=b,this._overrides=c,this.raw=d,this.logService=e,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw){let a=(Array.isArray(this.raw)?this.raw:[this.raw]).map(a=>{if(a instanceof dC)return a;let b=new dD("",this.logService);return b.parseRaw(a),b.configurationModel});this._rawConfiguration=a.reduce((a,b)=>b===a?b:a.merge(b),a[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return 0===this._keys.length&&0===Object.keys(this._contents).length&&0===this._overrides.length}getValue(a){return a?(0,b1.gD)(this.contents,a):this.contents}inspect(a,b){let c=this;return{get value(){return dB(c.rawConfiguration.getValue(a))},get override(){return b?dB(c.rawConfiguration.getOverrideValue(a,b)):void 0},get merged(){return dB(b?c.rawConfiguration.override(b).getValue(a):c.rawConfiguration.getValue(a))},get overrides(){let b=[];for(let{contents:d,identifiers:e,keys:f}of c.rawConfiguration.overrides){let g=new dC(d,f,[],void 0,c.logService).getValue(a);void 0!==g&&b.push({identifiers:e,value:g})}return b.length?dB(b):void 0}}}getOverrideValue(a,b){let c=this.getContentsForOverrideIdentifer(b);return c?a?(0,b1.gD)(c,a):c:void 0}override(a){let b=this.overrideConfigurations.get(a);return b||(b=this.createOverrideConfigurationModel(a),this.overrideConfigurations.set(a,b)),b}merge(...a){let b=dy.Go(this.contents),c=dy.Go(this.overrides),d=[...this.keys],e=this.raw?Array.isArray(this.raw)?[...this.raw]:[this.raw]:[this];for(let f of a)if(e.push(...f.raw?Array.isArray(f.raw)?f.raw:[f.raw]:[f]),!f.isEmpty()){for(let a of(this.mergeContents(b,f.contents),f.overrides)){let[b]=c.filter(b=>a$.aI(b.identifiers,a.identifiers));b?(this.mergeContents(b.contents,a.contents),b.keys.push(...a.keys),b.keys=a$.dM(b.keys)):c.push(dy.Go(a))}for(let a of f.keys)-1===d.indexOf(a)&&d.push(a)}return new dC(b,d,c,!e.length||e.every(a=>a instanceof dC)?void 0:e,this.logService)}createOverrideConfigurationModel(a){let b=this.getContentsForOverrideIdentifer(a);if(!b||"object"!=typeof b||!Object.keys(b).length)return this;let c={};for(let a of a$.dM([...Object.keys(this.contents),...Object.keys(b)])){let d=this.contents[a],e=b[a];e&&("object"==typeof d&&"object"==typeof e?(d=dy.Go(d),this.mergeContents(d,e)):d=e),c[a]=d}return new dC(c,this.keys,this.overrides,void 0,this.logService)}mergeContents(a,b){for(let c of Object.keys(b)){if(c in a&&c0.Gv(a[c])&&c0.Gv(b[c])){this.mergeContents(a[c],b[c]);continue}a[c]=dy.Go(b[c])}}getContentsForOverrideIdentifer(a){let b=null,c=null,d=a=>{a&&(c?this.mergeContents(c,a):c=dy.Go(a))};for(let c of this.overrides)1===c.identifiers.length&&c.identifiers[0]===a?b=c.contents:c.identifiers.includes(a)&&d(c.contents);return d(b),c}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(a,b){this.updateValue(a,b,!1)}removeValue(a){let b=this.keys.indexOf(a);-1!==b&&(this.keys.splice(b,1),(0,b1.iB)(this.contents,a),dz.rC.test(a)&&this.overrides.splice(this.overrides.findIndex(b=>a$.aI(b.identifiers,(0,dz.Gv)(a))),1))}updateValue(a,b,c){if((0,b1.kW)(this.contents,a,b,a=>this.logService.error(a)),(c=c||-1===this.keys.indexOf(a))&&this.keys.push(a),dz.rC.test(a)){let b=(0,dz.Gv)(a),c={identifiers:b,keys:Object.keys(this.contents[a]),contents:(0,b1.ad)(this.contents[a],a=>this.logService.error(a))},d=this.overrides.findIndex(a=>a$.aI(a.identifiers,b));-1!==d?this.overrides[d]=c:this.overrides.push(c)}}}class dD{constructor(a,b){this._name=a,this.logService=b,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||dC.createEmptyModel(this.logService)}parseRaw(a,b){this._raw=a;let{contents:c,keys:d,overrides:e,restricted:f,hasExcludedProperties:g}=this.doParseRaw(a,b);this._configurationModel=new dC(c,d,e,g?[a]:void 0,this.logService),this._restrictedConfigurations=f||[]}doParseRaw(a,b){let c=dA.O.as(dz.Fd.Configuration),d=c.getConfigurationProperties(),e=c.getExcludedConfigurationProperties(),f=this.filter(a,d,e,!0,b);a=f.raw;let g=(0,b1.ad)(a,a=>this.logService.error(`Conflict in settings file ${this._name}: ${a}`));return{contents:g,keys:Object.keys(a),overrides:this.toOverrides(a,a=>this.logService.error(`Conflict in settings file ${this._name}: ${a}`)),restricted:f.restricted,hasExcludedProperties:f.hasExcludedProperties}}filter(a,b,c,d,e){let f=!1;if(!e?.scopes&&!e?.skipRestricted&&!e?.skipUnregistered&&!e?.exclude?.length)return{raw:a,restricted:[],hasExcludedProperties:f};let g={},h=[];for(let i in a)if(dz.rC.test(i)&&d){let d=this.filter(a[i],b,c,!1,e);g[i]=d.raw,f=f||d.hasExcludedProperties,h.push(...d.restricted)}else{let d=b[i];d?.restricted&&h.push(i),this.shouldInclude(i,d,c,e)?g[i]=a[i]:f=!0}return{raw:g,restricted:h,hasExcludedProperties:f}}shouldInclude(a,b,c,d){if(d.exclude?.includes(a))return!1;if(d.include?.includes(a))return!0;if(d.skipRestricted&&b?.restricted||d.skipUnregistered&&!b)return!1;let e=b??c[a],f=e?void 0!==e.scope?e.scope:4:void 0;return void 0===f||void 0===d.scopes||d.scopes.includes(f)}toOverrides(a,b){let c=[];for(let d of Object.keys(a))if(dz.rC.test(d)){let e={};for(let b in a[d])e[b]=a[d][b];c.push({identifiers:(0,dz.Gv)(d),keys:Object.keys(e),contents:(0,b1.ad)(e,b)})}return c}}class dE{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m){this.key=a,this.overrides=b,this._value=c,this.overrideIdentifiers=d,this.defaultConfiguration=e,this.policyConfiguration=f,this.applicationConfiguration=g,this.userConfiguration=h,this.localUserConfiguration=i,this.remoteUserConfiguration=j,this.workspaceConfiguration=k,this.folderConfigurationModel=l,this.memoryConfigurationModel=m}toInspectValue(a){return a?.value!==void 0||a?.override!==void 0||a?.overrides!==void 0?a:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class dF{constructor(a,b,c,d,e,f,g,h,i,j){this._defaultConfiguration=a,this._policyConfiguration=b,this._applicationConfiguration=c,this._localUserConfiguration=d,this._remoteUserConfiguration=e,this._workspaceConfiguration=f,this._folderConfigurations=g,this._memoryConfiguration=h,this._memoryConfigurationByResource=i,this.logService=j,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new dx.fT,this._userConfiguration=null}getValue(a,b,c){return this.getConsolidatedConfigurationModel(a,b,c).getValue(a)}updateValue(a,b,c={}){let d;c.resource?(d=this._memoryConfigurationByResource.get(c.resource))||(d=dC.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(c.resource,d)):d=this._memoryConfiguration,void 0===b?d.removeValue(a):d.setValue(a,b),c.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(a,b,c){let d=this.getConsolidatedConfigurationModel(a,b,c),e=this.getFolderConfigurationModelForResource(b.resource,c),f=b.resource&&this._memoryConfigurationByResource.get(b.resource)||this._memoryConfiguration,g=new Set;for(let b of d.overrides)for(let c of b.identifiers)void 0!==d.getOverrideValue(a,c)&&g.add(c);return new dE(a,b,d.getValue(a),g.size?[...g]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,c?this._workspaceConfiguration:void 0,e||void 0,f)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){if(!this._userConfiguration)if(this._remoteUserConfiguration.isEmpty())this._userConfiguration=this._localUserConfiguration;else{let a=this._localUserConfiguration.merge(this._remoteUserConfiguration);this._userConfiguration=new dC(a.contents,a.keys,a.overrides,void 0,this.logService)}return this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(a,b,c){let d=this.getConsolidatedConfigurationModelForResource(b,c);if(b.overrideIdentifier&&(d=d.override(b.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&void 0!==this._policyConfiguration.getValue(a))for(let a of(d=d.merge(),this._policyConfiguration.keys))d.setValue(a,this._policyConfiguration.getValue(a));return d}getConsolidatedConfigurationModelForResource({resource:a},b){let c=this.getWorkspaceConsolidatedConfiguration();if(b&&a){let d=b.getFolder(a);d&&(c=this.getFolderConsolidatedConfiguration(d.uri)||c);let e=this._memoryConfigurationByResource.get(a);e&&(c=c.merge(e))}return c}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(a){let b=this._foldersConsolidatedConfigurations.get(a);if(!b){let c=this.getWorkspaceConsolidatedConfiguration(),d=this._folderConfigurations.get(a);d?(b=c.merge(d),this._foldersConsolidatedConfigurations.set(a,b)):b=c}return b}getFolderConfigurationModelForResource(a,b){if(b&&a){let c=b.getFolder(a);if(c)return this._folderConfigurations.get(c.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys,raw:Array.isArray(this.applicationConfiguration.raw)?void 0:this.applicationConfiguration.raw},userLocal:{contents:this.localUserConfiguration.contents,overrides:this.localUserConfiguration.overrides,keys:this.localUserConfiguration.keys,raw:Array.isArray(this.localUserConfiguration.raw)?void 0:this.localUserConfiguration.raw},userRemote:{contents:this.remoteUserConfiguration.contents,overrides:this.remoteUserConfiguration.overrides,keys:this.remoteUserConfiguration.keys,raw:Array.isArray(this.remoteUserConfiguration.raw)?void 0:this.remoteUserConfiguration.raw},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((a,b)=>{let{contents:c,overrides:d,keys:e}=this._folderConfigurations.get(b);return a.push([b,{contents:c,overrides:d,keys:e}]),a},[])}}static parse(a,b){let c=this.parseConfigurationModel(a.defaults,b),d=this.parseConfigurationModel(a.policy,b),e=this.parseConfigurationModel(a.application,b),f=this.parseConfigurationModel(a.userLocal,b),g=this.parseConfigurationModel(a.userRemote,b);return new dF(c,d,e,f,g,this.parseConfigurationModel(a.workspace,b),a.folders.reduce((a,c)=>(a.set(aw.r.revive(c[0]),this.parseConfigurationModel(c[1],b)),a),new dx.fT),dC.createEmptyModel(b),new dx.fT,b)}static parseConfigurationModel(a,b){return new dC(a.contents,a.keys,a.overrides,a.raw,b)}}class dG{constructor(a,b,c,d,e){for(let f of(this.change=a,this.previous=b,this.currentConfiguraiton=c,this.currentWorkspace=d,this.logService=e,this._marker="\n",this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0,a.keys))this.affectedKeys.add(f);for(let[,b]of a.overrides)for(let a of b)this.affectedKeys.add(a);for(let a of(this._affectsConfigStr=this._marker,this.affectedKeys))this._affectsConfigStr+=a+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=dF.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(a,b){let c=this._marker+a,d=this._affectsConfigStr.indexOf(c);if(d<0)return!1;let e=d+c.length;if(e>=this._affectsConfigStr.length)return!1;let f=this._affectsConfigStr.charCodeAt(e);if(f!==this._markerCode1&&f!==this._markerCode2)return!1;if(b){let c=this.previousConfiguration?this.previousConfiguration.getValue(a,b,this.previous?.workspace):void 0,d=this.currentConfiguraiton.getValue(a,b,this.currentWorkspace);return!dy.aI(c,d)}return!0}}var dH=c(18668);let dI={kind:0},dJ={kind:1};class dK{constructor(a,b,c){for(let b of(this._log=c,this._defaultKeybindings=a,this._defaultBoundCommands=new Map,a)){let a=b.command;a&&"-"!==a.charAt(0)&&this._defaultBoundCommands.set(a,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=dK.handleRemovals([].concat(a).concat(b));for(let a=0,b=this._keybindings.length;a<b;a++){let b=this._keybindings[a];if(0===b.chords.length)continue;let c=b.when?.substituteConstants();c&&0===c.type||this._addKeyPress(b.chords[0],b)}}static _isTargetedForRemoval(a,b,c){if(b){for(let c=0;c<b.length;c++)if(b[c]!==a.chords[c])return!1}return(!c||1===c.type||!!a.when&&!!(0,cj.jQ)(c,a.when))&&!0}static handleRemovals(a){let b=new Map;for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.command&&"-"===d.command.charAt(0)){let a=d.command.substring(1);b.has(a)?b.get(a).push(d):b.set(a,[d])}}if(0===b.size)return a;let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d];if(!e.command||0===e.command.length){c.push(e);continue}if("-"===e.command.charAt(0))continue;let f=b.get(e.command);if(!f||!e.isDefault){c.push(e);continue}let g=!1;for(let a of f){let b=a.when;if(this._isTargetedForRemoval(e,a.chords,b)){g=!0;break}}if(!g){c.push(e);continue}}return c}_addKeyPress(a,b){let c=this._map.get(a);if(void 0===c){this._map.set(a,[b]),this._addToLookupMap(b);return}for(let a=c.length-1;a>=0;a--){let d=c[a];if(d.command===b.command)continue;let e=!0;for(let a=1;a<d.chords.length&&a<b.chords.length;a++)if(d.chords[a]!==b.chords[a]){e=!1;break}e&&dK.whenIsEntirelyIncluded(d.when,b.when)&&this._removeFromLookupMap(d)}c.push(b),this._addToLookupMap(b)}_addToLookupMap(a){if(!a.command)return;let b=this._lookupMap.get(a.command);void 0===b?(b=[a],this._lookupMap.set(a.command,b)):b.push(a)}_removeFromLookupMap(a){if(!a.command)return;let b=this._lookupMap.get(a.command);if(void 0!==b){for(let c=0,d=b.length;c<d;c++)if(b[c]===a)return void b.splice(c,1)}}static whenIsEntirelyIncluded(a,b){return!b||1===b.type||!!a&&1!==a.type&&(0,cj.M0)(a,b)}getKeybindings(){return this._keybindings}lookupPrimaryKeybinding(a,b,c=!1){let d=this._lookupMap.get(a);if(void 0===d||0===d.length)return null;if(1===d.length&&!c)return d[0];for(let a=d.length-1;a>=0;a--){let c=d[a];if(b.contextMatchesRules(c.when))return c}return c?null:d[d.length-1]}resolve(a,b,c){var d;let e=[...b,c];this._log(`| Resolving ${e}`);let f=this._map.get(e[0]);if(void 0===f)return this._log("\\ No keybinding entries."),dI;let g=null;if(e.length<2)g=f;else{g=[];for(let a=0,b=f.length;a<b;a++){let b=f[a];if(e.length>b.chords.length)continue;let c=!0;for(let a=1;a<e.length;a++)if(b.chords[a]!==e[a]){c=!1;break}c&&g.push(b)}}let h=this._findCommand(a,g);return h?e.length<h.chords.length?(this._log(`\\ From ${g.length} keybinding entries, awaiting ${h.chords.length-e.length} more chord(s), when: ${dL(h.when)}, source: ${dM(h)}.`),dJ):(this._log(`\\ From ${g.length} keybinding entries, matched ${h.command}, when: ${dL(h.when)}, source: ${dM(h)}.`),d=h.command,{kind:2,commandId:d,commandArgs:h.commandArgs,isBubble:h.bubble}):(this._log(`\\ From ${g.length} keybinding entries, no when clauses matched the context.`),dI)}_findCommand(a,b){for(let c=b.length-1;c>=0;c--){let d=b[c];if(dK._contextMatchesRules(a,d.when))return d}return null}static _contextMatchesRules(a,b){return!b||b.evaluate(a)}}function dL(a){return a?`${a.serialize()}`:"no when condition"}function dM(a){return a.extensionId?a.isBuiltinExtension?`built-in extension ${a.extensionId}`:`user extension ${a.extensionId}`:a.isDefault?"built-in":"user"}let dN=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class dO extends aE.jG{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:au.Jh.None}get inChordMode(){return this._currentChords.length>0}constructor(a,b,c,d,e){super(),this._contextKeyService=a,this._commandService=b,this._telemetryService=c,this._notificationService=d,this._logService=e,this._onDidUpdateKeybindings=this._register(new au.vl),this._currentChords=[],this._currentChordChecker=new aJ.vb,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=dP.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new aJ.pc,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(a){this._logging&&this._logService.info(`[KeybindingService]: ${a}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(a,b,c=!1){let d=this._getResolver().lookupPrimaryKeybinding(a,b||this._contextKeyService,c);if(d)return d.resolvedKeybinding}dispatchEvent(a,b){return this._dispatch(a,b)}softDispatch(a,b){this._log("/ Soft dispatching keyboard event");let c=this.resolveKeyboardEvent(a);if(c.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),dI;let[d]=c.getDispatchChords();if(null===d)return this._log("\\ Keyboard event cannot be dispatched"),dI;let e=this._contextKeyService.getContext(b),f=this._currentChords.map(({keypress:a})=>a);return this._getResolver().resolve(e,f,d)}_scheduleLeaveChordMode(){let a=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus())return void this._leaveChordMode();Date.now()-a>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(a,b){switch(this._currentChords.push({keypress:a,label:b}),this._currentChords.length){case 0:throw(0,aK.iH)("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(a_.kg(1684,"({0}) was pressed. Waiting for second key of chord...",b));break;default:{let a=this._currentChords.map(({label:a})=>a).join(", ");this._currentChordStatusMessage=this._notificationService.status(a_.kg(1685,"({0}) was pressed. Waiting for next key of chord...",a))}}this._scheduleLeaveChordMode(),dH.M.enabled&&dH.M.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.close(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],dH.M.enable()}_dispatch(a,b){return this._doDispatch(this.resolveKeyboardEvent(a),b,!1)}_singleModifierDispatch(a,b){let c=this.resolveKeyboardEvent(a),[d]=c.getSingleModifierDispatchChords();if(d)return this._ignoreSingleModifiers.has(d)?(this._log(`+ Ignoring single modifier ${d} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=dP.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=dP.EMPTY,null===this._currentSingleModifier)?(this._log(`+ Storing single modifier for possible chord ${d}.`),this._currentSingleModifier=d,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):d===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${d} ${d}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(c,b,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${d}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1);let[e]=c.getChords();return this._ignoreSingleModifiers=new dP(e),null!==this._currentSingleModifier&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(a,b,c=!1){let d=!1;if(a.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let e=null,f=null;if(c){let[b]=a.getSingleModifierDispatchChords();e=b,f=b?[b]:[]}else[e]=a.getDispatchChords(),f=this._currentChords.map(({keypress:a})=>a);if(null===e)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),d;let g=this._contextKeyService.getContext(b),h=a.getLabel(),i=this._getResolver().resolve(g,f,e);switch(i.kind){case 0:if(this._logService.trace("KeybindingService#dispatch",h,"[ No matching keybinding ]"),this.inChordMode){let a=this._currentChords.map(({label:a})=>a).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${a}, ${h}".`),this._notificationService.status(a_.kg(1686,"The key combination ({0}, {1}) is not a command.",a,h),{hideAfter:1e4}),this._leaveChordMode(),d=!0}return d;case 1:return this._logService.trace("KeybindingService#dispatch",h,"[ Several keybindings match - more chords needed ]"),d=!0,this._expectAnotherChord(e,h),this._log(1===this._currentChords.length?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),d;case 2:if(this._logService.trace("KeybindingService#dispatch",h,`[ Will dispatch command ${i.commandId} ]`),null===i.commandId||""===i.commandId){if(this.inChordMode){let a=this._currentChords.map(({label:a})=>a).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${a}, ${h}".`),this._notificationService.status(a_.kg(1687,"The key combination ({0}, {1}) is not a command.",a,h),{hideAfter:1e4}),this._leaveChordMode(),d=!0}}else{this.inChordMode&&this._leaveChordMode(),i.isBubble||(d=!0),this._log(`+ Invoking command ${i.commandId}.`),this._currentlyDispatchingCommandId=i.commandId;try{void 0===i.commandArgs?this._commandService.executeCommand(i.commandId).then(void 0,a=>this._notificationService.warn(a)):this._commandService.executeCommand(i.commandId,i.commandArgs).then(void 0,a=>this._notificationService.warn(a))}finally{this._currentlyDispatchingCommandId=null}dN.test(i.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:i.commandId,from:"keybinding",detail:a.getUserSettingsLabel()??void 0})}return d}}mightProducePrintableCharacter(a){return!a.ctrlKey&&!a.metaKey&&(!!(a.keyCode>=31)&&!!(a.keyCode<=56)||!!(a.keyCode>=21)&&!!(a.keyCode<=30))}}class dP{static{this.EMPTY=new dP(null)}constructor(a){this._ctrlKey=!!a&&a.ctrlKey,this._shiftKey=!!a&&a.shiftKey,this._altKey=!!a&&a.altKey,this._metaKey=!!a&&a.metaKey}has(a){switch(a){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}}class dQ{constructor(a,b,c,d,e,f,g){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=a,this.chords=a?dR(a.getDispatchChords()):[],a&&0===this.chords.length&&(this.chords=dR(a.getSingleModifierDispatchChords())),this.bubble=!!b&&94===b.charCodeAt(0),this.command=this.bubble?b.substr(1):b,this.commandArgs=c,this.when=d,this.isDefault=e,this.extensionId=f,this.isBuiltinExtension=g}}function dR(a){let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];if(!d)return[];b.push(d)}return b}var dS=c(13655);class dT extends dr.z5{constructor(a,b){if(super(),0===b.length)throw(0,aK.Qg)("chords");this._os=a,this._chords=b}getLabel(){return dS.Of.toLabel(this._os,this._chords,a=>this._getLabel(a))}getAriaLabel(){return dS.r0.toLabel(this._os,this._chords,a=>this._getAriaLabel(a))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:dS.rr.toLabel(this._os,this._chords,a=>this._getElectronAccelerator(a))}getUserSettingsLabel(){return dS.G$.toLabel(this._os,this._chords,a=>this._getUserSettingsLabel(a))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(a=>this._getChord(a))}_getChord(a){return new dr.FW(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,this._getLabel(a),this._getAriaLabel(a))}getDispatchChords(){return this._chords.map(a=>this._getChordDispatch(a))}getSingleModifierDispatchChords(){return this._chords.map(a=>this._getSingleModifierChordDispatch(a))}}class dU extends dT{constructor(a,b){super(b,a)}_keyCodeToUILabel(a){if(2===this._os)switch(a){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return av.YM.toString(a)}_getLabel(a){return a.isDuplicateModifierCase()?"":this._keyCodeToUILabel(a.keyCode)}_getAriaLabel(a){return a.isDuplicateModifierCase()?"":av.YM.toString(a.keyCode)}_getElectronAccelerator(a){return av.YM.toElectronAccelerator(a.keyCode)}_getUserSettingsLabel(a){if(a.isDuplicateModifierCase())return"";let b=av.YM.toUserSettingsUS(a.keyCode);return b?b.toLowerCase():b}_getChordDispatch(a){return dU.getDispatchStr(a)}static getDispatchStr(a){if(a.isModifierKey())return null;let b="";return a.ctrlKey&&(b+="ctrl+"),a.shiftKey&&(b+="shift+"),a.altKey&&(b+="alt+"),a.metaKey&&(b+="meta+"),b+=av.YM.toString(a.keyCode)}_getSingleModifierChordDispatch(a){return 5!==a.keyCode||a.shiftKey||a.altKey||a.metaKey?4!==a.keyCode||a.ctrlKey||a.altKey||a.metaKey?6!==a.keyCode||a.ctrlKey||a.shiftKey||a.metaKey?57!==a.keyCode||a.ctrlKey||a.shiftKey||a.altKey?null:"meta":"alt":"shift":"ctrl"}static _scanCodeToKeyCode(a){let b=av.Fo[a];if(-1!==b)return b;switch(a){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:break;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(a){if(!a)return null;if(a instanceof dr.dG)return a;let b=this._scanCodeToKeyCode(a.scanCode);return 0===b?null:new dr.dG(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,b)}static resolveKeybinding(a,b){let c=dR(a.chords.map(a=>this._toKeyCodeChord(a)));return c.length>0?[new dU(c,b)]:[]}}var dV=c(39705),dW=c(55067),dX=c(91295),dY=c(33903),dZ=c(47717),d$=c(11583),d_=c(21681),d0=c(38178),d1=c(64336),d2=c(76687);let d3=[],d4=[],d5=[];function d6(a,b=!1){!function(a,b,c){var d,e;let f=(d=a,e=b,{id:d.id,mime:d.mime,filename:d.filename,extension:d.extension,filepattern:d.filepattern,firstline:d.firstline,userConfigured:e,filenameLowercase:d.filename?d.filename.toLowerCase():void 0,extensionLowercase:d.extension?d.extension.toLowerCase():void 0,filepatternLowercase:d.filepattern?(0,d0.qg)(d.filepattern.toLowerCase()):void 0,filepatternOnPath:!!d.filepattern&&d.filepattern.indexOf(d2.SA.sep)>=0});d3.push(f),f.userConfigured?d5.push(f):d4.push(f),c&&!f.userConfigured&&d3.forEach(a=>{a.mime!==f.mime&&!a.userConfigured&&(f.extension&&a.extension===f.extension&&console.warn(`Overwriting extension <<${f.extension}>> to now point to mime <<${f.mime}>>`),f.filename&&a.filename===f.filename&&console.warn(`Overwriting filename <<${f.filename}>> to now point to mime <<${f.mime}>>`),f.filepattern&&a.filepattern===f.filepattern&&console.warn(`Overwriting filepattern <<${f.filepattern}>> to now point to mime <<${f.mime}>>`),f.firstline&&a.firstline===f.firstline&&console.warn(`Overwriting firstline <<${f.firstline}>> to now point to mime <<${f.mime}>>`))})}(a,!1,b)}function d7(a,b,c){let d,e,f;for(let g=c.length-1;g>=0;g--){let h=c[g];if(b===h.filenameLowercase){d=h;break}if(h.filepattern&&(!e||h.filepattern.length>e.filepattern.length)){let c=h.filepatternOnPath?a:b;h.filepatternLowercase?.(c)&&(e=h)}h.extension&&(!f||h.extension.length>f.extension.length)&&b.endsWith(h.extensionLowercase)&&(f=h)}return d||e||f||void 0}let d8=Object.prototype.hasOwnProperty,d9="vs.editor.nullLanguage";class ea{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(d9,0),this._register(bR.vH,1),this._nextLanguageId=2}_register(a,b){this._languageIdToLanguage[b]=a,this._languageToLanguageId.set(a,b)}register(a){if(this._languageToLanguageId.has(a))return;let b=this._nextLanguageId++;this._register(a,b)}encodeLanguageId(a){return this._languageToLanguageId.get(a)||0}decodeLanguageId(a){return this._languageIdToLanguage[a]||d9}}class eb extends aE.jG{static{this.instanceCount=0}constructor(a=!0,b=!1){super(),this._onDidChange=this._register(new au.vl),this.onDidChange=this._onDidChange.event,eb.instanceCount++,this._warnOnOverwrite=b,this.languageIdCodec=new ea,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},a&&(this._initializeFromRegistry(),this._register(bR.W6.onDidChangeLanguages(a=>{this._initializeFromRegistry()})))}dispose(){eb.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},d3=d3.filter(a=>a.userConfigured),d4=[];let a=[].concat(bR.W6.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(a)}_registerLanguages(a){for(let b of a)this._registerLanguage(b);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(a=>{let b=this._languages[a];b.name&&(this._nameMap[b.name]=b.identifier),b.aliases.forEach(a=>{this._lowercaseNameMap[a.toLowerCase()]=b.identifier}),b.mimetypes.forEach(a=>{this._mimeTypesMap[a]=b.identifier})}),dA.O.as(dz.Fd.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(a){let b,c=a.id;d8.call(this._languages,c)?b=this._languages[c]:(this.languageIdCodec.register(c),b={identifier:c,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[c]=b),this._mergeLanguage(b,a)}_mergeLanguage(a,b){let c=b.id,d=null;if(Array.isArray(b.mimetypes)&&b.mimetypes.length>0&&(a.mimetypes.push(...b.mimetypes),d=b.mimetypes[0]),d||(d=`text/x-${c}`,a.mimetypes.push(d)),Array.isArray(b.extensions))for(let e of(b.configuration?a.extensions=b.extensions.concat(a.extensions):a.extensions=a.extensions.concat(b.extensions),b.extensions))d6({id:c,mime:d,extension:e},this._warnOnOverwrite);if(Array.isArray(b.filenames))for(let e of b.filenames)d6({id:c,mime:d,filename:e},this._warnOnOverwrite),a.filenames.push(e);if(Array.isArray(b.filenamePatterns))for(let a of b.filenamePatterns)d6({id:c,mime:d,filepattern:a},this._warnOnOverwrite);if("string"==typeof b.firstLine&&b.firstLine.length>0){let a=b.firstLine;"^"!==a.charAt(0)&&(a="^"+a);try{let b=new RegExp(a);(0,aF.eY)(b)||d6({id:c,mime:d,firstline:b},this._warnOnOverwrite)}catch(c){console.warn(`[${b.id}]: Invalid regular expression \`${a}\`: `,c)}}a.aliases.push(c);let e=null;if(void 0!==b.aliases&&Array.isArray(b.aliases)&&(e=0===b.aliases.length?[null]:b.aliases),null!==e)for(let b of e)b&&0!==b.length&&a.aliases.push(b);let f=null!==e&&e.length>0;if(f&&null===e[0]);else{let b=(f?e[0]:null)||c;(f||!a.name)&&(a.name=b)}b.configuration&&a.configurationFiles.push(b.configuration),b.icon&&a.icons.push(b.icon)}isRegisteredLanguageId(a){return!!a&&d8.call(this._languages,a)}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(a){let b=a.toLowerCase();return d8.call(this._lowercaseNameMap,b)?this._lowercaseNameMap[b]:null}getLanguageIdByMimeType(a){return a&&d8.call(this._mimeTypesMap,a)?this._mimeTypesMap[a]:null}guessLanguageIdByFilepathOrFirstLine(a,b){return a||b?(function(a,b){let c;if(a)switch(a.scheme){case aZ.ny.file:c=a.fsPath;break;case aZ.ny.data:c=d$.B6.parseMetaData(a).get(d$.B6.META_DATA_LABEL);break;case aZ.ny.vscodeNotebookCell:c=void 0;break;default:c=a.path}if(!c)return[{id:"unknown",mime:d1.K.unknown}];c=c.toLowerCase();let d=(0,d2.P8)(c),e=d7(c,d,d5);if(e)return[e,{id:bR.vH,mime:d1.K.text}];let f=d7(c,d,d4);if(f)return[f,{id:bR.vH,mime:d1.K.text}];if(b){let a=function(a){if((0,aF.LU)(a)&&(a=a.substr(1)),a.length>0)for(let b=d3.length-1;b>=0;b--){let c=d3[b];if(!c.firstline)continue;let d=a.match(c.firstline);if(d&&d.length>0)return c}}(b);if(a)return[a,{id:bR.vH,mime:d1.K.text}]}return[{id:"unknown",mime:d1.K.unknown}]})(a,b).map(a=>a.id):[]}}var ec=c(43589);class ed extends aE.jG{static{this.instanceCount=0}constructor(a=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new au.vl),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new au.vl),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new au.vl({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,ed.instanceCount++,this._registry=this._register(new eb(!0,a)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){ed.instanceCount--,super.dispose()}isRegisteredLanguageId(a){return this._registry.isRegisteredLanguageId(a)}getLanguageIdByLanguageName(a){return this._registry.getLanguageIdByLanguageName(a)}getLanguageIdByMimeType(a){return this._registry.getLanguageIdByMimeType(a)}guessLanguageIdByFilepathOrFirstLine(a,b){return this._registry.guessLanguageIdByFilepathOrFirstLine(a,b).at(0)??null}createById(a){return new ee(this.onDidChange,()=>this._createAndGetLanguageIdentifier(a))}createByFilepathOrFirstLine(a,b){return new ee(this.onDidChange,()=>{let c=this.guessLanguageIdByFilepathOrFirstLine(a,b);return this._createAndGetLanguageIdentifier(c)})}_createAndGetLanguageIdentifier(a){return a&&this.isRegisteredLanguageId(a)||(a=bR.vH),a}requestBasicLanguageFeatures(a){this._requestedBasicLanguages.has(a)||(this._requestedBasicLanguages.add(a),this._onDidRequestBasicLanguageFeatures.fire(a))}requestRichLanguageFeatures(a){this._requestedRichLanguages.has(a)||(this._requestedRichLanguages.add(a),this.requestBasicLanguageFeatures(a),aA.dG.getOrCreate(a),this._onDidRequestRichLanguageFeatures.fire(a))}}class ee{constructor(a,b){this._value=(0,ec.y0)(this,a,()=>b()),this.onDidChange=au.Jh.fromObservable(this._value)}get languageId(){return this._value.get()}}var ef=c(18401),eg=c(20846),eh=c(79487),ei=c(21280),ej=c(88637),ek=c(98350),el=c(76136),em=c(51043),en=c(82962),eo=c(87229),ep=c(90399),eq=c(23140),er=c(81633);let es=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,et=/(&)?(&)([^\s&])/g;!function(a){a[a.Right=0]="Right",a[a.Left=1]="Left"}(ah||(ah={})),function(a){a[a.Above=0]="Above",a[a.Below=1]="Below"}(ai||(ai={}));class eu extends em.E{constructor(a,b,c,d){a.classList.add("monaco-menu-container"),a.setAttribute("role","presentation");let e=document.createElement("div");e.classList.add("monaco-menu"),e.setAttribute("role","presentation"),super(e,{orientation:1,actionViewItemProvider:a=>this.doGetActionViewItem(a,c,f),context:c.context,actionRunner:c.actionRunner,ariaLabel:c.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...aL.zx||aL.j9?[10]:[]],keyDown:!0}}),this.menuStyles=d,this.menuElement=e,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(a,d),this._register(ek.q.addTarget(e)),this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{new c6.Z(a).equals(2)&&a.preventDefault()})),c.enableMnemonics&&this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{let b=a.key.toLocaleLowerCase();if(this.mnemonics.has(b)){bC.fs.stop(a,!0);let c=this.mnemonics.get(b);if(1===c.length&&(c[0]instanceof ew&&c[0].container&&this.focusItemByElement(c[0].container),c[0].onClick(a)),c.length>1){let a=c.shift();a&&a.container&&(this.focusItemByElement(a.container),c.push(a)),this.mnemonics.set(b,c)}}})),aL.j9&&this._register((0,bC.ko)(e,bC.Bx.KEY_DOWN,a=>{let b=new c6.Z(a);b.equals(14)||b.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),bC.fs.stop(a,!0)):(b.equals(13)||b.equals(12))&&(this.focusedItem=0,this.focusPrevious(),bC.fs.stop(a,!0))})),this._register((0,bC.ko)(this.domNode,bC.Bx.MOUSE_OUT,a=>{let b=a.relatedTarget;(0,bC.QX)(b,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),a.stopPropagation())})),this._register((0,bC.ko)(this.actionsList,bC.Bx.MOUSE_OVER,a=>{let b=a.target;if(b&&(0,bC.QX)(b,this.actionsList)&&b!==this.actionsList){for(;b.parentElement!==this.actionsList&&null!==b.parentElement;)b=b.parentElement;if(b.classList.contains("action-item")){let a=this.focusedItem;this.setFocusedItem(b),a!==this.focusedItem&&this.updateFocus()}}})),this._register(ek.q.addTarget(this.actionsList)),this._register((0,bC.ko)(this.actionsList,ek.B.Tap,a=>{let b=a.initialTarget;if(b&&(0,bC.QX)(b,this.actionsList)&&b!==this.actionsList){for(;b.parentElement!==this.actionsList&&null!==b.parentElement;)b=b.parentElement;if(b.classList.contains("action-item")){let a=this.focusedItem;this.setFocusedItem(b),a!==this.focusedItem&&this.updateFocus()}}}));let f={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new eo.MU(e,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));let g=this.scrollableElement.getDomNode();g.style.position="",this.styleScrollElement(g,d),this._register((0,bC.ko)(e,ek.B.Change,a=>{bC.fs.stop(a,!0);let b=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:b-a.translationY})})),this._register((0,bC.ko)(g,bC.Bx.MOUSE_UP,a=>{a.preventDefault()}));let h=(0,bC.zk)(a);e.style.maxHeight=`${Math.max(10,h.innerHeight-a.getBoundingClientRect().top-35)}px`,b=b.filter((a,d)=>c.submenuIds?.has(a.id)?(console.warn(`Found submenu cycle: ${a.id}`),!1):(!(a instanceof ef.wv)||d!==b.length-1&&0!==d&&!(b[d-1]instanceof ef.wv))&&!0),this.push(b,{icon:!0,label:!0,isMenu:!0}),a.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(a=>!(a instanceof ex)).forEach((a,b,c)=>{a.updatePositionInSet(b+1,c.length)})}initializeOrUpdateStyleSheet(a,b){this.styleSheet||((0,bC.Cl)(a)?this.styleSheet=(0,el.li)(a):(eu.globalStyleSheet||(eu.globalStyleSheet=(0,el.li)()),this.styleSheet=eu.globalStyleSheet)),this.styleSheet.textContent=function(a,b){let c=`
|
|
206
206
|
.monaco-menu {
|
|
207
207
|
font-size: 13px;
|
|
208
208
|
border-radius: 5px;
|
|
@@ -691,4 +691,4 @@ struct VSOutput {
|
|
|
691
691
|
@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {
|
|
692
692
|
return textureSample(ourTexture, ourSampler, vsOut.texcoord, u32(vsOut.layerIndex));
|
|
693
693
|
}
|
|
694
|
-
`;class cL extends cJ{static{this.maxSupportedColumns=2e3}get bindGroupEntries(){return[{binding:1,resource:{buffer:this._cellBindBuffer}},{binding:6,resource:{buffer:this._scrollOffsetBindBuffer}}]}constructor(a,b,c,d){super(a,b,c,d),this.type="viewport",this.wgsl=cK,this._cellBindBufferLineCapacity=63,this._activeDoubleBufferIndex=0,this._visibleObjectCount=0,this._scrollInitialized=!1,this._onDidChangeBindGroupEntries=this._register(new v.vl),this.onDidChangeBindGroupEntries=this._onDidChangeBindGroupEntries.event,this._rebuildCellBuffer(this._cellBindBufferLineCapacity),this._scrollOffsetBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco scroll offset buffer",size:2*Float32Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST})).object,this._scrollOffsetValueBuffer=new Float32Array(2)}_rebuildCellBuffer(a){this._cellBindBuffer?.destroy();let b=(Math.floor(a/32)+1)*32,c=b*cL.maxSupportedColumns*6*Float32Array.BYTES_PER_ELEMENT;this._cellBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco full file cell buffer",size:c,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._cellValueBuffers=[new ArrayBuffer(c),new ArrayBuffer(c)],this._cellBindBufferLineCapacity=b,this._onDidChangeBindGroupEntries.fire()}onConfigurationChanged(a){return!0}onDecorationsChanged(a){return!0}onTokensChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onLinesChanged(a){return!0}onScrollChanged(a){let b=(0,t.fz)().devicePixelRatio;return this._scrollOffsetValueBuffer[0]=(a?.scrollLeft??this._context.viewLayout.getCurrentScrollLeft())*b,this._scrollOffsetValueBuffer[1]=(a?.scrollTop??this._context.viewLayout.getCurrentScrollTop())*b,this._device.queue.writeBuffer(this._scrollOffsetBindBuffer,0,this._scrollOffsetValueBuffer),!0}onThemeChanged(a){return!0}onLineMappingChanged(a){return!0}onZonesChanged(a){return!0}reset(){for(let a of[0,1]){let b=new Float32Array(this._cellValueBuffers[a]);b.fill(0,0,b.length),this._device.queue.writeBuffer(this._cellBindBuffer,0,b.buffer,0,b.byteLength)}}update(a,b){let c,d,e,f,g,h,i,j,k,l="",m=0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=(0,t.fz)().devicePixelRatio;this._scrollInitialized||(this.onScrollChanged(),this._scrollInitialized=!0),this._cellBindBufferLineCapacity<a.endLineNumber-a.startLineNumber+1&&this._rebuildCellBuffer(a.endLineNumber-a.startLineNumber+1);let B=new Float32Array(this._cellValueBuffers[this._activeDoubleBufferIndex]);B.fill(0);let C=6*cL.maxSupportedColumns;for(n=a.startLineNumber;n<=a.endLineNumber;n++)if(this._viewGpuContext.canRender(b,a,n)){h=a.getViewLineRenderingData(n),r=0,k=cG(h,b),m=b.spaceWidth*A,p=0,j=h.tokens,v=h.minColumn-1,w=0;for(let t=0,y=j.getCount();t<y;t++)if(!((w=j.getEndOffset(t))<=v)){for(x=j.getMetadata(t),o=v;o<w&&!(o>cL.maxSupportedColumns);o++){if(void 0===(c=k.getSegmentAtIndex(o)))continue;for(i of(l=c,h.isBasicASCII&&b.useMonospaceOptimizations||(m=this.glyphRasterizer.getTextMetrics(l).width),f=void 0,e=void 0,g=void 0,h.inlineDecorations))if(!(n<i.range.startLineNumber)&&!(n>i.range.endLineNumber)&&(n!==i.range.startLineNumber||!(o<i.range.startColumn-1))&&(n!==i.range.endLineNumber||!(o>=i.range.endColumn-1)))for(let a of cz.n.decorationCssRuleExtractor.getStyleRules(this._viewGpuContext.canvas.domNode,i.inlineClassName))for(let b of a.style){let c=a.styleMap.get(b)?.toString()??"";switch(b){case"color":{let a=b9.Q1.Format.CSS.parse(c);if(!a)throw new u.D7("Invalid color format "+c);f=a.toNumber32Bit();break}case"font-weight":e=function(a){switch(a){case"lighter":case"normal":return 400;case"bolder":case"bold":return 700}return parseInt(a)}(c)>=400;break;case"opacity":var D;g=(D=c).endsWith("%")?parseFloat(D.substring(0,D.length-1))/100:D.match(/^\d+(?:\.\d*)/)?parseFloat(D):1;break;default:throw new u.D7("Unexpected inline decoration style")}}if(" "===l||" "===l){if(s=((n-1)*cL.maxSupportedColumns+o)*6,B.fill(0,s,s+6)," "===l){let a=o+r;p+=m*((r=ac.A.nextRenderTabStop(o+r,h.tabSize))-a),r-=o+1}else p+=m;continue}let j=cz.n.decorationStyleCache.getOrCreateEntry(f,e,g);d=this._viewGpuContext.atlas.getGlyph(this.glyphRasterizer,l,x,j,p),q=Math.round(a.relativeVerticalOffset[n-a.startLineNumber]*A+Math.floor((a.lineHeight*A-(d.fontBoundingBoxAscent+d.fontBoundingBoxDescent))/2)+d.fontBoundingBoxAscent),B[(s=((n-a.startLineNumber)*cL.maxSupportedColumns+o)*6)+0]=Math.floor(p),B[s+1]=q,B[s+4]=d.glyphIndex,B[s+5]=d.pageIndex,p+=m}v=w}y=((n-a.startLineNumber)*cL.maxSupportedColumns+w)*6,z=(n-a.startLineNumber)*cL.maxSupportedColumns*6,B.fill(0,y,z)}let E=(a.endLineNumber-a.startLineNumber+1)*C;return this._device.queue.writeBuffer(this._cellBindBuffer,0,B.buffer,0,(a.endLineNumber-a.startLineNumber)*C*Float32Array.BYTES_PER_ELEMENT),this._activeDoubleBufferIndex=+!this._activeDoubleBufferIndex,this._visibleObjectCount=E,E}draw(a,b){if(this._visibleObjectCount<=0)throw new u.D7("Attempt to draw 0 objects");a.draw(cD.xW.length/2,this._visibleObjectCount)}}class cM extends cJ{static{this.maxSupportedLines=3e3}static{this.maxSupportedColumns=200}get bindGroupEntries(){return[{binding:1,resource:{buffer:this._cellBindBuffer}},{binding:6,resource:{buffer:this._scrollOffsetBindBuffer}}]}constructor(a,b,c,d){super(a,b,c,d),this.type="fullfile",this.wgsl=cK,this._activeDoubleBufferIndex=0,this._upToDateLines=[new Set,new Set],this._visibleObjectCount=0,this._finalRenderedLine=0,this._scrollInitialized=!1,this._queuedBufferUpdates=[[],[]];let e=cM.maxSupportedLines*cM.maxSupportedColumns*6*Float32Array.BYTES_PER_ELEMENT;this._cellBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco full file cell buffer",size:e,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._cellValueBuffers=[new ArrayBuffer(e),new ArrayBuffer(e)],this._scrollOffsetBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco scroll offset buffer",size:2*Float32Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST})).object,this._scrollOffsetValueBuffer=new Float32Array(2)}onConfigurationChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}onDecorationsChanged(a){return this._invalidateAllLines(),!0}onTokensChanged(a){for(let b of a.ranges)this._invalidateLineRange(b.fromLineNumber,b.toLineNumber);return!0}onLinesDeleted(a){return this._invalidateLinesFrom(a.fromLineNumber),this._queueBufferUpdate(a),!0}onLinesInserted(a){return this._invalidateLinesFrom(a.fromLineNumber),!0}onLinesChanged(a){return this._invalidateLineRange(a.fromLineNumber,a.fromLineNumber+a.count),!0}onScrollChanged(a){let b=(0,t.fz)().devicePixelRatio;return this._scrollOffsetValueBuffer[0]=(a?.scrollLeft??this._context.viewLayout.getCurrentScrollLeft())*b,this._scrollOffsetValueBuffer[1]=(a?.scrollTop??this._context.viewLayout.getCurrentScrollTop())*b,this._device.queue.writeBuffer(this._scrollOffsetBindBuffer,0,this._scrollOffsetValueBuffer),!0}onThemeChanged(a){return this._invalidateAllLines(),!0}onLineMappingChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}onZonesChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}_invalidateAllLines(){this._upToDateLines[0].clear(),this._upToDateLines[1].clear()}_invalidateLinesFrom(a){for(let b of[0,1]){let c=this._upToDateLines[b];for(let b of c)b>=a&&c.delete(b)}}_invalidateLineRange(a,b){for(let c=a;c<=b;c++)this._upToDateLines[0].delete(c),this._upToDateLines[1].delete(c)}reset(){for(let a of(this._invalidateAllLines(),[0,1])){let b=new Float32Array(this._cellValueBuffers[a]);b.fill(0,0,b.length),this._device.queue.writeBuffer(this._cellBindBuffer,0,b.buffer,0,b.byteLength)}this._finalRenderedLine=0}update(a,b){let c,d,e,f,g,h,i,j,k,l="",m=0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=(0,t.fz)().devicePixelRatio;this._scrollInitialized||(this.onScrollChanged(),this._scrollInitialized=!0);let B=new Float32Array(this._cellValueBuffers[this._activeDoubleBufferIndex]),C=6*cM.maxSupportedColumns,D=this._upToDateLines[this._activeDoubleBufferIndex],E=3e3,F=0,G=this._queuedBufferUpdates[this._activeDoubleBufferIndex];for(;G.length;){let a=G.shift();switch(a.type){case 2:case 8:case 17:B.fill(0),E=1,F=Math.max(F,this._finalRenderedLine),this._finalRenderedLine=0;break;case 10:{let b=(a.fromLineNumber-1)*cM.maxSupportedColumns*6,c=a.toLineNumber*cM.maxSupportedColumns*6,d=(this._finalRenderedLine-(a.toLineNumber-a.fromLineNumber+1))*cM.maxSupportedColumns*6;B.set(B.subarray(c),b),B.fill(0,d),E=Math.min(E,a.fromLineNumber),F=Math.max(F,this._finalRenderedLine),this._finalRenderedLine-=a.toLineNumber-a.fromLineNumber+1}}}for(n=a.startLineNumber;n<=a.endLineNumber;n++){if(!this._viewGpuContext.canRender(b,a,n)){y=(n-1)*cM.maxSupportedColumns*6,z=n*cM.maxSupportedColumns*6,B.fill(0,y,z),E=Math.min(E,n),F=Math.max(F,n);continue}if(!D.has(n)){E=Math.min(E,n),F=Math.max(F,n),h=a.getViewLineRenderingData(n),r=0,k=cG(h,b),m=b.spaceWidth*A,p=0,j=h.tokens,v=h.minColumn-1,w=0;for(let t=0,y=j.getCount();t<y;t++)if(!((w=j.getEndOffset(t))<=v)){for(x=j.getMetadata(t),o=v;o<w&&!(o>cM.maxSupportedColumns);o++){if(void 0===(c=k.getSegmentAtIndex(o)))continue;for(i of(l=c,h.isBasicASCII&&b.useMonospaceOptimizations||(m=this.glyphRasterizer.getTextMetrics(l).width),f=void 0,e=void 0,g=void 0,h.inlineDecorations))if(!(n<i.range.startLineNumber)&&!(n>i.range.endLineNumber)&&(n!==i.range.startLineNumber||!(o<i.range.startColumn-1))&&(n!==i.range.endLineNumber||!(o>=i.range.endColumn-1)))for(let a of cz.n.decorationCssRuleExtractor.getStyleRules(this._viewGpuContext.canvas.domNode,i.inlineClassName))for(let b of a.style){let c=a.styleMap.get(b)?.toString()??"";switch(b){case"color":{let a=b9.Q1.Format.CSS.parse(c);if(!a)throw new u.D7("Invalid color format "+c);f=a.toNumber32Bit();break}case"font-weight":e=function(a){switch(a){case"lighter":case"normal":return 400;case"bolder":case"bold":return 700}return parseInt(a)}(c)>=400;break;case"opacity":var H;g=(H=c).endsWith("%")?parseFloat(H.substring(0,H.length-1))/100:H.match(/^\d+(?:\.\d*)/)?parseFloat(H):1;break;default:throw new u.D7("Unexpected inline decoration style")}}if(" "===l||" "===l){if(s=((n-1)*cM.maxSupportedColumns+o)*6,B.fill(0,s,s+6)," "===l){let a=o+r;p+=m*((r=ac.A.nextRenderTabStop(o+r,h.tabSize))-a),r-=o+1}else p+=m;continue}let j=cz.n.decorationStyleCache.getOrCreateEntry(f,e,g);d=this._viewGpuContext.atlas.getGlyph(this.glyphRasterizer,l,x,j,p),q=Math.round(a.relativeVerticalOffset[n-a.startLineNumber]*A+Math.floor((a.lineHeight*A-(d.fontBoundingBoxAscent+d.fontBoundingBoxDescent))/2)+d.fontBoundingBoxAscent),B[(s=((n-1)*cM.maxSupportedColumns+o)*6)+0]=Math.floor(p),B[s+1]=q,B[s+4]=d.glyphIndex,B[s+5]=d.pageIndex,p+=m}v=w}y=((n-1)*cM.maxSupportedColumns+w)*6,z=n*cM.maxSupportedColumns*6,B.fill(0,y,z),D.add(n)}}let I=(a.endLineNumber-a.startLineNumber+1)*C;return(E=Math.min(E,cM.maxSupportedLines))<=(F=Math.min(F,cM.maxSupportedLines))&&this._device.queue.writeBuffer(this._cellBindBuffer,(E-1)*C*Float32Array.BYTES_PER_ELEMENT,B.buffer,(E-1)*C*Float32Array.BYTES_PER_ELEMENT,(F-E+1)*C*Float32Array.BYTES_PER_ELEMENT),this._finalRenderedLine=Math.max(this._finalRenderedLine,F),this._activeDoubleBufferIndex=+!this._activeDoubleBufferIndex,this._visibleObjectCount=I,I}draw(a,b){if(this._visibleObjectCount<=0)throw new u.D7("Attempt to draw 0 objects");a.draw(cD.xW.length/2,this._visibleObjectCount,void 0,(b.startLineNumber-1)*cM.maxSupportedColumns)}_queueBufferUpdate(a){this._queuedBufferUpdates[0].push(a),this._queuedBufferUpdates[1].push(a)}}var cN=c(97791),cO=function(a,b){return function(c,d){b(c,d,a)}};let cP=class extends Z{constructor(a,b,c,d){super(a),this._viewGpuContext=b,this._instantiationService=c,this._logService=d,this._atlasGpuTextureVersions=[],this._initialized=!1,this._glyphRasterizer=this._register(new w.HE),this._renderStrategy=this._register(new w.HE),this.canvas=this._viewGpuContext.canvas.domNode,this._register((0,cA.fm)(a=>{this._viewGpuContext.canvasDevicePixelDimensions.read(a);let b=this._lastViewportData;b&&setTimeout(()=>{b===this._lastViewportData&&this.renderText(b)})})),this.initWebgpu()}async initWebgpu(){let a,b;if(this._device=cz.n.deviceSync||await cz.n.device,this._store.isDisposed)return;let c=cz.n.atlas;this._register(c.onDidDeleteGlyphs(()=>{this._atlasGpuTextureVersions.length=0,this._atlasGpuTextureVersions[0]=0,this._atlasGpuTextureVersions[1]=0,this._renderStrategy.value.reset()}));let d=navigator.gpu.getPreferredCanvasFormat();this._viewGpuContext.ctx.configure({device:this._device,format:d,alphaMode:"premultiplied"}),this._renderPassColorAttachment={view:null,loadOp:"load",storeOp:"store"},this._renderPassDescriptor={label:"Monaco render pass",colorAttachments:[this._renderPassColorAttachment]};{let b=new Float32Array(6),c=(a=this.canvas.width,c=this.canvas.height)=>(b[0]=a,b[1]=c,b[2]=Math.ceil(this._context.configuration.options.get(165).contentLeft*(0,t.fz)().devicePixelRatio),b[3]=0,b[4]=b[0]-b[2],b[5]=b[1]-b[3],b);a=this._register(cC.B.createBuffer(this._device,{label:"Monaco uniform buffer",size:24,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST},()=>c())).object,this._register((0,cA.lp)(this._viewGpuContext.canvasDevicePixelDimensions,({width:b,height:d})=>{this._device.queue.writeBuffer(a,0,c(b,d))})),this._register((0,cA.lp)(this._viewGpuContext.contentLeft,()=>{this._device.queue.writeBuffer(a,0,c())}))}b=this._register(cC.B.createBuffer(this._device,{label:"Monaco atlas info uniform buffer",size:8,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST},()=>{let a=new Float32Array(2);return a[0]=c.pageSize,a[1]=c.pageSize,a})).object;let e=this._context.configuration.options.get(58),f=this._context.configuration.options.get(61);this._glyphRasterizer.value=this._register(new cN.O(f,e,this._viewGpuContext.devicePixelRatio.get(),cz.n.decorationStyleCache)),this._register((0,cA.lp)(this._viewGpuContext.devicePixelRatio,()=>{this._refreshGlyphRasterizer()})),this._renderStrategy.value=this._instantiationService.createInstance(cM,this._context,this._viewGpuContext,this._device,this._glyphRasterizer),this._glyphStorageBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco glyph storage buffer",size:cE.L.maximumPageCount*(24*cB.g.maximumGlyphCount),usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._atlasGpuTextureVersions[0]=0,this._atlasGpuTextureVersions[1]=0,this._atlasGpuTexture=this._register(cC.B.createTexture(this._device,{label:"Monaco atlas texture",format:"rgba8unorm",size:{width:c.pageSize,height:c.pageSize,depthOrArrayLayers:cE.L.maximumPageCount},dimension:"2d",usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT})).object,this._updateAtlasStorageBufferAndTexture(),this._vertexBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco vertex buffer",size:cD.xW.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST},cD.xW)).object;let g=this._device.createShaderModule({label:"Monaco shader module",code:this._renderStrategy.value.wgsl});if(this._pipeline=this._device.createRenderPipeline({label:"Monaco render pipeline",layout:"auto",vertex:{module:g,buffers:[{arrayStride:2*Float32Array.BYTES_PER_ELEMENT,attributes:[{shaderLocation:0,offset:0,format:"float32x2"}]}]},fragment:{module:g,targets:[{format:d,blend:{color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"}}}]}}),this._rebuildBindGroup=()=>{this._bindGroup=this._device.createBindGroup({label:"Monaco bind group",layout:this._pipeline.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:this._glyphStorageBuffer}},{binding:2,resource:this._device.createSampler({label:"Monaco atlas sampler",magFilter:"nearest",minFilter:"nearest"})},{binding:3,resource:this._atlasGpuTexture.createView()},{binding:4,resource:{buffer:a}},{binding:5,resource:{buffer:b}},...this._renderStrategy.value.bindGroupEntries]})},this._rebuildBindGroup(),this._initialized=!0,this._initViewportData){for(let a of this._initViewportData)this.renderText(a);this._initViewportData=void 0}}_refreshRenderStrategy(a){if(this._renderStrategy.value?.type==="viewport"||a.endLineNumber<cM.maxSupportedLines&&this._viewportMaxColumn(a)<cM.maxSupportedColumns)return;this._logService.trace(`File is larger than ${cM.maxSupportedLines} lines or ${cM.maxSupportedColumns} columns, switching to viewport render strategy`);let b=this._instantiationService.createInstance(cL,this._context,this._viewGpuContext,this._device,this._glyphRasterizer);this._renderStrategy.value=b,this._register(b.onDidChangeBindGroupEntries(()=>this._rebuildBindGroup?.())),this._rebuildBindGroup?.()}_viewportMaxColumn(a){let b=0;for(let c=a.startLineNumber;c<=a.endLineNumber;c++)b=Math.max(b,a.getViewLineRenderingData(c).maxColumn);return b}_updateAtlasStorageBufferAndTexture(){for(let[a,b]of cz.n.atlas.pages.entries()){if(a>=cE.L.maximumPageCount){console.log(`Attempt to upload atlas page [${a}], only ${cE.L.maximumPageCount} are supported currently`);continue}if(b.version===this._atlasGpuTextureVersions[a])continue;this._logService.trace("Updating atlas page[",a,"] from version ",this._atlasGpuTextureVersions[a]," to version ",b.version);let c=new Float32Array(6*cB.g.maximumGlyphCount),d=0;for(let a of b.glyphs)c[d+0]=a.x,c[d+0+1]=a.y,c[d+2]=a.w,c[d+2+1]=a.h,c[d+4]=a.originOffsetX,c[d+4+1]=a.originOffsetY,d+=6;if(d/6>cB.g.maximumGlyphCount)throw Error(`Attempting to write more glyphs (${d/6}) than the GPUBuffer can hold (${cB.g.maximumGlyphCount})`);this._device.queue.writeBuffer(this._glyphStorageBuffer,6*a*cB.g.maximumGlyphCount*Float32Array.BYTES_PER_ELEMENT,c,0,6*cB.g.maximumGlyphCount),b.usedArea.right-b.usedArea.left>0&&b.usedArea.bottom-b.usedArea.top>0&&this._device.queue.copyExternalImageToTexture({source:b.source},{texture:this._atlasGpuTexture,origin:{x:b.usedArea.left,y:b.usedArea.top,z:a}},{width:b.usedArea.right-b.usedArea.left+1,height:b.usedArea.bottom-b.usedArea.top+1}),this._atlasGpuTextureVersions[a]=b.version}}prepareRender(a){throw new u.D7("Should not be called")}render(a){throw new u.D7("Should not be called")}onConfigurationChanged(a){return this._refreshGlyphRasterizer(),!0}onCursorStateChanged(a){return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onLineMappingChanged(a){return!0}onRevealRangeRequest(a){return!0}onScrollChanged(a){return!0}onThemeChanged(a){return!0}onZonesChanged(a){return!0}_refreshGlyphRasterizer(){let a=this._glyphRasterizer.value;if(!a)return;let b=this._context.configuration.options.get(58),c=this._context.configuration.options.get(61),d=this._viewGpuContext.devicePixelRatio.get();(a.fontFamily!==b||a.fontSize!==c||a.devicePixelRatio!==d)&&(this._glyphRasterizer.value=new cN.O(c,b,d,cz.n.decorationStyleCache))}renderText(a){if(this._initialized)return this._refreshRenderStrategy(a),this._renderText(a);this._initViewportData=this._initViewportData??[],this._initViewportData.push(a)}_renderText(a){this._viewGpuContext.rectangleRenderer.draw(a);let b=new bD(this._context.configuration,this._context.theme.type);this._renderStrategy.value.update(a,b),this._updateAtlasStorageBufferAndTexture();let c=this._device.createCommandEncoder({label:"Monaco command encoder"});this._renderPassColorAttachment.view=this._viewGpuContext.ctx.getCurrentTexture().createView({label:"Monaco canvas texture view"});let d=c.beginRenderPass(this._renderPassDescriptor);d.setPipeline(this._pipeline),d.setVertexBuffer(0,this._vertexBuffer);let e=Math.ceil(this._viewGpuContext.contentLeft.get()*this._viewGpuContext.devicePixelRatio.get());d.setScissorRect(e,0,this.canvas.width-e,this.canvas.height),d.setBindGroup(0,this._bindGroup),this._renderStrategy.value.draw(d,a),d.end();let f=c.finish();this._device.queue.submit([f]),this._lastViewportData=a,this._lastViewLineOptions=b}linesVisibleRangesForRange(a,b){if(!this._lastViewportData)return null;let c=a.endLineNumber,d=ab.Q.intersectRanges(a,this._lastViewportData.visibleRange);if(!d)return null;let e=this._lastViewportData.startLineNumber,f=this._lastViewportData.endLineNumber,g=this._lastViewportData,h=this._lastViewLineOptions;if(!g||!h)return null;let i=[],j=0;b&&(j=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(d.startLineNumber,1)).lineNumber);for(let a=d.startLineNumber;a<=d.endLineNumber;a++){if(a<e||a>f)continue;let g=a===d.startLineNumber?d.startColumn:1,k=a!==c,l=k?this._context.viewModel.getLineMaxColumn(a):d.endColumn,m=this._visibleRangesForLineRange(a,g,l);m&&(b&&a<c&&j!==(j=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(a+1,1)).lineNumber)&&(m.ranges[m.ranges.length-1].width+=h.spaceWidth),i.push(new aW.BG(m.outsideRenderedLine,a,aW.Y.from(m.ranges),k)))}return 0===i.length?null:i}_visibleRangesForLineRange(a,b,c){let d;if(this.shouldRender())return null;let e=this._lastViewportData,f=this._lastViewLineOptions;if(!e||!f||a<e.startLineNumber||a>e.endLineNumber)return null;let g=e.getViewLineRenderingData(a),h=g.content;g.isBasicASCII&&f.useMonospaceOptimizations||(d=cG(g,f));let i="",j=0,k=0;for(let a=0;a<b-1;a++){if(g.isBasicASCII&&f.useMonospaceOptimizations)i=h.charAt(a);else{if(void 0===(i=d.getSegmentAtIndex(a)))continue;k+=this._renderStrategy.value.glyphRasterizer.getTextMetrics(i).width/(0,t.fz)().devicePixelRatio-f.spaceWidth}" "===i?j=ac.A.nextRenderTabStop(j,g.tabSize):j++}let l=j,m=0;for(let a=b-1;a<c-1;a++){if(g.isBasicASCII&&f.useMonospaceOptimizations)i=h.charAt(a);else{if(void 0===(i=d.getSegmentAtIndex(a)))continue;m+=this._renderStrategy.value.glyphRasterizer.getTextMetrics(i).width/(0,t.fz)().devicePixelRatio-f.spaceWidth}" "===i?l=ac.A.nextRenderTabStop(l,g.tabSize):l++}return new aW.pj(!1,[new aW.IO(j*f.spaceWidth+k,(l-j)*f.spaceWidth+m)])}visibleRangeForPosition(a){let b=this._visibleRangesForLineRange(a.lineNumber,a.column,a.column);return b?new aW.qN(b.outsideRenderedLine,b.ranges[0].left):null}getLineWidth(a){if(!this._lastViewportData||!this._lastViewLineOptions||!this._viewGpuContext.canRender(this._lastViewLineOptions,this._lastViewportData,a))return;let b=this._lastViewportData.getViewLineRenderingData(a),c=this._visibleRangesForLineRange(a,1,b.maxColumn),d=c?.ranges.at(-1);if(d)return d.width}getPositionAtCoordinate(a,b){if(!this._lastViewportData||!this._lastViewLineOptions||!this._viewGpuContext.canRender(this._lastViewLineOptions,this._lastViewportData,a))return;let c=this._lastViewportData.getViewLineRenderingData(a),d=c.content,e=(0,t.fz)().devicePixelRatio,f=b*e,g=this._lastViewLineOptions.spaceWidth*e,h=cG(c,this._lastViewLineOptions),i=0,j=0,k=0,l=0;for(let a=0;a<d.length;a++){let b=h.getSegmentAtIndex(a);if(void 0===b){l++;continue}if(" "===b){let b=a+k;j=g*((k=ac.A.nextRenderTabStop(a+k,c.tabSize))-b),k-=a+1}else j=c.isBasicASCII&&this._lastViewLineOptions.useMonospaceOptimizations?g:this._renderStrategy.value.glyphRasterizer.getTextMetrics(b).width;if(f<i+j/2)break;i+=j,l++}return new aa.y(a,l+1)}};cP=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cO(2,cy._Y),cO(3,aL.rr)],cP),c(47610);var cQ=c(25536),cR=c(96287),cS=c(79851);class cT extends Z{}class cU{_getPageOfLine(a,b){return Math.floor((a-1)/b)}_getRangeForPage(a,b){let c=a*b;return new ab.Q(c+1,1,c+b+1,1)}fromEditorSelection(a,b,c,d){let e,f,g,h=this._getPageOfLine(b.startLineNumber,c),i=this._getRangeForPage(h,c),j=this._getPageOfLine(b.endLineNumber,c),k=this._getRangeForPage(j,c),l=i.intersectRanges(new ab.Q(1,1,b.startLineNumber,b.startColumn));if(d&&a.getValueLengthInRange(l,1)>500){let b=a.modifyPosition(l.getEndPosition(),-500);l=ab.Q.fromPositions(b,l.getEndPosition())}let m=a.getValueInRange(l,1),n=a.getLineCount(),o=a.getLineMaxColumn(n),p=k.intersectRanges(new ab.Q(b.endLineNumber,b.endColumn,n,o));if(d&&a.getValueLengthInRange(p,1)>500){let b=a.modifyPosition(p.getStartPosition(),500);p=ab.Q.fromPositions(p.getStartPosition(),b)}let q=a.getValueInRange(p,1);if(h===j||h+1===j)e=a.getValueInRange(b,1);else{let c=i.intersectRanges(b),d=k.intersectRanges(b);e=a.getValueInRange(c,1)+String.fromCharCode(8230)+a.getValueInRange(d,1)}return d&&e.length>1e3&&(e=e.substring(0,500)+String.fromCharCode(8230)+e.substring(e.length-500,e.length)),0===b.getDirection()?(f=m.length,g=m.length+e.length):(g=m.length,f=m.length+e.length),{value:m+e+q,selection:b,selectionStart:f,selectionEnd:g,startPositionWithinEditor:l.getStartPosition(),newlineCountBeforeSelection:l.endLineNumber-l.startLineNumber}}}function cV(a,b){if(1===a.get(2)){let a=b.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),c=b.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),d=b.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),e=cQ.kg(56,"The editor is not accessible at this time.");return a?cQ.kg(57,"{0} To enable screen reader optimized mode, use {1}",e,a):c?cQ.kg(58,"{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",e,c):d?cQ.kg(59,"{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",e,d):e}return a.get(8)}function cW(a){let b=0,c=-1;for(;-1!==(c=a.indexOf("\n",c+1));)b++;return b}var cX=c(91834),cY=function(a,b){return function(c,d){b(c,d,a)}};class cZ{constructor(a,b,c,d,e){this._context=a,this.modelLineNumber=b,this.distanceToModelLineStart=c,this.widthOfHiddenLineTextBefore=d,this.distanceToModelLineEnd=e,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(a){let b=new aa.y(this.modelLineNumber,this.distanceToModelLineStart+1),c=new aa.y(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(b),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(c),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=a.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=a.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(a){return this._previousPresentation||(a?this._previousPresentation=a:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}let c$=z.gm,c_=class extends cT{constructor(a,b,c,d,e,f){super(a),this._keybindingService=e,this._instantiationService=f,this._primaryCursorPosition=new aa.y(1,1),this._primaryCursorVisibleRange=null,this._viewController=c,this._visibleRangeProvider=d,this._scrollLeft=0,this._scrollTop=0;let g=this._context.configuration.options,h=g.get(165);this._setAccessibilityOptions(g),this._contentLeft=h.contentLeft,this._contentWidth=h.contentWidth,this._contentHeight=h.height,this._fontInfo=g.get(59),this._emptySelectionClipboard=g.get(45),this._copyWithSyntaxHighlighting=g.get(31),this._visibleTextArea=null,this._selections=[new aw.L(1,1,1,1)],this._modelSelections=[new aw.L(1,1,1,1)],this._lastRenderPosition=null,this.textArea=(0,W.Z)(document.createElement("textarea")),$.write(this.textArea,7),this.textArea.setClassName(`inputarea ${bB}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");let{tabSize:i}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${i*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",cV(g,this._keybindingService)),this.textArea.setAttribute("aria-required",g.get(9)?"true":"false"),this.textArea.setAttribute("tabindex",String(g.get(140))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",cQ.kg(60,"editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",g.get(104)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=(0,W.Z)(document.createElement("div")),this.textAreaCover.setPosition("absolute"),b.appendChild(this.textArea),b.appendChild(this.textAreaCover);let j=new cU,k=this._register(new aS(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(aR,{getDataToCopy:()=>(0,aM.Ps)(this._context.viewModel,this._modelSelections,this._emptySelectionClipboard,this._copyWithSyntaxHighlighting),getScreenReaderContent:()=>{if(1===this._accessibilitySupport){let a=this._selections[0];if(C.zx&&a.isEmpty()){let b=a.getStartPosition(),c=this._getWordBeforePosition(b);if(0===c.length&&(c=this._getCharacterBeforePosition(b)),c.length>0)return new aN(c,c.length,c.length,ab.Q.fromPositions(b),0)}if(C.zx&&!a.isEmpty()&&500>this._context.viewModel.getValueLengthInRange(a,0)){let b=this._context.viewModel.getValueInRange(a,0);return new aN(b,0,b.length,a,0)}if(z.nr&&!a.isEmpty()){let a="vscode-placeholder";return new aN(a,0,a.length,null,void 0)}return aN.EMPTY}if(z.m0){let a=this._selections[0];if(a.isEmpty()){let b=a.getStartPosition(),[c,d]=this._getAndroidWordAtPosition(b);if(c.length>0)return new aN(c,d,d,ab.Q.fromPositions(b),0)}return aN.EMPTY}let a=j.fromEditorSelection(this._context.viewModel,this._selections[0],this._accessibilityPageSize,0===this._accessibilitySupport);return aN.fromScreenReaderContentState(a)},deduceModelPosition:(a,b,c)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(a,b,c)},k,C.OS,{isAndroid:z.m0,isChrome:z.H8,isFirefox:z.gm,isSafari:z.nr})),this._register(this._textAreaInput.onKeyDown(a=>{this._viewController.emitKeyDown(a)})),this._register(this._textAreaInput.onKeyUp(a=>{this._viewController.emitKeyUp(a)})),this._register(this._textAreaInput.onPaste(a=>{let b=!1,c=null,d=null;a.metadata&&(b=this._emptySelectionClipboard&&!!a.metadata.isFromEmptySelection,c=void 0!==a.metadata.multicursorText?a.metadata.multicursorText:null,d=a.metadata.mode),this._viewController.paste(a.text,b,c,d)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(a=>{a.replacePrevCharCnt||a.replaceNextCharCnt||a.positionDelta?this._viewController.compositionType(a.text,a.replacePrevCharCnt,a.replaceNextCharCnt,a.positionDelta):this._viewController.type(a.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(a=>{this._viewController.setSelection(a)})),this._register(this._textAreaInput.onCompositionStart(a=>{let b=this.textArea.domNode,c=this._modelSelections[0],{distanceToModelLineStart:d,widthOfHiddenTextBefore:e}=(()=>{let a=b.value.substring(0,Math.min(b.selectionStart,b.selectionEnd)),d=a.lastIndexOf("\n"),e=a.substring(d+1),f=e.lastIndexOf(" "),g=e.length-f-1,h=c.getStartPosition(),i=Math.min(h.column-1,g),j=h.column-1-i,k=e.substring(0,e.length-i),{tabSize:l}=this._context.viewModel.model.getOptions();return{distanceToModelLineStart:j,widthOfHiddenTextBefore:function(a,b,c,d){if(0===b.length)return 0;let e=a.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";let f=a.createElement("span");(0,y.M)(f,c),f.style.whiteSpace="pre",f.style.tabSize=`${d*c.spaceWidth}px`,f.append(b),e.appendChild(f),a.body.appendChild(e);let g=f.offsetWidth;return e.remove(),g}(this.textArea.domNode.ownerDocument,k,this._fontInfo,l)}})(),{distanceToModelLineEnd:f}=(()=>{let a=b.value.substring(Math.max(b.selectionStart,b.selectionEnd)),d=a.indexOf("\n"),e=-1===d?a:a.substring(0,d),f=e.indexOf(" "),g=-1===f?e.length:e.length-f-1,h=c.getEndPosition(),i=Math.min(this._context.viewModel.model.getLineMaxColumn(h.lineNumber)-h.column,g);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(h.lineNumber)-h.column-i}})();this._context.viewModel.revealRange("keyboard",!0,ab.Q.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new cZ(this._context,c.startLineNumber,d,e,f),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${bB} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(a=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${bB}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(cR.M.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}get domNode(){return this.textArea}writeScreenReaderContent(a){this._textAreaInput.writeNativeTextAreaContent(a)}dispose(){super.dispose(),this.textArea.domNode.remove(),this.textAreaCover.domNode.remove()}_getAndroidWordAtPosition(a){let b=this._context.viewModel.getLineContent(a.lineNumber),c=(0,cX.i)('`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',[]),d=!0,e=a.column,f=!0,g=a.column,h=0;for(;h<50&&(d||f);){if(d&&e<=1&&(d=!1),d){let a=b.charCodeAt(e-2);0!==c.get(a)?d=!1:e--}if(f&&g>b.length&&(f=!1),f){let a=b.charCodeAt(g-1);0!==c.get(a)?f=!1:g++}h++}return[b.substring(e-1,g-1),a.column-e]}_getWordBeforePosition(a){let b=this._context.viewModel.getLineContent(a.lineNumber),c=(0,cX.i)(this._context.configuration.options.get(148),[]),d=a.column,e=0;for(;d>1;){let f=b.charCodeAt(d-2);if(0!==c.get(f)||e>50)return b.substring(d-1,a.column-1);e++,d--}return b.substring(0,a.column-1)}_getCharacterBeforePosition(a){if(a.column>1){let b=this._context.viewModel.getLineContent(a.lineNumber).charAt(a.column-2);if(!aK.pc(b.charCodeAt(0)))return b}return""}_setAccessibilityOptions(a){this._accessibilitySupport=a.get(2);let b=a.get(3);2===this._accessibilitySupport&&b===K.qB.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=b;let c=a.get(165).wrappingColumn;if(-1!==c&&1!==this._accessibilitySupport){let b=a.get(59);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(c*b.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=+!c$}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);this._setAccessibilityOptions(b),this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,this._contentHeight=c.height,this._fontInfo=b.get(59),this._emptySelectionClipboard=b.get(45),this._copyWithSyntaxHighlighting=b.get(31),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");let{tabSize:d}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${d*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",cV(b,this._keybindingService)),this.textArea.setAttribute("aria-required",b.get(9)?"true":"false"),this.textArea.setAttribute("tabindex",String(b.get(140))),(a.hasChanged(41)||a.hasChanged(104))&&this._ensureReadOnlyAttribute(),a.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(a){return this._selections=a.selections.slice(0),this._modelSelections=a.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return this._scrollLeft=a.scrollLeft,this._scrollTop=a.scrollTop,!0}onZonesChanged(a){return!0}isFocused(){return this._textAreaInput.isFocused()}focus(){this._textAreaInput.focusTextArea()}refreshFocusState(){this._textAreaInput.refreshFocusState()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(a){a.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",a.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),a.role&&this.textArea.setAttribute("role",a.role)}_ensureReadOnlyAttribute(){let a=this._context.configuration.options;!cR.M.enabled||a.get(41)&&a.get(104)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(a){this._primaryCursorPosition=new aa.y(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=a.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(a)}render(a){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){let a=this._visibleTextArea.visibleTextareaStart,b=this._visibleTextArea.visibleTextareaEnd,c=this._visibleTextArea.startPosition,d=this._visibleTextArea.endPosition;if(c&&d&&a&&b&&b.left>=this._scrollLeft&&a.left<=this._scrollLeft+this._contentWidth){let e=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,f=cW(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart)),g=this._visibleTextArea.widthOfHiddenLineTextBefore,h=this._contentLeft+a.left-this._scrollLeft,i=b.left-a.left+1;if(h<this._contentLeft){let a=this._contentLeft-h;h+=a,g+=a,i-=a}i>this._contentWidth&&(i=this._contentWidth);let j=this._context.viewLayout.getLineHeightForLineNumber(c.lineNumber),k=this._context.viewModel.getFontSizeAtPosition(this._primaryCursorPosition),l=this._context.viewModel.getViewLineData(c.lineNumber),m=l.tokens.findTokenIndexAtOffset(c.column-1),n=m===l.tokens.findTokenIndexAtOffset(d.column-1),o=this._visibleTextArea.definePresentation(n?l.tokens.getPresentation(m):null);this.textArea.domNode.scrollTop=f*j,this.textArea.domNode.scrollLeft=g,this._doRender({lastRenderPosition:null,top:e,left:h,width:i,height:j,useCover:!1,color:(bN.dG.getColorMap()||[])[o.foreground],italic:o.italic,bold:o.bold,underline:o.underline,strikethrough:o.strikethrough,fontSize:k})}return}if(!this._primaryCursorVisibleRange)return void this._renderAtTopLeft();let a=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(a<this._contentLeft||a>this._contentLeft+this._contentWidth)return void this._renderAtTopLeft();let b=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(b<0||b>this._contentHeight)return void this._renderAtTopLeft();if(C.zx||2===this._accessibilitySupport){let c=this._primaryCursorPosition.lineNumber,d=this._context.viewLayout.getLineHeightForLineNumber(c);this._doRender({lastRenderPosition:this._primaryCursorPosition,top:b,left:this._textAreaWrapping?this._contentLeft:a,width:this._textAreaWidth,height:d,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;let e=this._textAreaInput.textAreaState.newlineCountBeforeSelection??cW(this.textArea.domNode.value.substring(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=e*d;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:b,left:this._textAreaWrapping?this._contentLeft:a,width:this._textAreaWidth,height:+!c$,useCover:!1})}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:+!c$,useCover:!0})}_doRender(a){this._lastRenderPosition=a.lastRenderPosition;let b=this.textArea,c=this.textAreaCover;(0,y.M)(b,this._fontInfo),b.setTop(a.top),b.setLeft(a.left),b.setWidth(a.width),b.setHeight(a.height),b.setLineHeight(a.height),b.setFontSize(a.fontSize??this._fontInfo.fontSize),b.setColor(a.color?b9.Q1.Format.CSS.formatHex(a.color):""),b.setFontStyle(a.italic?"italic":""),a.bold&&b.setFontWeight("bold"),b.setTextDecoration(`${a.underline?" underline":""}${a.strikethrough?" line-through":""}`),c.setTop(a.useCover?a.top:0),c.setLeft(a.useCover?a.left:0),c.setWidth(a.useCover?a.width:0),c.setHeight(a.useCover?a.height:0);let d=this._context.configuration.options;d.get(66)?c.setClassName("monaco-editor-background textAreaCover "+bJ.OUTER_CLASS_NAME):0!==d.get(76).renderType?c.setClassName("monaco-editor-background textAreaCover "+bA.CLASS_NAME):c.setClassName("monaco-editor-background textAreaCover")}};c_=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cY(4,cS.b),cY(5,cy._Y)],c_),c(38288);let c0=class extends w.jG{constructor(a,b,c){super(),this._domNode=b,this._onFocusChange=c,this._isFocused=!1,this._isPaused=!1,this._register((0,t.ko)(this._domNode,"focus",()=>{a.trace("NativeEditContext.focus"),this._isPaused||this.refreshFocusState()})),this._register((0,t.ko)(this._domNode,"blur",()=>{a.trace("NativeEditContext.blur"),this._isPaused||this._handleFocusedChanged(!1)}))}pause(){this._isPaused=!0}resume(){this._isPaused=!1,this.refreshFocusState()}_handleFocusedChanged(a){this._isFocused!==a&&(this._isFocused=a,this._onFocusChange(this._isFocused))}focus(){this._domNode.focus(),this.refreshFocusState()}refreshFocusState(){let a=(0,t.jG)(this._domNode),b=a?a.activeElement:(0,t.bq)(),c=this._domNode===b;this._handleFocusedChanged(c)}get isFocused(){return this._isFocused}};function c1(a,b,c,d){return a.addEventListener(b,c,d),{dispose(){a.removeEventListener(b,c)}}}c0=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(f=aL.rr,function(a,b){f(a,b,0)})],c0);var c2=c(22889),c3=c(16749);let c4=(0,aZ.H)("richScreenReaderContent",{createHTML:a=>a}),c5="data-line-number",c6=class extends w.jG{constructor(a,b,c,d){super(),this._domNode=a,this._context=b,this._viewController=c,this._accessibilityService=d,this._selectionChangeListener=this._register(new w.HE),this._accessibilityPageSize=1,this._ignoreSelectionChangeTime=0,this._state=c9.NULL,this._strategy=new da,this._renderedLines=new Map,this._renderedSelection=new aw.L(1,1,1,1),this.onConfigurationChanged(this._context.configuration.options)}updateScreenReaderContent(a){let b=(0,t.fz)().document.activeElement;if(b&&b===this._domNode.domNode)if(this._accessibilityService.isScreenReaderOptimized()){let b=this._getScreenReaderContentLineIntervals(a);this._state.equals(b)||(this._state=b,this._renderedLines=this._renderScreenReaderContent(b)),this._renderedSelection.equalsSelection(a)||(this._renderedSelection=a,this._setSelectionOnScreenReaderContent(this._context,this._renderedLines,a))}else this._state=c9.NULL,this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.textContent=""}updateScrollTop(a){let b=this._state.intervals;if(!b.length)return;let c=this._context.viewModel.viewLayout,d=b[0].startLine,e=c.getVerticalOffsetForLineNumber(d),f=c.getVerticalOffsetForLineNumber(a.positionLineNumber);this._domNode.domNode.scrollTop=f-e}onFocusChange(a){a?this._selectionChangeListener.value=this._setSelectionChangeListener():this._selectionChangeListener.value=void 0}onConfigurationChanged(a){this._accessibilityPageSize=a.get(3)}onWillCut(){this._setIgnoreSelectionChangeTime("onCut")}onWillPaste(){this._setIgnoreSelectionChangeTime("onWillPaste")}_setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}_setSelectionChangeListener(){let a=0;return(0,t.ko)(this._domNode.domNode.ownerDocument,"selectionchange",()=>{if((0,t.fz)().document.activeElement!==this._domNode.domNode||!this._accessibilityService.isScreenReaderOptimized()||!cR.M.enabled)return;let b=Date.now(),c=b-a;if(a=b,c<5)return;let d=b-this._ignoreSelectionChangeTime;if(this._ignoreSelectionChangeTime=0,d<100)return;let e=this._getEditorSelectionFromDomRange();e&&this._viewController.setSelection(e)})}_renderScreenReaderContent(a){let b=[],c=new Map;for(let d of a.intervals)for(let a=d.startLine;a<=d.endLine;a++){let d=this._renderLine(a);c.set(a,d),b.push(d.domNode)}return this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.replaceChildren(...b),c}_renderLine(a){let b,c=this._context.viewModel,d=c.getViewLineRenderingData(a),e=this._context.configuration.options,f=e.get(59),g=e.get(133),h=e.get(108),i=e.get(60),j=e.get(40),k=c2.d.filter(d.inlineDecorations,a,d.minColumn,d.maxColumn),l=f.isMonospace&&!j,m=i!==K.Bc.OFF;b="off"===e.get(47)?e.get(113):"none";let n=new c3.zL(l,f.canUseHalfwidthRightwardsArrow,d.content,d.continuesWithWrappedLine,d.isBasicASCII,d.containsRTL,d.minColumn-1,d.tokens,k,d.tabSize,d.startVisibleColumn,f.spaceWidth,f.middotWidth,f.wsmiddotWidth,g,b,h,m,null,null,0,!0),o=new a$.fe(1e4),p=(0,c3.UW)(n,o),q=o.build(),r=c4?.createHTML(q)??q,s=c.viewLayout.getLineHeightForLineNumber(a)+"px",t=document.createElement("div");return t.innerHTML=r,t.style.lineHeight=s,t.style.height=s,t.setAttribute(c5,a.toString()),new c7(t,p.characterMapping)}_setSelectionOnScreenReaderContent(a,b,c){let d=(0,t.fz)().document.getSelection();if(!d)return;let e=c.startLineNumber,f=c.endLineNumber,g=b.get(e),h=b.get(f);if(!g||!h)return;let i=a.viewModel,j=i.model,k=i.coordinatesConverter,l=new ab.Q(e,1,e,c.selectionStartColumn),m=k.convertViewRangeToModelRange(l),n=j.getCharacterCountInRange(m),o=new ab.Q(f,1,f,c.positionColumn),p=k.convertViewRangeToModelRange(o),q=j.getCharacterCountInRange(p),r=g.characterMapping.getDomPosition(n),s=h.characterMapping.getDomPosition(q),u=g.domNode.firstChild,v=h.domNode.firstChild,w=u.childNodes,x=v.childNodes,y=w.item(r.partIndex),z=x.item(s.partIndex);y.firstChild&&z.firstChild&&(this._setIgnoreSelectionChangeTime("setRange"),d.setBaseAndExtent(y.firstChild,1===c.startColumn?0:r.charIndex+1,z.firstChild,1===c.endColumn?0:s.charIndex+1))}_getScreenReaderContentLineIntervals(a){return this._strategy.fromEditorSelection(this._context.viewModel,a,this._accessibilityPageSize)}_getEditorSelectionFromDomRange(){if(!this._renderedLines)return;let a=(0,t.fz)().document.getSelection();if(!a||0===a.rangeCount)return;let b=a.getRangeAt(0),c=b.startContainer,d=b.endContainer,e=c.parentElement,f=d.parentElement;if(!e||!(0,t.sb)(e)||!f||!(0,t.sb)(f))return;let g=e.parentElement?.parentElement,h=f.parentElement?.parentElement;if(!g||!h)return;let i=g.getAttribute(c5),j=h.getAttribute(c5);if(!i||!j)return;let k=parseInt(i),l=parseInt(j),m=this._renderedLines.get(k)?.characterMapping,n=this._renderedLines.get(l)?.characterMapping;if(!m||!n)return;let o=(0,_.r)(m,e,b.startOffset),p=(0,_.r)(n,f,b.endOffset);return"forward"===a.direction?new aw.L(k,o,l,p):new aw.L(l,p,k,o)}};c6=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(g=N.j,function(a,b){g(a,b,3)})],c6);class c7{constructor(a,b){this.domNode=a,this.characterMapping=b}}class c8{constructor(a,b){this.startLine=a,this.endLine=b}}class c9{constructor(a,b){this.intervals=b;let c="";for(let d of b)for(let b=d.startLine;b<=d.endLine;b++)c+=a.getLineContent(b)+"\n";this.value=c}equals(a){return this.value===a.value}static get NULL(){return new c9({getLineContent:()=>"",getLineCount:()=>1,getLineMaxColumn:()=>1,getValueInRange:()=>"",getValueLengthInRange:()=>0,modifyPosition:(a,b)=>a},[])}}class da{constructor(){}_getPageOfLine(a,b){return Math.floor((a-1)/b)}_getRangeForPage(a,b,c){let d=b*c,e=Math.min(d+c,a.getLineCount());return new c8(d+1,e)}fromEditorSelection(a,b,c){let d=this._getPageOfLine(b.startLineNumber,c),e=this._getRangeForPage(a,d,c),f=this._getPageOfLine(b.endLineNumber,c),g=this._getRangeForPage(a,f,c),h=[{startLine:e.startLine,endLine:e.endLine}];return d+1<f&&h.push({startLine:g.startLine,endLine:g.endLine}),new c9(a,h)}}var db=c(32793);let dc=class extends w.jG{constructor(a,b,c,d){super(),this._domNode=a,this._context=b,this._viewController=c,this._accessibilityService=d,this._selectionChangeListener=this._register(new w.HE),this._accessibilityPageSize=1,this._ignoreSelectionChangeTime=0,this._strategy=new cU,this.onConfigurationChanged(this._context.configuration.options)}updateScreenReaderContent(a){let b=this._domNode.domNode,c=(0,t.fz)().document.activeElement;if(c&&c===b)if(this._accessibilityService.isScreenReaderOptimized()){this._state=this._getScreenReaderContentState(a),b.textContent!==this._state.value&&(this._setIgnoreSelectionChangeTime("setValue"),b.textContent=this._state.value);let c=(0,t.fz)().document.getSelection();if(!c)return;let d=this._getScreenReaderRange(this._state.selectionStart,this._state.selectionEnd);if(!d)return;this._setIgnoreSelectionChangeTime("setRange"),c.setBaseAndExtent(d.anchorNode,d.anchorOffset,d.focusNode,d.focusOffset)}else this._state=void 0,this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.textContent=""}updateScrollTop(a){if(!this._state)return;let b=this._context.viewModel.viewLayout,c=this._state.startPositionWithinEditor.lineNumber,d=b.getVerticalOffsetForLineNumber(c),e=b.getVerticalOffsetForLineNumber(a.positionLineNumber);this._domNode.domNode.scrollTop=e-d}onFocusChange(a){a?this._selectionChangeListener.value=this._setSelectionChangeListener():this._selectionChangeListener.value=void 0}onConfigurationChanged(a){this._accessibilityPageSize=a.get(3)}onWillCut(){this._setIgnoreSelectionChangeTime("onCut")}onWillPaste(){this._setIgnoreSelectionChangeTime("onWillPaste")}_setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}_setSelectionChangeListener(){let a=0;return(0,t.ko)(this._domNode.domNode.ownerDocument,"selectionchange",()=>{let b=this._accessibilityService.isScreenReaderOptimized();if(!this._state||!b||!cR.M.enabled||(0,t.fz)().document.activeElement!==this._domNode.domNode)return;let c=(0,t.fz)().document.getSelection();if(!c||0===c.rangeCount)return;let d=c.getRangeAt(0),e=Date.now(),f=e-a;if(a=e,f<5)return;let g=e-this._ignoreSelectionChangeTime;this._ignoreSelectionChangeTime=0,g<100||this._viewController.setSelection(this._getEditorSelectionFromDomRange(this._context,this._state,c.direction,d))})}_getScreenReaderContentState(a){let b=this._strategy.fromEditorSelection(this._context.viewModel,a,this._accessibilityPageSize,0===this._accessibilityService.getAccessibilitySupport()),c=this._context.viewModel.model.getPositionAt(1/0),d=b.value;return 1===c.column&&a.getEndPosition().equals(c)&&(d+="\n"),b.value=d,b}_getScreenReaderRange(a,b){let c=this._domNode.domNode.firstChild;if(!c)return;let d=new globalThis.Range;return d.setStart(c,a),d.setEnd(c,b),{anchorNode:c,anchorOffset:a,focusNode:c,focusOffset:b}}_getEditorSelectionFromDomRange(a,b,c,d){let e=a.viewModel,f=e.model,g=e.coordinatesConverter.convertViewPositionToModelPosition(b.startPositionWithinEditor),h=f.getOffsetAt(g),i=d.startOffset+h,j=d.endOffset+h;if(1===f.getEndOfLineSequence()){let a=b.value,c=new db.a(a),e=c.getPosition(d.startOffset),f=c.getPosition(d.endOffset);i+=e.lineNumber-1,j+=f.lineNumber-1}let k=f.getPositionAt(i),l=f.getPositionAt(j),m="forward"===c?k:l,n="forward"===c?l:k;return aw.L.fromPositions(m,n)}};dc=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(h=N.j,function(a,b){h(a,b,3)})],dc);var dd=function(a,b){return function(c,d){b(c,d,a)}};let de=class extends w.jG{constructor(a,b,c,d,e){super(),this._domNode=a,this._context=b,this._viewController=c,this._keybindingService=d,this._accessibilityService=e,this._contentLeft=1,this._contentWidth=1,this._contentHeight=1,this._divWidth=1,this._primarySelection=new aw.L(1,1,1,1),this._primaryCursorVisibleRange=null,this._state=this._register(new w.HE),this._instantiateScreenReaderContent(),this._updateConfigurationSettings(),this._updateDomAttributes()}onWillPaste(){this._state.value?.onWillPaste()}onWillCut(){this._state.value?.onWillCut()}handleFocusChange(a){this._state.value?.onFocusChange(a),this.writeScreenReaderContent()}onConfigurationChanged(a){this._instantiateScreenReaderContent(),this._updateConfigurationSettings(),this._updateDomAttributes(),a.hasChanged(2)&&this.writeScreenReaderContent()}_instantiateScreenReaderContent(){let a=this._context.configuration.options.get(107);this._renderRichContent!==a&&(this._renderRichContent=a,this._state.value=this._createScreenReaderContent(a))}_createScreenReaderContent(a){return a?new c6(this._domNode,this._context,this._viewController,this._accessibilityService):new dc(this._domNode,this._context,this._viewController,this._accessibilityService)}_updateConfigurationSettings(){let a=this._context.configuration.options,b=a.get(165),c=b.wrappingColumn;this._contentLeft=b.contentLeft,this._contentWidth=b.contentWidth,this._contentHeight=b.height,this._fontInfo=a.get(59),this._divWidth=Math.round(c*this._fontInfo.typicalHalfwidthCharacterWidth),this._state.value?.onConfigurationChanged(a)}_updateDomAttributes(){let a=this._context.configuration.options;this._domNode.domNode.setAttribute("role","textbox"),this._domNode.domNode.setAttribute("aria-required",a.get(9)?"true":"false"),this._domNode.domNode.setAttribute("aria-multiline","true"),this._domNode.domNode.setAttribute("aria-autocomplete",a.get(104)?"none":"both"),this._domNode.domNode.setAttribute("aria-roledescription",(0,cQ.kg)(55,"editor")),this._domNode.domNode.setAttribute("aria-label",cV(a,this._keybindingService));let b=this._context.viewModel.model.getOptions().tabSize,c=a.get(59).spaceWidth;this._domNode.domNode.style.tabSize=`${b*c}px`;let d=a.get(154),e="inherit"===d?a.get(153):d,f="inherit"===e?a.get(149):e;this._domNode.domNode.style.textWrap="off"===f?"nowrap":"wrap"}onCursorStateChanged(a){this._primarySelection=a.selections[0]??new aw.L(1,1,1,1)}prepareRender(a){this.writeScreenReaderContent(),this._primaryCursorVisibleRange=a.visibleRangeForPosition(this._primarySelection.getPosition())}render(a){if(!this._primaryCursorVisibleRange)return void this._renderAtTopLeft();let b=this._context.viewLayout.getCurrentScrollLeft(),c=this._contentLeft+this._primaryCursorVisibleRange.left-b;if(c<this._contentLeft||c>this._contentLeft+this._contentWidth)return void this._renderAtTopLeft();let d=this._context.viewLayout.getCurrentScrollTop(),e=this._primarySelection.positionLineNumber,f=this._context.viewLayout.getVerticalOffsetForLineNumber(e)-d;if(f<0||f>this._contentHeight)return void this._renderAtTopLeft();let g=this._context.viewLayout.getLineHeightForLineNumber(e);this._doRender(f,this._contentLeft,this._divWidth,g),this._state.value?.updateScrollTop(this._primarySelection)}_renderAtTopLeft(){this._doRender(0,0,this._contentWidth,1)}_doRender(a,b,c,d){(0,y.M)(this._domNode,this._fontInfo),this._domNode.setTop(a),this._domNode.setLeft(b),this._domNode.setWidth(c),this._domNode.setHeight(d),this._domNode.setLineHeight(d)}setAriaOptions(a){a.activeDescendant?(this._domNode.setAttribute("aria-haspopup","true"),this._domNode.setAttribute("aria-autocomplete","list"),this._domNode.setAttribute("aria-activedescendant",a.activeDescendant)):(this._domNode.setAttribute("aria-haspopup","false"),this._domNode.setAttribute("aria-autocomplete","both"),this._domNode.removeAttribute("aria-activedescendant")),a.role&&this._domNode.setAttribute("role",a.role)}writeScreenReaderContent(){this._state.value?.updateScreenReaderContent(this._primarySelection)}};de=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dd(3,cS.b),dd(4,N.j)],de),(n||(n={})).create=function(a,b){return new a.EditContext(b)};var df=c(25285),dg=function(a,b){return function(c,d){b(c,d,a)}};!function(a){a.NONE="edit-context-composition-none",a.SECONDARY="edit-context-composition-secondary",a.PRIMARY="edit-context-composition-primary"}(o||(o={}));let dh=class extends cT{constructor(a,b,c,d,e,f,g){let h;super(b),this._viewController=d,this._visibleRangeProvider=e,this.logService=g,this._previousEditContextSelection=new cs.L(0,0),this._editContextPrimarySelection=new aw.L(1,1,1,1),this._decorations=[],this._primarySelection=new aw.L(1,1,1,1),this._targetWindowId=-1,this._scrollTop=0,this._scrollLeft=0,this.domNode=new W.D(document.createElement("div")),this.domNode.setClassName("native-edit-context"),this._imeTextArea=new W.D(document.createElement("textarea")),this._imeTextArea.setClassName("ime-text-area"),this._imeTextArea.setAttribute("readonly","true"),this._imeTextArea.setAttribute("tabindex","-1"),this._imeTextArea.setAttribute("aria-hidden","true"),this.domNode.setAttribute("autocorrect","off"),this.domNode.setAttribute("autocapitalize","off"),this.domNode.setAttribute("autocomplete","off"),this.domNode.setAttribute("spellcheck","false"),this._updateDomAttributes(),c.appendChild(this.domNode),c.appendChild(this._imeTextArea),this._parent=c.domNode,this._focusTracker=this._register(new c0(g,this.domNode.domNode,a=>{g.trace("NativeEditContext#handleFocusChange : ",a),this._screenReaderSupport.handleFocusChange(a),this._context.viewModel.setHasFocus(a)}));let i=(0,t.zk)(this.domNode.domNode);this._editContext=n.create(i),this.setEditContextOnDomNode(),this._screenReaderSupport=this._register(f.createInstance(de,this.domNode,b,this._viewController)),this._register((0,t.ko)(this.domNode.domNode,"copy",a=>{this.logService.trace("NativeEditContext#copy"),this._ensureClipboardGetsEditorSelection(a)})),this._register((0,t.ko)(this.domNode.domNode,"cut",a=>{this.logService.trace("NativeEditContext#cut"),this._screenReaderSupport.onWillCut(),this._ensureClipboardGetsEditorSelection(a),this.logService.trace("NativeEditContext#cut (before viewController.cut)"),this._viewController.cut()})),this._register((0,t.ko)(this.domNode.domNode,"keyup",a=>this._onKeyUp(a))),this._register((0,t.ko)(this.domNode.domNode,"keydown",async a=>this._onKeyDown(a))),this._register((0,t.ko)(this._imeTextArea.domNode,"keyup",a=>this._onKeyUp(a))),this._register((0,t.ko)(this._imeTextArea.domNode,"keydown",async a=>this._onKeyDown(a))),this._register((0,t.ko)(this.domNode.domNode,"beforeinput",async a=>{("insertParagraph"===a.inputType||"insertLineBreak"===a.inputType)&&this._onType(this._viewController,{text:"\n",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0})})),this._register((0,t.ko)(this.domNode.domNode,"paste",a=>{if(this.logService.trace("NativeEditContext#paste"),a.preventDefault(),!a.clipboardData)return;let[b,c]=aM.Mz.getTextData(a.clipboardData);if(this.logService.trace("NativeEditContext#paste with id : ",c?.id," with text.length: ",b.length),!b)return;c=c||aM.bs.INSTANCE.get(b);let d=!1,e=null,f=null;c&&(d=this._context.configuration.options.get(45)&&!!c.isFromEmptySelection,e=void 0!==c.multicursorText?c.multicursorText:null,f=c.mode),this.logService.trace("NativeEditContext#paste (before viewController.paste)"),this._viewController.paste(b,d,e,f)})),this._register(c1(this._editContext,"textformatupdate",a=>this._handleTextFormatUpdate(a))),this._register(c1(this._editContext,"characterboundsupdate",a=>this._updateCharacterBounds(a))),this._register(c1(this._editContext,"textupdate",a=>{let b=a.text;if(1===b.length){let c=b.charCodeAt(0);if((0,aK.pc)(c)){h=b;return}if((0,aK.LJ)(c)&&h){let c={text:h+b,selectionEnd:a.selectionEnd,selectionStart:a.selectionStart,updateRangeStart:a.updateRangeStart-1,updateRangeEnd:a.updateRangeEnd-1};h=void 0,this._emitTypeEvent(this._viewController,c);return}}this._emitTypeEvent(this._viewController,a)})),this._register(c1(this._editContext,"compositionstart",a=>{this._updateEditContext(),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(c1(this._editContext,"compositionend",a=>{this._updateEditContext(),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()}));let j=!1;this._register(cR.M.onDidChange(()=>{cR.M.enabled&&j&&(this._focusTracker.resume(),this.domNode.focus(),j=!1),!cR.M.enabled&&this.isFocused()&&(this._focusTracker.pause(),this._imeTextArea.focus(),j=!0)})),this._register(df.q.register(a,this))}dispose(){this.domNode.domNode.editContext=void 0,this.domNode.domNode.blur(),this.domNode.domNode.remove(),this._imeTextArea.domNode.remove(),super.dispose()}setAriaOptions(a){this._screenReaderSupport.setAriaOptions(a)}getLastRenderData(){return this._primarySelection.getPosition()}prepareRender(a){this._screenReaderSupport.prepareRender(a),this._updateSelectionAndControlBounds(a)}render(a){this._screenReaderSupport.render(a)}onCursorStateChanged(a){return this._primarySelection=a.modelSelections[0]??new aw.L(1,1,1,1),this._screenReaderSupport.onCursorStateChanged(a),this._updateEditContext(),!0}onConfigurationChanged(a){return this._screenReaderSupport.onConfigurationChanged(a),this._updateDomAttributes(),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.fromLineNumber+a.count-1),!0}onLinesDeleted(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.toLineNumber),!0}onLinesInserted(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.toLineNumber),!0}_updateEditContextOnLineChange(a,b){this._editContextPrimarySelection.endLineNumber<a||this._editContextPrimarySelection.startLineNumber>b||this._updateEditContext()}onScrollChanged(a){return this._scrollLeft=a.scrollLeft,this._scrollTop=a.scrollTop,!0}onZonesChanged(a){return!0}onWillPaste(){this.logService.trace("NativeEditContext#onWillPaste"),this._onWillPaste()}_onWillPaste(){this._screenReaderSupport.onWillPaste()}onWillCopy(){this.logService.trace("NativeEditContext#onWillCopy"),this.logService.trace("NativeEditContext#isFocused : ",this.domNode.domNode===(0,t.bq)())}writeScreenReaderContent(){this._screenReaderSupport.writeScreenReaderContent()}isFocused(){return this._focusTracker.isFocused}focus(){this._focusTracker.focus(),this.refreshFocusState()}refreshFocusState(){this._focusTracker.refreshFocusState()}setEditContextOnDomNode(){let a=(0,t.zk)(this.domNode.domNode),b=(0,t.Q2)(a);this._targetWindowId!==b&&(this.domNode.domNode.editContext=this._editContext,this._targetWindowId=b)}_onKeyUp(a){this._viewController.emitKeyUp(new aI.Z(a))}_onKeyDown(a){let b=new aI.Z(a);114===b.keyCode&&b.stopPropagation(),this._viewController.emitKeyDown(b)}_updateDomAttributes(){let a=this._context.configuration.options;this.domNode.domNode.setAttribute("tabindex",String(a.get(140)))}_updateEditContext(){let a=this._getNewEditContextState();a&&(this._editContext.updateText(0,Number.MAX_SAFE_INTEGER,a.text??" "),this._editContext.updateSelection(a.selectionStartOffset,a.selectionEndOffset),this._editContextPrimarySelection=a.editContextPrimarySelection,this._previousEditContextSelection=new cs.L(a.selectionStartOffset,a.selectionEndOffset))}_emitTypeEvent(a,b){if(!this._editContext)return;let c=this._previousEditContextSelection.endExclusive,d=this._previousEditContextSelection.start;this._previousEditContextSelection=new cs.L(b.selectionStart,b.selectionEnd);let e=0,f=0;b.updateRangeEnd>c&&(e=b.updateRangeEnd-c),b.updateRangeStart<d&&(f=d-b.updateRangeStart);let g="";d<b.updateRangeStart&&(g+=this._editContext.text.substring(d,b.updateRangeStart)),g+=b.text,c>b.updateRangeEnd&&(g+=this._editContext.text.substring(b.updateRangeEnd,c));let h=0;b.selectionStart===b.selectionEnd&&d===c&&(h=b.selectionStart-(b.updateRangeStart+b.text.length));let i={text:g,replacePrevCharCnt:f,replaceNextCharCnt:e,positionDelta:h};this._onType(a,i)}_onType(a,b){b.replacePrevCharCnt||b.replaceNextCharCnt||b.positionDelta?a.compositionType(b.text,b.replacePrevCharCnt,b.replaceNextCharCnt,b.positionDelta):a.type(b.text)}_getNewEditContextState(){let a=this._primarySelection,b=this._context.viewModel.model;if(!b.isValidRange(a))return;let c=a.startLineNumber,d=a.endLineNumber,e=b.getLineMaxColumn(d),f=new ab.Q(c,1,d,e),g=b.getValueInRange(f,0),h=a.startColumn-1,i=g.length+a.endColumn-e;return{text:g,selectionStartOffset:h,selectionEndOffset:i,editContextPrimarySelection:a}}_editContextStartPosition(){return new aa.y(this._editContextPrimarySelection.startLineNumber,1)}_handleTextFormatUpdate(a){if(!this._editContext)return;let b=a.getTextFormats(),c=this._editContextStartPosition(),d=[];b.forEach(a=>{let b=this._context.viewModel.model,e=b.getOffsetAt(c),f=b.getPositionAt(e+a.rangeStart),g=b.getPositionAt(e+a.rangeEnd),h=ab.Q.fromPositions(f,g),i=a.underlineThickness.toLowerCase(),j=o.NONE;switch(i){case"thin":j=o.SECONDARY;break;case"thick":j=o.PRIMARY}d.push({range:h,options:{description:"textFormatDecoration",inlineClassName:j}})}),this._decorations=this._context.viewModel.model.deltaDecorations(this._decorations,d)}_updateSelectionAndControlBounds(a){let b;if(!this._parent)return;let c=this._context.configuration.options.get(165).contentLeft,d=this._parent.getBoundingClientRect(),e=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(this._primarySelection),f=this._context.viewLayout.getVerticalOffsetForLineNumber(e.startLineNumber),g=d.top+f-this._scrollTop,h=this._context.viewLayout.getVerticalOffsetAfterLineNumber(e.endLineNumber),i=d.left+c-this._scrollLeft;if(this._primarySelection.isEmpty()){let c=a.visibleRangeForPosition(e.getStartPosition());c&&(i+=c.left),b=0}else b=d.width-c;let j=new DOMRect(i,g,b,h-f);this._editContext.updateSelectionBounds(j),this._editContext.updateControlBounds(j)}_updateCharacterBounds(a){if(!this._parent)return;let b=this._context.configuration.options,c=b.get(59).typicalHalfwidthCharacterWidth,d=b.get(165).contentLeft,e=this._parent.getBoundingClientRect(),f=[],g=new db.a(this._editContext.text);for(let b=a.rangeStart;b<a.rangeEnd;b++){let a=g.getPosition(b),h=this._editContextPrimarySelection.startLineNumber-1,i=new aa.y(h+a.lineNumber,a.column),j=i.delta(0,1),k=ab.Q.fromPositions(i,j),l=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(k),m=this._visibleRangeProvider.linesVisibleRangesForRange(l,!0)??[],n=l.startLineNumber,o=this._context.viewLayout.getVerticalOffsetForLineNumber(n),p=e.top+o-this._scrollTop,q=0,r=c;if(m.length>0)for(let a of m[0].ranges){q=a.left,r=a.width;break}let s=this._context.viewLayout.getLineHeightForLineNumber(n);f.push(new DOMRect(e.left+d+q-this._scrollLeft,p,r,s))}this._editContext.updateCharacterBounds(a.rangeStart,f)}_ensureClipboardGetsEditorSelection(a){let b,c=this._context.configuration.options,d=c.get(45),e=c.get(31),f=this._context.viewModel.getCursorStates().map(a=>a.modelState.selection),g=(0,aM.Ps)(this._context.viewModel,f,d,e);this.logService.getLevel()===aL.$b.Trace&&(b=(0,aO.b)());let h={version:1,id:b,isFromEmptySelection:g.isFromEmptySelection,multicursorText:g.multicursorText,mode:g.mode};aM.bs.INSTANCE.set(z.gm?g.text.replace(/\r\n/g,"\n"):g.text,h),a.preventDefault(),a.clipboardData&&aM.Mz.setTextData(a.clipboardData,g.text,g.html,h),this.logService.trace("NativeEditContext#_ensureClipboardGetsEditorSelectios with id : ",b," with text.length: ",g.text.length)}};dh=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dg(5,cy._Y),dg(6,aL.rr)],dh);class di extends Z{constructor(a,b){super(a),this._viewGpuContext=b,this._gpuShapes=[],this._register((0,cA.fm)(a=>this._updateEntries(a)))}onConfigurationChanged(a){return this._updateEntries(void 0),!0}prepareRender(a){}render(a){}_updateEntries(a){let b=this._context.configuration.options,c=b.get(116),d=b.get(59).typicalHalfwidthCharacterWidth,e=this._viewGpuContext.devicePixelRatio.read(a);for(let a=0,b=c.length;a<b;a++){let b=c[a],f=this._gpuShapes[a],g=b.color?b9.Q1.fromHex(b.color):this._context.theme.getColor(bf.ik)??b9.Q1.white,h=[b.column*d*e,0,Math.max(1,Math.ceil(e)),Number.MAX_SAFE_INTEGER,g.rgba.r/255,g.rgba.g/255,g.rgba.b/255,g.rgba.a];f?f.setRaw(h):this._gpuShapes[a]=this._viewGpuContext.rectangleRenderer.register(...h)}for(;this._gpuShapes.length>c.length;)this._gpuShapes.splice(-1,1)[0].dispose()}}c(30810);class dj extends be{static{this.CLASS_NAME="gpu-mark"}constructor(a,b){super(),this._viewGpuContext=b,this._context=a,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return!0}onCursorStateChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onDecorationsChanged(a){return!0}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=a.viewportData,e=new bD(this._context.configuration,this._context.theme.type),f=[];for(let a=b;a<=c;a++){let c=a-b,g=this._viewGpuContext.canRenderDetailed(e,d,a);f[c]=g.length?`<div class="${dj.CLASS_NAME}" title="Cannot render on GPU: ${g.join(", ")}"></div>`:""}this._renderResult=f}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}let dk=class extends Y.i{constructor(a,b,c,d,e,f,g,h,i){super(),this._instantiationService=i,this._shouldRecomputeGlyphMarginLanes=!1,this._ownerID=b,this._widgetFocusTracker=this._register(new dn(a,h)),this._register(this._widgetFocusTracker.onChange(()=>{this._context.viewModel.setHasWidgetFocus(this._widgetFocusTracker.hasFocus())})),this._selections=[new aw.L(1,1,1,1)],this._renderAnimationFrame=null,this._overflowGuardContainer=(0,W.Z)(document.createElement("div")),$.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._viewController=new aY(d,f,g,c),this._context=new cx(d,e,f),this._context.addEventHandler(this),this._viewParts=[],this._editContextEnabled=this._context.configuration.options.get(170),this._accessibilitySupport=this._context.configuration.options.get(2),this._editContext=this._instantiateEditContext(),this._viewParts.push(this._editContext),this._linesContent=(0,W.Z)(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=(0,W.Z)(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),"on"===this._context.configuration.options.get(46)&&(this._viewGpuContext=this._instantiationService.createInstance(cz.n,this._context)),this._scrollbar=new bm(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new bH(this._context,this._viewGpuContext,this._linesContent),this._viewGpuContext&&(this._viewLinesGpu=this._instantiationService.createInstance(cP,this._context,this._viewGpuContext)),this._viewZones=new cr(this._context),this._viewParts.push(this._viewZones);let j=new cc(this._context);this._viewParts.push(j);let k=new cg(this._context);this._viewParts.push(k);let l=new a4(this._context);this._viewParts.push(l),l.addDynamicOverlay(new bj(this._context)),l.addDynamicOverlay(new cl(this._context)),l.addDynamicOverlay(new by(this._context)),l.addDynamicOverlay(new bl(this._context)),l.addDynamicOverlay(new ct(this._context));let m=new a5(this._context);this._viewParts.push(m),m.addDynamicOverlay(new bk(this._context)),m.addDynamicOverlay(new bK(this._context)),m.addDynamicOverlay(new bI(this._context)),m.addDynamicOverlay(new bA(this._context)),this._viewGpuContext&&m.addDynamicOverlay(new dj(this._context,this._viewGpuContext)),this._glyphMarginWidgets=new br(this._context),this._viewParts.push(this._glyphMarginWidgets);let n=new bJ(this._context);n.getDomNode().appendChild(this._viewZones.marginDomNode),n.getDomNode().appendChild(m.getDomNode()),n.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(n),this._contentWidgets=new a8(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new cp(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new b8(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);let o=this._viewGpuContext?new di(this._context,this._viewGpuContext):new cf(this._context);this._viewParts.push(o);let p=new a7(this._context);this._viewParts.push(p);let q=new b5(this._context);if(this._viewParts.push(q),j){let a=this._scrollbar.getOverviewRulerLayoutInfo();a.parent.insertBefore(j.getDomNode(),a.insertBefore)}this._linesContent.appendChild(l.getDomNode()),"domNode"in o&&this._linesContent.appendChild(o.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(n.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._viewGpuContext&&this._overflowGuardContainer.appendChild(this._viewGpuContext.canvas),this._overflowGuardContainer.appendChild(k.getDomNode()),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(q.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),h?(h.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),h.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new aV(this._context,this._viewController,this._createPointerHandlerHelper()))}_instantiateEditContext(){return this._context.configuration.options.get(170)?this._instantiationService.createInstance(dh,this._ownerID,this._context,this._overflowGuardContainer,this._viewController,this._createTextAreaHandlerHelper()):this._instantiationService.createInstance(c_,this._context,this._overflowGuardContainer,this._viewController,this._createTextAreaHandlerHelper())}_updateEditContext(){let a=this._context.configuration.options.get(170),b=this._context.configuration.options.get(2);if(this._editContextEnabled===a&&this._accessibilitySupport===b)return;this._editContextEnabled=a,this._accessibilitySupport=b;let c=this._editContext.isFocused(),d=this._viewParts.indexOf(this._editContext);this._editContext.dispose(),this._editContext=this._instantiateEditContext(),c&&this._editContext.focus(),-1!==d&&this._viewParts.splice(d,1,this._editContext)}_computeGlyphMarginLanes(){let a=this._context.viewModel.model,b=this._context.viewModel.glyphLanes,c=[],d=0;for(let e of((c=(c=c.concat(a.getAllMarginDecorations().map(a=>{let b=a.options.glyphMargin?.position??ae.ZS.Center;return d=Math.max(d,a.range.endLineNumber),{range:a.range,lane:b,persist:a.options.glyphMargin?.persistLane}}))).concat(this._glyphMarginWidgets.getWidgets().map(b=>{let c=a.validateRange(b.preference.range);return d=Math.max(d,c.endLineNumber),{range:c,lane:b.preference.lane}}))).sort((a,b)=>ab.Q.compareRangesUsingStarts(a.range,b.range)),b.reset(d),c))b.push(e.lane,e.range,e.persist);return b}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,viewLinesGpu:this._viewLinesGpu,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:a=>{this._editContext.domNode.domNode.dispatchEvent(a)},getLastRenderData:()=>new ai(this._viewCursors.getLastRenderData()||[],this._editContext.getLastRenderData()),renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:a=>this._viewZones.shouldSuppressMouseDownOnViewZone(a),shouldSuppressMouseDownOnWidget:a=>this._contentWidgets.shouldSuppressMouseDownOnWidget(a),getPositionFromDOMInfo:(a,b)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(a,b)),visibleRangeForPosition:(a,b)=>{this._flushAccumulatedAndRenderNow();let c=new aa.y(a,b);return this._viewLines.visibleRangeForPosition(c)??this._viewLinesGpu?.visibleRangeForPosition(c)??null},getLineWidth:a=>{if(this._flushAccumulatedAndRenderNow(),this._viewLinesGpu){let b=this._viewLinesGpu.getLineWidth(a);if(void 0!==b)return b}return this._viewLines.getLineWidth(a)}}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:a=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(a)),linesVisibleRangesForRange:(a,b)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.linesVisibleRangesForRange(a,b))}}_applyLayout(){let a=this._context.configuration.options.get(165);this.domNode.setWidth(a.width),this.domNode.setHeight(a.height),this._overflowGuardContainer.setWidth(a.width),this._overflowGuardContainer.setHeight(a.height),this._linesContent.setWidth(0x1000000),this._linesContent.setHeight(0x1000000)}_getEditorClassName(){let a=this._editContext.isFocused()?" focused":"";return this._context.configuration.options.get(162)+" "+(0,bg.Pz)(this._context.theme.type)+a}handleEvents(a){super.handleEvents(a),this._scheduleRender()}onConfigurationChanged(a){return this.domNode.setClassName(this._getEditorClassName()),this._updateEditContext(),this._applyLayout(),!1}onCursorStateChanged(a){return this._selections=a.selections,!1}onDecorationsChanged(a){return a.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(a){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(a){return this._context.theme.update(a.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){for(let a of(null!==this._renderAnimationFrame&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewGpuContext?.dispose(),this._viewLines.dispose(),this._viewLinesGpu?.dispose(),this._viewParts))a.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new u.D7;if(null===this._renderAnimationFrame){this._editContext instanceof dh&&this._editContext.setEditContextOnDomNode();let a=this._createCoordinatedRendering();this._renderAnimationFrame=dm.INSTANCE.scheduleCoordinatedRendering({window:t.zk(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new u.D7;try{return a.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new u.D7;return a.renderText()},prepareRender:(b,c)=>{if(this._store.isDisposed)throw new u.D7;return a.prepareRender(b,c)},render:(b,c)=>{if(this._store.isDisposed)throw new u.D7;return a.render(b,c)}})}}_flushAccumulatedAndRenderNow(){let a=this._createCoordinatedRendering();dl(()=>a.prepareRenderText());let b=dl(()=>a.renderText());if(b){let[c,d]=b;dl(()=>a.prepareRender(c,d)),dl(()=>a.render(c,d))}}_getViewPartsToRender(){let a=[],b=0;for(let c of this._viewParts)c.shouldRender()&&(a[b++]=c);return a}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;let a=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(a.requiredLanes)}j.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let a=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&0===a.length)return null;let b=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(b.startLineNumber,b.endLineNumber,b.centeredLineNumber);let c=new cv(this._selections,b,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(c),this._viewLines.shouldRender()&&(this._viewLines.renderText(c),this._viewLines.onDidRender(),a=this._getViewPartsToRender()),this._viewLinesGpu?.shouldRender()&&(this._viewLinesGpu.renderText(c),this._viewLinesGpu.onDidRender()),[a,new aW.eh(this._context.viewLayout,c,this._viewLines,this._viewLinesGpu)]},prepareRender:(a,b)=>{for(let c of a)c.prepareRender(b)},render:(a,b)=>{for(let c of a)c.render(b),c.onDidRender()}}}delegateVerticalScrollbarPointerDown(a){this._scrollbar.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this._scrollbar.delegateScrollFromMouseWheelEvent(a)}restoreState(a){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:a.scrollTop,scrollLeft:a.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(a,b){let c=this._context.viewModel.model.validatePosition({lineNumber:a,column:b}),d=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(c);this._flushAccumulatedAndRenderNow();let e=this._viewLines.visibleRangeForPosition(new aa.y(d.lineNumber,d.column));return e?e.left:-1}getTargetAtClientPoint(a,b){let c=this._pointerHandler.getTargetAtClientPoint(a,b);return c?a6.convertViewToModelMouseTarget(c,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(a){return new ce(this._context,a)}change(a){this._viewZones.changeViewZones(a),this._scheduleRender()}render(a,b){if(b)for(let a of(this._viewLines.forceShouldRender(),this._viewParts))a.forceShouldRender();a?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(a){this._editContext.writeScreenReaderContent(a)}focus(){this._editContext.focus()}isFocused(){return this._editContext.isFocused()}isWidgetFocused(){return this._widgetFocusTracker.hasFocus()}setAriaOptions(a){this._editContext.setAriaOptions(a)}addContentWidget(a){this._contentWidgets.addWidget(a.widget),this.layoutContentWidget(a),this._scheduleRender()}layoutContentWidget(a){this._contentWidgets.setWidgetPosition(a.widget,a.position?.position??null,a.position?.secondaryPosition??null,a.position?.preference??null,a.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(a){this._contentWidgets.removeWidget(a.widget),this._scheduleRender()}addOverlayWidget(a){this._overlayWidgets.addWidget(a.widget),this.layoutOverlayWidget(a),this._scheduleRender()}layoutOverlayWidget(a){this._overlayWidgets.setWidgetPosition(a.widget,a.position)&&this._scheduleRender()}removeOverlayWidget(a){this._overlayWidgets.removeWidget(a.widget),this._scheduleRender()}addGlyphMarginWidget(a){this._glyphMarginWidgets.addWidget(a.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(a){let b=a.position;this._glyphMarginWidgets.setWidgetPosition(a.widget,b)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(a){this._glyphMarginWidgets.removeWidget(a.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};function dl(a){try{return a()}catch(a){return(0,u.dz)(a),null}}dk=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(i=cy._Y,function(a,b){i(a,b,8)})],dk);class dm{static{this.INSTANCE=new dm}constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(a){return this._coordinatedRenderings.push(a),this._scheduleRender(a.window),{dispose:()=>{let b=this._coordinatedRenderings.indexOf(a);if(-1!==b&&(this._coordinatedRenderings.splice(b,1),0===this._coordinatedRenderings.length)){for(let[a,b]of this._animationFrameRunners)b.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(a){if(!this._animationFrameRunners.has(a)){let b=()=>{this._animationFrameRunners.delete(a),this._onRenderScheduled()};this._animationFrameRunners.set(a,t.Oq(a,b,100))}}_onRenderScheduled(){let a=this._coordinatedRenderings.slice(0);for(let b of(this._coordinatedRenderings=[],a))dl(()=>b.prepareRenderText());let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];b[c]=dl(()=>d.renderText())}for(let c=0,d=a.length;c<d;c++){let d=a[c],e=b[c];if(!e)continue;let[f,g]=e;dl(()=>d.prepareRender(f,g))}for(let c=0,d=a.length;c<d;c++){let d=a[c],e=b[c];if(!e)continue;let[f,g]=e;dl(()=>d.render(f,g))}}}class dn extends w.jG{constructor(a,b){super(),this._onChange=this._register(new v.vl),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(t.w5(a)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),b&&(this._overflowWidgetsDomNode=this._register(t.w5(b)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){let a=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==a&&(this._hadFocus=a,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}var dp=c(22450);class dq{constructor(a,b,c,d,e){this.injectionOffsets=a,this.injectionOptions=b,this.breakOffsets=c,this.breakOffsetsVisibleColumn=d,this.wrappedTextIndentLength=e}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(a){return a>0?this.wrappedTextIndentLength:0}getLineLength(a){let b=a>0?this.breakOffsets[a-1]:0,c=this.breakOffsets[a]-b;return a>0&&(c+=this.wrappedTextIndentLength),c}getMaxOutputOffset(a){return this.getLineLength(a)}translateToInputOffset(a,b){a>0&&(b=Math.max(0,b-this.wrappedTextIndentLength));let c=0===a?b:this.breakOffsets[a-1]+b;if(null!==this.injectionOffsets)for(let a=0;a<this.injectionOffsets.length;a++)if(c>this.injectionOffsets[a])c<this.injectionOffsets[a]+this.injectionOptions[a].content.length?c=this.injectionOffsets[a]:c-=this.injectionOptions[a].content.length;else break;return c}translateToOutputPosition(a,b=2){let c=a;if(null!==this.injectionOffsets)for(let d=0;d<this.injectionOffsets.length&&!(a<this.injectionOffsets[d])&&(1===b||a!==this.injectionOffsets[d]);d++)c+=this.injectionOptions[d].content.length;return this.offsetInInputWithInjectionsToOutputPosition(c,b)}offsetInInputWithInjectionsToOutputPosition(a,b=2){let c=0,d=this.breakOffsets.length-1,e=0,f=0;for(;c<=d;){e=c+(d-c)/2|0;let g=this.breakOffsets[e];if(f=e>0?this.breakOffsets[e-1]:0,0===b)if(a<=f)d=e-1;else if(a>g)c=e+1;else break;else if(a<f)d=e-1;else if(a>=g)c=e+1;else break}let g=a-f;return e>0&&(g+=this.wrappedTextIndentLength),new dt(e,g)}normalizeOutputPosition(a,b,c){if(null!==this.injectionOffsets){let d=this.outputPositionToOffsetInInputWithInjections(a,b),e=this.normalizeOffsetInInputWithInjectionsAroundInjections(d,c);if(e!==d)return this.offsetInInputWithInjectionsToOutputPosition(e,c)}if(0===c){if(a>0&&b===this.getMinOutputOffset(a))return new dt(a-1,this.getMaxOutputOffset(a-1))}else if(1===c&&a<this.getOutputLineCount()-1&&b===this.getMaxOutputOffset(a))return new dt(a+1,this.getMinOutputOffset(a+1));return new dt(a,b)}outputPositionToOffsetInInputWithInjections(a,b){return a>0&&(b=Math.max(0,b-this.wrappedTextIndentLength)),(a>0?this.breakOffsets[a-1]:0)+b}normalizeOffsetInInputWithInjectionsAroundInjections(a,b){let c=this.getInjectedTextAtOffset(a);if(!c)return a;if(2===b)if(a===c.offsetInInputWithInjections+c.length&&dr(this.injectionOptions[c.injectedTextIndex].cursorStops))return c.offsetInInputWithInjections+c.length;else{let a=c.offsetInInputWithInjections;if(ds(this.injectionOptions[c.injectedTextIndex].cursorStops))return a;let b=c.injectedTextIndex-1;for(;b>=0&&this.injectionOffsets[b]===this.injectionOffsets[c.injectedTextIndex]&&!dr(this.injectionOptions[b].cursorStops)&&(a-=this.injectionOptions[b].content.length,!ds(this.injectionOptions[b].cursorStops));){;b--}return a}if(1===b||4===b){let a=c.offsetInInputWithInjections+c.length,b=c.injectedTextIndex;for(;b+1<this.injectionOffsets.length&&this.injectionOffsets[b+1]===this.injectionOffsets[b];)a+=this.injectionOptions[b+1].content.length,b++;return a}if(0===b||3===b){let a=c.offsetInInputWithInjections,b=c.injectedTextIndex;for(;b-1>=0&&this.injectionOffsets[b-1]===this.injectionOffsets[b];)a-=this.injectionOptions[b-1].content.length,b--;return a}(0,dp.xb)(b)}getInjectedText(a,b){let c=this.outputPositionToOffsetInInputWithInjections(a,b),d=this.getInjectedTextAtOffset(c);return d?{options:this.injectionOptions[d.injectedTextIndex]}:null}getInjectedTextAtOffset(a){let b=this.injectionOffsets,c=this.injectionOptions;if(null!==b){let d=0;for(let e=0;e<b.length;e++){let f=c[e].content.length,g=b[e]+d,h=b[e]+d+f;if(g>a)break;if(a<=h)return{injectedTextIndex:e,offsetInInputWithInjections:g,length:f};d+=f}}}}function dr(a){return null==a||a===ae.VW.Right||a===ae.VW.Both}function ds(a){return null==a||a===ae.VW.Left||a===ae.VW.Both}class dt{constructor(a,b){this.outputLineIndex=a,this.outputOffset=b}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(a){return new aa.y(a+this.outputLineIndex,this.outputOffset+1)}}var du=c(71760);let dv=(0,aZ.H)("domLineBreaksComputer",{createHTML:a=>a});class dw{static create(a){return new dw(new WeakRef(a))}constructor(a){this.targetWindow=a}createLineBreaksComputer(a,b,c,d,e,f){let g=[],h=[];return{addRequest:(a,b,c)=>{g.push(a),h.push(b)},finalize:()=>(function(a,b,c,d,e,f,g,h){function i(a){let c=h[a];if(!c)return null;{let d=du.uK.applyInjectedText(b[a],c),e=c.map(a=>a.options);return new dq(c.map(a=>a.column-1),e,[d.length],[],0)}}if(-1===e){let a=[];for(let c=0,d=b.length;c<d;c++)a[c]=i(c);return a}let j=Math.round(e*c.typicalHalfwidthCharacterWidth),k=Math.round(d*(3===f?2:+(2===f))),l=Math.ceil(c.spaceWidth*k),m=document.createElement("div");(0,y.M)(m,c);let n=new a$.fe(1e4),o=[],p=[],q=[],r=[],s=[];for(let a=0;a<b.length;a++){let e=du.uK.applyInjectedText(b[a],h[a]),g=0,i=0,k=j;if(0!==f)if(-1===(g=aK.HG(e)))g=0;else{for(let a=0;a<g;a++){let b=9===e.charCodeAt(a)?d-i%d:1;i+=b}let a=Math.ceil(c.spaceWidth*i);a+c.typicalFullwidthCharacterWidth>j?(g=0,i=0):k=j-a}let m=e.substr(g),t=function(a,b,c,d,e,f){if(0!==f){let a=String(f);e.appendString('<div style="text-indent: -'),e.appendString(a),e.appendString("px; padding-left: "),e.appendString(a),e.appendString("px; box-sizing: border-box; width:")}else e.appendString('<div style="width:');e.appendString(String(d)),e.appendString('px;">');let g=a.length,h=b,i=0,j=[],k=[],l=0<g?a.charCodeAt(0):0;e.appendString("<span>");for(let b=0;b<g;b++){0!==b&&b%16384==0&&e.appendString("</span><span>"),j[b]=i,k[b]=h;let d=l;l=b+1<g?a.charCodeAt(b+1):0;let f=1,m=1;switch(d){case 9:m=f=c-h%c;for(let a=1;a<=f;a++)a<f?e.appendCharCode(160):e.appendASCIICharCode(32);break;case 32:32===l?e.appendCharCode(160):e.appendASCIICharCode(32);break;case 60:e.appendString("<");break;case 62:e.appendString(">");break;case 38:e.appendString("&");break;case 0:e.appendString("�");break;case 65279:case 8232:case 8233:case 133:e.appendCharCode(65533);break;default:aK.ne(d)&&m++,d<32?e.appendCharCode(9216+d):e.appendCharCode(d)}i+=f,h+=m}return e.appendString("</span>"),j[a.length]=i,k[a.length]=h,e.appendString("</div>"),[j,k]}(m,i,d,k,n,l);o[a]=g,p[a]=i,q[a]=m,r[a]=t[0],s[a]=t[1]}let t=n.build();m.innerHTML=dv?.createHTML(t)??t,m.style.position="absolute",m.style.top="10000","keepAll"===g?(m.style.wordBreak="keep-all",m.style.overflowWrap="anywhere"):(m.style.wordBreak="inherit",m.style.overflowWrap="break-word"),a.document.body.appendChild(m);let u=document.createRange(),v=Array.prototype.slice.call(m.children,0),w=[];for(let a=0;a<b.length;a++){let b,c,d=function(a,b,c,d){if(c.length<=1)return null;let e=Array.prototype.slice.call(b.children,0),f=[];try{!function a(b,c,d,e,f,g,h,i){if(e===g||(f=f||dx(b,c,d[e],d[e+1]),h=h||dx(b,c,d[g],d[g+1]),.1>=Math.abs(f[0].top-h[0].top)))return;if(e+1===g)return void i.push(g);let j=e+(g-e)/2|0,k=dx(b,c,d[j],d[j+1]);a(b,c,d,e,f,j,k,i),a(b,c,d,j,k,g,h,i)}(a,e,d,0,null,c.length-1,null,f)}catch(a){return console.log(a),null}return 0===f.length?null:(f.push(c.length),f)}(u,v[a],q[a],r[a]);if(null===d){w[a]=i(a);continue}let e=o[a],f=p[a]+k,g=s[a],j=[];for(let a=0,b=d.length;a<b;a++)j[a]=g[d[a]];if(0!==e)for(let a=0,b=d.length;a<b;a++)d[a]+=e;let l=h[a];l?(b=l.map(a=>a.options),c=l.map(a=>a.column-1)):(b=null,c=null),w[a]=new dq(c,b,d,j,f)}return m.remove(),w})((0,bv.ni)(this.targetWindow.deref()),g,a,b,c,d,e,h)}}}function dx(a,b,c,d){return a.setStart(b[c/16384|0].firstChild,c%16384),a.setEnd(b[d/16384|0].firstChild,d%16384),a.getClientRects()}class dy extends w.jG{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new w.$w),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(a,b,c){for(let d of(this._editor=a,this._instantiationService=c,b)){if(this._pending.has(d.id)){(0,u.dz)(Error(`Cannot have two contributions with the same id ${d.id}`));continue}this._pending.set(d.id,d)}this._instantiateSome(0),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){let a={};for(let[b,c]of this._instances)"function"==typeof c.saveViewState&&(a[b]=c.saveViewState());return a}restoreViewState(a){for(let[b,c]of this._instances)"function"==typeof c.restoreViewState&&c.restoreViewState(a[b])}get(a){return this._instantiateById(a),this._instances.get(a)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return(0,t.U3)((0,t.zk)(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(a){if(!this._finishedInstantiation[a])for(let b of(this._finishedInstantiation[a]=!0,this._findPendingContributionsByInstantiation(a)))this._instantiateById(b.id)}_findPendingContributionsByInstantiation(a){let b=[];for(let[,c]of this._pending)c.instantiation===a&&b.push(c);return b}_instantiateById(a){let b=this._pending.get(a);if(b){if(this._pending.delete(a),!this._instantiationService||!this._editor)throw Error("Cannot instantiate contributions before being initialized!");try{let a=this._instantiationService.createInstance(b.ctor,this._editor);this._instances.set(b.id,a),"function"==typeof a.restoreViewState&&0!==b.instantiation&&console.warn(`Editor contribution '${b.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(a){(0,u.dz)(a)}}}}var dz=c(83081),dA=c(12783),dB=c(15380),dC=c(69262),dD=c(59298),dE=c(14088),dF=c(88482),dG=c(62138);class dH{static create(a){return new dH(a.get(151),a.get(150))}constructor(a,b){this.classifier=new dI(a,b)}createLineBreaksComputer(a,b,c,d,e,f){let g=[],h=[],i=[];return{addRequest:(a,b,c)=>{g.push(a),h.push(b),i.push(c)},finalize:()=>{let j=a.typicalFullwidthCharacterWidth/a.typicalHalfwidthCharacterWidth,k=[];for(let a=0,l=g.length;a<l;a++){let l=h[a],m=i[a];!m||m.injectionOptions||l||f?k[a]=function(a,b,c,d,e,f,g,h,i){let j,k,l=du.uK.applyInjectedText(b,c);if(c&&c.length>0?(j=c.map(a=>a.options),k=c.map(a=>a.column-1)):(j=null,k=null),-1===e)return j?new dq(k,j,[l.length],[],0):null;let m=l.length;if(m<=1)return j?new dq(k,j,[l.length],[],0):null;let n="keepAll"===h,o=dN(l,d,e,f,g),p=e-o,q=[],r=[],s=0,t=0,u=0,v=e,w=l.charCodeAt(0),x=a.get(w),y=dL(w,0,d,f),z=1;aK.pc(w)&&(y+=1,w=l.charCodeAt(1),x=a.get(w),z++);for(let b=z;b<m;b++){var A,B;let c,e,g=b,h=l.charCodeAt(b);aK.pc(h)?(b++,c=0,e=2):(c=a.get(h),e=dL(h,y,d,f)),dM(w,x,h,c,n)&&(t=g,u=y),y+=e,i&&(A=l,(B=b)>=2&&(B<3||"\\"!==A.charAt(B-3))&&"\\"===A.charAt(B-2)&&"n"===A.charAt(B-1)&&A.includes('"'))&&(y+=v),y>v&&((0===t||y-u>p)&&(t=g,u=y-e),q[s]=t,r[s]=u,s++,v=u+p,t=0),w=h,x=c}return 0!==s||c&&0!==c.length?(q[s]=m,r[s]=y,new dq(k,j,q,r,o)):null}(this.classifier,g[a],l,b,c,j,d,e,f):k[a]=function(a,b,c,d,e,f,g,h){if(-1===e)return null;let i=c.length;if(i<=1)return null;let j="keepAll"===h,k=b.breakOffsets,l=b.breakOffsetsVisibleColumn,m=dN(c,d,e,f,g),n=e-m,o=dJ,p=dK,q=0,r=0,s=0,t=e,u=k.length,v=0;{let a=Math.abs(l[v]-t);for(;v+1<u;){let b=Math.abs(l[v+1]-t);if(b>=a)break;a=b,v++}}for(;v<u;){let b=v<0?0:k[v],e=v<0?0:l[v];r>b&&(b=r,e=s);let g=0,h=0,m=0,w=0;if(e<=t){let s=e,u=0===b?0:c.charCodeAt(b-1),v=0===b?0:a.get(u),x=!0;for(let e=b;e<i;e++){let b,i,k=e,l=c.charCodeAt(e);if(aK.pc(l)?(e++,b=0,i=2):(b=a.get(l),i=dL(l,s,d,f)),k>r&&dM(u,v,l,b,j)&&(g=k,h=s),(s+=i)>t){k>r?(m=k,w=s-i):(m=e+1,w=s),s-h>n&&(g=0),x=!1;break}u=l,v=b}if(x){q>0&&(o[q]=k[k.length-1],p[q]=l[k.length-1],q++);break}}if(0===g){let i=e,k=c.charCodeAt(b),l=a.get(k),o=!1;for(let d=b-1;d>=r;d--){let b,e,p=d+1,q=c.charCodeAt(d);if(9===q){o=!0;break}if(aK.LJ(q)?(d--,b=0,e=2):(b=a.get(q),e=aK.ne(q)?f:1),i<=t){if(0===m&&(m=p,w=i),i<=t-n)break;if(dM(q,b,k,l,j)){g=p,h=i;break}}i-=e,k=q,l=b}if(0!==g){let a=n-(w-h);if(a<=d){let b=c.charCodeAt(m);a-(aK.pc(b)?2:dL(b,w,d,f))<0&&(g=0)}}if(o){v--;continue}}if(0===g&&(g=m,h=w),g<=r){let a=c.charCodeAt(r);aK.pc(a)?(g=r+2,h=s+2):(g=r+1,h=s+dL(a,s,d,f))}for(r=g,o[q]=g,s=h,p[q]=h,q++,t=h+n;v<0||v<u&&l[v]<h;)v++;let x=Math.abs(l[v]-t);for(;v+1<u;){let a=Math.abs(l[v+1]-t);if(a>=x)break;x=a,v++}}return 0===q?null:(o.length=q,p.length=q,dJ=b.breakOffsets,dK=b.breakOffsetsVisibleColumn,b.breakOffsets=o,b.breakOffsetsVisibleColumn=p,b.wrappedTextIndentLength=m,b)}(this.classifier,m,g[a],b,c,j,d,e)}return dJ.length=0,dK.length=0,k}}}}class dI extends dG.V{constructor(a,b){super(0);for(let b=0;b<a.length;b++)this.set(a.charCodeAt(b),1);for(let a=0;a<b.length;a++)this.set(b.charCodeAt(a),2)}get(a){return a>=0&&a<256?this._asciiMap[a]:a>=12352&&a<=12543||a>=13312&&a<=19903||a>=19968&&a<=40959?3:this._map.get(a)||this._defaultValue}}let dJ=[],dK=[];function dL(a,b,c,d){return 9===a?c-b%c:aK.ne(a)||a<32?d:1}function dM(a,b,c,d,e){return 32!==c&&(2===b&&2!==d||1!==b&&1===d||!e&&3===b&&2!==d||!e&&3===d&&1!==b)}function dN(a,b,c,d,e){let f=0;if(0!==e){let g=aK.HG(a);if(-1!==g){for(let c=0;c<g;c++){let d=9===a.charCodeAt(c)?b-f%b:1;f+=d}let h=3===e?2:+(2===e);for(let a=0;a<h;a++){let a=b-f%b;f+=a}f+d>c&&(f=0)}}return f}var dO=c(95265),dP=c(69467);class dQ{constructor(a){this._selTrackedRange=null,this._trackSelection=!0,this._setState(a,new dP.mG(new ab.Q(1,1,1,1),0,0,new aa.y(1,1),0),new dP.mG(new ab.Q(1,1,1,1),0,0,new aa.y(1,1),0))}dispose(a){this._removeTrackedRange(a)}startTrackingSelection(a){this._trackSelection=!0,this._updateTrackedRange(a)}stopTrackingSelection(a){this._trackSelection=!1,this._removeTrackedRange(a)}_updateTrackedRange(a){this._trackSelection&&(this._selTrackedRange=a.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(a){this._selTrackedRange=a.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new dP.MF(this.modelState,this.viewState)}readSelectionFromMarkers(a){let b=a.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!b.isEmpty()?aw.L.fromRange(b.collapseToEnd(),this.modelState.selection.getDirection()):aw.L.fromRange(b,this.modelState.selection.getDirection())}ensureValidState(a){this._setState(a,this.modelState,this.viewState)}setState(a,b,c){this._setState(a,b,c)}static _validatePositionWithCache(a,b,c,d){return b.equals(c)?d:a.normalizePosition(b,2)}static _validateViewState(a,b){let c=b.position,d=b.selectionStart.getStartPosition(),e=b.selectionStart.getEndPosition(),f=a.normalizePosition(c,2),g=this._validatePositionWithCache(a,d,c,f),h=this._validatePositionWithCache(a,e,d,g);return c.equals(f)&&d.equals(g)&&e.equals(h)?b:new dP.mG(ab.Q.fromPositions(g,h),b.selectionStartKind,b.selectionStartLeftoverVisibleColumns+d.column-g.column,f,b.leftoverVisibleColumns+c.column-f.column)}_setState(a,b,c){if(c&&(c=dQ._validateViewState(a.viewModel,c)),b){let c=a.model.validateRange(b.selectionStart),d=b.selectionStart.equalsRange(c)?b.selectionStartLeftoverVisibleColumns:0,e=a.model.validatePosition(b.position),f=b.position.equals(e)?b.leftoverVisibleColumns:0;b=new dP.mG(c,b.selectionStartKind,d,e,f)}else{if(!c)return;let d=a.model.validateRange(a.coordinatesConverter.convertViewRangeToModelRange(c.selectionStart)),e=a.model.validatePosition(a.coordinatesConverter.convertViewPositionToModelPosition(c.position));b=new dP.mG(d,c.selectionStartKind,c.selectionStartLeftoverVisibleColumns,e,c.leftoverVisibleColumns)}if(c){let d=a.coordinatesConverter.validateViewRange(c.selectionStart,b.selectionStart),e=a.coordinatesConverter.validateViewPosition(c.position,b.position);c=new dP.mG(d,b.selectionStartKind,b.selectionStartLeftoverVisibleColumns,e,b.leftoverVisibleColumns)}else{let d=a.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(b.selectionStart.startLineNumber,b.selectionStart.startColumn)),e=a.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(b.selectionStart.endLineNumber,b.selectionStart.endColumn)),f=new ab.Q(d.lineNumber,d.column,e.lineNumber,e.column),g=a.coordinatesConverter.convertModelPositionToViewPosition(b.position);c=new dP.mG(f,b.selectionStartKind,b.selectionStartLeftoverVisibleColumns,g,b.leftoverVisibleColumns)}this.modelState=b,this.viewState=c,this._updateTrackedRange(a)}}class dR{constructor(a){this.context=a,this.cursors=[new dQ(a)],this.lastAddedCursorIndex=0}dispose(){for(let a of this.cursors)a.dispose(this.context)}startTrackingSelections(){for(let a of this.cursors)a.startTrackingSelection(this.context)}stopTrackingSelections(){for(let a of this.cursors)a.stopTrackingSelection(this.context)}updateContext(a){this.context=a}ensureValidState(){for(let a of this.cursors)a.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(a=>a.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(a=>a.asCursorState())}getViewPositions(){return this.cursors.map(a=>a.viewState.position)}getTopMostViewPosition(){return(0,dO.kh)(this.cursors,(0,A.VE)(a=>a.viewState.position,aa.y.compare)).viewState.position}getBottomMostViewPosition(){return(0,dO.ot)(this.cursors,(0,A.VE)(a=>a.viewState.position,aa.y.compare)).viewState.position}getSelections(){return this.cursors.map(a=>a.modelState.selection)}getViewSelections(){return this.cursors.map(a=>a.viewState.selection)}setSelections(a){this.setStates(dP.MF.fromModelSelections(a))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(a){null!==a&&(this.cursors[0].setState(this.context,a[0].modelState,a[0].viewState),this._setSecondaryStates(a.slice(1)))}_setSecondaryStates(a){let b=this.cursors.length-1,c=a.length;if(b<c){let a=c-b;for(let b=0;b<a;b++)this._addSecondaryCursor()}else if(b>c){let a=b-c;for(let b=0;b<a;b++)this._removeSecondaryCursor(this.cursors.length-2)}for(let b=0;b<c;b++)this.cursors[b+1].setState(this.context,a[b].modelState,a[b].viewState)}killSecondaryCursors(){this._setSecondaryStates([])}_addSecondaryCursor(){this.cursors.push(new dQ(this.context)),this.lastAddedCursorIndex=this.cursors.length-1}getLastAddedCursorIndex(){return 1===this.cursors.length||0===this.lastAddedCursorIndex?0:this.lastAddedCursorIndex}_removeSecondaryCursor(a){this.lastAddedCursorIndex>=a+1&&this.lastAddedCursorIndex--,this.cursors[a+1].dispose(this.context),this.cursors.splice(a+1,1)}normalize(){if(1===this.cursors.length)return;let a=this.cursors.slice(0),b=[];for(let c=0,d=a.length;c<d;c++)b.push({index:c,selection:a[c].modelState.selection});b.sort((0,A.VE)(a=>a.selection,ab.Q.compareRangesUsingStarts));for(let c=0;c<b.length-1;c++){let d=b[c],e=b[c+1],f=d.selection,g=e.selection;if(this.context.cursorConfig.multiCursorMergeOverlapping&&(g.isEmpty()||f.isEmpty()?g.getStartPosition().isBeforeOrEqual(f.getEndPosition()):g.getStartPosition().isBefore(f.getEndPosition()))){let f=d.index<e.index?c:c+1,g=d.index<e.index?c+1:c,h=b[g].index,i=b[f].index,j=b[g].selection,k=b[f].selection;if(!j.equalsSelection(k)){let c,d,e=j.plusRange(k),g=j.selectionStartLineNumber===j.startLineNumber&&j.selectionStartColumn===j.startColumn,l=k.selectionStartLineNumber===k.startLineNumber&&k.selectionStartColumn===k.startColumn;h===this.lastAddedCursorIndex?(c=g,this.lastAddedCursorIndex=i):c=l,d=c?new aw.L(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new aw.L(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn),b[f].selection=d;let m=dP.MF.fromModelSelection(d);a[i].setState(this.context,m.modelState,m.viewState)}for(let a of b)a.index>h&&a.index--;a.splice(h,1),b.splice(g,1),this._removeSecondaryCursor(h-1),c--}}}}class dS{constructor(a,b,c,d){this._cursorContextBrand=void 0,this.model=a,this.viewModel=b,this.coordinatesConverter=c,this.cursorConfig=d}}var dT=c(29734),dU=c(77705),dV=c(91389);class dW{constructor(){this.type=0}}class dX{constructor(){this.type=1}}class dY{constructor(a){this.type=2,this._source=a}hasChanged(a){return this._source.hasChanged(a)}}class dZ{constructor(a,b,c){this.selections=a,this.modelSelections=b,this.reason=c,this.type=3}}class d${constructor(a){this.type=4,a?(this.affectsMinimap=a.affectsMinimap,this.affectsOverviewRuler=a.affectsOverviewRuler,this.affectsGlyphMargin=a.affectsGlyphMargin,this.affectsLineNumber=a.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class d_{constructor(){this.type=5}}class d0{constructor(a){this.type=6,this.isFocused=a}}class d1{constructor(){this.type=7}}class d2{constructor(){this.type=8}}class d3{constructor(a,b){this.fromLineNumber=a,this.count=b,this.type=9}}class d4{constructor(a,b){this.type=10,this.fromLineNumber=a,this.toLineNumber=b}}class d5{constructor(a,b){this.type=11,this.fromLineNumber=a,this.toLineNumber=b}}class d6{constructor(a,b,c,d,e,f,g){this.source=a,this.minimalReveal=b,this.range=c,this.selections=d,this.verticalType=e,this.revealHorizontal=f,this.scrollType=g,this.type=12}}class d7{constructor(a){this.type=13,this.scrollWidth=a.scrollWidth,this.scrollLeft=a.scrollLeft,this.scrollHeight=a.scrollHeight,this.scrollTop=a.scrollTop,this.scrollWidthChanged=a.scrollWidthChanged,this.scrollLeftChanged=a.scrollLeftChanged,this.scrollHeightChanged=a.scrollHeightChanged,this.scrollTopChanged=a.scrollTopChanged}}class d8{constructor(a){this.theme=a,this.type=14}}class d9{constructor(a){this.type=15,this.ranges=a}}class ea{constructor(){this.type=16}}class eb{constructor(){this.type=17}}class ec extends w.jG{constructor(){super(),this._onEvent=this._register(new v.vl),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(a){this._addOutgoingEvent(a),this._emitOutgoingEvents()}_addOutgoingEvent(a){for(let b=0,c=this._outgoingEvents.length;b<c;b++){let c=this._outgoingEvents[b].kind===a.kind?this._outgoingEvents[b].attemptToMerge(a):null;if(c){this._outgoingEvents[b]=c;return}}this._outgoingEvents.push(a)}_emitOutgoingEvents(){for(;this._outgoingEvents.length>0;){if(this._collector||this._isConsumingViewEventQueue)return;let a=this._outgoingEvents.shift();a.isNoOp()||this._onEvent.fire(a)}}addViewEventHandler(a){for(let b=0,c=this._eventHandlers.length;b<c;b++)this._eventHandlers[b]===a&&console.warn("Detected duplicate listener in ViewEventDispatcher",a);this._eventHandlers.push(a)}removeViewEventHandler(a){for(let b=0;b<this._eventHandlers.length;b++)if(this._eventHandlers[b]===a){this._eventHandlers.splice(b,1);break}}beginEmitViewEvents(){return this._collectorCnt++,1===this._collectorCnt&&(this._collector=new ed),this._collector}endEmitViewEvents(){if(this._collectorCnt--,0===this._collectorCnt){let a=this._collector.outgoingEvents,b=this._collector.viewEvents;for(let b of(this._collector=null,a))this._addOutgoingEvent(b);b.length>0&&this._emitMany(b)}this._emitOutgoingEvents()}emitSingleViewEvent(a){try{this.beginEmitViewEvents().emitViewEvent(a)}finally{this.endEmitViewEvents()}}_emitMany(a){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(a):this._viewEventQueue=a,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){let a=this._viewEventQueue;for(let b of(this._viewEventQueue=null,this._eventHandlers.slice(0)))b.handleEvents(a)}}}class ed{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(a){this.viewEvents.push(a)}emitOutgoingEvent(a){this.outgoingEvents.push(a)}}class ee{constructor(a,b,c,d){this.kind=0,this._oldContentWidth=a,this._oldContentHeight=b,this.contentWidth=c,this.contentHeight=d,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(a){return a.kind!==this.kind?null:new ee(this._oldContentWidth,this._oldContentHeight,a.contentWidth,a.contentHeight)}}class ef{constructor(a,b){this.kind=1,this.oldHasFocus=a,this.hasFocus=b}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(a){return a.kind!==this.kind?null:new ef(this.oldHasFocus,a.hasFocus)}}class eg{constructor(a,b){this.kind=2,this.oldHasFocus=a,this.hasFocus=b}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(a){return a.kind!==this.kind?null:new ef(this.oldHasFocus,a.hasFocus)}}class eh{constructor(a,b,c,d,e,f,g,h){this.kind=3,this._oldScrollWidth=a,this._oldScrollLeft=b,this._oldScrollHeight=c,this._oldScrollTop=d,this.scrollWidth=e,this.scrollLeft=f,this.scrollHeight=g,this.scrollTop=h,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(a){return a.kind!==this.kind?null:new eh(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,a.scrollWidth,a.scrollLeft,a.scrollHeight,a.scrollTop)}}class ei{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class ej{constructor(){this.kind=5}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class ek{constructor(a,b,c,d,e,f,g){this.kind=7,this.oldSelections=a,this.selections=b,this.oldModelVersionId=c,this.modelVersionId=d,this.source=e,this.reason=f,this.reachedMaxCursorCount=g}static _selectionsAreEqual(a,b){if(!a&&!b)return!0;if(!a||!b)return!1;let c=a.length;if(c!==b.length)return!1;for(let d=0;d<c;d++)if(!a[d].equalsSelection(b[d]))return!1;return!0}isNoOp(){return ek._selectionsAreEqual(this.oldSelections,this.selections)&&this.oldModelVersionId===this.modelVersionId}attemptToMerge(a){return a.kind!==this.kind?null:new ek(this.oldSelections,a.selections,this.oldModelVersionId,a.modelVersionId,a.source,a.reason,this.reachedMaxCursorCount||a.reachedMaxCursorCount)}}class el{constructor(){this.kind=6}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class em{constructor(a){this.event=a,this.kind=8}isNoOp(){return!1}attemptToMerge(a){return null}}class en{constructor(a){this.event=a,this.kind=9}isNoOp(){return!1}attemptToMerge(a){return null}}class eo{constructor(a){this.event=a,this.kind=10}isNoOp(){return!1}attemptToMerge(a){return null}}class ep{constructor(a){this.event=a,this.kind=11}isNoOp(){return!1}attemptToMerge(a){return null}}class eq{constructor(a){this.event=a,this.kind=12}isNoOp(){return!1}attemptToMerge(a){return null}}class er{constructor(a){this.event=a,this.kind=13}isNoOp(){return!1}attemptToMerge(a){return null}}class es{constructor(a){this.event=a,this.kind=14}isNoOp(){return!1}attemptToMerge(a){return null}}class et{constructor(a){this.event=a,this.kind=15}isNoOp(){return!1}attemptToMerge(a){return null}}var eu=c(42715);class ev extends w.jG{constructor(a,b,c,d){super(),this._model=a,this._knownModelVersionId=this._model.getVersionId(),this._viewModel=b,this._coordinatesConverter=c,this.context=new dS(this._model,this._viewModel,this._coordinatesConverter,d),this._cursors=new dR(this.context),this._hasFocus=!1,this._isHandling=!1,this._compositionState=null,this._columnSelectData=null,this._autoClosedActions=[],this._prevEditOperationType=0}dispose(){this._cursors.dispose(),this._autoClosedActions=(0,w.AS)(this._autoClosedActions),super.dispose()}updateConfiguration(a){this.context=new dS(this._model,this._viewModel,this._coordinatesConverter,a),this._cursors.updateContext(this.context)}onLineMappingChanged(a){this._knownModelVersionId===this._model.getVersionId()&&this.setStates(a,"viewModel",0,this.getCursorStates())}setHasFocus(a){this._hasFocus=a}_validateAutoClosedActions(){if(this._autoClosedActions.length>0){let a=this._cursors.getSelections();for(let b=0;b<this._autoClosedActions.length;b++){let c=this._autoClosedActions[b];!c.isValid(a)&&(c.dispose(),this._autoClosedActions.splice(b,1),b--)}}}getPrimaryCursorState(){return this._cursors.getPrimaryCursor()}getLastAddedCursorIndex(){return this._cursors.getLastAddedCursorIndex()}getCursorStates(){return this._cursors.getAll()}setStates(a,b,c,d){let e=!1,f=this.context.cursorConfig.multiCursorLimit;null!==d&&d.length>f&&(d=d.slice(0,f),e=!0);let g=ew.from(this._model,this);return this._cursors.setStates(d),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(a,b,c,g,e)}setCursorColumnSelectData(a){this._columnSelectData=a}revealAll(a,b,c,d,e,f){let g=this._cursors.getViewPositions(),h=null,i=null;g.length>1?i=this._cursors.getViewSelections():h=ab.Q.fromPositions(g[0],g[0]),a.emitViewEvent(new d6(b,c,h,i,d,e,f))}revealPrimary(a,b,c,d,e,f){let g=[this._cursors.getPrimaryCursor().viewState.selection];a.emitViewEvent(new d6(b,c,null,g,d,e,f))}saveState(){let a=[],b=this._cursors.getSelections();for(let c=0,d=b.length;c<d;c++){let d=b[c];a.push({inSelectionMode:!d.isEmpty(),selectionStart:{lineNumber:d.selectionStartLineNumber,column:d.selectionStartColumn},position:{lineNumber:d.positionLineNumber,column:d.positionColumn}})}return a}restoreState(a,b){let c=[];for(let a=0,d=b.length;a<d;a++){let d=b[a],e=1,f=1;d.position&&d.position.lineNumber&&(e=d.position.lineNumber),d.position&&d.position.column&&(f=d.position.column);let g=e,h=f;d.selectionStart&&d.selectionStart.lineNumber&&(g=d.selectionStart.lineNumber),d.selectionStart&&d.selectionStart.column&&(h=d.selectionStart.column),c.push({selectionStartLineNumber:g,selectionStartColumn:h,positionLineNumber:e,positionColumn:f})}this.setStates(a,"restoreState",0,dP.MF.fromModelSelections(c)),this.revealAll(a,"restoreState",!1,0,!0,1)}onModelContentChanged(a,b){if(b instanceof du.vn){if(!this._isHandling){this._isHandling=!0;try{this.setStates(a,"modelChange",0,this.getCursorStates())}finally{this._isHandling=!1}}}else{let c=b.rawContentChangedEvent;if(this._knownModelVersionId=c.versionId,this._isHandling)return;let d=c.containsEvent(1);if(this._prevEditOperationType=0,d)this._cursors.dispose(),this._cursors=new dR(this.context),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(a,"model",1,null,!1);else if(this._hasFocus&&c.resultingSelection&&c.resultingSelection.length>0){let b=dP.MF.fromModelSelections(c.resultingSelection);this.setStates(a,"modelChange",c.isUndoing?5:c.isRedoing?6:2,b)&&this.revealAll(a,"modelChange",!1,0,!0,0)}else{let b=this._cursors.readSelectionFromMarkers();this.setStates(a,"modelChange",2,dP.MF.fromModelSelections(b))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;let a=this._cursors.getPrimaryCursor(),b=a.viewState.selectionStart.getStartPosition(),c=a.viewState.position;return{isReal:!1,fromViewLineNumber:b.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,b),toViewLineNumber:c.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,c)}}getSelections(){return this._cursors.getSelections()}setSelections(a,b,c,d){this.setStates(a,b,d,dP.MF.fromModelSelections(c))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(a){this._prevEditOperationType=a}_pushAutoClosedAction(a,b){let c=[],d=[];for(let e=0,f=a.length;e<f;e++)c.push({range:a[e],options:{description:"auto-closed-character",inlineClassName:"auto-closed-character",stickiness:1}}),d.push({range:b[e],options:{description:"auto-closed-enclosing",stickiness:1}});let e=this._model.deltaDecorations([],c),f=this._model.deltaDecorations([],d);this._autoClosedActions.push(new ex(this._model,e,f))}_executeEditOperation(a,b){if(!a)return;a.shouldPushStackElementBefore&&this._model.pushStackElement();let c=ey.executeCommands(this._model,this._cursors.getSelections(),a.commands,b);if(c){this._interpretCommandResult(c);let b=[],d=[];for(let c=0;c<a.commands.length;c++){let e=a.commands[c];e instanceof dV.Hs&&e.enclosingRange&&e.closeCharacterRange&&(b.push(e.closeCharacterRange),d.push(e.enclosingRange))}b.length>0&&this._pushAutoClosedAction(b,d),this._prevEditOperationType=a.type}a.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(a){a&&0!==a.length||(a=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(a),this._cursors.normalize()}_emitStateChangedIfNecessary(a,b,c,d,e){let f=ew.from(this._model,this);if(f.equals(d))return!1;let g=this._cursors.getSelections(),h=this._cursors.getViewSelections();if(a.emitViewEvent(new dZ(h,g,c)),!d||d.cursorState.length!==f.cursorState.length||f.cursorState.some((a,b)=>!a.modelState.equals(d.cursorState[b].modelState))){let h=d?d.cursorState.map(a=>a.modelState.selection):null,i=d?d.modelVersionId:0;a.emitOutgoingEvent(new ek(h,g,i,f.modelVersionId,b||"keyboard",c,e))}return!0}_findAutoClosingPairs(a){if(!a.length)return null;let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];if(!d.text||d.text.indexOf("\n")>=0)return null;let e=d.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!e)return null;let f=e[1],g=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(f);if(!g||1!==g.length)return null;let h=g[0].open,i=d.text.length-e[2].length-1,j=d.text.lastIndexOf(h,i-1);if(-1===j)return null;b.push([j,i])}return b}executeEdits(a,b,c,d,e){let f=null;"snippet"===b&&(f=this._findAutoClosingPairs(c)),f&&(c[0]._isTracked=!0);let g=[],h=[],i=this._model.pushEditOperations(this.getSelections(),c,a=>{if(f)for(let b=0,c=f.length;b<c;b++){let[c,d]=f[b],e=a[b],i=e.range.startLineNumber,j=e.range.startColumn-1+c,k=e.range.startColumn-1+d;g.push(new ab.Q(i,k+1,i,k+2)),h.push(new ab.Q(i,j+1,i,k+2))}let b=d(a);return b&&(this._isHandling=!0),b},void 0,e);i&&(this._isHandling=!1,this.setSelections(a,b,i,0)),g.length>0&&this._pushAutoClosedAction(g,h)}_executeEdit(a,b,c,d=0){if(this.context.cursorConfig.readOnly)return;let e=ew.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),a()}catch(a){(0,u.dz)(a)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(b,c,d,e,!1)&&this.revealAll(b,c,!1,0,!0,0)}getAutoClosedCharacters(){return ex.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(a){this._compositionState=new eA(this._model,this.getSelections())}endComposition(a,b){let c=eu.dg.cursor({kind:"compositionEnd",detailedSource:b}),d=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{"keyboard"===b&&this._executeEditOperation(dU.T.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,d,this.getSelections(),this.getAutoClosedCharacters()),c)},a,b)}type(a,b,c){let d=eu.dg.cursor({kind:"type",detailedSource:c});this._executeEdit(()=>{if("keyboard"===c){let a=b.length,c=0;for(;c<a;){let a=aK.iy(b,c),e=b.substr(c,a);this._executeEditOperation(dU.T.typeWithInterceptors(!!this._compositionState,this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),this.getAutoClosedCharacters(),e),d),c+=a}}else this._executeEditOperation(dU.T.typeWithoutInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),b),d)},a,c)}compositionType(a,b,c,d,e,f){let g=eu.dg.cursor({kind:"compositionType",detailedSource:f});if(0===b.length&&0===c&&0===d){if(0!==e){let b=this.getSelections().map(a=>{let b=a.getPosition();return new aw.L(b.lineNumber,b.column+e,b.lineNumber,b.column+e)});this.setSelections(a,f,b,0)}return}this._executeEdit(()=>{this._executeEditOperation(dU.T.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),b,c,d,e),g)},a,f)}paste(a,b,c,d,e){let f=eu.dg.cursor({kind:"paste",detailedSource:e});this._executeEdit(()=>{this._executeEditOperation(dU.T.paste(this.context.cursorConfig,this._model,this.getSelections(),b,c,d||[]),f)},a,e,4)}cut(a,b){let c=eu.dg.cursor({kind:"cut",detailedSource:b});this._executeEdit(()=>{this._executeEditOperation(dT.g.cut(this.context.cursorConfig,this._model,this.getSelections()),c)},a,b)}executeCommand(a,b,c){let d=eu.dg.cursor({kind:"executeCommand",detailedSource:c});this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new dP.vY(0,[b],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}),d)},a,c)}executeCommands(a,b,c){let d=eu.dg.cursor({kind:"executeCommands",detailedSource:c});this._executeEdit(()=>{this._executeEditOperation(new dP.vY(0,b,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}),d)},a,c)}}class ew{static from(a,b){return new ew(a.getVersionId(),b.getCursorStates())}constructor(a,b){this.modelVersionId=a,this.cursorState=b}equals(a){if(!a||this.modelVersionId!==a.modelVersionId||this.cursorState.length!==a.cursorState.length)return!1;for(let b=0,c=this.cursorState.length;b<c;b++)if(!this.cursorState[b].equals(a.cursorState[b]))return!1;return!0}}class ex{static getAllAutoClosedCharacters(a){let b=[];for(let c of a)b=b.concat(c.getAutoClosedCharactersRanges());return b}constructor(a,b,c){this._model=a,this._autoClosedCharactersDecorations=b,this._autoClosedEnclosingDecorations=c}dispose(){this._autoClosedCharactersDecorations=this._model.deltaDecorations(this._autoClosedCharactersDecorations,[]),this._autoClosedEnclosingDecorations=this._model.deltaDecorations(this._autoClosedEnclosingDecorations,[])}getAutoClosedCharactersRanges(){let a=[];for(let b=0;b<this._autoClosedCharactersDecorations.length;b++){let c=this._model.getDecorationRange(this._autoClosedCharactersDecorations[b]);c&&a.push(c)}return a}isValid(a){let b=[];for(let a=0;a<this._autoClosedEnclosingDecorations.length;a++){let c=this._model.getDecorationRange(this._autoClosedEnclosingDecorations[a]);if(c&&(b.push(c),c.startLineNumber!==c.endLineNumber))return!1}b.sort(ab.Q.compareRangesUsingStarts),a.sort(ab.Q.compareRangesUsingStarts);for(let c=0;c<a.length;c++)if(c>=b.length||!b[c].strictContainsRange(a[c]))return!1;return!0}}class ey{static executeCommands(a,b,c,d=eu.dg.unknown({name:"executeCommands"})){let e={model:a,selectionsBefore:b,trackedRanges:[],trackedRangesDirection:[]},f=this._innerExecuteCommands(e,c,d);for(let a=0,b=e.trackedRanges.length;a<b;a++)e.model._setTrackedRange(e.trackedRanges[a],null,0);return f}static _innerExecuteCommands(a,b,c){if(this._arrayIsEmpty(b))return null;let d=this._getEditOperations(a,b);if(0===d.operations.length)return null;let e=d.operations,f=this._getLoserCursorMap(e);if(f.hasOwnProperty("0"))return console.warn("Ignoring commands"),null;let g=[];for(let a=0,b=e.length;a<b;a++)f.hasOwnProperty(e[a].identifier.major.toString())||g.push(e[a]);d.hadTrackedEditOperation&&g.length>0&&(g[0]._isTracked=!0);let h=a.model.pushEditOperations(a.selectionsBefore,g,c=>{let d=[];for(let b=0;b<a.selectionsBefore.length;b++)d[b]=[];for(let a of c)a.identifier&&d[a.identifier.major].push(a);let e=(a,b)=>a.identifier.minor-b.identifier.minor,f=[];for(let c=0;c<a.selectionsBefore.length;c++)d[c].length>0?(d[c].sort(e),f[c]=b[c].computeCursorState(a.model,{getInverseEditOperations:()=>d[c],getTrackedSelection:b=>{let c=parseInt(b,10),d=a.model._getTrackedRange(a.trackedRanges[c]);return 0===a.trackedRangesDirection[c]?new aw.L(d.startLineNumber,d.startColumn,d.endLineNumber,d.endColumn):new aw.L(d.endLineNumber,d.endColumn,d.startLineNumber,d.startColumn)}})):f[c]=a.selectionsBefore[c];return f},void 0,c);h||(h=a.selectionsBefore);let i=[];for(let a in f)f.hasOwnProperty(a)&&i.push(parseInt(a,10));for(let a of(i.sort((a,b)=>b-a),i))h.splice(a,1);return h}static _arrayIsEmpty(a){for(let b=0,c=a.length;b<c;b++)if(a[b])return!1;return!0}static _getEditOperations(a,b){let c=[],d=!1;for(let e=0,f=b.length;e<f;e++){let f=b[e];if(f){let b=this._getEditOperationsFromCommand(a,e,f);c=c.concat(b.operations),d=d||b.hadTrackedEditOperation}}return{operations:c,hadTrackedEditOperation:d}}static _getEditOperationsFromCommand(a,b,c){let d=[],e=0,f=(a,f,g=!1)=>{ab.Q.isEmpty(a)&&""===f||d.push({identifier:{major:b,minor:e++},range:a,text:f,forceMoveMarkers:g,isAutoWhitespaceEdit:c.insertsAutoWhitespace})},g=!1;try{c.getEditOperations(a.model,{addEditOperation:f,addTrackedEditOperation:(a,b,c)=>{g=!0,f(a,b,c)},trackSelection:(b,c)=>{let d,e=aw.L.liftSelection(b);if(e.isEmpty())if("boolean"==typeof c)d=c?2:3;else{let b=a.model.getLineMaxColumn(e.startLineNumber);d=e.startColumn===b?2:3}else d=1;let f=a.trackedRanges.length,g=a.model._setTrackedRange(null,e,d);return a.trackedRanges[f]=g,a.trackedRangesDirection[f]=e.getDirection(),f.toString()}})}catch(a){return(0,u.dz)(a),{operations:[],hadTrackedEditOperation:!1}}return{operations:d,hadTrackedEditOperation:g}}static _getLoserCursorMap(a){(a=a.slice(0)).sort((a,b)=>-ab.Q.compareRangesUsingEnds(a.range,b.range));let b={};for(let c=1;c<a.length;c++){let d=a[c-1],e=a[c];if(ab.Q.getStartPosition(d.range).isBefore(ab.Q.getEndPosition(e.range))){let f;b[(f=d.identifier.major>e.identifier.major?d.identifier.major:e.identifier.major).toString()]=!0;for(let b=0;b<a.length;b++)a[b].identifier.major===f&&(a.splice(b,1),b<c&&c--,b--);c>0&&c--}}return b}}class ez{constructor(a,b,c,d){this.text=a,this.lineNumber=b,this.startSelectionOffset=c,this.endSelectionOffset=d}}class eA{static _capture(a,b){let c=[];for(let d of b){if(d.startLineNumber!==d.endLineNumber)return null;let b=d.startLineNumber;c.push(new ez(a.getLineContent(b),b,d.startColumn-1,d.endColumn-1))}return c}constructor(a,b){this._original=eA._capture(a,b)}deduceOutcome(a,b){if(!this._original)return null;let c=eA._capture(a,b);if(!c||this._original.length!==c.length)return null;let d=[];for(let a=0,b=this._original.length;a<b;a++)d.push(eA._deduceOutcome(this._original[a],c[a]));return d}static _deduceOutcome(a,b){let c=Math.min(a.startSelectionOffset,b.startSelectionOffset,aK.Qp(a.text,b.text)),d=Math.min(a.text.length-a.endSelectionOffset,b.text.length-b.endSelectionOffset,aK.Vi(a.text,b.text)),e=a.text.substring(c,a.text.length-d),f=b.text.length-d,g=b.text.substring(c,f),h=new ab.Q(b.lineNumber,c+1,b.lineNumber,f+1);return new dU.v(e,a.startSelectionOffset-c,a.endSelectionOffset-c,g,b.startSelectionOffset-c,b.endSelectionOffset-c,h)}}var eB=c(96085),eC=c(28550),eD=c(21777),eE=c(20715);class eF{constructor(a,b,c,d,e){this.decorationId=a,this.index=b,this.lineNumber=c,this.specialHeight=d,this.prefixSum=e,this.maximumSpecialHeight=d,this.deleted=!1}}class eG{constructor(a,b){if(this._decorationIDToCustomLine=new eH,this._orderedCustomLines=[],this._pendingSpecialLinesToInsert=[],this._invalidIndex=0,this._hasPending=!1,this._defaultLineHeight=a,b.length>0){for(let a of b)this.insertOrChangeCustomLineHeight(a.decorationId,a.startLineNumber,a.endLineNumber,a.lineHeight);this.commit()}}set defaultLineHeight(a){this._defaultLineHeight=a}get defaultLineHeight(){return this._defaultLineHeight}removeCustomLineHeight(a){let b=this._decorationIDToCustomLine.get(a);if(b){for(let c of(this._decorationIDToCustomLine.delete(a),b))c.deleted=!0,this._invalidIndex=Math.min(this._invalidIndex,c.index);this._hasPending=!0}}insertOrChangeCustomLineHeight(a,b,c,d){this.removeCustomLineHeight(a);for(let e=b;e<=c;e++){let b=new eF(a,-1,e,d,0);this._pendingSpecialLinesToInsert.push(b)}this._hasPending=!0}heightForLineNumber(a){let b=this._binarySearchOverOrderedCustomLinesArray(a);return b>=0?this._orderedCustomLines[b].maximumSpecialHeight:this._defaultLineHeight}getAccumulatedLineHeightsIncludingLineNumber(a){let b=this._binarySearchOverOrderedCustomLinesArray(a);if(b>=0)return this._orderedCustomLines[b].prefixSum+this._orderedCustomLines[b].maximumSpecialHeight;if(-1===b)return this._defaultLineHeight*a;let c=this._orderedCustomLines[-(b+1)-1];return c.prefixSum+c.maximumSpecialHeight+this._defaultLineHeight*(a-c.lineNumber)}onLinesDeleted(a,b){let c,d,e=b-a+1,f=this._orderedCustomLines.length,g=this._binarySearchOverOrderedCustomLinesArray(a);if(g>=0){c=g;for(let b=g-1;b>=0;b--)if(this._orderedCustomLines[b].lineNumber===a)c--;else break}else c=g===-(f+1)&&-1!==g?f-1:-(g+1);let h=this._binarySearchOverOrderedCustomLinesArray(b);if(h>=0){d=h;for(let a=h+1;a<f;a++)if(this._orderedCustomLines[a].lineNumber===b)d++;else break}else d=h===-(f+1)&&-1!==h?f-1:-(h+1);let i=d>c,j=d===c&&this._orderedCustomLines[c]&&this._orderedCustomLines[c].lineNumber>=a&&this._orderedCustomLines[c].lineNumber<=b;if(i||j){let f=0;for(let a=c;a<=d;a++)f=Math.max(f,this._orderedCustomLines[a].maximumSpecialHeight);let g=0;if(c>0){let b=this._orderedCustomLines[c-1];g=b.prefixSum+b.maximumSpecialHeight+this._defaultLineHeight*(a-b.lineNumber-1)}else g=a>0?(a-1)*this._defaultLineHeight:0;let h=this._orderedCustomLines[c],i=this._orderedCustomLines[d],j=this._orderedCustomLines[d+1],k=j&&j.lineNumber===b+1?j.maximumSpecialHeight:this._defaultLineHeight,l=i.prefixSum+i.maximumSpecialHeight-h.prefixSum+this._defaultLineHeight*(b-i.lineNumber)+this._defaultLineHeight*(h.lineNumber-a)+k-f,m=new Set,n=[],o=new eH,p=0;for(let b=0;b<this._orderedCustomLines.length;b++){let h=this._orderedCustomLines[b];if(b<c)n.push(h),o.add(h.decorationId,h);else if(b>=c&&b<=d){let b=h.decorationId;m.has(b)?p++:(h.index-=p,h.lineNumber=a,h.prefixSum=g,h.maximumSpecialHeight=f,n.push(h),o.add(h.decorationId,h))}else b>d&&(h.index-=p,h.lineNumber-=e,h.prefixSum-=l,n.push(h),o.add(h.decorationId,h));m.add(h.decorationId)}this._orderedCustomLines=n,this._decorationIDToCustomLine=o}else{let a=e*this._defaultLineHeight;for(let c=d;c<this._orderedCustomLines.length;c++){let d=this._orderedCustomLines[c];d.lineNumber>b&&(d.lineNumber-=e,d.prefixSum-=a)}}}onLinesInserted(a,b){let c,d=b-a+1,e=this._binarySearchOverOrderedCustomLinesArray(a);if(e>=0){c=e;for(let b=e-1;b>=0;b--)if(this._orderedCustomLines[b].lineNumber===a)c--;else break}else c=-(e+1);let f=[],g=new Set;for(let b=c;b<this._orderedCustomLines.length;b++)this._orderedCustomLines[b].lineNumber===a&&g.add(this._orderedCustomLines[b].decorationId);let h=new Set;for(let b=c-1;b>=0;b--)this._orderedCustomLines[b].lineNumber===a-1&&h.add(this._orderedCustomLines[b].decorationId);let i=(0,eE.E$)(h,g);for(let a=c;a<this._orderedCustomLines.length;a++)this._orderedCustomLines[a].lineNumber+=d,this._orderedCustomLines[a].prefixSum+=this._defaultLineHeight*d;if(i.size>0){for(let b of i){let c=this._decorationIDToCustomLine.get(b);if(c){let d=c.reduce((a,b)=>Math.min(a,b.lineNumber),a),e=c.reduce((a,b)=>Math.max(a,b.lineNumber),a),g=c.reduce((a,b)=>Math.max(a,b.specialHeight),0);f.push({decorationId:b,startLineNumber:d,endLineNumber:e,lineHeight:g})}}for(let a of f)this.insertOrChangeCustomLineHeight(a.decorationId,a.startLineNumber,a.endLineNumber,a.lineHeight);this.commit()}}commit(){if(!this._hasPending)return;for(let a of this._pendingSpecialLinesToInsert){let b=this._binarySearchOverOrderedCustomLinesArray(a.lineNumber),c=b>=0?b:-(b+1);this._orderedCustomLines.splice(c,0,a),this._invalidIndex=Math.min(this._invalidIndex,c)}this._pendingSpecialLinesToInsert=[];let a=new eH,b=[];for(let c=0;c<this._invalidIndex;c++){let d=this._orderedCustomLines[c];b.push(d),a.add(d.decorationId,d)}let c=0,d=this._invalidIndex>0?b[this._invalidIndex-1]:void 0;for(let e=this._invalidIndex;e<this._orderedCustomLines.length;e++){let f=this._orderedCustomLines[e];if(f.deleted){c++;continue}if(f.index=e-c,d&&d.lineNumber===f.lineNumber)f.maximumSpecialHeight=d.maximumSpecialHeight,f.prefixSum=d.prefixSum;else{let a,b=f.specialHeight;for(let a=e;a<this._orderedCustomLines.length;a++){let c=this._orderedCustomLines[a];if(!c.deleted){if(c.lineNumber!==f.lineNumber)break;b=Math.max(b,c.specialHeight)}}f.maximumSpecialHeight=b,a=d?d.prefixSum+d.maximumSpecialHeight+this._defaultLineHeight*(f.lineNumber-d.lineNumber-1):this._defaultLineHeight*(f.lineNumber-1),f.prefixSum=a}d=f,b.push(f),a.add(f.decorationId,f)}this._orderedCustomLines=b,this._decorationIDToCustomLine=a,this._invalidIndex=1/0,this._hasPending=!1}_binarySearchOverOrderedCustomLinesArray(a){return(0,A.Uw)(this._orderedCustomLines.length,b=>{let c=this._orderedCustomLines[b];return c.lineNumber===a?0:c.lineNumber<a?-1:1})}}class eH{constructor(){this._map=new Map}add(a,b){let c=this._map.get(a);c?c.push(b):this._map.set(a,[b])}get(a){return this._map.get(a)}delete(a){this._map.delete(a)}}class eI{constructor(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}insert(a){this._hasPending=!0,this._inserts.push(a)}change(a){this._hasPending=!0,this._changes.push(a)}remove(a){this._hasPending=!0,this._removes.push(a)}commit(a){if(!this._hasPending)return;let b=this._inserts,c=this._changes,d=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],a._commitPendingChanges(b,c,d)}}class eJ{constructor(a,b,c,d,e){this.id=a,this.afterLineNumber=b,this.ordinal=c,this.height=d,this.minWidth=e,this.prefixSum=0}}class eK{static{this.INSTANCE_COUNT=0}constructor(a,b,c,d,e){this._instanceId=aK.tk(++eK.INSTANCE_COUNT),this._pendingChanges=new eI,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=a,this._paddingTop=c,this._paddingBottom=d,this._lineHeightsManager=new eG(b,e)}static findInsertionIndex(a,b,c){let d=0,e=a.length;for(;d<e;){let f=d+e>>>1;b===a[f].afterLineNumber?c<a[f].ordinal?e=f:d=f+1:b<a[f].afterLineNumber?e=f:d=f+1}return d}setDefaultLineHeight(a){this._lineHeightsManager.defaultLineHeight=a}setPadding(a,b){this._paddingTop=a,this._paddingBottom=b}onFlushed(a,b){this._lineCount=a,this._lineHeightsManager=new eG(this._lineHeightsManager.defaultLineHeight,b)}changeLineHeights(a){let b=!1;try{a({insertOrChangeCustomLineHeight:(a,c,d,e)=>{b=!0,this._lineHeightsManager.insertOrChangeCustomLineHeight(a,c,d,e)},removeCustomLineHeight:a=>{b=!0,this._lineHeightsManager.removeCustomLineHeight(a)}})}finally{this._lineHeightsManager.commit()}return b}changeWhitespace(a){let b=!1;try{let c={insertWhitespace:(a,c,d,e)=>{b=!0,a|=0,c|=0,d|=0,e|=0;let f=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new eJ(f,a,c,d,e)),f},changeOneWhitespace:(a,c,d)=>{b=!0,c|=0,d|=0,this._pendingChanges.change({id:a,newAfterLineNumber:c,newHeight:d})},removeWhitespace:a=>{b=!0,this._pendingChanges.remove({id:a})}};a(c)}finally{this._pendingChanges.commit(this)}return b}_commitPendingChanges(a,b,c){if((a.length>0||c.length>0)&&(this._minWidth=-1),a.length+b.length+c.length<=1){for(let b of a)this._insertWhitespace(b);for(let a of b)this._changeOneWhitespace(a.id,a.newAfterLineNumber,a.newHeight);for(let a of c){let b=this._findWhitespaceIndex(a.id);-1!==b&&this._removeWhitespace(b)}return}let d=new Set;for(let a of c)d.add(a.id);let e=new Map;for(let a of b)e.set(a.id,a);let f=a=>{let b=[];for(let c of a)if(!d.has(c.id)){if(e.has(c.id)){let a=e.get(c.id);c.afterLineNumber=a.newAfterLineNumber,c.height=a.newHeight}b.push(c)}return b},g=f(this._arr).concat(f(a));g.sort((a,b)=>a.afterLineNumber===b.afterLineNumber?a.ordinal-b.ordinal:a.afterLineNumber-b.afterLineNumber),this._arr=g,this._prefixSumValidIndex=-1}_insertWhitespace(a){let b=eK.findInsertionIndex(this._arr,a.afterLineNumber,a.ordinal);this._arr.splice(b,0,a),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,b-1)}_findWhitespaceIndex(a){let b=this._arr;for(let c=0,d=b.length;c<d;c++)if(b[c].id===a)return c;return -1}_changeOneWhitespace(a,b,c){let d=this._findWhitespaceIndex(a);if(-1!==d&&(this._arr[d].height!==c&&(this._arr[d].height=c,this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,d-1)),this._arr[d].afterLineNumber!==b)){let a=this._arr[d];this._removeWhitespace(d),a.afterLineNumber=b,this._insertWhitespace(a)}}_removeWhitespace(a){this._arr.splice(a,1),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,a-1)}onLinesDeleted(a,b){a|=0,b|=0,this._lineCount-=b-a+1;for(let c=0,d=this._arr.length;c<d;c++){let d=this._arr[c].afterLineNumber;a<=d&&d<=b?this._arr[c].afterLineNumber=a-1:d>b&&(this._arr[c].afterLineNumber-=b-a+1)}this._lineHeightsManager.onLinesDeleted(a,b)}onLinesInserted(a,b){a|=0,b|=0,this._lineCount+=b-a+1;for(let c=0,d=this._arr.length;c<d;c++){let d=this._arr[c].afterLineNumber;a<=d&&(this._arr[c].afterLineNumber+=b-a+1)}this._lineHeightsManager.onLinesInserted(a,b)}getWhitespacesTotalHeight(){return 0===this._arr.length?0:this.getWhitespacesAccumulatedHeight(this._arr.length-1)}getWhitespacesAccumulatedHeight(a){a|=0;let b=Math.max(0,this._prefixSumValidIndex+1);0===b&&(this._arr[0].prefixSum=this._arr[0].height,b++);for(let c=b;c<=a;c++)this._arr[c].prefixSum=this._arr[c-1].prefixSum+this._arr[c].height;return this._prefixSumValidIndex=Math.max(this._prefixSumValidIndex,a),this._arr[a].prefixSum}getLinesTotalHeight(){return this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(this._lineCount)+this.getWhitespacesTotalHeight()+this._paddingTop+this._paddingBottom}getWhitespaceAccumulatedHeightBeforeLineNumber(a){a|=0;let b=this._findLastWhitespaceBeforeLineNumber(a);return -1===b?0:this.getWhitespacesAccumulatedHeight(b)}_findLastWhitespaceBeforeLineNumber(a){a|=0;let b=this._arr,c=0,d=b.length-1;for(;c<=d;){let e=(d-c|0)/2|0,f=c+e|0;if(b[f].afterLineNumber<a)if(f+1>=b.length||b[f+1].afterLineNumber>=a)return f;else c=f+1|0;else d=f-1|0}return -1}_findFirstWhitespaceAfterLineNumber(a){a|=0;let b=this._findLastWhitespaceBeforeLineNumber(a)+1;return b<this._arr.length?b:-1}getFirstWhitespaceIndexAfterLineNumber(a){return a|=0,this._findFirstWhitespaceAfterLineNumber(a)}getVerticalOffsetForLineNumber(a,b=!1){return((a|=0)>1?this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(a-1):0)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(a-!!b)+this._paddingTop}getLineHeightForLineNumber(a){return this._lineHeightsManager.heightForLineNumber(a)}getVerticalOffsetAfterLineNumber(a,b=!1){return a|=0,this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(a)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(a+ +!!b)+this._paddingTop}getWhitespaceMinWidth(){if(-1===this._minWidth){let a=0;for(let b=0,c=this._arr.length;b<c;b++)a=Math.max(a,this._arr[b].minWidth);this._minWidth=a}return this._minWidth}isAfterLines(a){return a>this.getLinesTotalHeight()}isInTopPadding(a){return 0!==this._paddingTop&&a<this._paddingTop}isInBottomPadding(a){return 0!==this._paddingBottom&&a>=this.getLinesTotalHeight()-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(a){if((a|=0)<0)return 1;let b=0|this._lineCount,c=1,d=b;for(;c<d;){let b=(c+d)/2|0,e=this.getLineHeightForLineNumber(b),f=0|this.getVerticalOffsetForLineNumber(b);if(a>=f+e)c=b+1;else{if(a>=f)return b;d=b}}return c>b?b:c}getLinesViewportData(a,b){let c,d;a|=0,b|=0;let e=0|this.getLineNumberAtOrAfterVerticalOffset(a),f=0|this.getVerticalOffsetForLineNumber(e),g=0|this._lineCount,h=0|this.getFirstWhitespaceIndexAfterLineNumber(e),i=0|this.getWhitespacesCount();-1===h?(h=i,d=g+1,c=0):(d=0|this.getAfterLineNumberForWhitespaceIndex(h),c=0|this.getHeightForWhitespaceIndex(h));let j=f,k=j,l=0;f>=5e5&&(k-=l=Math.floor((l=5e5*Math.floor(f/5e5))/this._lineHeightsManager.defaultLineHeight)*this._lineHeightsManager.defaultLineHeight);let m=[],n=a+(b-a)/2,o=-1;for(let a=e;a<=g;a++){let f=this.getLineHeightForLineNumber(a);if(-1===o){let b=j,c=j+f;(b<=n&&n<c||b>n)&&(o=a)}for(j+=f,m[a-e]=k,k+=f;d===a;)k+=c,j+=c,++h>=i?d=g+1:(d=0|this.getAfterLineNumberForWhitespaceIndex(h),c=0|this.getHeightForWhitespaceIndex(h));if(j>=b){g=a;break}}-1===o&&(o=g);let p=0|this.getVerticalOffsetForLineNumber(g),q=e,r=g;return q<r&&f<a&&q++,q<r&&p+this.getLineHeightForLineNumber(g)>b&&r--,{bigNumbersDelta:l,startLineNumber:e,endLineNumber:g,relativeVerticalOffset:m,centeredLineNumber:o,completelyVisibleStartLineNumber:q,completelyVisibleEndLineNumber:r,lineHeight:this._lineHeightsManager.defaultLineHeight}}getVerticalOffsetForWhitespaceIndex(a){a|=0;let b=this.getAfterLineNumberForWhitespaceIndex(a);return(b>=1?this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(b):0)+(a>0?this.getWhitespacesAccumulatedHeight(a-1):0)+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(a){a|=0;let b=0,c=this.getWhitespacesCount()-1;if(c<0)return -1;let d=this.getVerticalOffsetForWhitespaceIndex(c),e=this.getHeightForWhitespaceIndex(c);if(a>=d+e)return -1;for(;b<c;){let d=Math.floor((b+c)/2),e=this.getVerticalOffsetForWhitespaceIndex(d),f=this.getHeightForWhitespaceIndex(d);if(a>=e+f)b=d+1;else{if(a>=e)return d;c=d}}return b}getWhitespaceAtVerticalOffset(a){a|=0;let b=this.getWhitespaceIndexAtOrAfterVerticallOffset(a);if(b<0||b>=this.getWhitespacesCount())return null;let c=this.getVerticalOffsetForWhitespaceIndex(b);if(c>a)return null;let d=this.getHeightForWhitespaceIndex(b);return{id:this.getIdForWhitespaceIndex(b),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(b),verticalOffset:c,height:d}}getWhitespaceViewportData(a,b){a|=0,b|=0;let c=this.getWhitespaceIndexAtOrAfterVerticallOffset(a),d=this.getWhitespacesCount()-1;if(c<0)return[];let e=[];for(let a=c;a<=d;a++){let c=this.getVerticalOffsetForWhitespaceIndex(a),d=this.getHeightForWhitespaceIndex(a);if(c>=b)break;e.push({id:this.getIdForWhitespaceIndex(a),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(a),verticalOffset:c,height:d})}return e}getWhitespaces(){return this._arr.slice(0)}getWhitespacesCount(){return this._arr.length}getIdForWhitespaceIndex(a){return a|=0,this._arr[a].id}getAfterLineNumberForWhitespaceIndex(a){return a|=0,this._arr[a].afterLineNumber}getHeightForWhitespaceIndex(a){return a|=0,this._arr[a].height}}class eL{constructor(a,b,c,d){(a|=0)<0&&(a=0),(b|=0)<0&&(b=0),(c|=0)<0&&(c=0),(d|=0)<0&&(d=0),this.width=a,this.contentWidth=b,this.scrollWidth=Math.max(a,b),this.height=c,this.contentHeight=d,this.scrollHeight=Math.max(c,d)}equals(a){return this.width===a.width&&this.contentWidth===a.contentWidth&&this.height===a.height&&this.contentHeight===a.contentHeight}}class eM extends w.jG{constructor(a,b){super(),this._onDidContentSizeChange=this._register(new v.vl),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new eL(0,0,0,0),this._scrollable=this._register(new eD.yE({forceIntegerValues:!0,smoothScrollDuration:a,scheduleAtNextAnimationFrame:b})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(a){this._scrollable.setSmoothScrollDuration(a)}validateScrollPosition(a){return this._scrollable.validateScrollPosition(a)}getScrollDimensions(){return this._dimensions}setScrollDimensions(a){if(this._dimensions.equals(a))return;let b=this._dimensions;this._dimensions=a,this._scrollable.setScrollDimensions({width:a.width,scrollWidth:a.scrollWidth,height:a.height,scrollHeight:a.scrollHeight},!0);let c=b.contentWidth!==a.contentWidth,d=b.contentHeight!==a.contentHeight;(c||d)&&this._onDidContentSizeChange.fire(new ee(b.contentWidth,b.contentHeight,a.contentWidth,a.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(a){this._scrollable.setScrollPositionNow(a)}setScrollPositionSmooth(a){this._scrollable.setScrollPositionSmooth(a)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class eN extends w.jG{constructor(a,b,c,d){super(),this._configuration=a;let e=this._configuration.options,f=e.get(165),g=e.get(96);this._linesLayout=new eK(b,e.get(75),g.top,g.bottom,c),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new eM(0,d)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new eL(f.contentWidth,0,f.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(125*!!this._configuration.options.get(130))}onConfigurationChanged(a){let b=this._configuration.options;if(a.hasChanged(75)&&this._linesLayout.setDefaultLineHeight(b.get(75)),a.hasChanged(96)){let a=b.get(96);this._linesLayout.setPadding(a.top,a.bottom)}if(a.hasChanged(165)){let a=b.get(165),c=a.contentWidth,d=a.height,e=this._scrollable.getScrollDimensions(),f=e.contentWidth;this._scrollable.setScrollDimensions(new eL(c,e.contentWidth,d,this._getContentHeight(c,d,f)))}else this._updateHeight();a.hasChanged(130)&&this._configureSmoothScrollDuration()}onFlushed(a,b){this._linesLayout.onFlushed(a,b)}onLinesDeleted(a,b){this._linesLayout.onLinesDeleted(a,b)}onLinesInserted(a,b){this._linesLayout.onLinesInserted(a,b)}_getHorizontalScrollbarHeight(a,b){let c=this._configuration.options.get(117);return 2===c.horizontal||a>=b?0:c.horizontalScrollbarSize}_getContentHeight(a,b,c){let d=this._configuration.options,e=this._linesLayout.getLinesTotalHeight();return d.get(119)?e+=Math.max(0,b-d.get(75)-d.get(96).bottom):d.get(117).ignoreHorizontalScrollbarInContentHeight||(e+=this._getHorizontalScrollbarHeight(a,c)),e}_updateHeight(){let a=this._scrollable.getScrollDimensions(),b=a.width,c=a.height,d=a.contentWidth;this._scrollable.setScrollDimensions(new eL(b,a.contentWidth,c,this._getContentHeight(b,c,d)))}getCurrentViewport(){let a=this._scrollable.getScrollDimensions(),b=this._scrollable.getCurrentScrollPosition();return new ca.LM(b.scrollTop,b.scrollLeft,a.width,a.height)}getFutureViewport(){let a=this._scrollable.getScrollDimensions(),b=this._scrollable.getFutureScrollPosition();return new ca.LM(b.scrollTop,b.scrollLeft,a.width,a.height)}_computeContentWidth(){let a=this._configuration.options,b=this._maxLineWidth,c=a.get(166),d=a.get(59),e=a.get(165);if(c.isViewportWrapping){let c=a.get(81);return b>e.contentWidth+d.typicalHalfwidthCharacterWidth&&c.enabled&&"right"===c.side?b+e.verticalScrollbarWidth:b}{let c=a.get(118)*d.typicalHalfwidthCharacterWidth,f=this._linesLayout.getWhitespaceMinWidth();return Math.max(b+c+e.verticalScrollbarWidth,f,this._overlayWidgetsMinWidth)}}setMaxLineWidth(a){this._maxLineWidth=a,this._updateContentWidth()}setOverlayWidgetsMinWidth(a){this._overlayWidgetsMinWidth=a,this._updateContentWidth()}_updateContentWidth(){let a=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new eL(a.width,this._computeContentWidth(),a.height,a.contentHeight)),this._updateHeight()}saveState(){let a=this._scrollable.getFutureScrollPosition(),b=a.scrollTop,c=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(b);return{scrollTop:b,scrollTopWithoutViewZones:b-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(c),scrollLeft:a.scrollLeft}}changeWhitespace(a){let b=this._linesLayout.changeWhitespace(a);return b&&this.onHeightMaybeChanged(),b}changeSpecialLineHeights(a){let b=this._linesLayout.changeLineHeights(a);return b&&this.onHeightMaybeChanged(),b}getVerticalOffsetForLineNumber(a,b=!1){return this._linesLayout.getVerticalOffsetForLineNumber(a,b)}getVerticalOffsetAfterLineNumber(a,b=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(a,b)}getLineHeightForLineNumber(a){return this._linesLayout.getLineHeightForLineNumber(a)}isAfterLines(a){return this._linesLayout.isAfterLines(a)}isInTopPadding(a){return this._linesLayout.isInTopPadding(a)}isInBottomPadding(a){return this._linesLayout.isInBottomPadding(a)}getLineNumberAtVerticalOffset(a){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(a)}getWhitespaceAtVerticalOffset(a){return this._linesLayout.getWhitespaceAtVerticalOffset(a)}getLinesViewportData(){let a=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(a.top,a.top+a.height)}getLinesViewportDataAtScrollTop(a){let b=this._scrollable.getScrollDimensions();return a+b.height>b.scrollHeight&&(a=b.scrollHeight-b.height),a<0&&(a=0),this._linesLayout.getLinesViewportData(a,a+b.height)}getWhitespaceViewportData(){let a=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(a.top,a.top+a.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(a){return this._scrollable.validateScrollPosition(a)}setScrollPosition(a,b){1===b?this._scrollable.setScrollPositionNow(a):this._scrollable.setScrollPositionSmooth(a)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(a,b){let c=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:c.scrollLeft+a,scrollTop:c.scrollTop+b})}}var eO=c(72991);class eP{constructor(a,b,c,d,e){this.editorId=a,this.model=b,this.configuration=c,this._linesCollection=d,this._coordinatesConverter=e,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(a){let b=a.id,c=this._decorationsCache[b];if(!c){let d,e=a.range,f=a.options;if(f.isWholeLine){let a=this._coordinatesConverter.convertModelPositionToViewPosition(new aa.y(e.startLineNumber,1),0,!1,!0),b=this._coordinatesConverter.convertModelPositionToViewPosition(new aa.y(e.endLineNumber,this.model.getLineMaxColumn(e.endLineNumber)),1);d=new ab.Q(a.lineNumber,a.column,b.lineNumber,b.column)}else d=this._coordinatesConverter.convertModelRangeToViewRange(e,1);c=new b$.vo(d,f),this._decorationsCache[b]=c}return c}getMinimapDecorationsInRange(a){return this._getDecorationsInRange(a,!0,!1).decorations}getDecorationsViewportData(a){let b=null!==this._cachedModelDecorationsResolver;return(b=b&&a.equalsRange(this._cachedModelDecorationsResolverViewRange))||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(a,!1,!1),this._cachedModelDecorationsResolverViewRange=a),this._cachedModelDecorationsResolver}getDecorationsOnLine(a,b=!1,c=!1){let d=new ab.Q(a,this._linesCollection.getViewLineMinColumn(a),a,this._linesCollection.getViewLineMaxColumn(a));return this._getDecorationsInRange(d,b,c)}_getDecorationsInRange(a,b,c){let d=this._linesCollection.getDecorationsInRange(a,this.editorId,(0,K.$C)(this.configuration.options),(0,K.Vs)(this.configuration.options),b,c),e=a.startLineNumber,f=a.endLineNumber,g=[],h=0,i=[];for(let a=e;a<=f;a++)i[a-e]=[];let j=!1;for(let a=0,b=d.length;a<b;a++){let b=d[a],c=b.options;if(!(0,b$.GN)(this.model,b))continue;let k=this._getOrCreateViewModelDecoration(b),l=k.range;if(g[h++]=k,c.inlineClassName){let a=new eO.k(l,c.inlineClassName,3*!!c.inlineClassNameAffectsLetterSpacing),b=Math.max(e,l.startLineNumber),d=Math.min(f,l.endLineNumber);for(let c=b;c<=d;c++)i[c-e].push(a)}if(c.beforeContentClassName&&e<=l.startLineNumber&&l.startLineNumber<=f){let a=new eO.k(new ab.Q(l.startLineNumber,l.startColumn,l.startLineNumber,l.startColumn),c.beforeContentClassName,1);i[l.startLineNumber-e].push(a)}if(c.afterContentClassName&&e<=l.endLineNumber&&l.endLineNumber<=f){let a=new eO.k(new ab.Q(l.endLineNumber,l.endColumn,l.endLineNumber,l.endColumn),c.afterContentClassName,2);i[l.endLineNumber-e].push(a)}c.affectsFont&&(j=!0)}return{decorations:g,inlineDecorations:i,hasVariableFonts:j}}}var eQ=c(21005);function eR(a,b){return null!==a?new eS(a,b):b?eT.INSTANCE:eU.INSTANCE}class eS{constructor(a,b){this._projectionData=a,this._isVisible=b}isVisible(){return this._isVisible}setVisible(a){return this._isVisible=a,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(a,b,c){let d;this._assertVisible();let e=c>0?this._projectionData.breakOffsets[c-1]:0,f=this._projectionData.breakOffsets[c];if(null!==this._projectionData.injectionOffsets){let c=this._projectionData.injectionOffsets.map((a,b)=>new du.uK(0,0,a+1,this._projectionData.injectionOptions[b],0));d=du.uK.applyInjectedText(a.getLineContent(b),c).substring(e,f)}else d=a.getValueInRange({startLineNumber:b,startColumn:e+1,endLineNumber:b,endColumn:f+1});return c>0&&(d=eW(this._projectionData.wrappedTextIndentLength)+d),d}getViewLineLength(a,b,c){return this._assertVisible(),this._projectionData.getLineLength(c)}getViewLineMinColumn(a,b,c){return this._assertVisible(),this._projectionData.getMinOutputOffset(c)+1}getViewLineMaxColumn(a,b,c){return this._assertVisible(),this._projectionData.getMaxOutputOffset(c)+1}getViewLineData(a,b,c){let d=[];return this.getViewLinesData(a,b,c,1,0,[!0],d),d[0]}getViewLinesData(a,b,c,d,e,f,g){let h;this._assertVisible();let i=this._projectionData,j=i.injectionOffsets,k=i.injectionOptions,l=null;if(j){l=[];let a=0,b=0;for(let c=0;c<i.getOutputLineCount();c++){let d=[];l[c]=d;let e=c>0?i.breakOffsets[c-1]:0,f=i.breakOffsets[c];for(;b<j.length;){let g=k[b].content.length,h=j[b]+a,l=h+g;if(h>f)break;if(e<l){let a=k[b];if(a.inlineClassName){let b=c>0?i.wrappedTextIndentLength:0,g=b+Math.max(h-e,0),j=b+Math.min(l-e,f-e);g!==j&&d.push(new eO.o(g,j,a.inlineClassName,a.inlineClassNameAffectsLetterSpacing))}}if(l<=f)a+=g,b++;else break}}}if(j){let c=[];for(let a=0;a<j.length;a++){let b=j[a],d=k[a].tokens;d?d.forEach((d,e)=>{c.push({offset:b,text:d.substring(k[a].content),tokenMetadata:e.metadata})}):c.push({offset:b,text:k[a].content,tokenMetadata:eQ.f7.defaultTokenMetadata})}h=a.tokenization.getLineTokens(b).withInserted(c)}else h=a.tokenization.getLineTokens(b);for(let a=c;a<c+d;a++){let b=e+a-c;if(!f[b]){g[b]=null;continue}g[b]=this._getViewLineData(h,l?l[a]:null,a)}}_getViewLineData(a,b,c){this._assertVisible();let d=this._projectionData,e=c>0?d.wrappedTextIndentLength:0,f=c>0?d.breakOffsets[c-1]:0,g=d.breakOffsets[c],h=a.sliceAndInflate(f,g,e),i=h.getLineContent();c>0&&(i=eW(d.wrappedTextIndentLength)+i);let j=this._projectionData.getMinOutputOffset(c)+1,k=i.length+1,l=c+1<this.getViewLineCount(),m=0===c?0:d.breakOffsetsVisibleColumn[c-1];return new ca.GP(i,l,j,k,m,h,b)}getModelColumnOfViewPosition(a,b){return this._assertVisible(),this._projectionData.translateToInputOffset(a,b-1)+1}getViewPositionOfModelPosition(a,b,c=2){return this._assertVisible(),this._projectionData.translateToOutputPosition(b-1,c).toPosition(a)}getViewLineNumberOfModelPosition(a,b){return this._assertVisible(),a+this._projectionData.translateToOutputPosition(b-1).outputLineIndex}normalizePosition(a,b,c){let d=b.lineNumber-a;return this._projectionData.normalizeOutputPosition(a,b.column-1,c).toPosition(d)}getInjectedTextAt(a,b){return this._projectionData.getInjectedText(a,b-1)}_assertVisible(){if(!this._isVisible)throw Error("Not supported")}}class eT{static{this.INSTANCE=new eT}constructor(){}isVisible(){return!0}setVisible(a){return a?this:eU.INSTANCE}getProjectionData(){return null}getViewLineCount(){return 1}getViewLineContent(a,b,c){return a.getLineContent(b)}getViewLineLength(a,b,c){return a.getLineLength(b)}getViewLineMinColumn(a,b,c){return a.getLineMinColumn(b)}getViewLineMaxColumn(a,b,c){return a.getLineMaxColumn(b)}getViewLineData(a,b,c){let d=a.tokenization.getLineTokens(b),e=d.getLineContent();return new ca.GP(e,!1,1,e.length+1,0,d.inflate(),null)}getViewLinesData(a,b,c,d,e,f,g){if(!f[e]){g[e]=null;return}g[e]=this.getViewLineData(a,b,0)}getModelColumnOfViewPosition(a,b){return b}getViewPositionOfModelPosition(a,b){return new aa.y(a,b)}getViewLineNumberOfModelPosition(a,b){return a}normalizePosition(a,b,c){return b}getInjectedTextAt(a,b){return null}}class eU{static{this.INSTANCE=new eU}constructor(){}isVisible(){return!1}setVisible(a){return a?eT.INSTANCE:this}getProjectionData(){return null}getViewLineCount(){return 0}getViewLineContent(a,b,c){throw Error("Not supported")}getViewLineLength(a,b,c){throw Error("Not supported")}getViewLineMinColumn(a,b,c){throw Error("Not supported")}getViewLineMaxColumn(a,b,c){throw Error("Not supported")}getViewLineData(a,b,c){throw Error("Not supported")}getViewLinesData(a,b,c,d,e,f,g){throw Error("Not supported")}getModelColumnOfViewPosition(a,b){throw Error("Not supported")}getViewPositionOfModelPosition(a,b){throw Error("Not supported")}getViewLineNumberOfModelPosition(a,b){throw Error("Not supported")}normalizePosition(a,b,c){throw Error("Not supported")}getInjectedTextAt(a,b){throw Error("Not supported")}}let eV=[""];function eW(a){if(a>=eV.length)for(let b=1;b<=a;b++)eV[b]=Array(b+1).join(" ");return eV[a]}var eX=c(97210);class eY{constructor(a){this._model=a}_validPosition(a){return this._model.validatePosition(a)}_validRange(a){return this._model.validateRange(a)}convertViewPositionToModelPosition(a){return this._validPosition(a)}convertViewRangeToModelRange(a){return this._validRange(a)}validateViewPosition(a,b){return this._validPosition(b)}validateViewRange(a,b){return this._validRange(b)}convertModelPositionToViewPosition(a){return this._validPosition(a)}convertModelRangeToViewRange(a){return this._validRange(a)}modelPositionIsVisible(a){let b=this._model.getLineCount();return!(a.lineNumber<1)&&!(a.lineNumber>b)}getModelLineViewLineCount(a){return 1}getViewLineNumberOfModelPosition(a,b){return a}}class eZ{constructor(a,b,c,d,e,f,g,h,i,j,k){this._editorId=a,this.model=b,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=c,this._monospaceLineBreaksComputerFactory=d,this.fontInfo=e,this.tabSize=f,this.wrappingStrategy=g,this.wrappingColumn=h,this.wrappingIndent=i,this.wordBreak=j,this.wrapOnEscapedLineFeeds=k,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new e0(this)}_constructLines(a,b){this.modelLineProjections=[],a&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));let c=this.model.getLinesContent(),d=this.model.getInjectedTextDecorations(this._editorId),e=c.length,f=this.createLineBreaksComputer(),g=new A.j3(du.uK.fromDecorations(d));for(let a=0;a<e;a++){let d=g.takeWhile(b=>b.lineNumber===a+1);f.addRequest(c[a],d,b?b[a]:null)}let h=f.finalize(),i=[],j=this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a)).sort(ab.Q.compareRangesUsingStarts),k=1,l=0,m=-1,n=0<j.length?l+1:e+2;for(let a=0;a<e;a++){let b=a+1;b===n&&(k=j[++m].startLineNumber,l=j[m].endLineNumber,n=m+1<j.length?l+1:e+2);let c=b>=k&&b<=l,d=eR(h[a],!c);i[a]=d.getViewLineCount(),this.modelLineProjections[a]=d}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new eX.c2(i)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a))}setHiddenAreas(a){let b=function(a){if(0===a.length)return[];let b=a.slice();b.sort(ab.Q.compareRangesUsingStarts);let c=[],d=b[0].startLineNumber,e=b[0].endLineNumber;for(let a=1,f=b.length;a<f;a++){let f=b[a];f.startLineNumber>e+1?(c.push(new ab.Q(d,1,e,1)),d=f.startLineNumber,e=f.endLineNumber):f.endLineNumber>e&&(e=f.endLineNumber)}return c.push(new ab.Q(d,1,e,1)),c}(a.map(a=>this.model.validateRange(a))),c=this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a)).sort(ab.Q.compareRangesUsingStarts);if(b.length===c.length){let a=!1;for(let d=0;d<b.length;d++)if(!b[d].equalsRange(c[d])){a=!0;break}if(!a)return!1}let d=b.map(a=>({range:a,options:dE.kI.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,d);let e=1,f=0,g=-1,h=0<b.length?f+1:this.modelLineProjections.length+2,i=!1;for(let a=0;a<this.modelLineProjections.length;a++){let c=a+1;c===h&&(e=b[++g].startLineNumber,f=b[g].endLineNumber,h=g+1<b.length?f+1:this.modelLineProjections.length+2);let d=!1;if(c>=e&&c<=f?this.modelLineProjections[a].isVisible()&&(this.modelLineProjections[a]=this.modelLineProjections[a].setVisible(!1),d=!0):(i=!0,this.modelLineProjections[a].isVisible()||(this.modelLineProjections[a]=this.modelLineProjections[a].setVisible(!0),d=!0)),d){let b=this.modelLineProjections[a].getViewLineCount();this.projectedModelLineLineCounts.setValue(a,b)}}return i||this.setHiddenAreas([]),!0}modelPositionIsVisible(a,b){return!(a<1)&&!(a>this.modelLineProjections.length)&&this.modelLineProjections[a-1].isVisible()}getModelLineViewLineCount(a){return a<1||a>this.modelLineProjections.length?1:this.modelLineProjections[a-1].getViewLineCount()}setTabSize(a){return this.tabSize!==a&&(this.tabSize=a,this._constructLines(!1,null),!0)}setWrappingSettings(a,b,c,d,e){let f=this.fontInfo.equals(a),g=this.wrappingStrategy===b,h=this.wrappingColumn===c,i=this.wrappingIndent===d,j=this.wordBreak===e;if(f&&g&&h&&i&&j)return!1;this.fontInfo=a,this.wrappingStrategy=b,this.wrappingColumn=c,this.wrappingIndent=d,this.wordBreak=e;let k=null;if(f&&g&&!h&&i&&j){k=[];for(let a=0,b=this.modelLineProjections.length;a<b;a++)k[a]=this.modelLineProjections[a].getProjectionData()}return this._constructLines(!1,k),!0}createLineBreaksComputer(){return("advanced"===this.wrappingStrategy?this._domLineBreaksComputerFactory:this._monospaceLineBreaksComputerFactory).createLineBreaksComputer(this.fontInfo,this.tabSize,this.wrappingColumn,this.wrappingIndent,this.wordBreak,this.wrapOnEscapedLineFeeds)}onModelFlushed(){this._constructLines(!0,null)}onModelLinesDeleted(a,b,c){if(!a||a<=this._validModelVersionId)return null;let d=1===b?1:this.projectedModelLineLineCounts.getPrefixSum(b-1)+1,e=this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections.splice(b-1,c-b+1),this.projectedModelLineLineCounts.removeValues(b-1,c-b+1),new d4(d,e)}onModelLinesInserted(a,b,c,d){if(!a||a<=this._validModelVersionId)return null;let e=b>2&&!this.modelLineProjections[b-2].isVisible(),f=1===b?1:this.projectedModelLineLineCounts.getPrefixSum(b-1)+1,g=0,h=[],i=[];for(let a=0,b=d.length;a<b;a++){let b=eR(d[a],!e);h.push(b);let c=b.getViewLineCount();g+=c,i[a]=c}return this.modelLineProjections=this.modelLineProjections.slice(0,b-1).concat(h).concat(this.modelLineProjections.slice(b-1)),this.projectedModelLineLineCounts.insertValues(b-1,i),new d5(f,f+g-1)}onModelLineChanged(a,b,c){if(null!==a&&a<=this._validModelVersionId)return[!1,null,null,null];let d=b-1,e=this.modelLineProjections[d].getViewLineCount(),f=eR(c,this.modelLineProjections[d].isVisible());this.modelLineProjections[d]=f;let g=this.modelLineProjections[d].getViewLineCount(),h=!1,i=0,j=-1,k=0,l=-1,m=0,n=-1;e>g?(n=(m=(j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+g-1)+1)+(e-g)-1,h=!0):e<g?(l=(k=(j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+e-1)+1)+(g-e)-1,h=!0):j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+g-1,this.projectedModelLineLineCounts.setValue(d,g);let o=i<=j?new d3(i,j-i+1):null;return[h,o,k<=l?new d5(k,l):null,m<=n?new d4(m,n):null]}acceptVersionId(a){this._validModelVersionId=a,1!==this.modelLineProjections.length||this.modelLineProjections[0].isVisible()||this.setHiddenAreas([])}getViewLineCount(){return this.projectedModelLineLineCounts.getTotalSum()}_toValidViewLineNumber(a){if(a<1)return 1;let b=this.getViewLineCount();return a>b?b:0|a}getActiveIndentGuide(a,b,c){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b),c=this._toValidViewLineNumber(c);let d=this.convertViewPositionToModelPosition(a,this.getViewLineMinColumn(a)),e=this.convertViewPositionToModelPosition(b,this.getViewLineMinColumn(b)),f=this.convertViewPositionToModelPosition(c,this.getViewLineMinColumn(c)),g=this.model.guides.getActiveIndentGuide(d.lineNumber,e.lineNumber,f.lineNumber),h=this.convertModelPositionToViewPosition(g.startLineNumber,1),i=this.convertModelPositionToViewPosition(g.endLineNumber,this.model.getLineMaxColumn(g.endLineNumber));return{startLineNumber:h.lineNumber,endLineNumber:i.lineNumber,indent:g.indent}}getViewLineInfo(a){a=this._toValidViewLineNumber(a);let b=this.projectedModelLineLineCounts.getIndexOf(a-1);return new e$(b.index+1,b.remainder)}getMinColumnOfViewLine(a){return this.modelLineProjections[a.modelLineNumber-1].getViewLineMinColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(a){return this.modelLineProjections[a.modelLineNumber-1].getViewLineMaxColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(a){let b=this.modelLineProjections[a.modelLineNumber-1],c=b.getViewLineMinColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx),d=b.getModelColumnOfViewPosition(a.modelLineWrappedLineIdx,c);return new aa.y(a.modelLineNumber,d)}getModelEndPositionOfViewLine(a){let b=this.modelLineProjections[a.modelLineNumber-1],c=b.getViewLineMaxColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx),d=b.getModelColumnOfViewPosition(a.modelLineWrappedLineIdx,c);return new aa.y(a.modelLineNumber,d)}getViewLineInfosGroupedByModelRanges(a,b){let c=this.getViewLineInfo(a),d=this.getViewLineInfo(b),e=[],f=this.getModelStartPositionOfViewLine(c),g=[];for(let a=c.modelLineNumber;a<=d.modelLineNumber;a++){let b=this.modelLineProjections[a-1];if(b.isVisible()){let e=a===c.modelLineNumber?c.modelLineWrappedLineIdx:0,f=a===d.modelLineNumber?d.modelLineWrappedLineIdx+1:b.getViewLineCount();for(let b=e;b<f;b++)g.push(new e$(a,b))}if(!b.isVisible()&&f){let b=new aa.y(a-1,this.model.getLineMaxColumn(a-1)+1),c=ab.Q.fromPositions(f,b);e.push(new e_(c,g)),g=[],f=null}else b.isVisible()&&!f&&(f=new aa.y(a,1))}if(f){let a=ab.Q.fromPositions(f,this.getModelEndPositionOfViewLine(d));e.push(new e_(a,g))}return e}getViewLinesBracketGuides(a,b,c,d){let e=c?this.convertViewPositionToModelPosition(c.lineNumber,c.column):null,f=[];for(let c of this.getViewLineInfosGroupedByModelRanges(a,b)){let a=c.modelRange.startLineNumber,b=this.model.guides.getLinesBracketGuides(a,c.modelRange.endLineNumber,e,d);for(let d of c.viewLines){let c=b[d.modelLineNumber-a].map(a=>{if(-1!==a.forWrappedLinesAfterColumn&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||-1!==a.forWrappedLinesBeforeOrAtColumn&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.forWrappedLinesBeforeOrAtColumn).lineNumber<d.modelLineWrappedLineIdx)return;if(!a.horizontalLine)return a;let b=-1;if(-1!==a.column){let c=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.column);if(c.lineNumber===d.modelLineWrappedLineIdx)b=c.column;else if(c.lineNumber<d.modelLineWrappedLineIdx)b=this.getMinColumnOfViewLine(d);else if(c.lineNumber>d.modelLineWrappedLineIdx)return}let c=this.convertModelPositionToViewPosition(d.modelLineNumber,a.horizontalLine.endColumn),e=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.horizontalLine.endColumn);return e.lineNumber===d.modelLineWrappedLineIdx?new bx.TH(a.visibleColumn,b,a.className,new bx.pv(a.horizontalLine.top,c.column),-1,-1):e.lineNumber<d.modelLineWrappedLineIdx||-1!==a.visibleColumn?void 0:new bx.TH(a.visibleColumn,b,a.className,new bx.pv(a.horizontalLine.top,this.getMaxColumnOfViewLine(d)),-1,-1)});f.push(c.filter(a=>!!a))}}return f}getViewLinesIndentGuides(a,b){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b);let c=this.convertViewPositionToModelPosition(a,this.getViewLineMinColumn(a)),d=this.convertViewPositionToModelPosition(b,this.getViewLineMaxColumn(b)),e=[],f=[],g=[],h=c.lineNumber-1,i=d.lineNumber-1,j=null;for(let a=h;a<=i;a++){let b=this.modelLineProjections[a];if(b.isVisible()){let d=b.getViewLineNumberOfModelPosition(0,a===h?c.column:1),e=b.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(a+1)),i=e-d+1,k=0;i>1&&1===b.getViewLineMinColumn(this.model,a+1,e)&&(k=0===d?1:2),f.push(i),g.push(k),null===j&&(j=new aa.y(a+1,0))}else null!==j&&(e=e.concat(this.model.guides.getLinesIndentGuides(j.lineNumber,a)),j=null)}null!==j&&(e=e.concat(this.model.guides.getLinesIndentGuides(j.lineNumber,d.lineNumber)),j=null);let k=b-a+1,l=Array(k),m=0;for(let a=0,b=e.length;a<b;a++){let b,c=e[a],d=Math.min(k-m,f[a]),h=g[a];b=2===h?0:1===h?1:d;for(let a=0;a<d;a++)a===b&&(c=0),l[m++]=c}return l}getViewLineContent(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineContent(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineLength(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineLength(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineMinColumn(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineMinColumn(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineMaxColumn(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineMaxColumn(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineData(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineData(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLinesData(a,b,c){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b);let d=this.projectedModelLineLineCounts.getIndexOf(a-1),e=a,f=d.index,g=d.remainder,h=[];for(let d=f,i=this.model.getLineCount();d<i;d++){let i=this.modelLineProjections[d];if(!i.isVisible())continue;let j=d===f?g:0,k=i.getViewLineCount()-j,l=!1;if(e+k>b&&(l=!0,k=b-e+1),i.getViewLinesData(this.model,d+1,j,k,e-a,c,h),e+=k,l)break}return h}validateViewPosition(a,b,c){a=this._toValidViewLineNumber(a);let d=this.projectedModelLineLineCounts.getIndexOf(a-1),e=d.index,f=d.remainder,g=this.modelLineProjections[e],h=g.getViewLineMinColumn(this.model,e+1,f),i=g.getViewLineMaxColumn(this.model,e+1,f);b<h&&(b=h),b>i&&(b=i);let j=g.getModelColumnOfViewPosition(f,b);return this.model.validatePosition(new aa.y(e+1,j)).equals(c)?new aa.y(a,b):this.convertModelPositionToViewPosition(c.lineNumber,c.column)}validateViewRange(a,b){let c=this.validateViewPosition(a.startLineNumber,a.startColumn,b.getStartPosition()),d=this.validateViewPosition(a.endLineNumber,a.endColumn,b.getEndPosition());return new ab.Q(c.lineNumber,c.column,d.lineNumber,d.column)}convertViewPositionToModelPosition(a,b){let c=this.getViewLineInfo(a),d=this.modelLineProjections[c.modelLineNumber-1].getModelColumnOfViewPosition(c.modelLineWrappedLineIdx,b);return this.model.validatePosition(new aa.y(c.modelLineNumber,d))}convertViewRangeToModelRange(a){let b=this.convertViewPositionToModelPosition(a.startLineNumber,a.startColumn),c=this.convertViewPositionToModelPosition(a.endLineNumber,a.endColumn);return new ab.Q(b.lineNumber,b.column,c.lineNumber,c.column)}convertModelPositionToViewPosition(a,b,c=2,d=!1,e=!1){let f=this.model.validatePosition(new aa.y(a,b)),g=f.lineNumber,h=f.column,i=g-1,j=!1;if(e)for(;i<this.modelLineProjections.length&&!this.modelLineProjections[i].isVisible();)i++,j=!0;else for(;i>0&&!this.modelLineProjections[i].isVisible();)i--,j=!0;if(0===i&&!this.modelLineProjections[i].isVisible())return new aa.y(+!d,1);let k=1+this.projectedModelLineLineCounts.getPrefixSum(i);return j?e?this.modelLineProjections[i].getViewPositionOfModelPosition(k,1,c):this.modelLineProjections[i].getViewPositionOfModelPosition(k,this.model.getLineMaxColumn(i+1),c):this.modelLineProjections[g-1].getViewPositionOfModelPosition(k,h,c)}convertModelRangeToViewRange(a,b=0){if(a.isEmpty()){let c=this.convertModelPositionToViewPosition(a.startLineNumber,a.startColumn,b);return ab.Q.fromPositions(c)}{let b=this.convertModelPositionToViewPosition(a.startLineNumber,a.startColumn,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,a.endColumn,0);return new ab.Q(b.lineNumber,b.column,c.lineNumber,c.column)}}getViewLineNumberOfModelPosition(a,b){let c=a-1;if(this.modelLineProjections[c].isVisible()){let a=1+this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections[c].getViewLineNumberOfModelPosition(a,b)}for(;c>0&&!this.modelLineProjections[c].isVisible();)c--;if(0===c&&!this.modelLineProjections[c].isVisible())return 1;let d=1+this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections[c].getViewLineNumberOfModelPosition(d,this.model.getLineMaxColumn(c+1))}getDecorationsInRange(a,b,c,d,e,f){let g=this.convertViewPositionToModelPosition(a.startLineNumber,a.startColumn),h=this.convertViewPositionToModelPosition(a.endLineNumber,a.endColumn);if(h.lineNumber-g.lineNumber<=a.endLineNumber-a.startLineNumber)return this.model.getDecorationsInRange(new ab.Q(g.lineNumber,1,h.lineNumber,h.column),b,c,d,e,f);let i=[],j=g.lineNumber-1,k=h.lineNumber-1,l=null;for(let a=j;a<=k;a++)if(this.modelLineProjections[a].isVisible())null===l&&(l=new aa.y(a+1,a===j?g.column:1));else if(null!==l){let f=this.model.getLineMaxColumn(a);i=i.concat(this.model.getDecorationsInRange(new ab.Q(l.lineNumber,l.column,a,f),b,c,d,e)),l=null}null!==l&&(i=i.concat(this.model.getDecorationsInRange(new ab.Q(l.lineNumber,l.column,h.lineNumber,h.column),b,c,d,e)),l=null),i.sort((a,b)=>{let c=ab.Q.compareRangesUsingStarts(a.range,b.range);return 0===c?a.id<b.id?-1:+(a.id>b.id):c});let m=[],n=0,o=null;for(let a of i){let b=a.id;o!==b&&(o=b,m[n++]=a)}return m}getInjectedTextAt(a){let b=this.getViewLineInfo(a.lineNumber);return this.modelLineProjections[b.modelLineNumber-1].getInjectedTextAt(b.modelLineWrappedLineIdx,a.column)}normalizePosition(a,b){let c=this.getViewLineInfo(a.lineNumber);return this.modelLineProjections[c.modelLineNumber-1].normalizePosition(c.modelLineWrappedLineIdx,a,b)}getLineIndentColumn(a){let b=this.getViewLineInfo(a);return 0===b.modelLineWrappedLineIdx?this.model.getLineIndentColumn(b.modelLineNumber):0}}class e${constructor(a,b){this.modelLineNumber=a,this.modelLineWrappedLineIdx=b}}class e_{constructor(a,b){this.modelRange=a,this.viewLines=b}}class e0{constructor(a){this._lines=a}convertViewPositionToModelPosition(a){return this._lines.convertViewPositionToModelPosition(a.lineNumber,a.column)}convertViewRangeToModelRange(a){return this._lines.convertViewRangeToModelRange(a)}validateViewPosition(a,b){return this._lines.validateViewPosition(a.lineNumber,a.column,b)}validateViewRange(a,b){return this._lines.validateViewRange(a,b)}convertModelPositionToViewPosition(a,b,c,d){return this._lines.convertModelPositionToViewPosition(a.lineNumber,a.column,b,c,d)}convertModelRangeToViewRange(a,b){return this._lines.convertModelRangeToViewRange(a,b)}modelPositionIsVisible(a){return this._lines.modelPositionIsVisible(a.lineNumber,a.column)}getModelLineViewLineCount(a){return this._lines.getModelLineViewLineCount(a)}getViewLineNumberOfModelPosition(a,b){return this._lines.getViewLineNumberOfModelPosition(a,b)}}class e1{constructor(a){this.model=a}dispose(){}createCoordinatesConverter(){return new eY(this.model)}getHiddenAreas(){return[]}setHiddenAreas(a){return!1}setTabSize(a){return!1}setWrappingSettings(a,b,c,d){return!1}createLineBreaksComputer(){let a=[];return{addRequest:(b,c,d)=>{a.push(null)},finalize:()=>a}}onModelFlushed(){}onModelLinesDeleted(a,b,c){return new d4(b,c)}onModelLinesInserted(a,b,c,d){return new d5(b,c)}onModelLineChanged(a,b,c){return[!1,new d3(b,1),null,null]}acceptVersionId(a){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(a,b,c){return{startLineNumber:a,endLineNumber:a,indent:0}}getViewLinesBracketGuides(a,b,c){return Array(b-a+1).fill([])}getViewLinesIndentGuides(a,b){let c=b-a+1,d=Array(c);for(let a=0;a<c;a++)d[a]=0;return d}getViewLineContent(a){return this.model.getLineContent(a)}getViewLineLength(a){return this.model.getLineLength(a)}getViewLineMinColumn(a){return this.model.getLineMinColumn(a)}getViewLineMaxColumn(a){return this.model.getLineMaxColumn(a)}getViewLineData(a){let b=this.model.tokenization.getLineTokens(a),c=b.getLineContent();return new ca.GP(c,!1,1,c.length+1,0,b.inflate(),null)}getViewLinesData(a,b,c){let d=this.model.getLineCount();a=Math.min(Math.max(1,a),d),b=Math.min(Math.max(1,b),d);let e=[];for(let d=a;d<=b;d++){let b=d-a;e[b]=c[b]?this.getViewLineData(d):null}return e}getDecorationsInRange(a,b,c,d,e,f){return this.model.getDecorationsInRange(a,b,c,d,e,f)}normalizePosition(a,b){return this.model.normalizePosition(a,b)}getLineIndentColumn(a){return this.model.getLineIndentColumn(a)}getInjectedTextAt(a){return null}}let e2=ae.ZS.Right;class e3{constructor(a){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((a+1)*e2/8))}reset(a){let b=Math.ceil((a+1)*e2/8);this.lanes.length<b?this.lanes=new Uint8Array(b):this.lanes.fill(0),this._requiredLanes=1}get requiredLanes(){return this._requiredLanes}push(a,b,c){c&&(this.persist|=1<<a-1);for(let c=b.startLineNumber;c<=b.endLineNumber;c++){let b=e2*c+(a-1);this.lanes[b>>>3]|=1<<b%8,this._requiredLanes=Math.max(this._requiredLanes,this.countAtLine(c))}}getLanesAtLine(a){let b=[],c=e2*a;for(let a=0;a<e2;a++)(this.persist&1<<a||this.lanes[c>>>3]&1<<c%8)&&b.push(a+1),c++;return b.length?b:[ae.ZS.Center]}countAtLine(a){let b=e2*a,c=0;for(let a=0;a<e2;a++)(this.persist&1<<a||this.lanes[b>>>3]&1<<b%8)&&c++,b++;return c}}class e4 extends w.jG{constructor(a,b,c,d,e,f,g,h,i,j){if(super(),this.languageConfigurationService=g,this._themeService=h,this._attachedView=i,this._transactionalTarget=j,this.hiddenAreasModel=new e7,this.previousHiddenAreas=[],this._editorId=a,this._configuration=b,this.model=c,this._eventDispatcher=new ec,this.onEvent=this._eventDispatcher.onEvent,this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._updateConfigurationViewLineCount=this._register(new aJ.uC(()=>this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=e5.create(this.model),this.glyphLanes=new e3(0),this.model.isTooLargeForTokenization())this._lines=new e1(this.model);else{let a=this._configuration.options,b=a.get(59),c=a.get(156),f=a.get(166),g=a.get(155),h=a.get(146),i=a.get(160);this._lines=new eZ(this._editorId,this.model,d,e,b,this.model.getOptions().tabSize,c,f.wrappingColumn,g,h,i)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new ev(c,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new eN(this._configuration,this.getLineCount(),this._getCustomLineHeights(),f)),this._register(this.viewLayout.onDidScroll(a=>{a.scrollTopChanged&&this._handleVisibleLinesChanged(),a.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new d7(a)),this._eventDispatcher.emitOutgoingEvent(new eh(a.oldScrollWidth,a.oldScrollLeft,a.oldScrollHeight,a.oldScrollTop,a.scrollWidth,a.scrollLeft,a.scrollHeight,a.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(a=>{this._eventDispatcher.emitOutgoingEvent(a)})),this._decorations=new eP(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(a=>{try{let b=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(b,a)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(bO.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new ea)})),this._register(this._themeService.onDidColorThemeChange(a=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new d8(a))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(a){this._eventDispatcher.addViewEventHandler(a)}removeViewEventHandler(a){this._eventDispatcher.removeViewEventHandler(a)}_getCustomLineHeights(){return this._configuration.options.get(5)?this.model.getCustomLineHeightsDecorations(this._editorId).map(a=>{let b=a.range.startLineNumber,c=this.coordinatesConverter.convertModelRangeToViewRange(new ab.Q(b,1,b,this.model.getLineMaxColumn(b)));return{decorationId:a.id,startLineNumber:c.startLineNumber,endLineNumber:c.endLineNumber,lineHeight:a.options.lineHeight||0}}):[]}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){let a=this.viewLayout.getLinesViewportData(),b=new ab.Q(a.startLineNumber,this.getLineMinColumn(a.startLineNumber),a.endLineNumber,this.getLineMaxColumn(a.endLineNumber));return this._toModelVisibleRanges(b)}visibleLinesStabilized(){let a=this.getModelVisibleRanges();this._attachedView.setVisibleLines(a,!0)}_handleVisibleLinesChanged(){let a=this.getModelVisibleRanges();this._attachedView.setVisibleLines(a,!1)}setHasFocus(a){this._hasFocus=a,this._cursor.setHasFocus(a),this._eventDispatcher.emitSingleViewEvent(new d0(a)),this._eventDispatcher.emitOutgoingEvent(new ef(!a,a))}setHasWidgetFocus(a){this._eventDispatcher.emitOutgoingEvent(new eg(!a,a))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new dW)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new dX)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){let a=new aa.y(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber));return new e9(this.coordinatesConverter.convertViewPositionToModelPosition(a),this._viewportStart.startLineDelta)}return new e9(null,0)}_onConfigurationChanged(a,b){let c=this._captureStableViewport(),d=this._configuration.options,e=d.get(59),f=d.get(156),g=d.get(166),h=d.get(155),i=d.get(146);this._lines.setWrappingSettings(e,f,g.wrappingColumn,h,i)&&(a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),this._updateConfigurationViewLineCount.schedule()),b.hasChanged(104)&&(this._decorations.reset(),a.emitViewEvent(new d$(null))),b.hasChanged(112)&&(this._decorations.reset(),a.emitViewEvent(new d$(null))),a.emitViewEvent(new dY(b)),this.viewLayout.onConfigurationChanged(b),c.recoverViewportStart(this.coordinatesConverter,this.viewLayout),dP.d$.shouldRecreate(b)&&(this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(a=>{try{let b=this._eventDispatcher.beginEmitViewEvents(),c=!1,d=!1,e=a instanceof du.Ic?a.rawContentChangedEvent.changes:a.changes,f=a instanceof du.Ic?a.rawContentChangedEvent.versionId:null,g=this._lines.createLineBreaksComputer();for(let a of e)switch(a.changeType){case 4:for(let b=0;b<a.detail.length;b++){let c=a.detail[b],d=a.injectedTexts[b];d&&(d=d.filter(a=>!a.ownerId||a.ownerId===this._editorId)),g.addRequest(c,d,null)}break;case 2:{let b=null;a.injectedText&&(b=a.injectedText.filter(a=>!a.ownerId||a.ownerId===this._editorId)),g.addRequest(a.detail,b,null)}}let h=g.finalize(),i=new A.j3(h);for(let a of e)switch(a.changeType){case 1:this._lines.onModelFlushed(),b.emitViewEvent(new d_),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),c=!0;break;case 3:{let d=this._lines.onModelLinesDeleted(f,a.fromLineNumber,a.toLineNumber);null!==d&&(b.emitViewEvent(d),this.viewLayout.onLinesDeleted(d.fromLineNumber,d.toLineNumber)),c=!0;break}case 4:{let d=i.takeCount(a.detail.length),e=this._lines.onModelLinesInserted(f,a.fromLineNumber,a.toLineNumber,d);null!==e&&(b.emitViewEvent(e),this.viewLayout.onLinesInserted(e.fromLineNumber,e.toLineNumber)),c=!0;break}case 2:{let c=i.dequeue(),[e,g,h,j]=this._lines.onModelLineChanged(f,a.lineNumber,c);d=e,g&&b.emitViewEvent(g),h&&(b.emitViewEvent(h),this.viewLayout.onLinesInserted(h.fromLineNumber,h.toLineNumber)),j&&(b.emitViewEvent(j),this.viewLayout.onLinesDeleted(j.fromLineNumber,j.toLineNumber))}}null!==f&&this._lines.acceptVersionId(f),this.viewLayout.onHeightMaybeChanged(),!c&&d&&(b.emitViewEvent(new d2),b.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(b),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}let b=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&b){let a=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(a){let b=this.coordinatesConverter.convertModelPositionToViewPosition(a.getStartPosition()),c=this.viewLayout.getVerticalOffsetForLineNumber(b.lineNumber);this.viewLayout.setScrollPosition({scrollTop:c+this._viewportStart.startLineDelta},1)}}try{let b=this._eventDispatcher.beginEmitViewEvents();a instanceof du.Ic&&b.emitOutgoingEvent(new ep(a.contentChangedEvent)),this._cursor.onModelContentChanged(b,a)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._configuration.options.get(5)&&this._register(this.model.onDidChangeLineHeight(a=>{let b=a.changes.filter(a=>a.ownerId===this._editorId||0===a.ownerId);if(this.viewLayout.changeSpecialLineHeights(a=>{for(let c of b){let{decorationId:b,lineNumber:d,lineHeight:e}=c,f=this.coordinatesConverter.convertModelRangeToViewRange(new ab.Q(d,1,d,this.model.getLineMaxColumn(d)));null!==e?a.insertOrChangeCustomLineHeight(b,f.startLineNumber,f.endLineNumber,e):a.removeCustomLineHeight(b)}}),b.length>0){let a=new du.zq(b);this._eventDispatcher.emitOutgoingEvent(new es(a))}})),this._configuration.options.get(172)&&this._register(this.model.onDidChangeFont(a=>{let b=a.changes.filter(a=>a.ownerId===this._editorId||0===a.ownerId);if(b.length>0){let a=new du.dT(b);this._eventDispatcher.emitOutgoingEvent(new et(a))}})),this._register(this.model.onDidChangeTokens(a=>{let b=[];for(let c=0,d=a.ranges.length;c<d;c++){let d=a.ranges[c],e=this.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(d.fromLineNumber,1)).lineNumber,f=this.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(d.toLineNumber,this.model.getLineMaxColumn(d.toLineNumber))).lineNumber;b[c]={fromLineNumber:e,toLineNumber:f}}this._eventDispatcher.emitSingleViewEvent(new d9(b)),this._eventDispatcher.emitOutgoingEvent(new er(a))})),this._register(this.model.onDidChangeLanguageConfiguration(a=>{this._eventDispatcher.emitSingleViewEvent(new d1),this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new eo(a))})),this._register(this.model.onDidChangeLanguage(a=>{this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new en(a))})),this._register(this.model.onDidChangeOptions(a=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{let a=this._eventDispatcher.beginEmitViewEvents();a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new eq(a))})),this._register(this.model.onDidChangeDecorations(a=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new d$(a)),this._eventDispatcher.emitOutgoingEvent(new em(a))}))}getFontSizeAtPosition(a){if(!this._configuration.options.get(172))return null;let b=this.model.getFontDecorationsInRange(ab.Q.fromPositions(a),this._editorId),c=this._configuration.options.get(59).fontSize+"px";for(let a of b)if(a.options.fontSize){c=a.options.fontSize;break}return c}setHiddenAreas(a,b,c){this.hiddenAreasModel.setHiddenAreas(b,a);let d=this.hiddenAreasModel.getMergedRanges();if(d===this.previousHiddenAreas&&!c)return;this.previousHiddenAreas=d;let e=this._captureStableViewport(),f=!1;try{let a=this._eventDispatcher.beginEmitViewEvents();(f=this._lines.setHiddenAreas(d))&&(a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),this.viewLayout.onHeightMaybeChanged());let b=e.viewportStartModelPosition?.lineNumber;b&&d.some(a=>a.startLineNumber<=b&&b<=a.endLineNumber)||e.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),f&&this._eventDispatcher.emitOutgoingEvent(new ej)}getVisibleRangesPlusViewportAboveBelow(){let a=this._configuration.options.get(165),b=this._configuration.options.get(75),c=Math.max(20,Math.round(a.height/b)),d=this.viewLayout.getLinesViewportData(),e=Math.max(1,d.completelyVisibleStartLineNumber-c),f=Math.min(this.getLineCount(),d.completelyVisibleEndLineNumber+c);return this._toModelVisibleRanges(new ab.Q(e,this.getLineMinColumn(e),f,this.getLineMaxColumn(f)))}getVisibleRanges(){let a=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(a)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(a){let b=this.coordinatesConverter.convertViewRangeToModelRange(a),c=this._lines.getHiddenAreas();if(0===c.length)return[b];let d=[],e=0,f=b.startLineNumber,g=b.startColumn,h=b.endLineNumber,i=b.endColumn;for(let a=0,b=c.length;a<b;a++){let b=c[a].startLineNumber,i=c[a].endLineNumber;!(i<f)&&(b>h||(f<b&&(d[e++]=new ab.Q(f,g,b-1,this.model.getLineMaxColumn(b-1))),f=i+1,g=1))}return(f<h||f===h&&g<i)&&(d[e++]=new ab.Q(f,g,h,i)),d}getCompletelyVisibleViewRange(){let a=this.viewLayout.getLinesViewportData(),b=a.completelyVisibleStartLineNumber,c=a.completelyVisibleEndLineNumber;return new ab.Q(b,this.getLineMinColumn(b),c,this.getLineMaxColumn(c))}getCompletelyVisibleViewRangeAtScrollTop(a){let b=this.viewLayout.getLinesViewportDataAtScrollTop(a),c=b.completelyVisibleStartLineNumber,d=b.completelyVisibleEndLineNumber;return new ab.Q(c,this.getLineMinColumn(c),d,this.getLineMaxColumn(d))}saveState(){let a=this.viewLayout.saveState(),b=a.scrollTop,c=this.viewLayout.getLineNumberAtVerticalOffset(b),d=this.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(c,this.getLineMinColumn(c))),e=this.viewLayout.getVerticalOffsetForLineNumber(c)-b;return{scrollLeft:a.scrollLeft,firstPosition:d,firstPositionDeltaTop:e}}reduceRestoreState(a){if(void 0===a.firstPosition)return this._reduceRestoreStateCompatibility(a);let b=this.model.validatePosition(a.firstPosition),c=this.coordinatesConverter.convertModelPositionToViewPosition(b),d=this.viewLayout.getVerticalOffsetForLineNumber(c.lineNumber)-a.firstPositionDeltaTop;return{scrollLeft:a.scrollLeft,scrollTop:d}}_reduceRestoreStateCompatibility(a){return{scrollLeft:a.scrollLeft,scrollTop:a.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(a,b,c){this._viewportStart.update(this,a)}getActiveIndentGuide(a,b,c){return this._lines.getActiveIndentGuide(a,b,c)}getLinesIndentGuides(a,b){return this._lines.getViewLinesIndentGuides(a,b)}getBracketGuidesInRangeByLine(a,b,c,d){return this._lines.getViewLinesBracketGuides(a,b,c,d)}getLineContent(a){return this._lines.getViewLineContent(a)}getLineLength(a){return this._lines.getViewLineLength(a)}getLineMinColumn(a){return this._lines.getViewLineMinColumn(a)}getLineMaxColumn(a){return this._lines.getViewLineMaxColumn(a)}getLineFirstNonWhitespaceColumn(a){let b=aK.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=aK.lT(this.getLineContent(a));return -1===b?0:b+2}getMinimapDecorationsInRange(a){return this._decorations.getMinimapDecorationsInRange(a)}getDecorationsInViewport(a){return this._decorations.getDecorationsViewportData(a).decorations}getInjectedTextAt(a){return this._lines.getInjectedTextAt(a)}_getTextDirection(a,b){let c=0;for(let d of b){let b=d.range;if(b.startLineNumber>a||b.endLineNumber<a)continue;let e=d.options.textDirection;e===ae.z4.RTL?c++:e===ae.z4.LTR&&c--}return c>0?ae.z4.RTL:ae.z4.LTR}getTextDirection(a){let b=this._decorations.getDecorationsOnLine(a);return this._getTextDirection(a,b.decorations)}getViewportViewLineRenderingData(a,b){let c=this._decorations.getDecorationsViewportData(a),d=c.inlineDecorations[b-a.startLineNumber];return this._getViewLineRenderingData(b,d,c.hasVariableFonts,c.decorations)}getViewLineRenderingData(a){let b=this._decorations.getDecorationsOnLine(a);return this._getViewLineRenderingData(a,b.inlineDecorations[0],b.hasVariableFonts,b.decorations)}_getViewLineRenderingData(a,b,c,d){let e=this.model.mightContainRTL(),f=this.model.mightContainNonBasicASCII(),g=this.getTabSize(),h=this._lines.getViewLineData(a);return h.inlineDecorations&&(b=[...b,...h.inlineDecorations.map(b=>b.toInlineDecoration(a))]),new ca.qL(h.minColumn,h.maxColumn,h.content,h.continuesWithWrappedLine,e,f,h.tokens,b,g,h.startVisibleColumn,this._getTextDirection(a,d),c)}getViewLineData(a){return this._lines.getViewLineData(a)}getMinimapLinesRenderingData(a,b,c){let d=this._lines.getViewLinesData(a,b,c);return new ca.nt(this.getTabSize(),d)}getAllOverviewRulerDecorations(a){let b=this.model.getOverviewRulerDecorations(this._editorId,(0,K.$C)(this._configuration.options),(0,K.Vs)(this._configuration.options)),c=new e6;for(let d of b){let b=d.options,e=b.overviewRuler;if(!e)continue;let f=e.position;if(0===f)continue;let g=e.getColor(a.value),h=this.coordinatesConverter.getViewLineNumberOfModelPosition(d.range.startLineNumber,d.range.startColumn),i=this.coordinatesConverter.getViewLineNumberOfModelPosition(d.range.endLineNumber,d.range.endColumn);c.accept(g,b.zIndex,h,i,f)}return c.asArray}_invalidateDecorationsColorCache(){for(let a of this.model.getOverviewRulerDecorations()){let b=a.options.overviewRuler;b?.invalidateCachedColor();let c=a.options.minimap;c?.invalidateCachedColor()}}getValueInRange(a,b){let c=this.coordinatesConverter.convertViewRangeToModelRange(a);return this.model.getValueInRange(c,b)}getValueLengthInRange(a,b){let c=this.coordinatesConverter.convertViewRangeToModelRange(a);return this.model.getValueLengthInRange(c,b)}modifyPosition(a,b){let c=this.coordinatesConverter.convertViewPositionToModelPosition(a),d=this.model.modifyPosition(c,b);return this.coordinatesConverter.convertModelPositionToViewPosition(d)}deduceModelPositionRelativeToViewPosition(a,b,c){let d=this.coordinatesConverter.convertViewPositionToModelPosition(a);2===this.model.getEOL().length&&(b<0?b-=c:b+=c);let e=this.model.getOffsetAt(d)+b;return this.model.getPositionAt(e)}getPlainTextToCopy(a,b,c){let d=c?"\r\n":this.model.getEOL();(a=a.slice(0)).sort(ab.Q.compareRangesUsingStarts);let e=!1,f=!1;for(let b of a)b.isEmpty()?e=!0:f=!0;if(!f){if(!b)return"";let c=a.map(a=>a.startLineNumber),e="";for(let a=0;a<c.length;a++)a>0&&c[a-1]===c[a]||(e+=this.model.getLineContent(c[a])+d);return e}if(e&&b){let b=[],d=0;for(let e of a){let a=e.startLineNumber;e.isEmpty()?a!==d&&b.push(this.model.getLineContent(a)):b.push(this.model.getValueInRange(e,2*!!c)),d=a}return 1===b.length?b[0]:b}let g=[];for(let b of a)b.isEmpty()||g.push(this.model.getValueInRange(b,2*!!c));return 1===g.length?g[0]:g}getRichTextToCopy(a,b){let c,d=this.model.getLanguageId();if(d===eB.vH||1!==a.length)return null;let e=a[0];if(e.isEmpty()){if(!b)return null;let a=e.startLineNumber;e=new ab.Q(a,this.model.getLineMinColumn(a),a,this.model.getLineMaxColumn(a))}let f=this._configuration.options.get(59),g=this._getColorMap();return/[:;\\\/<>]/.test(f.fontFamily)||f.fontFamily===K.jU.fontFamily?c=K.jU.fontFamily:(c=(c=f.fontFamily).replace(/"/g,"'"),!/[,']/.test(c)&&/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${K.jU.fontFamily}`),{mode:d,html:`<div style="color: ${g[1]};background-color: ${g[2]};font-family: ${c};font-weight: ${f.fontWeight};font-size: ${f.fontSize}px;line-height: ${f.lineHeight}px;white-space: pre;">`+this._getHTMLToCopy(e,g)+"</div>"}}_getHTMLToCopy(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn,g=this.getTabSize(),h="";for(let a=c;a<=e;a++){let i=this.model.tokenization.getLineTokens(a),j=i.getLineContent(),k=a===c?d-1:0,l=a===e?f-1:j.length;""===j?h+="<br>":h+=(0,eC.s0)(j,i.inflate(),b,k,l,g,C.uF)}return h}_getColorMap(){let a=bN.dG.getColorMap(),b=["#000000"];if(a)for(let c=1,d=a.length;c<d;c++)b[c]=b9.Q1.Format.CSS.formatHex(a[c]);return b}getPrimaryCursorState(){return this._cursor.getPrimaryCursorState()}getLastAddedCursorIndex(){return this._cursor.getLastAddedCursorIndex()}getCursorStates(){return this._cursor.getCursorStates()}setCursorStates(a,b,c){return this._withViewEventsCollector(d=>this._cursor.setStates(d,a,b,c))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(a){this._cursor.setCursorColumnSelectData(a)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(a){this._cursor.setPrevEditOperationType(a)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(a,b,c=0){this._withViewEventsCollector(d=>this._cursor.setSelections(d,a,b,c))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(a){this._withViewEventsCollector(b=>this._cursor.restoreState(b,a))}_executeCursorEdit(a){if(this._cursor.context.cursorConfig.readOnly)return void this._eventDispatcher.emitOutgoingEvent(new el);this._withViewEventsCollector(a)}executeEdits(a,b,c,d){this._executeCursorEdit(e=>this._cursor.executeEdits(e,a,b,c,d))}startComposition(){this._executeCursorEdit(a=>this._cursor.startComposition(a))}endComposition(a){this._executeCursorEdit(b=>this._cursor.endComposition(b,a))}type(a,b){this._executeCursorEdit(c=>this._cursor.type(c,a,b))}compositionType(a,b,c,d,e){this._executeCursorEdit(f=>this._cursor.compositionType(f,a,b,c,d,e))}paste(a,b,c,d){this._executeCursorEdit(e=>this._cursor.paste(e,a,b,c,d))}cut(a){this._executeCursorEdit(b=>this._cursor.cut(b,a))}executeCommand(a,b){this._executeCursorEdit(c=>this._cursor.executeCommand(c,a,b))}executeCommands(a,b){this._executeCursorEdit(c=>this._cursor.executeCommands(c,a,b))}revealAllCursors(a,b,c=!1){this._withViewEventsCollector(d=>this._cursor.revealAll(d,a,c,0,b,0))}revealPrimaryCursor(a,b,c=!1){this._withViewEventsCollector(d=>this._cursor.revealPrimary(d,a,c,0,b,0))}revealTopMostCursor(a){let b=this._cursor.getTopMostViewPosition(),c=new ab.Q(b.lineNumber,b.column,b.lineNumber,b.column);this._withViewEventsCollector(b=>b.emitViewEvent(new d6(a,!1,c,null,0,!0,0)))}revealBottomMostCursor(a){let b=this._cursor.getBottomMostViewPosition(),c=new ab.Q(b.lineNumber,b.column,b.lineNumber,b.column);this._withViewEventsCollector(b=>b.emitViewEvent(new d6(a,!1,c,null,0,!0,0)))}revealRange(a,b,c,d,e){this._withViewEventsCollector(f=>f.emitViewEvent(new d6(a,!1,c,null,d,b,e)))}changeWhitespace(a){this.viewLayout.changeWhitespace(a)&&(this._eventDispatcher.emitSingleViewEvent(new eb),this._eventDispatcher.emitOutgoingEvent(new ei))}_withViewEventsCollector(a){return this._transactionalTarget.batchChanges(()=>{try{let b=this._eventDispatcher.beginEmitViewEvents();return a(b)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(a){this._withViewEventsCollector(()=>{a()})}normalizePosition(a,b){return this._lines.normalizePosition(a,b)}getLineIndentColumn(a){return this._lines.getLineIndentColumn(a)}}class e5{static create(a){let b=a._setTrackedRange(null,new ab.Q(1,1,1,1),1);return new e5(a,1,!1,b,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(a,b,c,d,e){this._model=a,this._viewLineNumber=b,this._isValid=c,this._modelTrackedRange=d,this._startLineDelta=e}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(a,b){let c=a.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(b,a.getLineMinColumn(b))),d=a.model._setTrackedRange(this._modelTrackedRange,new ab.Q(c.lineNumber,c.column,c.lineNumber,c.column),1),e=a.viewLayout.getVerticalOffsetForLineNumber(b),f=a.viewLayout.getCurrentScrollTop();this._viewLineNumber=b,this._isValid=!0,this._modelTrackedRange=d,this._startLineDelta=f-e}invalidate(){this._isValid=!1}}class e6{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(a,b,c,d,e){let f=this._asMap[a];if(f){let a=f.data,b=a[a.length-3],g=a[a.length-1];if(b===e&&g+1>=c){d>g&&(a[a.length-1]=d);return}a.push(e,c,d)}else{let f=new ca.Uv(a,b,[e,c,d]);this._asMap[a]=f,this.asArray.push(f)}}}class e7{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(a,b){let c=this.hiddenAreas.get(a);c&&e8(c,b)||(this.hiddenAreas.set(a,b),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;let a=Array.from(this.hiddenAreas.values()).reduce((a,b)=>(function(a,b){let c=[],d=0,e=0;for(;d<a.length&&e<b.length;){let f=a[d],g=b[e];if(f.endLineNumber<g.startLineNumber-1)c.push(a[d++]);else if(g.endLineNumber<f.startLineNumber-1)c.push(b[e++]);else{let a=Math.min(f.startLineNumber,g.startLineNumber),b=Math.max(f.endLineNumber,g.endLineNumber);c.push(new ab.Q(a,1,b,1)),d++,e++}}for(;d<a.length;)c.push(a[d++]);for(;e<b.length;)c.push(b[e++]);return c})(a,b),[]);return e8(this.ranges,a)||(this.ranges=a),this.ranges}}function e8(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(!a[c].equalsRange(b[c]))return!1;return!0}class e9{constructor(a,b){this.viewportStartModelPosition=a,this.startLineDelta=b}recoverViewportStart(a,b){if(!this.viewportStartModelPosition)return;let c=a.convertModelPositionToViewPosition(this.viewportStartModelPosition),d=b.getVerticalOffsetForLineNumber(c.lineNumber);b.setScrollPosition({scrollTop:d+this.startLineDelta},1)}}var fa=c(70511),fb=c(45367),fc=c(52913),fd=c(22395),fe=c(79487),ff=function(a,b){return function(c,d){b(c,d,a)}};let fg=class extends w.jG{static{p=this}static{this.dropIntoEditorDecorationOptions=dE.kI.register({description:"workbench-dnd-target",className:"dnd-target"})}get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}get contextKeyService(){return this._contextKeyService}constructor(a,b,c,d,e,f,g,h,i,j,k,l){let m;super(),this.languageConfigurationService=k,this._deliveryQueue=(0,v.Qy)(),this._contributions=this._register(new dy),this._onDidDispose=this._register(new v.vl),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeLineHeight=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeLineHeight=this._onDidChangeLineHeight.event,this._onDidChangeFont=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeFont=this._onDidChangeFont.event,this._onDidChangeModelTokens=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new fj({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new fj({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new fk(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new fk(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new fk(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new fk(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onWillTriggerEditorOperationEvent=this._register(new v.vl),this._onBeginUpdate=this._register(new v.vl),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new v.vl),this.onEndUpdate=this._onEndUpdate.event,this._onBeforeExecuteEdit=this._register(new v.vl),this.onBeforeExecuteEdit=this._onBeforeExecuteEdit.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),this.inComposition=!1,e.willCreateCodeEditor();let n={...b};if(this._domElement=a,this._overflowWidgetsDomNode=n.overflowWidgetsDomNode,delete n.overflowWidgetsDomNode,this._id=++fh,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=c.telemetryData,this._configuration=this._register(this._createConfiguration(c.isSimpleWidget||!1,c.contextMenuId??(c.isSimpleWidget?fe.D8.SimpleEditorContext:fe.D8.EditorContext),n,j)),this._register(this._configuration.onDidChange(a=>{this._onDidChangeConfiguration.fire(a);let b=this._configuration.options;if(a.hasChanged(165)){let a=b.get(165);this._onDidLayoutChange.fire(a)}})),this._contextKeyService=this._register(g.createScoped(this._domElement)),c.contextKeyValues)for(let[a,b]of Object.entries(c.contextKeyValues))this._contextKeyService.createKey(a,b);for(let a of(this._notificationService=i,this._codeEditorService=e,this._commandService=f,this._themeService=h,this._register(new fl(this,this._contextKeyService)),this._register(new fm(this,this._contextKeyService,l)),this._instantiationService=this._register(d.createChild(new fc.a([fb.fN,this._contextKeyService]))),this._modelData=null,this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={},m=Array.isArray(c.contributions)?c.contributions:r.dS.getEditorContributions(),this._contributions.initialize(this,m,this._instantiationService),r.dS.getEditorActions())){if(this._actions.has(a.id)){(0,u.dz)(Error(`Cannot have two actions with the same id ${a.id}`));continue}let b=new dA.f(a.id,a.label,a.alias,a.metadata,a.precondition??void 0,b=>this._instantiationService.invokeFunction(c=>Promise.resolve(a.runEditorCommand(c,this,b))),this._contextKeyService);this._actions.set(b.id,b)}let o=()=>!this._configuration.options.get(104)&&this._configuration.options.get(43).enabled;this._register(new t.pN(this._domElement,{onDragOver:a=>{if(!o())return;let b=this.getTargetAtClientPoint(a.clientX,a.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async a=>{if(!o()||(this.removeDropIndicator(),!a.dataTransfer))return;let b=this.getTargetAtClientPoint(a.clientX,a.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:a})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(a){this._modelData?.view.writeScreenReaderContent(a)}_createConfiguration(a,b,c,d){return new Q(a,b,c,this._domElement,d)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return dB._.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(a){return this._instantiationService.invokeFunction(a)}updateOptions(a){this._configuration.updateOptions(a||{})}getOptions(){return this._configuration.options}getOption(a){return this._configuration.options.get(a)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(a){return this._modelData?dz.z.getWordAtPosition(this._modelData.model,this._configuration.options.get(148),this._configuration.options.get(147),a):null}getValue(a=null){if(!this._modelData)return"";let b=!!a&&!!a.preserveBOM,c=0;return a&&a.lineEnding&&"\n"===a.lineEnding?c=1:a&&a.lineEnding&&"\r\n"===a.lineEnding&&(c=2),this._modelData.model.getValue(c,b)}setValue(a){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(a)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(a=null){try{if(this._beginUpdate(),null===this._modelData&&null===a||this._modelData&&this._modelData.model===a)return;let b={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:a?.uri||null};this._onWillChangeModel.fire(b);let c=this.hasTextFocus(),d=this._detachModel();this._attachModel(a),this.hasModel()?c&&this.focus():(this._editorTextFocus.setValue(!1),this._editorWidgetFocus.setValue(!1)),this._removeDecorationTypes(),this._onDidChangeModel.fire(b),this._postDetachModelCleanup(d),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(let a in this._decorationTypeSubtypes){let b=this._decorationTypeSubtypes[a];for(let c in b)this._removeDecorationType(a+"-"+c)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(a,b,c,d){let e=a.model.validatePosition({lineNumber:b,column:c}),f=a.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e);return a.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(f.lineNumber,d)}getTopForLineNumber(a,b=!1){return this._modelData?p._getVerticalOffsetForPosition(this._modelData,a,1,b):-1}getTopForPosition(a,b){return this._modelData?p._getVerticalOffsetForPosition(this._modelData,a,b,!1):-1}static _getVerticalOffsetForPosition(a,b,c,d=!1){let e=a.model.validatePosition({lineNumber:b,column:c}),f=a.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e);return a.viewModel.viewLayout.getVerticalOffsetForLineNumber(f.lineNumber,d)}getBottomForLineNumber(a,b=!1){if(!this._modelData)return -1;let c=this._modelData.model.getLineMaxColumn(a);return p._getVerticalOffsetAfterPosition(this._modelData,a,c,b)}getLineHeightForPosition(a){if(!this._modelData)return -1;let b=this._modelData.viewModel,c=b.coordinatesConverter,d=aa.y.lift(a);if(c.modelPositionIsVisible(d)){let a=c.convertModelPositionToViewPosition(d);return b.viewLayout.getLineHeightForLineNumber(a.lineNumber)}return 0}setHiddenAreas(a,b,c){this._modelData?.viewModel.setHiddenAreas(a.map(a=>ab.Q.lift(a)),b,c)}getVisibleColumnFromPosition(a){if(!this._modelData)return a.column;let b=this._modelData.model.validatePosition(a),c=this._modelData.model.getOptions().tabSize;return ac.A.visibleColumnFromColumn(this._modelData.model.getLineContent(b.lineNumber),b.column,c)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(a,b="api"){if(this._modelData){if(!aa.y.isIPosition(a))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(b,[{selectionStartLineNumber:a.lineNumber,selectionStartColumn:a.column,positionLineNumber:a.lineNumber,positionColumn:a.column}])}}_sendRevealRange(a,b,c,d){if(!this._modelData)return;if(!ab.Q.isIRange(a))throw Error("Invalid arguments");let e=this._modelData.model.validateRange(a),f=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(e);this._modelData.viewModel.revealRange("api",c,f,b,d)}revealLine(a,b=0){this._revealLine(a,0,b)}revealLineInCenter(a,b=0){this._revealLine(a,1,b)}revealLineInCenterIfOutsideViewport(a,b=0){this._revealLine(a,2,b)}revealLineNearTop(a,b=0){this._revealLine(a,5,b)}_revealLine(a,b,c){if("number"!=typeof a)throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a,1,a,1),b,!1,c)}revealPosition(a,b=0){this._revealPosition(a,0,!0,b)}revealPositionInCenter(a,b=0){this._revealPosition(a,1,!0,b)}revealPositionInCenterIfOutsideViewport(a,b=0){this._revealPosition(a,2,!0,b)}revealPositionNearTop(a,b=0){this._revealPosition(a,5,!0,b)}_revealPosition(a,b,c,d){if(!aa.y.isIPosition(a))throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a.lineNumber,a.column,a.lineNumber,a.column),b,c,d)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(a,b="api"){let c=aw.L.isISelection(a),d=ab.Q.isIRange(a);if(!c&&!d)throw Error("Invalid arguments");if(c)this._setSelectionImpl(a,b);else if(d){let c={selectionStartLineNumber:a.startLineNumber,selectionStartColumn:a.startColumn,positionLineNumber:a.endLineNumber,positionColumn:a.endColumn};this._setSelectionImpl(c,b)}}_setSelectionImpl(a,b){if(!this._modelData)return;let c=new aw.L(a.selectionStartLineNumber,a.selectionStartColumn,a.positionLineNumber,a.positionColumn);this._modelData.viewModel.setSelections(b,[c])}revealLines(a,b,c=0){this._revealLines(a,b,0,c)}revealLinesInCenter(a,b,c=0){this._revealLines(a,b,1,c)}revealLinesInCenterIfOutsideViewport(a,b,c=0){this._revealLines(a,b,2,c)}revealLinesNearTop(a,b,c=0){this._revealLines(a,b,5,c)}_revealLines(a,b,c,d){if("number"!=typeof a||"number"!=typeof b)throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a,1,b,1),c,!1,d)}revealRange(a,b=0,c=!1,d=!0){this._revealRange(a,+!!c,d,b)}revealRangeInCenter(a,b=0){this._revealRange(a,1,!0,b)}revealRangeInCenterIfOutsideViewport(a,b=0){this._revealRange(a,2,!0,b)}revealRangeNearTop(a,b=0){this._revealRange(a,5,!0,b)}revealRangeNearTopIfOutsideViewport(a,b=0){this._revealRange(a,6,!0,b)}revealRangeAtTop(a,b=0){this._revealRange(a,3,!0,b)}_revealRange(a,b,c,d){if(!ab.Q.isIRange(a))throw Error("Invalid arguments");this._sendRevealRange(ab.Q.lift(a),b,c,d)}setSelections(a,b="api",c=0){if(this._modelData){if(!a||0===a.length)throw Error("Invalid arguments");for(let b=0,c=a.length;b<c;b++)if(!aw.L.isISelection(a[b]))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(b,a,c)}}getContentWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1}getScrollWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1}getScrollLeft(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1}getContentHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1}getScrollHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1}getScrollTop(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1}setScrollLeft(a,b=1){if(this._modelData){if("number"!=typeof a)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollLeft:a},b)}}setScrollTop(a,b=1){if(this._modelData){if("number"!=typeof a)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollTop:a},b)}}setScrollPosition(a,b=1){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPosition(a,b)}hasPendingScrollAnimation(){return!!this._modelData&&this._modelData.viewModel.viewLayout.hasPendingScrollAnimation()}saveViewState(){if(!this._modelData)return null;let a=this._contributions.saveViewState();return{cursorState:this._modelData.viewModel.saveCursorState(),viewState:this._modelData.viewModel.saveState(),contributionsState:a}}restoreViewState(a){if(this._modelData&&this._modelData.hasRealView&&a&&a.cursorState&&a.viewState){let b=a.cursorState;Array.isArray(b)?b.length>0&&this._modelData.viewModel.restoreCursorState(b):this._modelData.viewModel.restoreCursorState([b]),this._contributions.restoreViewState(a.contributionsState||{});let c=this._modelData.viewModel.reduceRestoreState(a.viewState);this._modelData.view.restoreState(c)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(a){return this._contributions.get(a)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let a=this.getActions();return a.filter(a=>a.isSupported())}getAction(a){return this._actions.get(a)||null}trigger(a,b,c){c=c||{};try{switch(this._onWillTriggerEditorOperationEvent.fire({source:a,handlerId:b,payload:c}),this._beginUpdate(),b){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(a);return;case"type":{let b=c;this._type(a,b.text||"");return}case"replacePreviousChar":{let b=c;this._compositionType(a,b.text||"",b.replaceCharCnt||0,0,0);return}case"compositionType":{let b=c;this._compositionType(a,b.text||"",b.replacePrevCharCnt||0,b.replaceNextCharCnt||0,b.positionDelta||0);return}case"paste":{let b=c;this._paste(a,b.text||"",b.pasteOnNewLine||!1,b.multicursorText||null,b.mode||null,b.clipboardEvent);return}case"cut":this._cut(a);return}let d=this.getAction(b);if(d)return void Promise.resolve(d.run(c)).then(void 0,u.dz);if(!this._modelData||this._triggerEditorCommand(a,b,c))return;this._triggerCommand(b,c)}finally{this._endUpdate()}}_triggerCommand(a,b){this._commandService.executeCommand(a,b)}_startComposition(){this._modelData&&(this.inComposition=!0,this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(a){this._modelData&&(this.inComposition=!1,this._modelData.viewModel.endComposition(a),this._onDidCompositionEnd.fire())}_type(a,b){this._modelData&&0!==b.length&&("keyboard"===a&&this._onWillType.fire(b),this._modelData.viewModel.type(b,a),"keyboard"===a&&this._onDidType.fire(b))}_compositionType(a,b,c,d,e){this._modelData&&this._modelData.viewModel.compositionType(b,c,d,e,a)}_paste(a,b,c,d,e,f){if(!this._modelData)return;let g=this._modelData.viewModel,h=g.getSelection().getStartPosition();g.paste(b,c,d,a);let i=g.getSelection().getStartPosition();"keyboard"===a&&this._onDidPaste.fire({clipboardEvent:f,range:new ab.Q(h.lineNumber,h.column,i.lineNumber,i.column),languageId:e})}_cut(a){this._modelData&&this._modelData.viewModel.cut(a)}_triggerEditorCommand(a,b,c){let d=r.dS.getEditorCommand(b);return!!d&&((c=c||{}).source=a,this._instantiationService.invokeFunction(a=>{Promise.resolve(d.runEditorCommand(a,this,c)).then(void 0,u.dz)}),!0)}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!(!this._modelData||this._configuration.options.get(104))&&(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!(!this._modelData||this._configuration.options.get(104))&&(this._modelData.model.popStackElement(),!0)}edit(a,b){return this.executeEdits(b,a.replacements.map(a=>({range:a.range,text:a.text})),void 0)}executeEdits(a,b,c){let d,e,f;return!(!this._modelData||this._configuration.options.get(104))&&(d=c?Array.isArray(c)?()=>c:c:()=>null,a instanceof eu.OL?(f=a,e=a.metadata.source):(f=eu.dg.unknown({name:e}),e=a),this._onBeforeExecuteEdit.fire({source:e??void 0}),this._modelData.viewModel.executeEdits(e,b,d,f),!0)}executeCommand(a,b){this._modelData&&this._modelData.viewModel.executeCommand(b,a)}executeCommands(a,b){this._modelData&&this._modelData.viewModel.executeCommands(b,a)}createDecorationsCollection(a){return new fn(this,a)}changeDecorations(a){return this._modelData?this._modelData.model.changeDecorations(a,this._id):null}getLineDecorations(a){if(!this._modelData)return null;let b=this._configuration.options;return this._modelData.model.getLineDecorations(a,this._id,(0,K.$C)(b),(0,K.Vs)(b))}getDecorationsInRange(a){if(!this._modelData)return null;let b=this._configuration.options;return this._modelData.model.getDecorationsInRange(a,this._id,(0,K.$C)(b),(0,K.Vs)(b))}getFontSizeAtPosition(a){return this._modelData?this._modelData.viewModel.getFontSizeAtPosition(a):null}deltaDecorations(a,b){return this._modelData?0===a.length&&0===b.length?a:this._modelData.model.deltaDecorations(a,b,this._id):[]}removeDecorations(a){this._modelData&&0!==a.length&&this._modelData.model.changeDecorations(b=>{b.deltaDecorations(a,[])})}removeDecorationsByType(a){let b=this._decorationTypeKeysToIds[a];b&&this.changeDecorations(a=>a.deltaDecorations(b,[])),this._decorationTypeKeysToIds.hasOwnProperty(a)&&delete this._decorationTypeKeysToIds[a],this._decorationTypeSubtypes.hasOwnProperty(a)&&delete this._decorationTypeSubtypes[a]}getLayoutInfo(){return this._configuration.options.get(165)}createOverviewRuler(a){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(a):null}getContainerDomNode(){return this._domElement}getDomNode(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null}delegateVerticalScrollbarPointerDown(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateScrollFromMouseWheelEvent(a)}layout(a,b=!1){this._configuration.observeContainer(a),b||this.render()}focus(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()}hasTextFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isFocused()}hasWidgetFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isWidgetFocused()}addContentWidget(a){let b={widget:a,position:a.getPosition()};this._contentWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting a content widget with the same id:"+a.getId()),this._contentWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(b)}layoutContentWidget(a){let b=a.getId();if(this._contentWidgets.hasOwnProperty(b)){let c=this._contentWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(c)}}removeContentWidget(a){let b=a.getId();if(this._contentWidgets.hasOwnProperty(b)){let a=this._contentWidgets[b];delete this._contentWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(a)}}addOverlayWidget(a){let b={widget:a,position:a.getPosition()};this._overlayWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(b)}layoutOverlayWidget(a){let b=a.getId();if(this._overlayWidgets.hasOwnProperty(b)){let c=this._overlayWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(c)}}removeOverlayWidget(a){let b=a.getId();if(this._overlayWidgets.hasOwnProperty(b)){let a=this._overlayWidgets[b];delete this._overlayWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(a)}}addGlyphMarginWidget(a){let b={widget:a,position:a.getPosition()};this._glyphMarginWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(b)}layoutGlyphMarginWidget(a){let b=a.getId();if(this._glyphMarginWidgets.hasOwnProperty(b)){let c=this._glyphMarginWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(c)}}removeGlyphMarginWidget(a){let b=a.getId();if(this._glyphMarginWidgets.hasOwnProperty(b)){let a=this._glyphMarginWidgets[b];delete this._glyphMarginWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(a)}}changeViewZones(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.change(a)}getTargetAtClientPoint(a,b){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(a,b):null}getScrolledVisiblePosition(a){if(!this._modelData||!this._modelData.hasRealView)return null;let b=this._modelData.model.validatePosition(a),c=this._configuration.options.get(165),d=p._getVerticalOffsetForPosition(this._modelData,b.lineNumber,b.column)-this.getScrollTop();return{top:d,left:this._modelData.view.getOffsetForColumn(b.lineNumber,b.column)+c.glyphMarginWidth+c.lineNumbersWidth+c.decorationsWidth-this.getScrollLeft(),height:this.getLineHeightForPosition(b)}}getOffsetForColumn(a,b){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(a,b):-1}render(a=!1){this._modelData&&this._modelData.hasRealView&&this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,a)})}setAriaOptions(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(a)}applyFontInfo(a){(0,y.M)(a,this._configuration.options.get(59))}setBanner(a,b){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=a,this._configuration.setReservedHeight(a?b:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(a){if(!a){this._modelData=null;return}let b=[];this._domElement.setAttribute("data-mode-id",a.getLanguageId()),this._configuration.setIsDominatedByLongLines(a.isDominatedByLongLines()),this._configuration.setModelLineCount(a.getLineCount());let c=a.onBeforeAttached(),d=new e4(this._id,this._configuration,a,dw.create(t.zk(this._domElement)),dH.create(this._configuration.options),a=>t.PG(t.zk(this._domElement),a),this.languageConfigurationService,this._themeService,c,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});b.push(a.onWillDispose(()=>this.setModel(null))),b.push(d.onEvent(b=>{switch(b.kind){case 0:this._onDidContentSizeChange.fire(b);break;case 1:this._editorTextFocus.setValue(b.hasFocus);break;case 2:this._editorWidgetFocus.setValue(b.hasFocus);break;case 3:this._onDidScrollChange.fire(b);break;case 4:this._onDidChangeViewZones.fire();break;case 5:this._onDidChangeHiddenAreas.fire();break;case 6:this._onDidAttemptReadOnlyEdit.fire();break;case 7:{if(b.reachedMaxCursorCount){let a=this.getOption(89),b=cQ.kg(80,"The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",a);this._notificationService.prompt(fd.AI.Warning,b,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:cQ.kg(81,"Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}let a=[];for(let c=0,d=b.selections.length;c<d;c++)a[c]=b.selections[c].getPosition();let c={position:a[0],secondaryPositions:a.slice(1),reason:b.reason,source:b.source};this._onDidChangeCursorPosition.fire(c);let d={selection:b.selections[0],secondarySelections:b.selections.slice(1),modelVersionId:b.modelVersionId,oldSelections:b.oldSelections,oldModelVersionId:b.oldModelVersionId,source:b.source,reason:b.reason};this._onDidChangeCursorSelection.fire(d);break}case 8:this._onDidChangeModelDecorations.fire(b.event);break;case 9:this._domElement.setAttribute("data-mode-id",a.getLanguageId()),this._onDidChangeModelLanguage.fire(b.event);break;case 10:this._onDidChangeModelLanguageConfiguration.fire(b.event);break;case 11:this._onDidChangeModelContent.fire(b.event);break;case 12:this._onDidChangeModelOptions.fire(b.event);break;case 13:this._onDidChangeModelTokens.fire(b.event);break;case 14:this._onDidChangeLineHeight.fire(b.event);break;case 15:this._onDidChangeFont.fire(b.event)}}));let[e,f]=this._createView(d);if(f){this._domElement.appendChild(e.domNode.domNode);let b=Object.keys(this._contentWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addContentWidget(this._contentWidgets[c])}b=Object.keys(this._overlayWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addOverlayWidget(this._overlayWidgets[c])}b=Object.keys(this._glyphMarginWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addGlyphMarginWidget(this._glyphMarginWidgets[c])}e.render(!1,!0),e.domNode.domNode.setAttribute("data-uri",a.uri.toString())}this._modelData=new fi(a,d,e,f,b,c)}_createView(a){let b;b=this.isSimpleWidget?{paste:(a,b,c,d)=>{this._paste("keyboard",a,b,c,d)},type:a=>{this._type("keyboard",a)},compositionType:(a,b,c,d)=>{this._compositionType("keyboard",a,b,c,d)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:{paste:(a,b,c,d)=>{this._commandService.executeCommand("paste",{text:a,pasteOnNewLine:b,multicursorText:c,mode:d})},type:a=>{this._commandService.executeCommand("type",{text:a})},compositionType:(a,b,c,d)=>{c||d?this._commandService.executeCommand("compositionType",{text:a,replacePrevCharCnt:b,replaceNextCharCnt:c,positionDelta:d}):this._commandService.executeCommand("replacePreviousChar",{text:a,replaceCharCnt:b})},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};let c=new a6(a.coordinatesConverter);return c.onKeyDown=a=>this._onKeyDown.fire(a),c.onKeyUp=a=>this._onKeyUp.fire(a),c.onContextMenu=a=>this._onContextMenu.fire(a),c.onMouseMove=a=>this._onMouseMove.fire(a),c.onMouseLeave=a=>this._onMouseLeave.fire(a),c.onMouseDown=a=>this._onMouseDown.fire(a),c.onMouseUp=a=>this._onMouseUp.fire(a),c.onMouseDrag=a=>this._onMouseDrag.fire(a),c.onMouseDrop=a=>this._onMouseDrop.fire(a),c.onMouseDropCanceled=a=>this._onMouseDropCanceled.fire(a),c.onMouseWheel=a=>this._onMouseWheel.fire(a),[new dk(this._domElement,this.getId(),b,this._configuration,this._themeService.getColorTheme(),a,c,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(a){a?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;let a=this._modelData.model,b=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),b&&this._domElement.contains(b)&&b.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),a}_removeDecorationType(a){this._codeEditorService.removeDecorationType(a)}hasModel(){return null!==this._modelData}showDropIndicatorAt(a){let b=[{range:new ab.Q(a.lineNumber,a.column,a.lineNumber,a.column),options:p.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(b),this.revealPosition(a,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}_beginUpdate(){this._updateCounter++,1===this._updateCounter&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,0===this._updateCounter&&this._onEndUpdate.fire()}};fg=p=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([ff(3,cy._Y),ff(4,V.T),ff(5,fa.d),ff(6,fb.fN),ff(7,bg.Gy),ff(8,fd.Ot),ff(9,N.j),ff(10,dD.JZ),ff(11,dF.u)],fg);let fh=0;class fi{constructor(a,b,c,d,e,f){this.model=a,this.viewModel=b,this.view=c,this.hasRealView=d,this.listenersToRemove=e,this.attachedView=f}dispose(){(0,w.AS)(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class fj extends w.jG{constructor(a){super(),this._emitterOptions=a,this._onDidChangeToTrue=this._register(new v.vl(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new v.vl(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(a){let b=a?2:1;this._value!==b&&(this._value=b,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())}}class fk extends v.vl{constructor(a,b){super({deliveryQueue:b}),this._contributions=a}fire(a){this._contributions.onBeforeInteractionEvent(),super.fire(a)}}class fl extends w.jG{constructor(a,b){super(),this._editor=a,b.createKey("editorId",a.getId()),this._editorSimpleInput=dC.R.editorSimpleInput.bindTo(b),this._editorFocus=dC.R.focus.bindTo(b),this._textInputFocus=dC.R.textInputFocus.bindTo(b),this._editorTextFocus=dC.R.editorTextFocus.bindTo(b),this._tabMovesFocus=dC.R.tabMovesFocus.bindTo(b),this._editorReadonly=dC.R.readOnly.bindTo(b),this._inDiffEditor=dC.R.inDiffEditor.bindTo(b),this._editorColumnSelection=dC.R.columnSelection.bindTo(b),this._hasMultipleSelections=dC.R.hasMultipleSelections.bindTo(b),this._hasNonEmptySelection=dC.R.hasNonEmptySelection.bindTo(b),this._canUndo=dC.R.canUndo.bindTo(b),this._canRedo=dC.R.canRedo.bindTo(b),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(J.M.onDidChangeTabFocus(a=>this._tabMovesFocus.set(a))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){let a=this._editor.getOptions();this._tabMovesFocus.set(a.get(164)||J.M.getTabFocusMode()),this._editorReadonly.set(a.get(104)),this._inDiffEditor.set(a.get(70)),this._editorColumnSelection.set(a.get(28))}_updateFromSelection(){let a=this._editor.getSelections();a?(this._hasMultipleSelections.set(a.length>1),this._hasNonEmptySelection.set(a.some(a=>!a.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){let a=this._editor.getModel();this._canUndo.set(!!(a&&a.canUndo())),this._canRedo.set(!!(a&&a.canRedo()))}}class fm extends w.jG{constructor(a,b,c){super(),this._editor=a,this._contextKeyService=b,this._languageFeaturesService=c,this._langId=dC.R.languageId.bindTo(b),this._hasCompletionItemProvider=dC.R.hasCompletionItemProvider.bindTo(b),this._hasCodeActionsProvider=dC.R.hasCodeActionsProvider.bindTo(b),this._hasCodeLensProvider=dC.R.hasCodeLensProvider.bindTo(b),this._hasDefinitionProvider=dC.R.hasDefinitionProvider.bindTo(b),this._hasDeclarationProvider=dC.R.hasDeclarationProvider.bindTo(b),this._hasImplementationProvider=dC.R.hasImplementationProvider.bindTo(b),this._hasTypeDefinitionProvider=dC.R.hasTypeDefinitionProvider.bindTo(b),this._hasHoverProvider=dC.R.hasHoverProvider.bindTo(b),this._hasDocumentHighlightProvider=dC.R.hasDocumentHighlightProvider.bindTo(b),this._hasDocumentSymbolProvider=dC.R.hasDocumentSymbolProvider.bindTo(b),this._hasReferenceProvider=dC.R.hasReferenceProvider.bindTo(b),this._hasRenameProvider=dC.R.hasRenameProvider.bindTo(b),this._hasSignatureHelpProvider=dC.R.hasSignatureHelpProvider.bindTo(b),this._hasInlayHintsProvider=dC.R.hasInlayHintsProvider.bindTo(b),this._hasDocumentFormattingProvider=dC.R.hasDocumentFormattingProvider.bindTo(b),this._hasDocumentSelectionFormattingProvider=dC.R.hasDocumentSelectionFormattingProvider.bindTo(b),this._hasMultipleDocumentFormattingProvider=dC.R.hasMultipleDocumentFormattingProvider.bindTo(b),this._hasMultipleDocumentSelectionFormattingProvider=dC.R.hasMultipleDocumentSelectionFormattingProvider.bindTo(b),this._isInEmbeddedEditor=dC.R.isInEmbeddedEditor.bindTo(b);let d=()=>this._update();this._register(a.onDidChangeModel(d)),this._register(a.onDidChangeModelLanguage(d)),this._register(c.completionProvider.onDidChange(d)),this._register(c.codeActionProvider.onDidChange(d)),this._register(c.codeLensProvider.onDidChange(d)),this._register(c.definitionProvider.onDidChange(d)),this._register(c.declarationProvider.onDidChange(d)),this._register(c.implementationProvider.onDidChange(d)),this._register(c.typeDefinitionProvider.onDidChange(d)),this._register(c.hoverProvider.onDidChange(d)),this._register(c.documentHighlightProvider.onDidChange(d)),this._register(c.documentSymbolProvider.onDidChange(d)),this._register(c.referenceProvider.onDidChange(d)),this._register(c.renameProvider.onDidChange(d)),this._register(c.documentFormattingEditProvider.onDidChange(d)),this._register(c.documentRangeFormattingEditProvider.onDidChange(d)),this._register(c.signatureHelpProvider.onDidChange(d)),this._register(c.inlayHintsProvider.onDidChange(d)),d()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){let a=this._editor.getModel();if(!a)return void this.reset();this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(a.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(a)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(a)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(a)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(a)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(a)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(a)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(a)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(a)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(a)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(a)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(a)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(a)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(a)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(a)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(a)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(a)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(a)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(a).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(a).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(a).length>1),this._isInEmbeddedEditor.set(a.uri.scheme===x.ny.walkThroughSnippet||a.uri.scheme===x.ny.vscodeChatCodeBlock)})}}class fn{get length(){return this._decorationIds.length}constructor(a,b){this._editor=a,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(b)&&b.length>0&&this.set(b)}onDidChange(a,b,c){return this._editor.onDidChangeModelDecorations(c=>{this._isChangingDecorations||a.call(b,c)},c)}getRange(a){return!this._editor.hasModel()||a>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[a])}getRanges(){if(!this._editor.hasModel())return[];let a=this._editor.getModel(),b=[];for(let c of this._decorationIds){let d=a.getDecorationRange(c);d&&b.push(d)}return b}has(a){return this._decorationIds.includes(a.id)}clear(){0!==this._decorationIds.length&&this.set([])}set(a){try{this._isChangingDecorations=!0,this._editor.changeDecorations(b=>{this._decorationIds=b.deltaDecorations(this._decorationIds,a)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(a){let b=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(c=>{b=c.deltaDecorations([],a),this._decorationIds=this._decorationIds.concat(b)})}finally{this._isChangingDecorations=!1}return b}}let fo=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),fp=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function fq(a){return fo+encodeURIComponent(a.toString())+fp}let fr=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),fs=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');function ft(a){return fr+encodeURIComponent(a.toString())+fs}(0,bg.zy)((a,b)=>{let c=a.getColor(bP.Rbi);c&&(b.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${fq(c)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-error-decoration: url("data:image/svg+xml,${fq(c)}"); }`));let d=a.getColor(bP.Hng);d&&(b.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${fq(d)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-warning-decoration: url("data:image/svg+xml,${fq(d)}"); }`));let e=a.getColor(bP.pOz);e&&(b.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${fq(e)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-info-decoration: url("data:image/svg+xml,${fq(e)}"); }`));let f=a.getColor(bP.i61);f&&(b.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${ft(f)}") no-repeat bottom left; }`),b.addRule(`:root { --monaco-editor-hint-decoration: url("data:image/svg+xml,${ft(f)}"); }`));let g=a.getColor(bf.yw);g&&(b.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${g.rgba.a}; }`),b.addRule(`:root { --monaco-editor-unnecessary-decoration-opacity: ${g.rgba.a}; }`))})},68703:(a,b,c)=>{"use strict";c.d(b,{c:()=>m});var d=c(32677),e=c(71510),f=c(36120),g=c(62274),h=c(60734);c(85531);var i=c(25536),j=c(11314),k=c(75096);let l=i.kg(1,"input");class m extends g.x{get onDidOptionChange(){return this._onDidOptionChange.event}get onKeyDown(){return this._onKeyDown.event}get onMouseDown(){return this._onMouseDown.event}get onCaseSensitiveKeyDown(){return this._onCaseSensitiveKeyDown.event}get onRegexKeyDown(){return this._onRegexKeyDown.event}constructor(a,b,c){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new j.HE),this.additionalToggles=[],this._onDidOptionChange=this._register(new h.vl),this._onKeyDown=this._register(new h.vl),this._onMouseDown=this._register(new h.vl),this._onInput=this._register(new h.vl),this._onKeyUp=this._register(new h.vl),this._onCaseSensitiveKeyDown=this._register(new h.vl),this._onRegexKeyDown=this._register(new h.vl),this._lastHighlightFindOptions=0,this.placeholder=c.placeholder||"",this.validation=c.validation,this.label=c.label||l,this.showCommonFindToggles=!!c.showCommonFindToggles;let g=c.appendCaseSensitiveLabel||"",i=c.appendWholeWordsLabel||"",m=c.appendRegexLabel||"",n=!!c.flexibleHeight,o=!!c.flexibleWidth,p=c.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new f.mJ(this.domNode,b,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},showHistoryHint:c.showHistoryHint,flexibleHeight:n,flexibleWidth:o,flexibleMaxHeight:p,inputBoxStyles:c.inputBoxStyles,history:c.history}));let q=this._register((0,k.bW)());if(this.showCommonFindToggles){this.regex=this._register(new e.Ix({appendTitle:m,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.regex.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(a=>{this._onRegexKeyDown.fire(a)})),this.wholeWords=this._register(new e.nV({appendTitle:i,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.wholeWords.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new e.bc({appendTitle:g,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.caseSensitive.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(a=>{this._onCaseSensitiveKeyDown.fire(a)}));let a=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,b=>{if(b.equals(15)||b.equals(17)||b.equals(9)){let c=a.indexOf(this.domNode.ownerDocument.activeElement);if(c>=0){let e=-1;b.equals(17)?e=(c+1)%a.length:b.equals(15)&&(e=0===c?a.length-1:c-1),b.equals(9)?(a[c].blur(),this.inputBox.focus()):e>=0&&a[e].focus(),d.fs.stop(b,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(c?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),a?.appendChild(this.domNode),this._register(d.ko(this.inputBox.inputElement,"compositionstart",a=>{this.imeSessionInProgress=!0})),this._register(d.ko(this.inputBox.inputElement,"compositionend",a=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,a=>this._onKeyDown.fire(a)),this.onkeyup(this.inputBox.inputElement,a=>this._onKeyUp.fire(a)),this.oninput(this.inputBox.inputElement,a=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,a=>this._onMouseDown.fire(a))}get onDidChange(){return this.inputBox.onDidChange}layout(a){this.inputBox.layout(),this.updateInputBoxPadding(a.collapsedFindWidget)}enable(){for(let a of(this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable(),this.additionalToggles))a.enable()}disable(){for(let a of(this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable(),this.additionalToggles))a.disable()}setFocusInputOnOptionClick(a){this.fixFocusOnOptionClickEnabled=a}setEnabled(a){a?this.enable():this.disable()}setAdditionalToggles(a){for(let a of this.additionalToggles)a.domNode.remove();for(let b of(this.additionalToggles=[],this.additionalTogglesDisposables.value=new j.Cm,a??[]))this.additionalTogglesDisposables.value.add(b),this.controls.appendChild(b.domNode),this.additionalTogglesDisposables.value.add(b.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(b);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(a=!1){a?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((a,b)=>a+b.width(),0)}getValue(){return this.inputBox.value}setValue(a){this.inputBox.value!==a&&(this.inputBox.value=a)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(a){this.caseSensitive&&(this.caseSensitive.checked=a)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(a){this.wholeWords&&(this.wholeWords.checked=a)}getRegex(){return this.regex?.checked??!1}setRegex(a){this.regex&&(this.regex.checked=a,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(a){this.inputBox.showMessage(a)}clearMessage(){this.inputBox.hideMessage()}}},69034:()=>{},69262:(a,b,c)=>{"use strict";c.d(b,{R:()=>d});var d,e=c(25536),f=c(45367);!function(a){a.editorSimpleInput=new f.N1("editorSimpleInput",!1,!0),a.editorTextFocus=new f.N1("editorTextFocus",!1,e.kg(678,"Whether the editor text has focus (cursor is blinking)")),a.focus=new f.N1("editorFocus",!1,e.kg(679,"Whether the editor or an editor widget has focus (e.g. focus is in the find widget)")),a.textInputFocus=new f.N1("textInputFocus",!1,e.kg(680,"Whether an editor or a rich text input has focus (cursor is blinking)")),a.readOnly=new f.N1("editorReadonly",!1,e.kg(681,"Whether the editor is read-only")),a.inDiffEditor=new f.N1("inDiffEditor",!1,e.kg(682,"Whether the context is a diff editor")),a.isEmbeddedDiffEditor=new f.N1("isEmbeddedDiffEditor",!1,e.kg(683,"Whether the context is an embedded diff editor")),a.multiDiffEditorAllCollapsed=new f.N1("multiDiffEditorAllCollapsed",void 0,e.kg(684,"Whether all files in multi diff editor are collapsed")),a.hasChanges=new f.N1("diffEditorHasChanges",!1,e.kg(685,"Whether the diff editor has changes")),a.comparingMovedCode=new f.N1("comparingMovedCode",!1,e.kg(686,"Whether a moved code block is selected for comparison")),a.accessibleDiffViewerVisible=new f.N1("accessibleDiffViewerVisible",!1,e.kg(687,"Whether the accessible diff viewer is visible")),a.diffEditorRenderSideBySideInlineBreakpointReached=new f.N1("diffEditorRenderSideBySideInlineBreakpointReached",!1,e.kg(688,"Whether the diff editor render side by side inline breakpoint is reached")),a.diffEditorInlineMode=new f.N1("diffEditorInlineMode",!1,e.kg(689,"Whether inline mode is active")),a.diffEditorOriginalWritable=new f.N1("diffEditorOriginalWritable",!1,e.kg(690,"Whether modified is writable in the diff editor")),a.diffEditorModifiedWritable=new f.N1("diffEditorModifiedWritable",!1,e.kg(691,"Whether modified is writable in the diff editor")),a.diffEditorOriginalUri=new f.N1("diffEditorOriginalUri","",e.kg(692,"The uri of the original document")),a.diffEditorModifiedUri=new f.N1("diffEditorModifiedUri","",e.kg(693,"The uri of the modified document")),a.columnSelection=new f.N1("editorColumnSelection",!1,e.kg(694,"Whether `editor.columnSelection` is enabled")),a.writable=a.readOnly.toNegated(),a.hasNonEmptySelection=new f.N1("editorHasSelection",!1,e.kg(695,"Whether the editor has text selected")),a.hasOnlyEmptySelection=a.hasNonEmptySelection.toNegated(),a.hasMultipleSelections=new f.N1("editorHasMultipleSelections",!1,e.kg(696,"Whether the editor has multiple selections")),a.hasSingleSelection=a.hasMultipleSelections.toNegated(),a.tabMovesFocus=new f.N1("editorTabMovesFocus",!1,e.kg(697,"Whether `Tab` will move focus out of the editor")),a.tabDoesNotMoveFocus=a.tabMovesFocus.toNegated(),a.isInEmbeddedEditor=new f.N1("isInEmbeddedEditor",!1,!0),a.canUndo=new f.N1("canUndo",!1,!0),a.canRedo=new f.N1("canRedo",!1,!0),a.hoverVisible=new f.N1("editorHoverVisible",!1,e.kg(698,"Whether the editor hover is visible")),a.hoverFocused=new f.N1("editorHoverFocused",!1,e.kg(699,"Whether the editor hover is focused")),a.stickyScrollFocused=new f.N1("stickyScrollFocused",!1,e.kg(700,"Whether the sticky scroll is focused")),a.stickyScrollVisible=new f.N1("stickyScrollVisible",!1,e.kg(701,"Whether the sticky scroll is visible")),a.standaloneColorPickerVisible=new f.N1("standaloneColorPickerVisible",!1,e.kg(702,"Whether the standalone color picker is visible")),a.standaloneColorPickerFocused=new f.N1("standaloneColorPickerFocused",!1,e.kg(703,"Whether the standalone color picker is focused")),a.inCompositeEditor=new f.N1("inCompositeEditor",void 0,e.kg(704,"Whether the editor is part of a larger editor (e.g. notebooks)")),a.notInCompositeEditor=a.inCompositeEditor.toNegated(),a.languageId=new f.N1("editorLangId","",e.kg(705,"The language identifier of the editor")),a.hasCompletionItemProvider=new f.N1("editorHasCompletionItemProvider",!1,e.kg(706,"Whether the editor has a completion item provider")),a.hasCodeActionsProvider=new f.N1("editorHasCodeActionsProvider",!1,e.kg(707,"Whether the editor has a code actions provider")),a.hasCodeLensProvider=new f.N1("editorHasCodeLensProvider",!1,e.kg(708,"Whether the editor has a code lens provider")),a.hasDefinitionProvider=new f.N1("editorHasDefinitionProvider",!1,e.kg(709,"Whether the editor has a definition provider")),a.hasDeclarationProvider=new f.N1("editorHasDeclarationProvider",!1,e.kg(710,"Whether the editor has a declaration provider")),a.hasImplementationProvider=new f.N1("editorHasImplementationProvider",!1,e.kg(711,"Whether the editor has an implementation provider")),a.hasTypeDefinitionProvider=new f.N1("editorHasTypeDefinitionProvider",!1,e.kg(712,"Whether the editor has a type definition provider")),a.hasHoverProvider=new f.N1("editorHasHoverProvider",!1,e.kg(713,"Whether the editor has a hover provider")),a.hasDocumentHighlightProvider=new f.N1("editorHasDocumentHighlightProvider",!1,e.kg(714,"Whether the editor has a document highlight provider")),a.hasDocumentSymbolProvider=new f.N1("editorHasDocumentSymbolProvider",!1,e.kg(715,"Whether the editor has a document symbol provider")),a.hasReferenceProvider=new f.N1("editorHasReferenceProvider",!1,e.kg(716,"Whether the editor has a reference provider")),a.hasRenameProvider=new f.N1("editorHasRenameProvider",!1,e.kg(717,"Whether the editor has a rename provider")),a.hasSignatureHelpProvider=new f.N1("editorHasSignatureHelpProvider",!1,e.kg(718,"Whether the editor has a signature help provider")),a.hasInlayHintsProvider=new f.N1("editorHasInlayHintsProvider",!1,e.kg(719,"Whether the editor has an inline hints provider")),a.hasDocumentFormattingProvider=new f.N1("editorHasDocumentFormattingProvider",!1,e.kg(720,"Whether the editor has a document formatting provider")),a.hasDocumentSelectionFormattingProvider=new f.N1("editorHasDocumentSelectionFormattingProvider",!1,e.kg(721,"Whether the editor has a document selection formatting provider")),a.hasMultipleDocumentFormattingProvider=new f.N1("editorHasMultipleDocumentFormattingProvider",!1,e.kg(722,"Whether the editor has multiple document formatting providers")),a.hasMultipleDocumentSelectionFormattingProvider=new f.N1("editorHasMultipleDocumentSelectionFormattingProvider",!1,e.kg(723,"Whether the editor has multiple document selection formatting providers"))}(d||(d={}))},69467:(a,b,c)=>{"use strict";c.d(b,{MF:()=>o,d$:()=>n,mG:()=>r,vG:()=>t,vY:()=>s});var d=c(79677),e=c(59317),f=c(32146),g=c(65576),h=c(29949),i=c(25146),j=c(75393);let k=()=>!0,l=()=>!1,m=a=>" "===a||" "===a;class n{static shouldRecreate(a){return a.hasChanged(165)||a.hasChanged(148)||a.hasChanged(45)||a.hasChanged(85)||a.hasChanged(88)||a.hasChanged(89)||a.hasChanged(10)||a.hasChanged(11)||a.hasChanged(15)||a.hasChanged(13)||a.hasChanged(14)||a.hasChanged(20)||a.hasChanged(145)||a.hasChanged(141)||a.hasChanged(59)||a.hasChanged(104)||a.hasChanged(147)||a.hasChanged(93)}constructor(a,b,c,d){this.languageConfigurationService=d,this._cursorMoveConfigurationBrand=void 0,this._languageId=a;let e=c.options,f=e.get(165),g=e.get(59);this.readOnly=e.get(104),this.tabSize=b.tabSize,this.indentSize=b.indentSize,this.insertSpaces=b.insertSpaces,this.stickyTabStops=e.get(132),this.lineHeight=g.lineHeight,this.typicalHalfwidthCharacterWidth=g.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(f.height/this.lineHeight)-2),this.useTabStops=e.get(145),this.trimWhitespaceOnDelete=e.get(141),this.wordSeparators=e.get(148),this.emptySelectionClipboard=e.get(45),this.copyWithSyntaxHighlighting=e.get(31),this.multiCursorMergeOverlapping=e.get(85),this.multiCursorPaste=e.get(88),this.multiCursorLimit=e.get(89),this.autoClosingBrackets=e.get(10),this.autoClosingComments=e.get(11),this.autoClosingQuotes=e.get(15),this.autoClosingDelete=e.get(13),this.autoClosingOvertype=e.get(14),this.autoSurround=e.get(20),this.autoIndent=e.get(16),this.wordSegmenterLocales=e.get(147),this.overtypeOnPaste=e.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(a,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(a,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(a,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(a).getAutoClosingPairs();let h=this.languageConfigurationService.getLanguageConfiguration(a).getSurroundingPairs();if(h)for(let a of h)this.surroundingPairs[a.open]=a.close;let i=this.languageConfigurationService.getLanguageConfiguration(a).comments;this.blockCommentStartToken=i?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};let a=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(a)for(let b of a)this._electricChars[b]=!0}return this._electricChars}get inputMode(){return j.U.getInputMode()}onElectricCharacter(a,b,c){let d=(0,g.BQ)(b,c-1),e=this.languageConfigurationService.getLanguageConfiguration(d.languageId).electricCharacter;return e?e.onElectricCharacter(a,d,c-d.firstCharOffset):null}normalizeIndentation(a){return(0,i.P)(a,this.indentSize,this.insertSpaces)}_getShouldAutoClose(a,b,c){switch(b){case"beforeWhitespace":return m;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(a,c);case"always":return k;case"never":return l}}_getLanguageDefinedShouldAutoClose(a,b){let c=this.languageConfigurationService.getLanguageConfiguration(a).getAutoCloseBeforeSet(b);return a=>-1!==c.indexOf(a)}visibleColumnFromColumn(a,b){return h.A.visibleColumnFromColumn(a.getLineContent(b.lineNumber),b.column,this.tabSize)}columnFromVisibleColumn(a,b,c){let d=h.A.columnFromVisibleColumn(a.getLineContent(b),c,this.tabSize),e=a.getLineMinColumn(b);if(d<e)return e;let f=a.getLineMaxColumn(b);return d>f?f:d}}class o{static fromModelState(a){return new p(a)}static fromViewState(a){return new q(a)}static fromModelSelection(a){let b=f.L.liftSelection(a),c=new r(e.Q.fromPositions(b.getSelectionStart()),0,0,b.getPosition(),0);return o.fromModelState(c)}static fromModelSelections(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this.fromModelSelection(a[c]);return b}constructor(a,b){this._cursorStateBrand=void 0,this.modelState=a,this.viewState=b}equals(a){return this.viewState.equals(a.viewState)&&this.modelState.equals(a.modelState)}}class p{constructor(a){this.modelState=a,this.viewState=null}}class q{constructor(a){this.modelState=null,this.viewState=a}}class r{constructor(a,b,c,d,e){this.selectionStart=a,this.selectionStartKind=b,this.selectionStartLeftoverVisibleColumns=c,this.position=d,this.leftoverVisibleColumns=e,this._singleCursorStateBrand=void 0,this.selection=r._computeSelection(this.selectionStart,this.position)}equals(a){return this.selectionStartLeftoverVisibleColumns===a.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===a.leftoverVisibleColumns&&this.selectionStartKind===a.selectionStartKind&&this.position.equals(a.position)&&this.selectionStart.equalsRange(a.selectionStart)}hasSelection(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()}move(a,b,c,f){return a?new r(this.selectionStart,this.selectionStartKind,this.selectionStartLeftoverVisibleColumns,new d.y(b,c),f):new r(new e.Q(b,c,b,c),0,f,new d.y(b,c),f)}static _computeSelection(a,b){return a.isEmpty()||!b.isBeforeOrEqual(a.getStartPosition())?f.L.fromPositions(a.getStartPosition(),b):f.L.fromPositions(a.getEndPosition(),b)}}class s{constructor(a,b,c){this._editOperationResultBrand=void 0,this.type=a,this.commands=b,this.shouldPushStackElementBefore=c.shouldPushStackElementBefore,this.shouldPushStackElementAfter=c.shouldPushStackElementAfter}}function t(a){return"'"===a||'"'===a||"`"===a}},69871:(a,b,c)=>{"use strict";c.d(b,{LN:()=>h,aG:()=>k,uO:()=>j});var d=c(95265),e=c(95967),f=c(79677),g=c(59317);class h{getOffsetRange(a){return new e.L(this.getOffset(a.getStartPosition()),this.getOffset(a.getEndPosition()))}getRange(a){return g.Q.fromPositions(this.getPosition(a.start),this.getPosition(a.endExclusive))}getStringReplacement(a){return new i.deps.StringReplacement(this.getOffsetRange(a.range),a.text)}getTextReplacement(a){return new i.deps.TextReplacement(this.getRange(a.replaceRange),a.newText)}getTextEdit(a){let b=a.replacements.map(a=>this.getTextReplacement(a));return new i.deps.TextEdit(b)}}class i{static{this._deps=void 0}static get deps(){if(!this._deps)throw Error("Dependencies not set. Call _setDependencies first.");return this._deps}}function j(a){i._deps=a}class k extends h{constructor(a){super(),this.text=a,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let b=0;b<a.length;b++)"\n"===a.charAt(b)&&(this.lineStartOffsetByLineIdx.push(b+1),b>0&&"\r"===a.charAt(b-1)?this.lineEndOffsetByLineIdx.push(b-1):this.lineEndOffsetByLineIdx.push(b));this.lineEndOffsetByLineIdx.push(a.length)}getOffset(a){let b=this._validatePosition(a);return this.lineStartOffsetByLineIdx[b.lineNumber-1]+b.column-1}_validatePosition(a){if(a.lineNumber<1)return new f.y(1,1);let b=this.textLength.lineCount+1;if(a.lineNumber>b){let a=this.getLineLength(b);return new f.y(b,a+1)}if(a.column<1)return new f.y(a.lineNumber,1);let c=this.getLineLength(a.lineNumber);return a.column-1>c?new f.y(a.lineNumber,c+1):a}getPosition(a){let b=(0,d.iM)(this.lineStartOffsetByLineIdx,b=>b<=a),c=a-this.lineStartOffsetByLineIdx[b]+1;return new f.y(b+1,c)}get textLength(){let a=this.lineStartOffsetByLineIdx.length-1;return new i.deps.TextLength(a,this.text.length-this.lineStartOffsetByLineIdx[a])}getLineLength(a){return this.lineEndOffsetByLineIdx[a-1]-this.lineStartOffsetByLineIdx[a-1]}}},70511:(a,b,c)=>{"use strict";c.d(b,{d:()=>i,w:()=>j});var d=c(60734),e=c(16374),f=c(11314),g=c(71373),h=c(46339);let i=(0,c(29715).u1)("commandService"),j=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new d.vl,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(a,b){if(!a)throw Error("invalid command");if("string"==typeof a){if(!b)throw Error("invalid command");return this.registerCommand({id:a,handler:b})}if(a.metadata&&Array.isArray(a.metadata.args)){let b=[];for(let c of a.metadata.args)b.push(c.constraint);let c=a.handler;a.handler=function(a,...d){return(0,h.jx)(d,b),c(a,...d)}}let{id:c}=a,d=this._commands.get(c);d||(d=new g.w,this._commands.set(c,d));let e=d.unshift(a),i=(0,f.s)(()=>{e();let a=this._commands.get(c);a?.isEmpty()&&this._commands.delete(c)});return this._onDidRegisterCommand.fire(c),(0,f.lC)(i)}registerCommandAlias(a,b){return j.registerCommand(a,(a,...c)=>a.get(i).executeCommand(b,...c))}getCommand(a){let b=this._commands.get(a);if(!(!b||b.isEmpty()))return e.f.first(b)}getCommands(){let a=new Map;for(let b of this._commands.keys()){let c=this.getCommand(b);c&&a.set(b,c)}return a}};j.registerCommand("noop",()=>{})},70544:(a,b,c)=>{"use strict";c.d(b,{W5:()=>o,dr:()=>k,eV:()=>j,hB:()=>m,lt:()=>i,wC:()=>n});var d=c(98447),e=c(91834),f=c(79677),g=c(59317),h=c(34747);class i{constructor(a,b,c,d){this.searchString=a,this.isRegex=b,this.matchCase=c,this.wordSeparators=d}parseSearchRequest(){let a;if(""===this.searchString)return null;a=this.isRegex?j(this.searchString):this.searchString.indexOf("\n")>=0;let b=null;try{b=d.OS(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:a,global:!0,unicode:!0})}catch(a){return null}if(!b)return null;let c=!this.isRegex&&!a;return c&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(c=this.matchCase),new h.L5(b,this.wordSeparators?(0,e.i)(this.wordSeparators,[]):null,c?this.searchString:null)}}function j(a){if(!a||0===a.length)return!1;for(let b=0,c=a.length;b<c;b++){let d=a.charCodeAt(b);if(10===d)return!0;if(92===d){if(++b>=c)break;let d=a.charCodeAt(b);if(110===d||114===d||87===d)return!0}}return!1}function k(a,b,c){if(!c)return new h.Dg(a,null);let d=[];for(let a=0,c=b.length;a<c;a++)d[a]=b[a];return new h.Dg(a,d)}class l{constructor(a){let b=[],c=0;for(let d=0,e=a.length;d<e;d++)10===a.charCodeAt(d)&&(b[c++]=d);this._lineFeedsOffsets=b}findLineFeedCountBeforeOffset(a){let b=this._lineFeedsOffsets,c=0,d=b.length-1;if(-1===d||a<=b[0])return 0;for(;c<d;){let e=c+((d-c)/2|0);b[e]>=a?d=e-1:b[e+1]>=a?(c=e,d=e):c=e+1}return c+1}}class m{static findMatches(a,b,c,d,e){let f=b.parseSearchRequest();return f?f.regex.multiline?this._doFindMatchesMultiline(a,c,new o(f.wordSeparators,f.regex),d,e):this._doFindMatchesLineByLine(a,c,f,d,e):[]}static _getMultilineMatchRange(a,b,c,d,e,f){let h,i,j=0;if(d?(j=d.findLineFeedCountBeforeOffset(e),h=b+e+j):h=b+e,d){let a=d.findLineFeedCountBeforeOffset(e+f.length)-j;i=h+f.length+a}else i=h+f.length;let k=a.getPositionAt(h),l=a.getPositionAt(i);return new g.Q(k.lineNumber,k.column,l.lineNumber,l.column)}static _doFindMatchesMultiline(a,b,c,d,e){let f,g=a.getOffsetAt(b.getStartPosition()),h=a.getValueInRange(b,1),i="\r\n"===a.getEOL()?new l(h):null,j=[],m=0;for(c.reset(0);(f=c.next(h))&&(j[m++]=k(this._getMultilineMatchRange(a,g,h,i,f.index,f[0]),f,d),!(m>=e)););return j}static _doFindMatchesLineByLine(a,b,c,d,e){let f=[],g=0;if(b.startLineNumber===b.endLineNumber){let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1,b.endColumn-1);return g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e),f}let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1);g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e);for(let h=b.startLineNumber+1;h<b.endLineNumber&&g<e;h++)g=this._findMatchesInLine(c,a.getLineContent(h),h,0,g,f,d,e);if(g<e){let h=a.getLineContent(b.endLineNumber).substring(0,b.endColumn-1);g=this._findMatchesInLine(c,h,b.endLineNumber,0,g,f,d,e)}return f}static _findMatchesInLine(a,b,c,d,e,f,i,j){let l,m=a.wordSeparators;if(!i&&a.simpleSearch){let i=a.simpleSearch,k=i.length,l=b.length,o=-k;for(;-1!==(o=b.indexOf(i,o+k))&&(!(!m||n(m,b,l,o,k))||(f[e++]=new h.Dg(new g.Q(c,o+1+d,c,o+1+k+d),null),!(e>=j))););return e}let p=new o(a.wordSeparators,a.regex);p.reset(0);do if((l=p.next(b))&&(f[e++]=k(new g.Q(c,l.index+1+d,c,l.index+1+l[0].length+d),l,i),e>=j))break;while(l);return e}static findNextMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindNextMatchMultiline(a,c,f,d):this._doFindNextMatchLineByLine(a,c,f,d)}static _doFindNextMatchMultiline(a,b,c,d){let e=new f.y(b.lineNumber,1),h=a.getOffsetAt(e),i=a.getLineCount(),j=a.getValueInRange(new g.Q(e.lineNumber,e.column,i,a.getLineMaxColumn(i)),1),m="\r\n"===a.getEOL()?new l(j):null;c.reset(b.column-1);let n=c.next(j);return n?k(this._getMultilineMatchRange(a,h,j,m,n.index,n[0]),n,d):1!==b.lineNumber||1!==b.column?this._doFindNextMatchMultiline(a,new f.y(1,1),c,d):null}static _doFindNextMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f),h=this._findFirstMatchInLine(c,g,f,b.column,d);if(h)return h;for(let b=1;b<=e;b++){let g=(f+b-1)%e,h=a.getLineContent(g+1),i=this._findFirstMatchInLine(c,h,g+1,1,d);if(i)return i}return null}static _findFirstMatchInLine(a,b,c,d,e){a.reset(d-1);let f=a.next(b);return f?k(new g.Q(c,f.index+1,c,f.index+1+f[0].length),f,e):null}static findPreviousMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindPreviousMatchMultiline(a,c,f,d):this._doFindPreviousMatchLineByLine(a,c,f,d)}static _doFindPreviousMatchMultiline(a,b,c,d){let e=this._doFindMatchesMultiline(a,new g.Q(1,1,b.lineNumber,b.column),c,d,9990);if(e.length>0)return e[e.length-1];let h=a.getLineCount();return b.lineNumber!==h||b.column!==a.getLineMaxColumn(h)?this._doFindPreviousMatchMultiline(a,new f.y(h,a.getLineMaxColumn(h)),c,d):null}static _doFindPreviousMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f).substring(0,b.column-1),h=this._findLastMatchInLine(c,g,f,d);if(h)return h;for(let b=1;b<=e;b++){let g=(e+f-b-1)%e,h=a.getLineContent(g+1),i=this._findLastMatchInLine(c,h,g+1,d);if(i)return i}return null}static _findLastMatchInLine(a,b,c,d){let e,f=null;for(a.reset(0);e=a.next(b);)f=k(new g.Q(c,e.index+1,c,e.index+1+e[0].length),e,d);return f}}function n(a,b,c,d,e){return function(a,b,c,d,e){if(0===d)return!0;let f=b.charCodeAt(d-1);if(0!==a.get(f)||13===f||10===f)return!0;if(e>0){let c=b.charCodeAt(d);if(0!==a.get(c))return!0}return!1}(a,b,0,d,e)&&function(a,b,c,d,e){if(d+e===c)return!0;let f=b.charCodeAt(d+e);if(0!==a.get(f)||13===f||10===f)return!0;if(e>0){let c=b.charCodeAt(d+e-1);if(0!==a.get(c))return!0}return!1}(a,b,c,d,e)}class o{constructor(a,b){this._wordSeparators=a,this._searchRegex=b,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(a){this._searchRegex.lastIndex=a,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(a){let b,c=a.length;do{if(this._prevMatchStartIndex+this._prevMatchLength===c||!(b=this._searchRegex.exec(a)))break;let e=b.index,f=b[0].length;if(e===this._prevMatchStartIndex&&f===this._prevMatchLength){if(0===f){d.Z5(a,c,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}break}if(this._prevMatchStartIndex=e,this._prevMatchLength=f,!this._wordSeparators||n(this._wordSeparators,a,c,e,f))return b}while(b);return null}}},70588:(a,b,c)=>{"use strict";c.d(b,{AS:()=>h,gr:()=>l,iP:()=>k,iu:()=>g,q2:()=>j,tA:()=>i,ui:()=>m});var d=c(79677),e=c(59317),f=c(32146);class g{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class h{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){let c=this._range.getStartPosition(),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,this._text.length+(this._range.isEmpty()?0:-1));h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(c,h);b.addTrackedEditOperation(i,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class i{constructor(a,b){this._range=a,this._text=b}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromRange(c,0)}}class j{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getStartPosition())}}class k{constructor(a,b,c,d,e=!1){this._range=a,this._text=b,this._columnDeltaOffset=d,this._lineNumberDeltaOffset=c,this.insertsAutoWhitespace=e}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class l{constructor(a){this._range=a}getEditOperations(a,b){let c=a.getValueInRange(this._range),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,c.length);h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(f,h);b.addTrackedEditOperation(i,"")}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class m{constructor(a,b,c,d=!1){this._range=a,this._text=b,this._initialSelection=c,this._forceMoveMarkers=d,this._selectionId=null}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=b.trackSelection(this._initialSelection)}computeCursorState(a,b){return b.getTrackedSelection(this._selectionId)}}function n(a,b,c){if(c<0)throw Error("Unexpected negative delta");let e=a.getLineCount(),f=new d.y(e,a.getLineMaxColumn(e));for(let g=b.lineNumber;g<=e;g++)if(g===b.lineNumber){let e=c-a.getLineMaxColumn(b.lineNumber)+b.column;if(e<=0){f=new d.y(b.lineNumber,b.column+c);break}c=e}else{let b=c-a.getLineMaxColumn(g);if(b<=0){f=new d.y(g,c);break}c=b}return f}},70745:(a,b,c)=>{"use strict";function d(a,b){let c=0,d=0,e=a.length;for(;d<e;){let e=a.charCodeAt(d);if(32===e)c++;else if(9===e)c=c-c%b+b;else break;d++}return d===e?-1:c}c.d(b,{G:()=>d})},70970:()=>{},71373:(a,b,c)=>{"use strict";c.d(b,{w:()=>e});class d{static{this.Undefined=new d(void 0)}constructor(a){this.element=a,this.next=d.Undefined,this.prev=d.Undefined}}class e{constructor(){this._first=d.Undefined,this._last=d.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===d.Undefined}clear(){let a=this._first;for(;a!==d.Undefined;){let b=a.next;a.prev=d.Undefined,a.next=d.Undefined,a=b}this._first=d.Undefined,this._last=d.Undefined,this._size=0}unshift(a){return this._insert(a,!1)}push(a){return this._insert(a,!0)}_insert(a,b){let c=new d(a);if(this._first===d.Undefined)this._first=c,this._last=c;else if(b){let a=this._last;this._last=c,c.prev=a,a.next=c}else{let a=this._first;this._first=c,c.next=a,a.prev=c}this._size+=1;let e=!1;return()=>{e||(e=!0,this._remove(c))}}shift(){if(this._first!==d.Undefined){let a=this._first.element;return this._remove(this._first),a}}pop(){if(this._last!==d.Undefined){let a=this._last.element;return this._remove(this._last),a}}_remove(a){if(a.prev!==d.Undefined&&a.next!==d.Undefined){let b=a.prev;b.next=a.next,a.next.prev=b}else a.prev===d.Undefined&&a.next===d.Undefined?(this._first=d.Undefined,this._last=d.Undefined):a.next===d.Undefined?(this._last=this._last.prev,this._last.next=d.Undefined):a.prev===d.Undefined&&(this._first=this._first.next,this._first.prev=d.Undefined);this._size-=1}*[Symbol.iterator](){let a=this._first;for(;a!==d.Undefined;)yield a.element,a=a.next}}},71510:(a,b,c)=>{"use strict";c.d(b,{Ix:()=>m,bc:()=>k,nV:()=>l});var d=c(75096),e=c(94505),f=c(90399),g=c(25536);let h=g.kg(2,"Match Case"),i=g.kg(3,"Match Whole Word"),j=g.kg(4,"Use Regular Expression");class k extends e.lM{constructor(a){super({icon:f.W.caseSensitive,title:h+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class l extends e.lM{constructor(a){super({icon:f.W.wholeWord,title:i+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class m extends e.lM{constructor(a){super({icon:f.W.regex,title:j+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}},71760:(a,b,c)=>{"use strict";c.d(b,{E$:()=>i,HP:()=>l,Ic:()=>p,Nw:()=>g,U0:()=>f,Wn:()=>d,bg:()=>j,dT:()=>o,mS:()=>k,uK:()=>e,vD:()=>h,vn:()=>m,zq:()=>n});class d{constructor(){this.changeType=1}}class e{static applyInjectedText(a,b){if(!b||0===b.length)return a;let c="",d=0;for(let e of b)c+=a.substring(d,e.column-1),d=e.column-1,c+=e.options.content;return c+a.substring(d)}static fromDecorations(a){let b=[];for(let c of a)c.options.before&&c.options.before.content.length>0&&b.push(new e(c.ownerId,c.range.startLineNumber,c.range.startColumn,c.options.before,0)),c.options.after&&c.options.after.content.length>0&&b.push(new e(c.ownerId,c.range.endLineNumber,c.range.endColumn,c.options.after,1));return b.sort((a,b)=>a.lineNumber===b.lineNumber?a.column===b.column?a.order-b.order:a.column-b.column:a.lineNumber-b.lineNumber),b}constructor(a,b,c,d,e){this.ownerId=a,this.lineNumber=b,this.column=c,this.options=d,this.order=e}}class f{constructor(a,b,c){this.changeType=2,this.lineNumber=a,this.detail=b,this.injectedText=c}}class g{constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class h{constructor(a,b){this.ownerId=a,this.lineNumber=b}}class i{constructor(a,b){this.changeType=3,this.fromLineNumber=a,this.toLineNumber=b}}class j{constructor(a,b,c,d){this.changeType=4,this.injectedTexts=d,this.fromLineNumber=a,this.toLineNumber=b,this.detail=c}}class k{constructor(){this.changeType=5}}class l{constructor(a,b,c,d){this.changes=a,this.versionId=b,this.isUndoing=c,this.isRedoing=d,this.resultingSelection=null}containsEvent(a){for(let b=0,c=this.changes.length;b<c;b++)if(this.changes[b].changeType===a)return!0;return!1}static merge(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.versionId;return new l(c,d,a.isUndoing||b.isUndoing,a.isRedoing||b.isRedoing)}}class m{constructor(a){this.changes=a}}class n{constructor(a){this.changes=a}}class o{constructor(a){this.changes=a}}class p{constructor(a,b){this.rawContentChangedEvent=a,this.contentChangedEvent=b}merge(a){let b=l.merge(this.rawContentChangedEvent,a.rawContentChangedEvent),c=p._mergeChangeEvents(this.contentChangedEvent,a.contentChangedEvent);return new p(b,c)}static _mergeChangeEvents(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.eol,e=b.versionId,f=a.isUndoing||b.isUndoing,g=a.isRedoing||b.isRedoing,h=a.isFlush||b.isFlush;return{changes:c,eol:d,isEolChange:a.isEolChange&&b.isEolChange,versionId:e,isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:a.detailedReasons.concat(b.detailedReasons),detailedReasonsChangeLengths:a.detailedReasonsChangeLengths.concat(b.detailedReasonsChangeLengths)}}}},72070:(a,b,c)=>{"use strict";c.d(b,{P:()=>l,k:()=>m});var d=c(95265),e=c(98447),f=c(29949),g=c(59317),h=c(28161),i=c(70745),j=c(95159),k=c(88347);class l extends h._{constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b}getLanguageConfiguration(a){return this.languageConfigurationService.getLanguageConfiguration(a)}_computeIndentLevel(a){return(0,i.G)(this.textModel.getLineContent(a+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(a,b,c){this.assertNotDisposed();let d=this.textModel.getLineCount();if(a<1||a>d)throw new k.D7("Illegal value for lineNumber");let e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=-2,h=-1,i=-2,j=-1,l=a=>{if(-1!==g&&(-2===g||g>a-1)){g=-1,h=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){g=b,h=a;break}}}if(-2===i){i=-1,j=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){i=b,j=a;break}}}},m=-2,n=-1,o=-2,p=-1,q=a=>{if(-2===m){m=-1,n=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){m=b,n=a;break}}}if(-1!==o&&(-2===o||o<a-1)){o=-1,p=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){o=b,p=a;break}}}},r=0,s=!0,t=0,u=!0,v=0,w=0;for(let e=0;s||u;e++){let g=a-e,k=a+e;e>1&&(g<1||g<b)&&(s=!1),e>1&&(k>d||k>c)&&(u=!1),e>5e4&&(s=!1,u=!1);let o=-1;if(s&&g>=1){let a=this._computeIndentLevel(g-1);a>=0?(i=g-1,j=a,o=Math.ceil(a/this.textModel.getOptions().indentSize)):(l(g),o=this._getIndentLevelForWhitespaceLine(f,h,j))}let x=-1;if(u&&k<=d){let a=this._computeIndentLevel(k-1);a>=0?(m=k-1,n=a,x=Math.ceil(a/this.textModel.getOptions().indentSize)):(q(k),x=this._getIndentLevelForWhitespaceLine(f,n,p))}if(0===e){w=o;continue}if(1===e){if(k<=d&&x>=0&&w+1===x){s=!1,r=k,t=k,v=x;continue}if(g>=1&&o>=0&&o-1===w){u=!1,r=g,t=g,v=o;continue}if(r=a,t=a,0===(v=w))break}s&&(o>=v?r=g:s=!1),u&&(x>=v?t=k:u=!1)}return{startLineNumber:r,endLineNumber:t,indent:v}}getLinesBracketGuides(a,b,c,f){let h,i=[];for(let c=a;c<=b;c++)i.push([]);let k=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new g.Q(a,1,b,this.textModel.getLineMaxColumn(b))).toArray();if(c&&k.length>0){let e=(a<=c.lineNumber&&c.lineNumber<=b?k:this.textModel.bracketPairs.getBracketPairsInRange(g.Q.fromPositions(c)).toArray()).filter(a=>g.Q.strictContainsPosition(a.range,c));h=(0,d.Uk)(e,a=>!0)?.range}let l=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,n=new m;for(let c of k){if(!c.closingBracketRange)continue;let d=h&&c.range.equalsRange(h);if(!d&&!f.includeInactive)continue;let g=n.getInlineClassName(c.nestingLevel,c.nestingLevelOfEqualBracketType,l)+(f.highlightActive&&d?" "+n.activeClassName:""),k=c.openingBracketRange.getStartPosition(),m=c.closingBracketRange.getStartPosition(),o=f.horizontalGuides===j.N6.Enabled||f.horizontalGuides===j.N6.EnabledForActive&&d;if(c.range.startLineNumber===c.range.endLineNumber){o&&i[c.range.startLineNumber-a].push(new j.TH(-1,c.openingBracketRange.getEndPosition().column,g,new j.pv(!1,m.column),-1,-1));continue}let p=this.getVisibleColumnFromPosition(m),q=this.getVisibleColumnFromPosition(c.openingBracketRange.getStartPosition()),r=Math.min(q,p,c.minVisibleColumnIndentation+1),s=!1;e.HG(this.textModel.getLineContent(c.closingBracketRange.startLineNumber))<c.closingBracketRange.startColumn-1&&(s=!0);let t=Math.max(k.lineNumber,a),u=Math.min(m.lineNumber,b),v=+!!s;for(let b=t;b<u+v;b++)i[b-a].push(new j.TH(r,-1,g,null,b===k.lineNumber?k.column:-1,b===m.lineNumber?m.column:-1));o&&(k.lineNumber>=a&&q>r&&i[k.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!1,k.column),-1,-1)),m.lineNumber<=b&&p>r&&i[m.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!s,m.column),-1,-1)))}for(let a of i)a.sort((a,b)=>a.visibleColumn-b.visibleColumn);return i}getVisibleColumnFromPosition(a){return f.A.visibleColumnFromColumn(this.textModel.getLineContent(a.lineNumber),a.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(a,b){this.assertNotDisposed();let c=this.textModel.getLineCount();if(a<1||a>c)throw Error("Illegal value for startLineNumber");if(b<1||b>c)throw Error("Illegal value for endLineNumber");let d=this.textModel.getOptions(),e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=Array(b-a+1),h=-2,i=-1,j=-2,k=-1;for(let e=a;e<=b;e++){let b=e-a,l=this._computeIndentLevel(e-1);if(l>=0){h=e-1,i=l,g[b]=Math.ceil(l/d.indentSize);continue}if(-2===h){h=-1,i=-1;for(let a=e-2;a>=0;a--){let b=this._computeIndentLevel(a);if(b>=0){h=a,i=b;break}}}if(-1!==j&&(-2===j||j<e-1)){j=-1,k=-1;for(let a=e;a<c;a++){let b=this._computeIndentLevel(a);if(b>=0){j=a,k=b;break}}}g[b]=this._getIndentLevelForWhitespaceLine(f,i,k)}return g}_getIndentLevelForWhitespaceLine(a,b,c){let d=this.textModel.getOptions();return -1===b||-1===c?0:b<c?1+Math.floor(b/d.indentSize):b===c?Math.ceil(c/d.indentSize):a?Math.ceil(c/d.indentSize):1+Math.floor(c/d.indentSize)}}class m{constructor(){this.activeClassName="indent-active"}getInlineClassName(a,b,c){return this.getInlineClassNameOfLevel(c?b:a)}getInlineClassNameOfLevel(a){return`bracket-indent-guide lvl-${a%30}`}}},72192:(a,b,c)=>{"use strict";c.d(b,{V:()=>h,WR:()=>j,no:()=>g});var d=c(98447),e=c(65576),f=c(21005);class g{constructor(a,b,c){this._indentRulesSupport=b,this._indentationLineProcessor=new i(a,c)}shouldIncrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIncrease(c)}shouldDecrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldDecrease(c)}shouldIgnore(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIgnore(c)}shouldIndentNextLine(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIndentNextLine(c)}}class h{constructor(a,b){this.model=a,this.indentationLineProcessor=new i(a,b)}getProcessedTokenContextAroundRange(a){let b=this._getProcessedTokensBeforeRange(a);return{beforeRangeProcessedTokens:b,afterRangeProcessedTokens:this._getProcessedTokensAfterRange(a),previousLineProcessedTokens:this._getProcessedPreviousLineTokens(a)}}_getProcessedTokensBeforeRange(a){let b;this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1);if(j(this.model,a.getStartPosition())){let e=a.startColumn-1-d.firstCharOffset,f=d.firstCharOffset;b=c.sliceAndInflate(f,f+e,0)}else{let d=a.startColumn-1;b=c.sliceAndInflate(0,d,0)}return this.indentationLineProcessor.getProcessedTokens(b)}_getProcessedTokensAfterRange(a){let b=a.isEmpty()?a.getStartPosition():a.getEndPosition();this.model.tokenization.forceTokenization(b.lineNumber);let c=this.model.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=b.column-1-d.firstCharOffset,g=d.firstCharOffset+f,h=d.firstCharOffset+d.getLineLength(),i=c.sliceAndInflate(g,h,0);return this.indentationLineProcessor.getProcessedTokens(i)}_getProcessedPreviousLineTokens(a){let b=a=>{this.model.tokenization.forceTokenization(a);let b=this.model.tokenization.getLineTokens(a),c=this.model.getLineMaxColumn(a)-1;return(0,e.BQ)(b,c)};this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1),g=f.f7.createEmpty("",d.languageIdCodec),h=a.startLineNumber-1;if(0===h||0!==d.firstCharOffset)return g;let i=b(h);if(d.languageId!==i.languageId)return g;let j=i.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(j)}}class i{constructor(a,b){this.model=a,this.languageConfigurationService=b}getProcessedLine(a,b){this.model.tokenization.forceTokenization?.(a);let c=this.model.tokenization.getLineTokens(a),e=this.getProcessedTokens(c).getLineContent();return void 0!==b&&(e=((a,b)=>{let c=d.UU(a);return b+a.substring(c.length)})(e,b)),e}getProcessedTokens(a){let b=a.getLanguageId(0),c=this.languageConfigurationService.getLanguageConfiguration(b).bracketsNew.getBracketRegExp({global:!0}),d=[];return a.forEach(b=>{let e=a.getStandardTokenType(b),f=a.getTokenText(b);(2===e||3===e||1===e)&&(f=f.replace(c,""));let g=a.getMetadata(b);d.push({text:f,metadata:g})}),f.f7.createFromTextAndMetadata(d,a.languageIdCodec)}}function j(a,b){a.tokenization.forceTokenization(b.lineNumber);let c=a.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=0===d.firstCharOffset,g=c.getLanguageId(0)===d.languageId;return!f&&!g}},72744:()=>{},72950:(a,b,c)=>{"use strict";c.d(b,{DX:()=>x,E_:()=>C,Fl:()=>D,HW:()=>G,PF:()=>z,aU:()=>J,dS:()=>d,fE:()=>v,gW:()=>E,ih:()=>K,ke:()=>B,ks:()=>y,qO:()=>A,tc:()=>L,uB:()=>u,xX:()=>F});var d,e=c(25536),f=c(45640),g=c(11053),h=c(79677),i=c(39914),j=c(55830),k=c(79487),l=c(70511),m=c(45367),n=c(29715),o=c(32765),p=c(61059),q=c(91295),r=c(46339),s=c(66153),t=c(32677);class u{constructor(a){this.id=a.id,this.precondition=a.precondition,this._kbOpts=a.kbOpts,this._menuOpts=a.menuOpts,this.metadata=a.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts)for(let a of Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts]){let b=a.kbExpr;this.precondition&&(b=b?m.M$.and(b,this.precondition):this.precondition);let c={id:this.id,weight:a.weight,args:a.args,when:b,primary:a.primary,secondary:a.secondary,win:a.win,linux:a.linux,mac:a.mac};o.f.registerKeybindingRule(c)}l.w.registerCommand({id:this.id,handler:(a,b)=>this.runCommand(a,b),metadata:this.metadata})}_registerMenuItem(a){k.ZG.appendMenuItem(a.menuId,{group:a.group,command:{id:this.id,title:a.title,icon:a.icon,precondition:this.precondition},when:a.when,order:a.order})}}class v extends u{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b,c,d){return this._implementations.push({priority:a,name:b,implementation:c,when:d}),this._implementations.sort((a,b)=>b.priority-a.priority),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a].implementation===c)return void this._implementations.splice(a,1)}}}runCommand(a,b){let c=a.get(s.rr),d=a.get(m.fN);for(let e of(c.trace(`Executing Command '${this.id}' which has ${this._implementations.length} bound.`),this._implementations)){if(e.when){let a=d.getContext((0,t.bq)());if(!e.when.evaluate(a))continue}let f=e.implementation(a,b);if(f){if(c.trace(`Command '${this.id}' was handled by '${e.name}'.`),"boolean"==typeof f)return;return f}}c.trace(`The Command '${this.id}' was not handled by any implementation.`)}}class w extends u{constructor(a,b){super(b),this.command=a}runCommand(a,b){return this.command.runCommand(a,b)}}class x extends u{static bindToContribution(a){return class extends x{constructor(a){super(a),this._callback=a.handler}runEditorCommand(b,c,d){let e=a(c);e&&this._callback(e,d)}}}static runEditorCommand(a,b,c,d){let e=a.get(g.T),f=e.getFocusedCodeEditor()||e.getActiveCodeEditor();if(f)return f.invokeWithinContext(a=>{if(a.get(m.fN).contextMatchesRules(c??void 0))return d(a,f,b)})}runCommand(a,b){return x.runEditorCommand(a,b,this.precondition,(a,b,c)=>this.runEditorCommand(a,b,c))}}class y extends x{static convertOptions(a){let b;function c(b){return b.menuId||(b.menuId=k.D8.EditorContext),b.title||(b.title="string"==typeof a.label?a.label:a.label.value),b.when=m.M$.and(a.precondition,b.when),b}return b=Array.isArray(a.menuOpts)?a.menuOpts:a.menuOpts?[a.menuOpts]:[],Array.isArray(a.contextMenuOpts)?b.push(...a.contextMenuOpts.map(c)):a.contextMenuOpts&&b.push(c(a.contextMenuOpts)),a.menuOpts=b,a}constructor(a){super(y.convertOptions(a)),"string"==typeof a.label?(this.label=a.label,this.alias=a.alias??a.label):(this.label=a.label.value,this.alias=a.alias??a.label.original)}runEditorCommand(a,b,c){return this.reportTelemetry(a,b),this.run(a,b,c||{})}reportTelemetry(a,b){a.get(q.k).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class z extends y{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b){return this._implementations.push([a,b]),this._implementations.sort((a,b)=>b[0]-a[0]),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a][1]===b)return void this._implementations.splice(a,1)}}}run(a,b,c){for(let d of this._implementations){let e=d[1](a,b,c);if(e){if("boolean"==typeof e)return;return e}}}}class A extends k.L{run(a,...b){let c=a.get(g.T),d=c.getFocusedCodeEditor()||c.getActiveCodeEditor();if(d)return d.invokeWithinContext(a=>{let c=a.get(m.fN),e=a.get(s.rr);return c.contextMatchesRules(this.desc.precondition??void 0)?this.runEditorCommand(a,d,...b):void e.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize())})}}function B(a,b){l.w.registerCommand(a,function(a,...c){let d=a.get(n._Y),[e,g]=c;(0,r.j)(f.r.isUri(e)),(0,r.j)(h.y.isIPosition(g));let k=a.get(i.S).getModel(e);if(k){let a=h.y.lift(g);return d.invokeFunction(b,k,a,...c.slice(2))}return a.get(j.b).createModelReference(e).then(a=>new Promise((e,f)=>{try{let f=d.invokeFunction(b,a.object.textEditorModel,h.y.lift(g),c.slice(2));e(f)}catch(a){f(a)}}).finally(()=>{a.dispose()}))})}function C(a){return H.INSTANCE.registerEditorCommand(a),a}function D(a){let b=new a;return H.INSTANCE.registerEditorAction(b),b}function E(a){return H.INSTANCE.registerEditorAction(a),a}function F(a){H.INSTANCE.registerEditorAction(a)}function G(a,b,c){H.INSTANCE.registerEditorContribution(a,b,c)}!function(a){a.getEditorCommand=function(a){return H.INSTANCE.getEditorCommand(a)},a.getEditorActions=function(){return H.INSTANCE.getEditorActions()},a.getEditorContributions=function(){return H.INSTANCE.getEditorContributions()},a.getSomeEditorContributions=function(a){return H.INSTANCE.getEditorContributions().filter(b=>a.indexOf(b.id)>=0)},a.getDiffEditorContributions=function(){return H.INSTANCE.getDiffEditorContributions()}}(d||(d={}));class H{static{this.INSTANCE=new H}constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(a,b,c){this.editorContributions.push({id:a,ctor:b,instantiation:c})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(a){a.register(),this.editorActions.push(a)}getEditorActions(){return this.editorActions}registerEditorCommand(a){a.register(),this.editorCommands[a.id]=a}getEditorCommand(a){return this.editorCommands[a]||null}}function I(a){return a.register(),a}p.O.add("editor.contributions",H.INSTANCE);let J=I(new v({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:k.D8.MenubarEditMenu,group:"1_do",title:e.kg(64,"&&Undo"),order:1},{menuId:k.D8.CommandPalette,group:"",title:e.kg(65,"Undo"),order:1},{menuId:k.D8.SimpleEditorContext,group:"1_do",title:e.kg(66,"Undo"),order:1}]}));I(new w(J,{id:"default:undo",precondition:void 0}));let K=I(new v({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:k.D8.MenubarEditMenu,group:"1_do",title:e.kg(67,"&&Redo"),order:2},{menuId:k.D8.CommandPalette,group:"",title:e.kg(68,"Redo"),order:1},{menuId:k.D8.SimpleEditorContext,group:"1_do",title:e.kg(69,"Redo"),order:2}]}));I(new w(K,{id:"default:redo",precondition:void 0}));let L=I(new v({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:k.D8.MenubarSelectionMenu,group:"1_basic",title:e.kg(70,"&&Select All"),order:1},{menuId:k.D8.CommandPalette,group:"",title:e.kg(71,"Select All"),order:1},{menuId:k.D8.SimpleEditorContext,group:"9_select",title:e.kg(72,"Select All"),order:1}]}))},72991:(a,b,c)=>{"use strict";c.d(b,{k:()=>e,o:()=>f});var d=c(59317);class e{constructor(a,b,c){this.range=a,this.inlineClassName=b,this.type=c}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.inlineClassName=c,this.inlineClassNameAffectsLetterSpacing=d}toInlineDecoration(a){return new e(new d.Q(a,this.startOffset+1,a,this.endOffset+1),this.inlineClassName,3*!!this.inlineClassNameAffectsLetterSpacing)}}},73043:()=>{},73518:()=>{},74098:()=>{},74134:(a,b,c)=>{"use strict";c.d(b,{$:()=>s,D:()=>x});var d,e,f=c(40565),g=c(60734),h=c(11314),i=c(79487),j=c(70511),k=c(45367),l=c(18401),m=c(21899),n=c(54734),o=c(25536),p=c(79851),q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},r=function(a,b){return function(c,d){b(c,d,a)}};let s=class{constructor(a,b,c){this._commandService=a,this._keybindingService=b,this._hiddenStates=new t(c)}createMenu(a,b,c){return new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b)}getMenuActions(a,b,c){let d=new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b),e=d.getActions(c);return d.dispose(),e}resetHiddenStates(a){this._hiddenStates.reset(a)}};s=q([r(0,j.d),r(1,p.b),r(2,m.CS)],s);let t=class{static{d=this}static{this._key="menu.hiddenCommands"}constructor(a){this._storageService=a,this._disposables=new h.Cm,this._onDidChange=new g.vl,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{let b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){this._data=Object.create(null)}this._disposables.add(a.onDidChangeValue(0,d._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{let b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){console.log("FAILED to read storage after UPDATE",a)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(a,b){return this._hiddenByDefaultCache.get(`${a.id}/${b}`)??!1}setDefaultState(a,b,c){this._hiddenByDefaultCache.set(`${a.id}/${b}`,c)}isHidden(a,b){let c=this._isHiddenByDefault(a,b),d=this._data[a.id]?.includes(b)??!1;return c?!d:d}updateHidden(a,b,c){this._isHiddenByDefault(a,b)&&(c=!c);let d=this._data[a.id];if(c)d?0>d.indexOf(b)&&d.push(b):this._data[a.id]=[b];else if(d){let c=d.indexOf(b);c>=0&&(0,n.UH)(d,c),0===d.length&&delete this._data[a.id]}this._persist()}reset(a){if(void 0===a)this._data=Object.create(null),this._persist();else{for(let{id:b}of a)this._data[b]&&delete this._data[b];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;let a=JSON.stringify(this._data);this._storageService.store(d._key,a,0,0)}finally{this._ignoreChangeEvent=!1}}};t=d=q([r(0,m.CS)],t);class u{constructor(a,b){this._id=a,this._collectContextKeysForSubmenus=b,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){let a;for(let b of(this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear(),this._sort(i.ZG.getMenuItems(this._id)))){let c=b.group||"";a&&a[0]===c||(a=[c,[]],this._menuGroups.push(a)),a[1].push(b),this._collectContextKeysAndSubmenuIds(b)}this._allMenuIds.add(this._id)}_sort(a){return a}_collectContextKeysAndSubmenuIds(a){if(u._fillInKbExprKeys(a.when,this._structureContextKeys),(0,i.is)(a)){if(a.command.precondition&&u._fillInKbExprKeys(a.command.precondition,this._preconditionContextKeys),a.command.toggled){let b=a.command.toggled.condition||a.command.toggled;u._fillInKbExprKeys(b,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(i.ZG.getMenuItems(a.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(a.submenu))}static _fillInKbExprKeys(a,b){if(a)for(let c of a.keys())b.add(c)}}let v=e=class extends u{constructor(a,b,c,d,e,f){super(a,c),this._hiddenStates=b,this._commandService=d,this._keybindingService=e,this._contextKeyService=f,this.refresh()}createActionGroups(a){let b=[];for(let c of this._menuGroups){let d,[f,g]=c;for(let b of g)if(this._contextKeyService.contextMatchesRules(b.when)){let c=(0,i.is)(b);c&&this._hiddenStates.setDefaultState(this._id,b.command.id,!!b.isHiddenByDefault);let f=function(a,b,c){let d=(0,i.i1)(b)?b.submenu.id:b.id,e="string"==typeof b.title?b.title:b.title.value,f=(0,l.ih)({id:`hide/${a.id}/${d}`,label:(0,o.kg)(1636,"Hide '{0}'",e),run(){c.updateHidden(a,d,!0)}}),g=(0,l.ih)({id:`toggle/${a.id}/${d}`,label:e,get checked(){return!c.isHidden(a,d)},run(){c.updateHidden(a,d,!!this.checked)}});return{hide:f,toggle:g,get isHidden(){return!g.checked}}}(this._id,c?b.command:b,this._hiddenStates);if(c){let c=x(this._commandService,this._keybindingService,b.command.id,b.when);(d??=[]).push(new i.Xe(b.command,b.alt,a,f,c,this._contextKeyService,this._commandService))}else{let c=new e(b.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(a),g=l.wv.join(...c.map(a=>a[1]));g.length>0&&(d??=[]).push(new i.nI(b,f,g))}}d&&d.length>0&&b.push([f,d])}return b}_sort(a){return a.sort(e._compareMenuItems)}static _compareMenuItems(a,b){let c=a.group,d=b.group;if(c!==d){if(!c)return 1;if(!d||"navigation"===c)return -1;if("navigation"===d)return 1;let a=c.localeCompare(d);if(0!==a)return a}let f=a.order||0,g=b.order||0;return f<g?-1:f>g?1:e._compareTitles((0,i.is)(a)?a.command.title:a.title,(0,i.is)(b)?b.command.title:b.title)}static _compareTitles(a,b){let c="string"==typeof a?a:a.original,d="string"==typeof b?b:b.original;return c.localeCompare(d)}};v=e=q([r(3,j.d),r(4,p.b),r(5,k.fN)],v);let w=class{constructor(a,b,c,d,e,j){this._disposables=new h.Cm,this._menuInfo=new v(a,b,c.emitEventsForSubmenuChanges,d,e,j);let k=new f.uC(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},c.eventDebounceDelay);this._disposables.add(k),this._disposables.add(i.ZG.onDidChangeMenu(a=>{for(let b of this._menuInfo.allMenuIds)if(a.has(b)){k.schedule();break}}));let l=this._disposables.add(new h.Cm),m=a=>{let b=!1,c=!1,d=!1;for(let e of a)if(b=b||e.isStructuralChange,c=c||e.isEnablementChange,d=d||e.isToggleChange,b&&c&&d)break;return{menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d}},n=()=>{l.add(j.onDidChangeContext(a=>{let b=a.affectsSome(this._menuInfo.structureContextKeys),c=a.affectsSome(this._menuInfo.preconditionContextKeys),d=a.affectsSome(this._menuInfo.toggledContextKeys);(b||c||d)&&this._onDidChange.fire({menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d})})),l.add(b.onDidChange(a=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new g.uI({onWillAddFirstListener:n,onDidRemoveLastListener:l.clear.bind(l),delay:c.eventDebounceDelay,merge:m}),this.onDidChange=this._onDidChange.event}getActions(a){return this._menuInfo.createActionGroups(a)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};function x(a,b,c,d,e=!0){return(0,l.ih)({id:`configureKeybinding/${c}`,label:(0,o.kg)(1637,"Configure Keybinding"),enabled:e,run(){let e=!b.lookupKeybinding(c)&&d?d.serialize():void 0;a.executeCommand("workbench.action.openGlobalKeybindings",`@command:${c}`+(e?` +when:${e}`:""))}})}w=q([r(3,j.d),r(4,p.b),r(5,k.fN)],w)},74786:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(29715).u1)("markerDecorationsService")},74864:()=>{},75096:(a,b,c)=>{"use strict";c.d(b,{MW:()=>h,bW:()=>j,nZ:()=>i});var d=c(49982);let e=()=>({get delay(){return -1},dispose:()=>{},showHover:()=>{}}),f=new d.d(()=>e("mouse",!1)),g=new d.d(()=>e("element",!1));function h(a){e=a}function i(a){return"element"===a?g.value:f.value}function j(){return e("element",!0)}},75286:()=>{},75322:()=>{},75341:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>h,aJ:()=>d});var d,e=c(54734),f=c(11314),g=c(61059);!function(a){a[a.PRESERVE=0]="PRESERVE",a[a.LAST=1]="LAST"}(d||(d={}));let h={Quickaccess:"workbench.contributions.quickaccess"};class i{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(a){return 0===a.prefix.length?this.defaultProvider=a:this.providers.push(a),this.providers.sort((a,b)=>b.prefix.length-a.prefix.length),(0,f.s)(()=>{this.providers.splice(this.providers.indexOf(a),1),this.defaultProvider===a&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return(0,e.Yc)([this.defaultProvider,...this.providers])}getQuickAccessProvider(a){return a&&this.providers.find(b=>a.startsWith(b.prefix))||this.defaultProvider}}g.O.add(h.Quickaccess,new i)},75393:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(60734);class e{constructor(){this._inputMode="insert",this._onDidChangeInputMode=new d.vl,this.onDidChangeInputMode=this._onDidChangeInputMode.event}getInputMode(){return this._inputMode}}let f=new e},75495:(a,b,c)=>{"use strict";c.d(b,{B:()=>d,m:()=>u});var d,e=c(32677),f=c(76136),g=c(67397),h=c(98350),i=c(40565),j=c(53578),k=c(60734),l=c(11314),m=c(56167);c(15267);var n=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};!function(a){a.North="north",a.South="south",a.East="east",a.West="west"}(d||(d={}));let o=new k.vl,p=new k.vl;class q{constructor(a){this.el=a,this.disposables=new l.Cm}get onPointerMove(){return this.disposables.add(new g.f((0,e.zk)(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new g.f((0,e.zk)(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}n([j.B],q.prototype,"onPointerMove",null),n([j.B],q.prototype,"onPointerUp",null);class r{get onPointerMove(){return this.disposables.add(new g.f(this.el,h.B.Change)).event}get onPointerUp(){return this.disposables.add(new g.f(this.el,h.B.End)).event}constructor(a){this.el=a,this.disposables=new l.Cm}dispose(){this.disposables.dispose()}}n([j.B],r.prototype,"onPointerMove",null),n([j.B],r.prototype,"onPointerUp",null);class s{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(a){this.factory=a}dispose(){}}n([j.B],s.prototype,"onPointerMove",null),n([j.B],s.prototype,"onPointerUp",null);let t="pointer-events-disabled";class u extends l.jG{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(a){this._state!==a&&(this.el.classList.toggle("disabled",0===a),this.el.classList.toggle("minimum",1===a),this.el.classList.toggle("maximum",2===a),this._state=a,this.onDidEnablementChange.fire(a))}get onDidStart(){return this._onDidStart.event}get onDidChange(){return this._onDidChange.event}get onDidReset(){return this._onDidReset.event}get onDidEnd(){return this._onDidEnd.event}set orthogonalStartSash(a){if(this._orthogonalStartSash!==a){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),a){let b=b=>{this.orthogonalStartDragHandleDisposables.clear(),0!==b&&(this._orthogonalStartDragHandle=(0,e.BC)(this.el,(0,e.$)(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add((0,l.s)(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add((0,e.ko)(this._orthogonalStartDragHandle,"mouseenter",()=>u.onMouseEnter(a))),this.orthogonalStartDragHandleDisposables.add((0,e.ko)(this._orthogonalStartDragHandle,"mouseleave",()=>u.onMouseLeave(a))))};this.orthogonalStartSashDisposables.add(a.onDidEnablementChange.event(b,this)),b(a.state)}this._orthogonalStartSash=a}}set orthogonalEndSash(a){if(this._orthogonalEndSash!==a){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),a){let b=b=>{this.orthogonalEndDragHandleDisposables.clear(),0!==b&&(this._orthogonalEndDragHandle=(0,e.BC)(this.el,(0,e.$)(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add((0,l.s)(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add((0,e.ko)(this._orthogonalEndDragHandle,"mouseenter",()=>u.onMouseEnter(a))),this.orthogonalEndDragHandleDisposables.add((0,e.ko)(this._orthogonalEndDragHandle,"mouseleave",()=>u.onMouseLeave(a))))};this.orthogonalEndSashDisposables.add(a.onDidEnablementChange.event(b,this)),b(a.state)}this._orthogonalEndSash=a}}constructor(a,b,c){let d;super(),this.hoverDelay=300,this.hoverDelayer=this._register(new i.ve(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new k.vl),this._onDidStart=this._register(new k.vl),this._onDidChange=this._register(new k.vl),this._onDidReset=this._register(new k.vl),this._onDidEnd=this._register(new k.vl),this.orthogonalStartSashDisposables=this._register(new l.Cm),this.orthogonalStartDragHandleDisposables=this._register(new l.Cm),this.orthogonalEndSashDisposables=this._register(new l.Cm),this.orthogonalEndDragHandleDisposables=this._register(new l.Cm),this.linkedSash=void 0,this.el=(0,e.BC)(a,(0,e.$)(".monaco-sash")),c.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${c.orthogonalEdge}`),m.zx&&this.el.classList.add("mac"),this._register((0,e.ko)(this.el,"mousedown",b=>this.onPointerStart(b,new q(a)))),this._register((0,e.ko)(this.el,"dblclick",a=>this.onPointerDoublePress(a))),this._register((0,e.ko)(this.el,"mouseenter",()=>u.onMouseEnter(this))),this._register((0,e.ko)(this.el,"mouseleave",()=>u.onMouseLeave(this))),this._register(h.q.addTarget(this.el)),this._register((0,e.ko)(this.el,h.B.Start,a=>this.onPointerStart(a,new r(this.el)))),this._register((0,e.ko)(this.el,h.B.Tap,a=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(a);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)})),"number"==typeof c.size?(this.size=c.size,0===c.orientation?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=4,this._register(o.event(a=>{this.size=a,this.layout()}))),this._register(p.event(a=>this.hoverDelay=a)),this.layoutProvider=b,this.orthogonalStartSash=c.orthogonalStartSash,this.orthogonalEndSash=c.orthogonalEndSash,this.orientation=c.orientation||0,1===this.orientation?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",!1),this.layout()}onPointerStart(a,b){e.fs.stop(a);let c=!1;if(!a.__orthogonalSashEvent){let d=this.getOrthogonalSash(a);d&&(c=!0,a.__orthogonalSashEvent=!0,d.onPointerStart(a,new s(b)))}if(this.linkedSash&&!a.__linkedSashEvent&&(a.__linkedSashEvent=!0,this.linkedSash.onPointerStart(a,new s(b))),!this.state)return;let d=this.el.ownerDocument.getElementsByTagName("iframe");for(let a of d)a.classList.add(t);let g=a.pageX,h=a.pageY,i=a.altKey;this.el.classList.add("active"),this._onDidStart.fire({startX:g,currentX:g,startY:h,currentY:h,altKey:i});let j=(0,f.li)(this.el),k=()=>{let a="";a=c?"all-scroll":1===this.orientation?1===this.state?"s-resize":2===this.state?"n-resize":m.zx?"row-resize":"ns-resize":1===this.state?"e-resize":2===this.state?"w-resize":m.zx?"col-resize":"ew-resize",j.textContent=`* { cursor: ${a} !important; }`},n=new l.Cm;k(),c||this.onDidEnablementChange.event(k,null,n);let o=a=>{e.fs.stop(a,!1);let b={startX:g,currentX:a.pageX,startY:h,currentY:a.pageY,altKey:i};this._onDidChange.fire(b)},p=a=>{for(let b of(e.fs.stop(a,!1),j.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),n.dispose(),d))b.classList.remove(t)};b.onPointerMove(o,null,n),b.onPointerUp(p,null,n),n.add(b)}onPointerDoublePress(a){let b=this.getOrthogonalSash(a);b&&b._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(a,b=!1){a.el.classList.contains("active")?(a.hoverDelayer.cancel(),a.el.classList.add("hover")):a.hoverDelayer.trigger(()=>a.el.classList.add("hover"),a.hoverDelay).then(void 0,()=>{}),!b&&a.linkedSash&&u.onMouseEnter(a.linkedSash,!0)}static onMouseLeave(a,b=!1){a.hoverDelayer.cancel(),a.el.classList.remove("hover"),!b&&a.linkedSash&&u.onMouseLeave(a.linkedSash,!0)}clearSashHoverState(){u.onMouseLeave(this)}layout(){if(0===this.orientation){let a=this.layoutProvider;this.el.style.left=a.getVerticalSashLeft(this)-this.size/2+"px",a.getVerticalSashTop&&(this.el.style.top=a.getVerticalSashTop(this)+"px"),a.getVerticalSashHeight&&(this.el.style.height=a.getVerticalSashHeight(this)+"px")}else{let a=this.layoutProvider;this.el.style.top=a.getHorizontalSashTop(this)-this.size/2+"px",a.getHorizontalSashLeft&&(this.el.style.left=a.getHorizontalSashLeft(this)+"px"),a.getHorizontalSashWidth&&(this.el.style.width=a.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(a){let b=a.initialTarget??a.target;if(b&&(0,e.sb)(b)&&b.classList.contains("orthogonal-drag-handle"))return b.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}},75507:()=>{},76136:(a,b,c)=>{"use strict";c.d(b,{U2:()=>function a(b,c=m()){if(!c)return;let d=n(c),e=[];for(let a=0;a<d.length;a++){let c=d[a];"string"==typeof c.selectorText&&-1!==c.selectorText.indexOf(b)&&e.push(a)}for(let a=e.length-1;a>=0;a--)c.sheet?.deleteRule(e[a]);for(let d of i.get(c)??[])a(b,d)},Wt:()=>function a(b,c,d=m()){if(d&&c)for(let e of(d.sheet?.insertRule(`${b} {${c}}`,0),i.get(d)??[]))a(b,c,e)},_:()=>o,li:()=>k});var d=c(11314),e=c(43589),f=c(88637),g=c(32677),h=c(29813);let i=new Map;class j{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(a){a!==this._currentCssStyle&&(this._currentCssStyle=a,this._styleSheet?this._styleSheet.textContent=a:this._styleSheet=k(h.G.document.head,b=>b.textContent=a))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function k(a=h.G.document.head,b,c){let e=document.createElement("style");if(e.type="text/css",e.media="screen",b?.(e),a.appendChild(e),c&&c.add((0,d.s)(()=>e.remove())),a===h.G.document.head){let a=new Set;for(let{window:b,disposables:j}of(i.set(e,a),c&&c.add((0,d.s)(()=>i.delete(e))),(0,g.sl)())){if(b===h.G)continue;let i=j.add(function(a,b,c){let e=new d.Cm,h=a.cloneNode(!0);for(let b of(c.document.head.appendChild(h),e.add((0,d.s)(()=>h.remove())),n(a)))h.sheet?.insertRule(b.cssText,h.sheet?.cssRules.length);return e.add(g.FK.observe(a,e,{childList:!0,subtree:f.gm,characterData:f.gm})(()=>{h.textContent=a.textContent})),b.add(h),e.add((0,d.s)(()=>b.delete(h))),e}(e,a,b));c?.add(i)}}return e}let l=null;function m(){return l||(l=k()),l}function n(a){return a?.sheet?.rules?a.sheet.rules:a?.sheet?.cssRules?a.sheet.cssRules:[]}function o(a){let b=new d.Cm,c=b.add(new j);return b.add((0,e.fm)(b=>{c.setStyle(a.read(b))})),b}},76419:()=>{},76519:()=>{},76558:(a,b,c)=>{"use strict";c.d(b,{m:()=>d});class d{constructor(a,b,c,d,e,f){this._scrollbarSize=Math.round(b),this._oppositeScrollbarSize=Math.round(c),this._arrowSize=Math.round(a),this._visibleSize=d,this._scrollSize=e,this._scrollPosition=f,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new d(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(a){let b=Math.round(a);return this._visibleSize!==b&&(this._visibleSize=b,this._refreshComputedValues(),!0)}setScrollSize(a){let b=Math.round(a);return this._scrollSize!==b&&(this._scrollSize=b,this._refreshComputedValues(),!0)}setScrollPosition(a){let b=Math.round(a);return this._scrollPosition!==b&&(this._scrollPosition=b,this._refreshComputedValues(),!0)}setScrollbarSize(a){this._scrollbarSize=Math.round(a)}setOppositeScrollbarSize(a){this._oppositeScrollbarSize=Math.round(a)}static _computeValues(a,b,c,d,e){let f=Math.max(0,c-a),g=Math.max(0,f-2*b),h=d>0&&d>c;if(!h)return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(g),computedSliderRatio:0,computedSliderPosition:0};let i=Math.round(Math.max(20,Math.floor(c*g/d))),j=(g-i)/(d-c);return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(i),computedSliderRatio:j,computedSliderPosition:Math.round(e*j)}}_refreshComputedValues(){let a=d._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=a.computedAvailableSize,this._computedIsNeeded=a.computedIsNeeded,this._computedSliderSize=a.computedSliderSize,this._computedSliderRatio=a.computedSliderRatio,this._computedSliderPosition=a.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(a){return this._computedIsNeeded?Math.round((a-this._arrowSize-this._computedSliderSize/2)/this._computedSliderRatio):0}getDesiredScrollPositionFromOffsetPaged(a){if(!this._computedIsNeeded)return 0;let b=a-this._arrowSize,c=this._scrollPosition;return b<this._computedSliderPosition?c-=this._visibleSize:c+=this._visibleSize,c}getDesiredScrollPositionFromDelta(a){return this._computedIsNeeded?Math.round((this._computedSliderPosition+a)/this._computedSliderRatio):0}}},76560:(a,b,c)=>{"use strict";c.d(b,{n:()=>d,r:()=>e});class d{constructor(a){this._prefix=a,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}let e=new d("id#")},76687:(a,b,c)=>{"use strict";c.d(b,{IN:()=>m,LC:()=>u,P8:()=>t,S8:()=>p,SA:()=>o,V8:()=>r,Vn:()=>v,hd:()=>q,pD:()=>s});var d=c(97619);class e extends Error{constructor(a,b,c){let d;"string"==typeof b&&0===b.indexOf("not ")?(d="must not be",b=b.replace(/^not /,"")):d="must be";let e=-1!==a.indexOf(".")?"property":"argument",f=`The "${a}" ${e} ${d} of type ${b}`;super(f+=`. Received type ${typeof c}`),this.code="ERR_INVALID_ARG_TYPE"}}function f(a,b){if("string"!=typeof a)throw new e(b,"string",a)}let g="win32"===d.iD;function h(a){return 47===a||92===a}function i(a){return 47===a}function j(a){return a>=65&&a<=90||a>=97&&a<=122}function k(a,b,c,d){let e="",f=0,g=-1,h=0,i=0;for(let j=0;j<=a.length;++j){if(j<a.length)i=a.charCodeAt(j);else if(d(i))break;else i=47;if(d(i)){if(g===j-1||1===h);else if(2===h){if(e.length<2||2!==f||46!==e.charCodeAt(e.length-1)||46!==e.charCodeAt(e.length-2)){if(e.length>2){let a=e.lastIndexOf(c);-1===a?(e="",f=0):f=(e=e.slice(0,a)).length-1-e.lastIndexOf(c),g=j,h=0;continue}else if(0!==e.length){e="",f=0,g=j,h=0;continue}}b&&(e+=e.length>0?`${c}..`:"..",f=2)}else e.length>0?e+=`${c}${a.slice(g+1,j)}`:e=a.slice(g+1,j),f=j-g-1;g=j,h=0}else 46===i&&-1!==h?++h:h=-1}return e}function l(a,b){var c;if(null===b||"object"!=typeof b)throw new e("pathObject","Object",b);let d=b.dir||b.root,f=b.base||`${b.name||""}${(c=b.ext)?`${"."===c[0]?"":"."}${c}`:""}`;return d?d===b.root?`${d}${f}`:`${d}${a}${f}`:f}let m={resolve(...a){let b="",c="",e=!1;for(let g=a.length-1;g>=-1;g--){let i;if(g>=0){if(f(i=a[g],`paths[${g}]`),0===i.length)continue}else 0===b.length?i=d.bJ():(void 0===(i=d._K[`=${b}`]||d.bJ())||i.slice(0,2).toLowerCase()!==b.toLowerCase()&&92===i.charCodeAt(2))&&(i=`${b}\\`);let k=i.length,l=0,m="",n=!1,o=i.charCodeAt(0);if(1===k)h(o)&&(l=1,n=!0);else if(h(o))if(n=!0,h(i.charCodeAt(1))){let a=2,b=2;for(;a<k&&!h(i.charCodeAt(a));)a++;if(a<k&&a!==b){let c=i.slice(b,a);for(b=a;a<k&&h(i.charCodeAt(a));)a++;if(a<k&&a!==b){for(b=a;a<k&&!h(i.charCodeAt(a));)a++;(a===k||a!==b)&&(m=`\\\\${c}\\${i.slice(b,a)}`,l=a)}}}else l=1;else j(o)&&58===i.charCodeAt(1)&&(m=i.slice(0,2),l=2,k>2&&h(i.charCodeAt(2))&&(n=!0,l=3));if(m.length>0)if(b.length>0){if(m.toLowerCase()!==b.toLowerCase())continue}else b=m;if(e){if(b.length>0)break}else if(c=`${i.slice(l)}\\${c}`,e=n,n&&b.length>0)break}return c=k(c,!e,"\\",h),e?`${b}\\${c}`:`${b}${c}`||"."},normalize(a){let b;f(a,"path");let c=a.length;if(0===c)return".";let d=0,e=!1,g=a.charCodeAt(0);if(1===c)return i(g)?"\\":a;if(h(g))if(e=!0,h(a.charCodeAt(1))){let e=2,f=2;for(;e<c&&!h(a.charCodeAt(e));)e++;if(e<c&&e!==f){let g=a.slice(f,e);for(f=e;e<c&&h(a.charCodeAt(e));)e++;if(e<c&&e!==f){for(f=e;e<c&&!h(a.charCodeAt(e));)e++;if(e===c)return`\\\\${g}\\${a.slice(f)}\\`;e!==f&&(b=`\\\\${g}\\${a.slice(f,e)}`,d=e)}}}else d=1;else j(g)&&58===a.charCodeAt(1)&&(b=a.slice(0,2),d=2,c>2&&h(a.charCodeAt(2))&&(e=!0,d=3));let l=d<c?k(a.slice(d),!e,"\\",h):"";if(0!==l.length||e||(l="."),l.length>0&&h(a.charCodeAt(c-1))&&(l+="\\"),!e&&void 0===b&&a.includes(":")){if(l.length>=2&&j(l.charCodeAt(0))&&58===l.charCodeAt(1))return`.\\${l}`;let b=a.indexOf(":");do if(b===c-1||h(a.charCodeAt(b+1)))return`.\\${l}`;while(-1!==(b=a.indexOf(":",b+1)))}return void 0===b?e?`\\${l}`:l:e?`${b}\\${l}`:`${b}${l}`},isAbsolute(a){f(a,"path");let b=a.length;if(0===b)return!1;let c=a.charCodeAt(0);return h(c)||b>2&&j(c)&&58===a.charCodeAt(1)&&h(a.charCodeAt(2))},join(...a){let b,c;if(0===a.length)return".";for(let d=0;d<a.length;++d){let e=a[d];f(e,"path"),e.length>0&&(void 0===b?b=c=e:b+=`\\${e}`)}if(void 0===b)return".";let d=!0,e=0;if("string"==typeof c&&h(c.charCodeAt(0))){++e;let a=c.length;a>1&&h(c.charCodeAt(1))&&(++e,a>2&&(h(c.charCodeAt(2))?++e:d=!1))}if(d){for(;e<b.length&&h(b.charCodeAt(e));)e++;e>=2&&(b=`\\${b.slice(e)}`)}return m.normalize(b)},relative(a,b){if(f(a,"from"),f(b,"to"),a===b)return"";let c=m.resolve(a),d=m.resolve(b);if(c===d||(a=c.toLowerCase(),b=d.toLowerCase(),a===b))return"";if(c.length!==a.length||d.length!==b.length){let a,b=c.split("\\"),e=d.split("\\");""===b[b.length-1]&&b.pop(),""===e[e.length-1]&&e.pop();let f=b.length,g=e.length,h=f<g?f:g;for(a=0;a<h&&b[a].toLowerCase()===e[a].toLowerCase();a++);return 0===a?d:a===h?g>h?e.slice(a).join("\\"):f>h?"..\\".repeat(f-1-a)+"..":"":"..\\".repeat(f-a)+e.slice(a).join("\\")}let e=0;for(;e<a.length&&92===a.charCodeAt(e);)e++;let g=a.length;for(;g-1>e&&92===a.charCodeAt(g-1);)g--;let h=g-e,i=0;for(;i<b.length&&92===b.charCodeAt(i);)i++;let j=b.length;for(;j-1>i&&92===b.charCodeAt(j-1);)j--;let k=j-i,l=h<k?h:k,n=-1,o=0;for(;o<l;o++){let c=a.charCodeAt(e+o);if(c!==b.charCodeAt(i+o))break;92===c&&(n=o)}if(o!==l){if(-1===n)return d}else{if(k>l){if(92===b.charCodeAt(i+o))return d.slice(i+o+1);if(2===o)return d.slice(i+o)}h>l&&(92===a.charCodeAt(e+o)?n=o:2===o&&(n=3)),-1===n&&(n=0)}let p="";for(o=e+n+1;o<=g;++o)(o===g||92===a.charCodeAt(o))&&(p+=0===p.length?"..":"\\..");return(i+=n,p.length>0)?`${p}${d.slice(i,j)}`:(92===d.charCodeAt(i)&&++i,d.slice(i,j))},toNamespacedPath(a){if("string"!=typeof a||0===a.length)return a;let b=m.resolve(a);if(b.length<=2)return a;if(92===b.charCodeAt(0)){if(92===b.charCodeAt(1)){let a=b.charCodeAt(2);if(63!==a&&46!==a)return`\\\\?\\UNC\\${b.slice(2)}`}}else if(j(b.charCodeAt(0))&&58===b.charCodeAt(1)&&92===b.charCodeAt(2))return`\\\\?\\${b}`;return b},dirname(a){f(a,"path");let b=a.length;if(0===b)return".";let c=-1,d=0,e=a.charCodeAt(0);if(1===b)return h(e)?a:".";if(h(e)){if(c=d=1,h(a.charCodeAt(1))){let e=2,f=2;for(;e<b&&!h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&!h(a.charCodeAt(e));)e++;if(e===b)return a;e!==f&&(c=d=e+1)}}}}else j(e)&&58===a.charCodeAt(1)&&(d=c=b>2&&h(a.charCodeAt(2))?3:2);let g=-1,i=!0;for(let c=b-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!i){g=c;break}}else i=!1;if(-1===g){if(-1===c)return".";g=c}return a.slice(0,g)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(a.length>=2&&j(a.charCodeAt(0))&&58===a.charCodeAt(1)&&(d=2),void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,i=-1;for(c=a.length-1;c>=d;--c){let j=a.charCodeAt(c);if(h(j)){if(!g){d=c+1;break}}else -1===i&&(g=!1,i=c+1),f>=0&&(j===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=i))}return d===e?e=i:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=0,c=-1,d=0,e=-1,g=!0,i=0;a.length>=2&&58===a.charCodeAt(1)&&j(a.charCodeAt(0))&&(b=d=2);for(let f=a.length-1;f>=b;--f){let b=a.charCodeAt(f);if(h(b)){if(!g){d=f+1;break}continue}-1===e&&(g=!1,e=f+1),46===b?-1===c?c=f:1!==i&&(i=1):-1!==c&&(i=-1)}return -1===c||-1===e||0===i||1===i&&c===e-1&&c===d+1?"":a.slice(c,e)},format:l.bind(null,"\\"),parse(a){f(a,"path");let b={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return b;let c=a.length,d=0,e=a.charCodeAt(0);if(1===c)return h(e)?b.root=b.dir=a:b.base=b.name=a,b;if(h(e)){if(d=1,h(a.charCodeAt(1))){let b=2,e=2;for(;b<c&&!h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&!h(a.charCodeAt(b));)b++;b===c?d=b:b!==e&&(d=b+1)}}}}else if(j(e)&&58===a.charCodeAt(1)){if(c<=2)return b.root=b.dir=a,b;if(d=2,h(a.charCodeAt(2))){if(3===c)return b.root=b.dir=a,b;d=3}}d>0&&(b.root=a.slice(0,d));let g=-1,i=d,k=-1,l=!0,m=a.length-1,n=0;for(;m>=d;--m){if(h(e=a.charCodeAt(m))){if(!l){i=m+1;break}continue}-1===k&&(l=!1,k=m+1),46===e?-1===g?g=m:1!==n&&(n=1):-1!==g&&(n=-1)}return -1!==k&&(-1===g||0===n||1===n&&g===k-1&&g===i+1?b.base=b.name=a.slice(i,k):(b.name=a.slice(i,g),b.base=a.slice(i,k),b.ext=a.slice(g,k))),i>0&&i!==d?b.dir=a.slice(0,i-1):b.dir=b.root,b},sep:"\\",delimiter:";",win32:null,posix:null},n=(()=>{if(g){let a=/\\/g;return()=>{let b=d.bJ().replace(a,"/");return b.slice(b.indexOf("/"))}}return()=>d.bJ()})(),o={resolve(...a){let b="",c=!1;for(let d=a.length-1;d>=0&&!c;d--){let e=a[d];f(e,`paths[${d}]`),0!==e.length&&(b=`${e}/${b}`,c=47===e.charCodeAt(0))}if(!c){let a=n();b=`${a}/${b}`,c=47===a.charCodeAt(0)}return(b=k(b,!c,"/",i),c)?`/${b}`:b.length>0?b:"."},normalize(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=47===a.charCodeAt(a.length-1);return 0===(a=k(a,!b,"/",i)).length?b?"/":c?"./":".":(c&&(a+="/"),b?`/${a}`:a)},isAbsolute:a=>(f(a,"path"),a.length>0&&47===a.charCodeAt(0)),join(...a){if(0===a.length)return".";let b=[];for(let c=0;c<a.length;++c){let d=a[c];f(d,"path"),d.length>0&&b.push(d)}return 0===b.length?".":o.normalize(b.join("/"))},relative(a,b){if(f(a,"from"),f(b,"to"),a===b||(a=o.resolve(a),b=o.resolve(b),a===b))return"";let c=a.length,d=c-1,e=b.length-1,g=d<e?d:e,h=-1,i=0;for(;i<g;i++){let c=a.charCodeAt(1+i);if(c!==b.charCodeAt(1+i))break;47===c&&(h=i)}if(i===g)if(e>g){if(47===b.charCodeAt(1+i))return b.slice(1+i+1);if(0===i)return b.slice(1+i)}else d>g&&(47===a.charCodeAt(1+i)?h=i:0===i&&(h=0));let j="";for(i=1+h+1;i<=c;++i)(i===c||47===a.charCodeAt(i))&&(j+=0===j.length?"..":"/..");return`${j}${b.slice(1+h)}`},toNamespacedPath:a=>a,dirname(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=-1,d=!0;for(let b=a.length-1;b>=1;--b)if(47===a.charCodeAt(b)){if(!d){c=b;break}}else d=!1;return -1===c?b?"/":".":b&&1===c?"//":a.slice(0,c)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,h=-1;for(c=a.length-1;c>=0;--c){let i=a.charCodeAt(c);if(47===i){if(!g){d=c+1;break}}else -1===h&&(g=!1,h=c+1),f>=0&&(i===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=h))}return d===e?e=h:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=0;--c)if(47===a.charCodeAt(c)){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=-1,c=0,d=-1,e=!0,g=0;for(let f=a.length-1;f>=0;--f){let h=a[f];if("/"===h){if(!e){c=f+1;break}continue}-1===d&&(e=!1,d=f+1),"."===h?-1===b?b=f:1!==g&&(g=1):-1!==b&&(g=-1)}return -1===b||-1===d||0===g||1===g&&b===d-1&&b===c+1?"":a.slice(b,d)},format:l.bind(null,"/"),parse(a){let b;f(a,"path");let c={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return c;let d=47===a.charCodeAt(0);d?(c.root="/",b=1):b=0;let e=-1,g=0,h=-1,i=!0,j=a.length-1,k=0;for(;j>=b;--j){let b=a.charCodeAt(j);if(47===b){if(!i){g=j+1;break}continue}-1===h&&(i=!1,h=j+1),46===b?-1===e?e=j:1!==k&&(k=1):-1!==e&&(k=-1)}if(-1!==h){let b=0===g&&d?1:g;-1===e||0===k||1===k&&e===h-1&&e===g+1?c.base=c.name=a.slice(b,h):(c.name=a.slice(b,e),c.base=a.slice(b,h),c.ext=a.slice(e,h))}return g>0?c.dir=a.slice(0,g-1):d&&(c.dir="/"),c},sep:"/",delimiter:":",win32:null,posix:null};o.win32=m.win32=m,o.posix=m.posix=o;let p=g?m.normalize:o.normalize,q=g?m.resolve:o.resolve,r=g?m.relative:o.relative,s=g?m.dirname:o.dirname,t=g?m.basename:o.basename,u=g?m.extname:o.extname,v=g?m.sep:o.sep},76847:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(25917),e=c(48363);class f extends d.CO{constructor(a){super(),this._textModel=a}getValueOfRange(a){return this._textModel.getValueInRange(a)}getLineLength(a){return this._textModel.getLineLength(a)}get length(){let a=this._textModel.getLineCount(),b=this._textModel.getLineLength(a);return new e.W(a-1,b)}}},77705:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(28272),e=c(43188),f=c(69467),g=c(91389);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},78040:(a,b,c)=>{"use strict";c.d(b,{ET:()=>l,On:()=>m,bX:()=>n});var d=c(93349),e=c(90389),f=c(32908),g=c(29892),h=c(22889),i=c(16749),j=c(41392);let k=(0,d.H)("diffEditorWidget",{createHTML:a=>a});function l(a,b,c,d,f=!1){(0,e.M)(d,b.fontInfo);let i=c.length>0,j=new g.fe(1e4),m=0,n=0,p=[];for(let d=0;d<a.lineTokens.length;d++){let e=d+1,g=a.lineTokens[d],k=a.lineBreakData[d],l=h.d.filter(c,e,1,Number.MAX_SAFE_INTEGER);if(k){let c=0;for(let d of k.breakOffsets)m=Math.max(m,o(n,g.sliceAndInflate(c,d,0),h.d.extractWrapped(l,c,d),i,a.mightContainNonBasicASCII,a.mightContainRTL,b,j,f)),n++,c=d;p.push(k.breakOffsets.length)}else p.push(1),m=Math.max(m,o(n,g,l,i,a.mightContainNonBasicASCII,a.mightContainRTL,b,j,f)),n++}m+=b.scrollBeyondLastColumn;let q=j.build();return d.innerHTML=k?k.createHTML(q):q,{heightInLines:n,minWidthInPx:m*b.typicalHalfwidthCharacterWidth,viewLineCounts:p}}class m{constructor(a,b=a.map(a=>null),c=!0,d=!0){this.lineTokens=a,this.lineBreakData=b,this.mightContainNonBasicASCII=c,this.mightContainRTL=d}}class n{static fromEditor(a){let b=a.getOptions(),c=b.get(59),d=b.get(165);return new n(a.getModel()?.getOptions().tabSize||0,c,b.get(40),c.typicalHalfwidthCharacterWidth,b.get(118),b.get(75),d.decorationsWidth,b.get(133),b.get(113),b.get(108),b.get(60),b.get(117).verticalScrollbarSize)}constructor(a,b,c,d,e,f,g,h,i,j,k,l,m=!0){this.tabSize=a,this.fontInfo=b,this.disableMonospaceOptimizations=c,this.typicalHalfwidthCharacterWidth=d,this.scrollBeyondLastColumn=e,this.lineHeight=f,this.lineDecorationsWidth=g,this.stopRenderingLineAfter=h,this.renderWhitespace=i,this.renderControlCharacters=j,this.fontLigatures=k,this.verticalScrollbarSize=l,this.setWidth=m}withSetWidth(a){return new n(this.tabSize,this.fontInfo,this.disableMonospaceOptimizations,this.typicalHalfwidthCharacterWidth,this.scrollBeyondLastColumn,this.lineHeight,this.lineDecorationsWidth,this.stopRenderingLineAfter,this.renderWhitespace,this.renderControlCharacters,this.fontLigatures,this.verticalScrollbarSize,a)}withScrollBeyondLastColumn(a){return new n(this.tabSize,this.fontInfo,this.disableMonospaceOptimizations,this.typicalHalfwidthCharacterWidth,a,this.lineHeight,this.lineDecorationsWidth,this.stopRenderingLineAfter,this.renderWhitespace,this.renderControlCharacters,this.fontLigatures,this.verticalScrollbarSize,this.setWidth)}}function o(a,b,c,d,e,g,h,k,l){k.appendString('<div class="view-line'),l||d||k.appendString(" char-delete"),k.appendString('" style="top:'),k.appendString(String(a*h.lineHeight)),h.setWidth?k.appendString('px;width:1000000px;">'):k.appendString('px;">');let m=b.getLineContent(),n=j.qL.isBasicASCII(m,e),o=j.qL.containsRTL(m,n,g),p=(0,i.UW)(new i.zL(h.fontInfo.isMonospace&&!h.disableMonospaceOptimizations,h.fontInfo.canUseHalfwidthRightwardsArrow,m,!1,n,o,0,b,c,h.tabSize,0,h.fontInfo.spaceWidth,h.fontInfo.middotWidth,h.fontInfo.wsmiddotWidth,h.stopRenderingLineAfter,h.renderWhitespace,h.renderControlCharacters,h.fontLigatures!==f.Bc.OFF,null,null,h.verticalScrollbarSize),k);return k.appendString("</div>"),p.characterMapping.getHorizontalOffset(p.characterMapping.length)}},78323:(a,b,c)=>{"use strict";c.d(b,{FdG:()=>d.Fd,buw:()=>l,GuP:()=>d.Gu,Bbc:()=>d.Bb,HP_:()=>d.HP,WMx:()=>n,zRE:()=>o,sAS:()=>am,vV$:()=>ak,etE:()=>al,mc0:()=>aj,XJc:()=>a1,raQ:()=>a3,G_h:()=>a_,T9h:()=>a2,xOA:()=>a5,Inn:()=>a4,nZG:()=>a6,Q1$:()=>a0,OcU:()=>be,C5U:()=>bg,Uv:()=>bh,hsb:()=>bi,t0B:()=>bf,b1q:()=>k,EY1:()=>_,ZEf:()=>aa,yUe:()=>h,Gj6:()=>ab,w3w:()=>ad,ld8:()=>ae,$BZ:()=>af,GNm:()=>ac,TUz:()=>bN,Ztu:()=>H,YtV:()=>u,AN$:()=>A,Rbi:()=>z,f3U:()=>M,Ubg:()=>N,ECk:()=>P,p8Y:()=>O,S5J:()=>Q,By2:()=>v,i61:()=>G,WfR:()=>R,oZ8:()=>T,Xo2:()=>S,tan:()=>K,IIb:()=>F,pOz:()=>E,WL6:()=>V,P6i:()=>U,B2L:()=>Z,sjA:()=>Y,_pU:()=>X,HwT:()=>W,seu:()=>I,rm4:()=>J,QwA:()=>L,whs:()=>B,Stt:()=>D,Hng:()=>C,CgL:()=>w,sIe:()=>y,FiB:()=>x,tAP:()=>j,CU6:()=>g,t4B:()=>i,c1f:()=>aM,uNK:()=>aK,$$0:()=>aN,L4c:()=>aH,Zgs:()=>aJ,cws:()=>aI,_$n:()=>aU,eYZ:()=>aW,h9z:()=>aV,I$A:()=>aO,YSW:()=>aQ,L9Z:()=>aP,ULt:()=>aR,C1n:()=>aT,T5N:()=>aS,HDX:()=>bj,zUX:()=>bl,Qfh:()=>bm,eUu:()=>bk,Rjz:()=>br,GVV:()=>bs,fED:()=>bt,yIp:()=>bC,Yoe:()=>bB,pnl:()=>bF,P9Z:()=>bH,fiM:()=>bG,H8q:()=>bI,gtq:()=>bq,VFX:()=>bn,efJ:()=>bo,eMz:()=>bE,p7Y:()=>bp,QI5:()=>bD,lO1:()=>bz,QRv:()=>bA,CQ3:()=>bx,ijf:()=>by,uNx:()=>bu,f4y:()=>bv,C9U:()=>bw,c6Y:()=>bQ,g$2:()=>bO,dd_:()=>bP,Ux$:()=>bS,SNb:()=>bT,pmr:()=>bR,D7X:()=>bU,ILr:()=>aF,yLC:()=>aE,AjU:()=>az,K1Z:()=>aG,KoI:()=>aC,yr0:()=>aB,Xp1:()=>aA,uMG:()=>aD,yLr:()=>d.yL,fAP:()=>au,z5H:()=>av,iwL:()=>bZ,NBf:()=>bY,tYX:()=>aw,bNw:()=>ay,JPj:()=>ax,BTi:()=>t,ELA:()=>bV,HJZ:()=>bW,AlL:()=>b1,nH:()=>b_,c7i:()=>b0,er1:()=>bX,Ukx:()=>a8,Ips:()=>a9,jOE:()=>a7,xWN:()=>bb,ZBU:()=>bc,kPT:()=>ba,jr9:()=>bd,x1A:()=>d.x1,bXl:()=>p,mhZ:()=>s,gnV:()=>q,cI_:()=>r,rvE:()=>aX,HcB:()=>a$,yqq:()=>aZ,lWP:()=>aY,k5u:()=>bL,sbQ:()=>bM,vwp:()=>m,JO0:()=>d.JO,pft:()=>bK,U4U:()=>bJ,DSL:()=>ah,f9l:()=>ag});var d=c(895),e=c(25536),f=c(23949);let g=(0,d.x1)("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1756,"Overall foreground color. This color is only used if not overridden by a component."));(0,d.x1)("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},e.kg(1757,"Overall foreground for disabled elements. This color is only used if not overridden by a component.")),(0,d.x1)("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1758,"Overall foreground color for error messages. This color is only used if not overridden by a component."));let h=(0,d.x1)("descriptionForeground",{light:"#717171",dark:(0,d.JO)(g,.7),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1759,"Foreground color for description text providing additional information, for example for a label.")),i=(0,d.x1)("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1760,"The default color for icons in the workbench.")),j=(0,d.x1)("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},e.kg(1761,"Overall border color for focused elements. This color is only used if not overridden by a component.")),k=(0,d.x1)("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},e.kg(1762,"An extra border around elements to separate them from others for greater contrast.")),l=(0,d.x1)("contrastActiveBorder",{light:null,dark:null,hcDark:j,hcLight:j},e.kg(1763,"An extra border around active elements to separate them from others for greater contrast."));(0,d.x1)("selection.background",null,e.kg(1764,"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));let m=(0,d.x1)("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1765,"Foreground color for links in text."));(0,d.x1)("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1766,"Foreground color for links in text when clicked on and on mouse hover.")),(0,d.x1)("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:f.Q1.black,hcLight:"#292929"},e.kg(1767,"Color for text separators.")),(0,d.x1)("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},e.kg(1768,"Foreground color for preformatted text segments.")),(0,d.x1)("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},e.kg(1769,"Background color for preformatted text segments.")),(0,d.x1)("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},e.kg(1770,"Background color for block quotes in text.")),(0,d.x1)("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:f.Q1.white,hcLight:"#292929"},e.kg(1771,"Border color for block quotes in text.")),(0,d.x1)("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:f.Q1.black,hcLight:"#F2F2F2"},e.kg(1772,"Background color for code blocks in text.")),(0,d.x1)("sash.hoverBorder",j,e.kg(1977,"Border color of active sashes."));let n=(0,d.x1)("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:f.Q1.black,hcLight:"#0F4A85"},e.kg(1978,"Badge background color. Badges are small information labels, e.g. for search results count.")),o=(0,d.x1)("badge.foreground",{dark:f.Q1.white,light:"#333",hcDark:f.Q1.white,hcLight:f.Q1.white},e.kg(1979,"Badge foreground color. Badges are small information labels, e.g. for search results count."));(0,d.x1)("activityWarningBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1980,"Foreground color of the warning activity badge")),(0,d.x1)("activityWarningBadge.background",{dark:"#CCA700",light:"#BF8803",hcDark:null,hcLight:"#CCA700"},e.kg(1981,"Background color of the warning activity badge")),(0,d.x1)("activityErrorBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1982,"Foreground color of the error activity badge")),(0,d.x1)("activityErrorBadge.background",{dark:"#F14C4C",light:"#E51400",hcDark:null,hcLight:"#F14C4C"},e.kg(1983,"Background color of the error activity badge"));let p=(0,d.x1)("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},e.kg(1984,"Scrollbar shadow to indicate that the view is scrolled.")),q=(0,d.x1)("scrollbarSlider.background",{dark:f.Q1.fromHex("#797979").transparent(.4),light:f.Q1.fromHex("#646464").transparent(.4),hcDark:(0,d.JO)(k,.6),hcLight:(0,d.JO)(k,.4)},e.kg(1985,"Scrollbar slider background color.")),r=(0,d.x1)("scrollbarSlider.hoverBackground",{dark:f.Q1.fromHex("#646464").transparent(.7),light:f.Q1.fromHex("#646464").transparent(.7),hcDark:(0,d.JO)(k,.8),hcLight:(0,d.JO)(k,.8)},e.kg(1986,"Scrollbar slider background color when hovering.")),s=(0,d.x1)("scrollbarSlider.activeBackground",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1987,"Scrollbar slider background color when clicked on.")),t=(0,d.x1)("progressBar.background",{dark:f.Q1.fromHex("#0E70C0"),light:f.Q1.fromHex("#0E70C0"),hcDark:k,hcLight:k},e.kg(1988,"Background color of the progress bar that can show for long running operations."));(0,d.x1)("chart.line",{dark:"#236B8E",light:"#236B8E",hcDark:"#236B8E",hcLight:"#236B8E"},e.kg(1989,"Line color for the chart.")),(0,d.x1)("chart.axis",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1990,"Axis color for the chart.")),(0,d.x1)("chart.guide",{dark:f.Q1.fromHex("#BFBFBF").transparent(.2),light:f.Q1.fromHex("#000000").transparent(.2),hcDark:k,hcLight:k},e.kg(1991,"Guide line for the chart."));let u=(0,d.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1781,"Editor background color.")),v=(0,d.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:f.Q1.white,hcLight:g},e.kg(1782,"Editor default foreground color."));(0,d.x1)("editorStickyScroll.background",u,e.kg(1783,"Background color of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollGutter.background",u,e.kg(1784,"Background color of the gutter part of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1785,"Background color of sticky scroll on hover in the editor")),(0,d.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1786,"Border color of sticky scroll in the editor")),(0,d.x1)("editorStickyScroll.shadow",p,e.kg(1787," Shadow color of sticky scroll in the editor"));let w=(0,d.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:f.Q1.white},e.kg(1788,"Background color of editor widgets, such as find/replace.")),x=(0,d.x1)("editorWidget.foreground",g,e.kg(1789,"Foreground color of editor widgets, such as find/replace.")),y=(0,d.x1)("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:k,hcLight:k},e.kg(1790,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,d.x1)("editorWidget.resizeBorder",null,e.kg(1791,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,d.x1)("editorError.background",null,e.kg(1792,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let z=(0,d.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1793,"Foreground color of error squigglies in the editor.")),A=(0,d.x1)("editorError.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},e.kg(1794,"If set, color of double underlines for errors in the editor.")),B=(0,d.x1)("editorWarning.background",null,e.kg(1795,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),C=(0,d.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},e.kg(1796,"Foreground color of warning squigglies in the editor.")),D=(0,d.x1)("editorWarning.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#FFCC00").transparent(.8),hcLight:f.Q1.fromHex("#FFCC00").transparent(.8)},e.kg(1797,"If set, color of double underlines for warnings in the editor."));(0,d.x1)("editorInfo.background",null,e.kg(1798,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let E=(0,d.x1)("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},e.kg(1799,"Foreground color of info squigglies in the editor.")),F=(0,d.x1)("editorInfo.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},e.kg(1800,"If set, color of double underlines for infos in the editor.")),G=(0,d.x1)("editorHint.foreground",{dark:f.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},e.kg(1801,"Foreground color of hint squigglies in the editor."));(0,d.x1)("editorHint.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},e.kg(1802,"If set, color of double underlines for hints in the editor."));let H=(0,d.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:f.Q1.blue,hcDark:f.Q1.cyan,hcLight:"#292929"},e.kg(1803,"Color of active links.")),I=(0,d.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},e.kg(1804,"Color of the editor selection.")),J=(0,d.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:f.Q1.white},e.kg(1805,"Color of the selected text for high contrast.")),K=(0,d.x1)("editor.inactiveSelectionBackground",{light:(0,d.JO)(I,.5),dark:(0,d.JO)(I,.5),hcDark:(0,d.JO)(I,.7),hcLight:(0,d.JO)(I,.5)},e.kg(1806,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,d.x1)("editor.selectionHighlightBackground",{light:(0,d.oG)(I,u,.3,.6),dark:(0,d.oG)(I,u,.3,.6),hcDark:null,hcLight:null},e.kg(1807,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1808,"Border color for regions with the same content as the selection.")),(0,d.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},e.kg(1809,"The border color for an IME composition.")),(0,d.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},e.kg(1810,"Color of the current search match."));let M=(0,d.x1)("editor.findMatchForeground",null,e.kg(1811,"Text color of the current search match.")),N=(0,d.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},e.kg(1812,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),O=(0,d.x1)("editor.findMatchHighlightForeground",null,e.kg(1813,"Foreground color of the other search matches."),!0);(0,d.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},e.kg(1814,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1815,"Border color of the current search match."));let P=(0,d.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1816,"Border color of the other search matches.")),Q=(0,d.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,d.JO)(l,.4),hcLight:(0,d.JO)(l,.4)},e.kg(1817,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},e.kg(1818,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let R=(0,d.x1)("editorHoverWidget.background",w,e.kg(1819,"Background color of the editor hover.")),S=(0,d.x1)("editorHoverWidget.foreground",x,e.kg(1820,"Foreground color of the editor hover.")),T=(0,d.x1)("editorHoverWidget.border",y,e.kg(1821,"Border color of the editor hover."));(0,d.x1)("editorHoverWidget.statusBarBackground",{dark:(0,d.a)(R,.2),light:(0,d.e$)(R,.05),hcDark:w,hcLight:w},e.kg(1822,"Background color of the editor hover status bar."));let U=(0,d.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:f.Q1.white,hcLight:f.Q1.black},e.kg(1823,"Foreground color of inline hints")),V=(0,d.x1)("editorInlayHint.background",{dark:(0,d.JO)(n,.1),light:(0,d.JO)(n,.1),hcDark:(0,d.JO)(f.Q1.white,.1),hcLight:(0,d.JO)(n,.1)},e.kg(1824,"Background color of inline hints")),W=(0,d.x1)("editorInlayHint.typeForeground",U,e.kg(1825,"Foreground color of inline hints for types")),X=(0,d.x1)("editorInlayHint.typeBackground",V,e.kg(1826,"Background color of inline hints for types")),Y=(0,d.x1)("editorInlayHint.parameterForeground",U,e.kg(1827,"Foreground color of inline hints for parameters")),Z=(0,d.x1)("editorInlayHint.parameterBackground",V,e.kg(1828,"Background color of inline hints for parameters")),$=(0,d.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},e.kg(1829,"The color used for the lightbulb actions icon."));(0,d.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},e.kg(1830,"The color used for the lightbulb auto fix actions icon.")),(0,d.x1)("editorLightBulbAi.foreground",$,e.kg(1831,"The color used for the lightbulb AI icon.")),(0,d.x1)("editor.snippetTabstopHighlightBackground",{dark:new f.Q1(new f.bU(124,124,124,.3)),light:new f.Q1(new f.bU(10,50,100,.2)),hcDark:new f.Q1(new f.bU(124,124,124,.3)),hcLight:new f.Q1(new f.bU(10,50,100,.2))},e.kg(1832,"Highlight background color of a snippet tabstop.")),(0,d.x1)("editor.snippetTabstopHighlightBorder",null,e.kg(1833,"Highlight border color of a snippet tabstop.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBackground",null,e.kg(1834,"Highlight background color of the final tabstop of a snippet.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new f.Q1(new f.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},e.kg(1835,"Highlight border color of the final tabstop of a snippet."));let _=new f.Q1(new f.bU(155,185,85,.2)),aa=new f.Q1(new f.bU(255,0,0,.2)),ab=(0,d.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},e.kg(1836,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,d.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},e.kg(1837,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),ad=(0,d.x1)("diffEditor.insertedLineBackground",{dark:_,light:_,hcDark:null,hcLight:null},e.kg(1838,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("diffEditor.removedLineBackground",{dark:aa,light:aa,hcDark:null,hcLight:null},e.kg(1839,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("diffEditorGutter.insertedLineBackground",null,e.kg(1840,"Background color for the margin where lines got inserted.")),(0,d.x1)("diffEditorGutter.removedLineBackground",null,e.kg(1841,"Background color for the margin where lines got removed."));let ae=(0,d.x1)("diffEditorOverview.insertedForeground",null,e.kg(1842,"Diff overview ruler foreground for inserted content.")),af=(0,d.x1)("diffEditorOverview.removedForeground",null,e.kg(1843,"Diff overview ruler foreground for removed content."));(0,d.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},e.kg(1844,"Outline color for the text that got inserted.")),(0,d.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},e.kg(1845,"Outline color for text that got removed.")),(0,d.x1)("diffEditor.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1846,"Border color between the two text editors.")),(0,d.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},e.kg(1847,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,d.x1)("diffEditor.unchangedRegionBackground","sideBar.background",e.kg(1848,"The background color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedRegionForeground","foreground",e.kg(1849,"The foreground color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},e.kg(1850,"The background color of unchanged code in the diff editor."));let ag=(0,d.x1)("widget.shadow",{dark:(0,d.JO)(f.Q1.black,.36),light:(0,d.JO)(f.Q1.black,.16),hcDark:null,hcLight:null},e.kg(1851,"Shadow color of widgets such as find/replace inside the editor.")),ah=(0,d.x1)("widget.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1852,"Border color of widgets such as find/replace inside the editor.")),ai=(0,d.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1853,"Toolbar background when hovering over actions using the mouse"));(0,d.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1854,"Toolbar outline when hovering over actions using the mouse")),(0,d.x1)("toolbar.activeBackground",{dark:(0,d.a)(ai,.1),light:(0,d.e$)(ai,.1),hcDark:null,hcLight:null},e.kg(1855,"Toolbar background when holding the mouse over actions"));let aj=(0,d.x1)("breadcrumb.foreground",(0,d.JO)(g,.8),e.kg(1856,"Color of focused breadcrumb items.")),ak=(0,d.x1)("breadcrumb.background",u,e.kg(1857,"Background color of breadcrumb items.")),al=(0,d.x1)("breadcrumb.focusForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1858,"Color of focused breadcrumb items.")),am=(0,d.x1)("breadcrumb.activeSelectionForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1859,"Color of selected breadcrumb items."));(0,d.x1)("breadcrumbPicker.background",w,e.kg(1860,"Background color of breadcrumb item picker."));let an=f.Q1.fromHex("#40C8AE").transparent(.5),ao=f.Q1.fromHex("#40A6FF").transparent(.5),ap=f.Q1.fromHex("#606060").transparent(.4),aq=(0,d.x1)("merge.currentHeaderBackground",{dark:an,light:an,hcDark:null,hcLight:null},e.kg(1861,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.currentContentBackground",(0,d.JO)(aq,.4),e.kg(1862,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let ar=(0,d.x1)("merge.incomingHeaderBackground",{dark:ao,light:ao,hcDark:null,hcLight:null},e.kg(1863,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.incomingContentBackground",(0,d.JO)(ar,.4),e.kg(1864,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let as=(0,d.x1)("merge.commonHeaderBackground",{dark:ap,light:ap,hcDark:null,hcLight:null},e.kg(1865,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.commonContentBackground",(0,d.JO)(as,.4),e.kg(1866,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let at=(0,d.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},e.kg(1867,"Border color on headers and the splitter in inline merge-conflicts."));(0,d.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,d.JO)(aq,1),light:(0,d.JO)(aq,1),hcDark:at,hcLight:at},e.kg(1868,"Current overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,d.JO)(ar,1),light:(0,d.JO)(ar,1),hcDark:at,hcLight:at},e.kg(1869,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,d.JO)(as,1),light:(0,d.JO)(as,1),hcDark:at,hcLight:at},e.kg(1870,"Common ancestor overview ruler foreground for inline merge-conflicts."));let au=(0,d.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},e.kg(1871,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),av=(0,d.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",e.kg(1872,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),aw=(0,d.x1)("problemsErrorIcon.foreground",z,e.kg(1873,"The color used for the problems error icon.")),ax=(0,d.x1)("problemsWarningIcon.foreground",C,e.kg(1874,"The color used for the problems warning icon.")),ay=(0,d.x1)("problemsInfoIcon.foreground",E,e.kg(1875,"The color used for the problems info icon.")),az=(0,d.x1)("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},e.kg(1966,"Minimap marker color for find matches."),!0),aA=(0,d.x1)("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1967,"Minimap marker color for repeating editor selections."),!0),aB=(0,d.x1)("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1968,"Minimap marker color for the editor selection."),!0),aC=(0,d.x1)("minimap.infoHighlight",{dark:E,light:E,hcDark:F,hcLight:F},e.kg(1969,"Minimap marker color for infos.")),aD=(0,d.x1)("minimap.warningHighlight",{dark:C,light:C,hcDark:D,hcLight:D},e.kg(1970,"Minimap marker color for warnings.")),aE=(0,d.x1)("minimap.errorHighlight",{dark:new f.Q1(new f.bU(255,18,18,.7)),light:new f.Q1(new f.bU(255,18,18,.7)),hcDark:new f.Q1(new f.bU(255,50,50,1)),hcLight:"#B5200D"},e.kg(1971,"Minimap marker color for errors.")),aF=(0,d.x1)("minimap.background",null,e.kg(1972,"Minimap background color.")),aG=(0,d.x1)("minimap.foregroundOpacity",f.Q1.fromHex("#000f"),e.kg(1973,'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));(0,d.x1)("minimapSlider.background",(0,d.JO)(q,.5),e.kg(1974,"Minimap slider background color.")),(0,d.x1)("minimapSlider.hoverBackground",(0,d.JO)(r,.5),e.kg(1975,"Minimap slider background color when hovering.")),(0,d.x1)("minimapSlider.activeBackground",(0,d.JO)(s,.5),e.kg(1976,"Minimap slider background color when clicked on.")),(0,d.x1)("charts.foreground",g,e.kg(1773,"The foreground color used in charts.")),(0,d.x1)("charts.lines",(0,d.JO)(g,.5),e.kg(1774,"The color used for horizontal lines in charts.")),(0,d.x1)("charts.red",z,e.kg(1775,"The red color used in chart visualizations.")),(0,d.x1)("charts.blue",E,e.kg(1776,"The blue color used in chart visualizations.")),(0,d.x1)("charts.yellow",C,e.kg(1777,"The yellow color used in chart visualizations.")),(0,d.x1)("charts.orange",az,e.kg(1778,"The orange color used in chart visualizations.")),(0,d.x1)("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},e.kg(1779,"The green color used in chart visualizations.")),(0,d.x1)("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},e.kg(1780,"The purple color used in chart visualizations."));let aH=(0,d.x1)("input.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1876,"Input box background.")),aI=(0,d.x1)("input.foreground",g,e.kg(1877,"Input box foreground.")),aJ=(0,d.x1)("input.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1878,"Input box border.")),aK=(0,d.x1)("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:k,hcLight:k},e.kg(1879,"Border color of activated options in input fields.")),aL=(0,d.x1)("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1880,"Background color of activated options in input fields.")),aM=(0,d.x1)("inputOption.activeBackground",{dark:(0,d.JO)(j,.4),light:(0,d.JO)(j,.2),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1881,"Background hover color of options in input fields.")),aN=(0,d.x1)("inputOption.activeForeground",{dark:f.Q1.white,light:f.Q1.black,hcDark:g,hcLight:g},e.kg(1882,"Foreground color of activated options in input fields."));(0,d.x1)("input.placeholderForeground",{light:(0,d.JO)(g,.5),dark:(0,d.JO)(g,.5),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1883,"Input box foreground color for placeholder text."));let aO=(0,d.x1)("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1884,"Input validation background color for information severity.")),aP=(0,d.x1)("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1885,"Input validation foreground color for information severity.")),aQ=(0,d.x1)("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:k,hcLight:k},e.kg(1886,"Input validation border color for information severity.")),aR=(0,d.x1)("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1887,"Input validation background color for warning severity.")),aS=(0,d.x1)("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1888,"Input validation foreground color for warning severity.")),aT=(0,d.x1)("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:k,hcLight:k},e.kg(1889,"Input validation border color for warning severity.")),aU=(0,d.x1)("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1890,"Input validation background color for error severity.")),aV=(0,d.x1)("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1891,"Input validation foreground color for error severity.")),aW=(0,d.x1)("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1892,"Input validation border color for error severity.")),aX=(0,d.x1)("dropdown.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1893,"Dropdown background.")),aY=(0,d.x1)("dropdown.listBackground",{dark:null,light:null,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1894,"Dropdown list background.")),aZ=(0,d.x1)("dropdown.foreground",{dark:"#F0F0F0",light:g,hcDark:f.Q1.white,hcLight:g},e.kg(1895,"Dropdown foreground.")),a$=(0,d.x1)("dropdown.border",{dark:aX,light:"#CECECE",hcDark:k,hcLight:k},e.kg(1896,"Dropdown border.")),a_=(0,d.x1)("button.foreground",f.Q1.white,e.kg(1897,"Button foreground color.")),a0=(0,d.x1)("button.separator",(0,d.JO)(a_,.4),e.kg(1898,"Button separator color.")),a1=(0,d.x1)("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},e.kg(1899,"Button background color.")),a2=(0,d.x1)("button.hoverBackground",{dark:(0,d.a)(a1,.2),light:(0,d.e$)(a1,.2),hcDark:a1,hcLight:a1},e.kg(1900,"Button background color when hovering.")),a3=(0,d.x1)("button.border",k,e.kg(1901,"Button border color.")),a4=(0,d.x1)("button.secondaryForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:f.Q1.white,hcLight:g},e.kg(1902,"Secondary button foreground color.")),a5=(0,d.x1)("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:f.Q1.white},e.kg(1903,"Secondary button background color.")),a6=(0,d.x1)("button.secondaryHoverBackground",{dark:(0,d.a)(a5,.2),light:(0,d.e$)(a5,.2),hcDark:null,hcLight:null},e.kg(1904,"Secondary button background color when hovering.")),a7=(0,d.x1)("radio.activeForeground",aN,e.kg(1905,"Foreground color of active radio option.")),a8=(0,d.x1)("radio.activeBackground",aM,e.kg(1906,"Background color of active radio option.")),a9=(0,d.x1)("radio.activeBorder",aK,e.kg(1907,"Border color of the active radio option.")),ba=(0,d.x1)("radio.inactiveForeground",null,e.kg(1908,"Foreground color of inactive radio option.")),bb=(0,d.x1)("radio.inactiveBackground",null,e.kg(1909,"Background color of inactive radio option.")),bc=(0,d.x1)("radio.inactiveBorder",{light:(0,d.JO)(a7,.2),dark:(0,d.JO)(a7,.2),hcDark:(0,d.JO)(a7,.4),hcLight:(0,d.JO)(a7,.2)},e.kg(1910,"Border color of the inactive radio option.")),bd=(0,d.x1)("radio.inactiveHoverBackground",aL,e.kg(1911,"Background color of inactive active radio option when hovering.")),be=(0,d.x1)("checkbox.background",aX,e.kg(1912,"Background color of checkbox widget."));(0,d.x1)("checkbox.selectBackground",w,e.kg(1913,"Background color of checkbox widget when the element it's in is selected."));let bf=(0,d.x1)("checkbox.foreground",aZ,e.kg(1914,"Foreground color of checkbox widget.")),bg=(0,d.x1)("checkbox.border",a$,e.kg(1915,"Border color of checkbox widget."));(0,d.x1)("checkbox.selectBorder",i,e.kg(1916,"Border color of checkbox widget when the element it's in is selected."));let bh=(0,d.x1)("checkbox.disabled.background",{op:7,color:be,with:bf,ratio:.33},e.kg(1917,"Background of a disabled checkbox.")),bi=(0,d.x1)("checkbox.disabled.foreground",{op:7,color:bf,with:be,ratio:.33},e.kg(1918,"Foreground of a disabled checkbox.")),bj=(0,d.x1)("keybindingLabel.background",{dark:new f.Q1(new f.bU(128,128,128,.17)),light:new f.Q1(new f.bU(221,221,221,.4)),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1919,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),bk=(0,d.x1)("keybindingLabel.foreground",{dark:f.Q1.fromHex("#CCCCCC"),light:f.Q1.fromHex("#555555"),hcDark:f.Q1.white,hcLight:g},e.kg(1920,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),bl=(0,d.x1)("keybindingLabel.border",{dark:new f.Q1(new f.bU(51,51,51,.6)),light:new f.Q1(new f.bU(204,204,204,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:k},e.kg(1921,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),bm=(0,d.x1)("keybindingLabel.bottomBorder",{dark:new f.Q1(new f.bU(68,68,68,.6)),light:new f.Q1(new f.bU(187,187,187,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:g},e.kg(1922,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),bn=(0,d.x1)("list.focusBackground",null,e.kg(1923,"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bo=(0,d.x1)("list.focusForeground",null,e.kg(1924,"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bp=(0,d.x1)("list.focusOutline",{dark:j,light:j,hcDark:l,hcLight:l},e.kg(1925,"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bq=(0,d.x1)("list.focusAndSelectionOutline",null,e.kg(1926,"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),br=(0,d.x1)("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1927,"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bs=(0,d.x1)("list.activeSelectionForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:null,hcLight:null},e.kg(1928,"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bt=(0,d.x1)("list.activeSelectionIconForeground",null,e.kg(1929,"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bu=(0,d.x1)("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1930,"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bv=(0,d.x1)("list.inactiveSelectionForeground",null,e.kg(1931,"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bw=(0,d.x1)("list.inactiveSelectionIconForeground",null,e.kg(1932,"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bx=(0,d.x1)("list.inactiveFocusBackground",null,e.kg(1933,"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),by=(0,d.x1)("list.inactiveFocusOutline",null,e.kg(1934,"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bz=(0,d.x1)("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:f.Q1.white.transparent(.1),hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1935,"List/Tree background when hovering over items using the mouse.")),bA=(0,d.x1)("list.hoverForeground",null,e.kg(1936,"List/Tree foreground when hovering over items using the mouse.")),bB=(0,d.x1)("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},e.kg(1937,"List/Tree drag and drop background when moving items over other items when using the mouse.")),bC=(0,d.x1)("list.dropBetweenBackground",{dark:i,light:i,hcDark:null,hcLight:null},e.kg(1938,"List/Tree drag and drop border color when moving items between items when using the mouse.")),bD=(0,d.x1)("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:j,hcLight:j},e.kg(1939,"List/Tree foreground color of the match highlights when searching inside the list/tree.")),bE=(0,d.x1)("list.focusHighlightForeground",{dark:bD,light:(0,d.Hz)(br,bD,"#BBE7FF"),hcDark:bD,hcLight:bD},e.kg(1940,"List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));(0,d.x1)("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},e.kg(1941,"List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),(0,d.x1)("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},e.kg(1942,"Foreground color of list items containing errors.")),(0,d.x1)("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},e.kg(1943,"Foreground color of list items containing warnings."));let bF=(0,d.x1)("listFilterWidget.background",{light:(0,d.e$)(w,0),dark:(0,d.a)(w,0),hcDark:w,hcLight:w},e.kg(1944,"Background color of the type filter widget in lists and trees.")),bG=(0,d.x1)("listFilterWidget.outline",{dark:f.Q1.transparent,light:f.Q1.transparent,hcDark:"#f38518",hcLight:"#007ACC"},e.kg(1945,"Outline color of the type filter widget in lists and trees.")),bH=(0,d.x1)("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1946,"Outline color of the type filter widget in lists and trees, when there are no matches.")),bI=(0,d.x1)("listFilterWidget.shadow",ag,e.kg(1947,"Shadow color of the type filter widget in lists and trees."));(0,d.x1)("list.filterMatchBackground",{dark:N,light:N,hcDark:null,hcLight:null},e.kg(1948,"Background color of the filtered match.")),(0,d.x1)("list.filterMatchBorder",{dark:P,light:P,hcDark:k,hcLight:l},e.kg(1949,"Border color of the filtered match.")),(0,d.x1)("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},e.kg(1950,"List/Tree foreground color for items that are deemphasized."));let bJ=(0,d.x1)("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},e.kg(1951,"Tree stroke color for the indentation guides.")),bK=(0,d.x1)("tree.inactiveIndentGuidesStroke",(0,d.JO)(bJ,.4),e.kg(1952,"Tree stroke color for the indentation guides that are not active.")),bL=(0,d.x1)("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},e.kg(1953,"Table border color between columns.")),bM=(0,d.x1)("tree.tableOddRowsBackground",{dark:(0,d.JO)(g,.04),light:(0,d.JO)(g,.04),hcDark:null,hcLight:null},e.kg(1954,"Background color for odd table rows."));(0,d.x1)("editorActionList.background",w,e.kg(1955,"Action List background color."));let bN=(0,d.x1)("editorActionList.foreground",x,e.kg(1956,"Action List foreground color."));(0,d.x1)("editorActionList.focusForeground",bs,e.kg(1957,"Action List foreground color for the focused item.")),(0,d.x1)("editorActionList.focusBackground",br,e.kg(1958,"Action List background color for the focused item."));let bO=(0,d.x1)("menu.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1959,"Border color of menus.")),bP=(0,d.x1)("menu.foreground",aZ,e.kg(1960,"Foreground color of menu items.")),bQ=(0,d.x1)("menu.background",aX,e.kg(1961,"Background color of menu items.")),bR=(0,d.x1)("menu.selectionForeground",bs,e.kg(1962,"Foreground color of the selected menu item in menus.")),bS=(0,d.x1)("menu.selectionBackground",br,e.kg(1963,"Background color of the selected menu item in menus.")),bT=(0,d.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1964,"Border color of the selected menu item in menus.")),bU=(0,d.x1)("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:k,hcLight:k},e.kg(1965,"Color of a separator menu item in menus.")),bV=(0,d.x1)("quickInput.background",w,e.kg(1992,"Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),bW=(0,d.x1)("quickInput.foreground",x,e.kg(1993,"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),bX=(0,d.x1)("quickInputTitle.background",{dark:new f.Q1(new f.bU(255,255,255,.105)),light:new f.Q1(new f.bU(0,0,0,.06)),hcDark:"#000000",hcLight:f.Q1.white},e.kg(1994,"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),bY=(0,d.x1)("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1995,"Quick picker color for grouping labels.")),bZ=(0,d.x1)("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1996,"Quick picker color for grouping borders.")),b$=(0,d.x1)("quickInput.list.focusBackground",null,"",void 0,e.kg(1997,"Please use quickInputList.focusBackground instead")),b_=(0,d.x1)("quickInputList.focusForeground",bs,e.kg(1998,"Quick picker foreground color for the focused item.")),b0=(0,d.x1)("quickInputList.focusIconForeground",bt,e.kg(1999,"Quick picker icon foreground color for the focused item.")),b1=(0,d.x1)("quickInputList.focusBackground",{dark:(0,d.yL)(b$,br),light:(0,d.yL)(b$,br),hcDark:null,hcLight:null},e.kg(2e3,"Quick picker background color for the focused item."));(0,d.x1)("search.resultsInfoForeground",{light:g,dark:(0,d.JO)(g,.65),hcDark:g,hcLight:g},e.kg(2001,"Color of the text in the search viewlet's completion message.")),(0,d.x1)("searchEditor.findMatchBackground",{light:(0,d.JO)(N,.66),dark:(0,d.JO)(N,.66),hcDark:N,hcLight:N},e.kg(2002,"Color of the Search Editor query matches.")),(0,d.x1)("searchEditor.findMatchBorder",{light:(0,d.JO)(P,.66),dark:(0,d.JO)(P,.66),hcDark:P,hcLight:P},e.kg(2003,"Border color of the Search Editor query matches."))},78387:(a,b,c)=>{"use strict";c.d(b,{P:()=>i});var d=c(59317),e=c(70544),f=c(98447),g=c(22450),h=c(55866);class i{static computeUnicodeHighlights(a,b,c){var i;let k,l,m=c?c.startLineNumber:1,n=c?c.endLineNumber:a.getLineCount(),o=new j(b),p=o.getCandidateCodePoints();k="allNonBasicAscii"===p?RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):RegExp(`${(i=Array.from(p),`[${f.bm(i.map(a=>String.fromCodePoint(a)).join(""))}]`)}`,"g");let q=new e.W5(null,k),r=[],s=!1,t=0,u=0,v=0;d:for(let b=m;b<=n;b++){let c=a.getLineContent(b),e=c.length;q.reset(0);do if(l=q.next(c)){let a=l.index,i=l.index+l[0].length;if(a>0){let b=c.charCodeAt(a-1);f.pc(b)&&a--}if(i+1<e){let a=c.charCodeAt(i-1);f.pc(a)&&i++}let j=c.substring(a,i),k=(0,h.Th)(a+1,h.Ld,c,0);k&&k.endColumn<=a+1&&(k=null);let m=o.shouldHighlightNonBasicASCII(j,k?k.word:null);if(0!==m){if(3===m?t++:2===m?u++:1===m?v++:(0,g.xb)(m),r.length>=1e3){s=!0;break d}r.push(new d.Q(b,a+1,b,i+1))}}while(l)}return{ranges:r,hasMore:s,ambiguousCharacterCount:t,invisibleCharacterCount:u,nonBasicAsciiCharacterCount:v}}static computeUnicodeHighlightReason(a,b){let c=new j(b);switch(c.shouldHighlightNonBasicASCII(a,null)){case 0:return null;case 2:return{kind:1};case 3:{let d=a.codePointAt(0),e=c.ambiguousCharacters.getPrimaryConfusable(d),g=f.tl.getLocales().filter(a=>!f.tl.getInstance(new Set([...b.allowedLocales,a])).isAmbiguous(d));return{kind:0,confusableWith:String.fromCodePoint(e),notAmbiguousInLocales:g}}case 1:return{kind:2}}}}class j{constructor(a){this.options=a,this.allowedCodePoints=new Set(a.allowedCodePoints),this.ambiguousCharacters=f.tl.getInstance(new Set(a.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";let a=new Set;if(this.options.invisibleCharacters)for(let b of f.y_.codePoints)k(String.fromCodePoint(b))||a.add(b);if(this.options.ambiguousCharacters)for(let b of this.ambiguousCharacters.getConfusableCodePoints())a.add(b);for(let b of this.allowedCodePoints)a.delete(b);return a}shouldHighlightNonBasicASCII(a,b){let c=a.codePointAt(0);if(this.allowedCodePoints.has(c))return 0;if(this.options.nonBasicASCII)return 1;let d=!1,e=!1;if(b)for(let a of b){let b=a.codePointAt(0),c=f.aC(a);d=d||c,c||this.ambiguousCharacters.isAmbiguous(b)||f.y_.isInvisibleCharacter(b)||(e=!0)}return!d&&e?0:this.options.invisibleCharacters&&!k(a)&&f.y_.isInvisibleCharacter(c)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(c)?3:0}}function k(a){return" "===a||"\n"===a||" "===a}},78508:(a,b,c)=>{"use strict";c.d(b,{I:()=>k});var d=c(98447),e=c(29949),f=c(79677),g=c(59317),h=c(16817),i=c(69467);class j{constructor(a,b,c){this._cursorPositionBrand=void 0,this.lineNumber=a,this.column=b,this.leftoverVisibleColumns=c}}class k{static leftPosition(a,b){if(b.column>a.getLineMinColumn(b.lineNumber))return b.delta(void 0,-d.MV(a.getLineContent(b.lineNumber),b.column-1));if(!(b.lineNumber>1))return b;{let c=b.lineNumber-1;return new f.y(c,a.getLineMaxColumn(c))}}static leftPositionAtomicSoftTabs(a,b,c){if(b.column<=a.getLineIndentColumn(b.lineNumber)){let d=a.getLineMinColumn(b.lineNumber),e=a.getLineContent(b.lineNumber),g=h.s.atomicPosition(e,b.column-1,c,0);if(-1!==g&&g+1>=d)return new f.y(b.lineNumber,g+1)}return this.leftPosition(a,b)}static left(a,b,c){let d=a.stickyTabStops?k.leftPositionAtomicSoftTabs(b,c,a.tabSize):k.leftPosition(b,c);return new j(d.lineNumber,d.column,0)}static moveLeft(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.startLineNumber,g=c.selection.startColumn;else{let d=c.position.delta(void 0,-(e-1)),h=b.normalizePosition(k.clipPositionColumn(d,b),0),i=k.left(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static clipPositionColumn(a,b){return new f.y(a.lineNumber,k.clipRange(a.column,b.getLineMinColumn(a.lineNumber),b.getLineMaxColumn(a.lineNumber)))}static clipRange(a,b,c){return a<b?b:a>c?c:a}static rightPosition(a,b,c){return c<a.getLineMaxColumn(b)?c+=d.iy(a.getLineContent(b),c-1):b<a.getLineCount()&&(b+=1,c=a.getLineMinColumn(b)),new f.y(b,c)}static rightPositionAtomicSoftTabs(a,b,c,d,e){if(c<a.getLineIndentColumn(b)){let e=a.getLineContent(b),g=h.s.atomicPosition(e,c-1,d,1);if(-1!==g)return new f.y(b,g+1)}return this.rightPosition(a,b,c)}static right(a,b,c){let d=a.stickyTabStops?k.rightPositionAtomicSoftTabs(b,c.lineNumber,c.column,a.tabSize,a.indentSize):k.rightPosition(b,c.lineNumber,c.column);return new j(d.lineNumber,d.column,0)}static moveRight(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.endLineNumber,g=c.selection.endColumn;else{let d=c.position.delta(void 0,e-1),h=b.normalizePosition(k.clipPositionColumn(d,b),1),i=k.right(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static vertical(a,b,c,d,g,h,i,k){let l=e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize)+g,m=b.getLineCount(),n=1===c&&1===d,o=c===m&&d===b.getLineMaxColumn(c),p=h<c?n:o;if((c=h)<1?(c=1,d=i?b.getLineMinColumn(c):Math.min(b.getLineMaxColumn(c),d)):c>m?(c=m,d=i?b.getLineMaxColumn(c):Math.min(b.getLineMaxColumn(c),d)):d=a.columnFromVisibleColumn(b,c,l),g=p?0:l-e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize),void 0!==k){let a=new f.y(c,d),e=b.normalizePosition(a,k);g+=d-e.column,c=e.lineNumber,d=e.column}return new j(c,d,g)}static down(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c+f,g,4)}static moveDown(a,b,c,d,e){let g,h,i;c.hasSelection()&&!d?(g=c.selection.endLineNumber,h=c.selection.endColumn):(g=c.position.lineNumber,h=c.position.column);let j=0;do if(i=k.down(a,b,g+j,h,c.leftoverVisibleColumns,e,!0),b.normalizePosition(new f.y(i.lineNumber,i.column),2).lineNumber>g)break;while(j++<10&&g+j<b.getLineCount());return c.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns)}static translateDown(a,b,c){let d=c.selection,e=k.down(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.down(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static up(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c-f,g,3)}static moveUp(a,b,c,d,e){let f,g;c.hasSelection()&&!d?(f=c.selection.startLineNumber,g=c.selection.startColumn):(f=c.position.lineNumber,g=c.position.column);let h=k.up(a,b,f,g,c.leftoverVisibleColumns,e,!0);return c.move(d,h.lineNumber,h.column,h.leftoverVisibleColumns)}static translateUp(a,b,c){let d=c.selection,e=k.up(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.up(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static _isBlankLine(a,b){return 0===a.getLineFirstNonWhitespaceColumn(b)}static moveToPrevBlankLine(a,b,c,d){let e=c.position.lineNumber;for(;e>1&&this._isBlankLine(b,e);)e--;for(;e>1&&!this._isBlankLine(b,e);)e--;return c.move(d,e,b.getLineMinColumn(e),0)}static moveToNextBlankLine(a,b,c,d){let e=b.getLineCount(),f=c.position.lineNumber;for(;f<e&&this._isBlankLine(b,f);)f++;for(;f<e&&!this._isBlankLine(b,f);)f++;return c.move(d,f,b.getLineMinColumn(f),0)}static moveToBeginningOfLine(a,b,c,d){let e,f=c.position.lineNumber,g=b.getLineMinColumn(f),h=b.getLineFirstNonWhitespaceColumn(f)||g;return e=c.position.column===h?g:h,c.move(d,f,e,0)}static moveToEndOfLine(a,b,c,d,e){let f=c.position.lineNumber,g=b.getLineMaxColumn(f);return c.move(d,f,g,e?0x40000000-g:0)}static moveToBeginningOfBuffer(a,b,c,d){return c.move(d,1,1,0)}static moveToEndOfBuffer(a,b,c,d){let e=b.getLineCount(),f=b.getLineMaxColumn(e);return c.move(d,e,f,0)}}},78595:()=>{},79487:(a,b,c)=>{"use strict";c.d(b,{D8:()=>q,L:()=>w,Xe:()=>v,ZG:()=>t,ez:()=>r,i1:()=>p,is:()=>o,nI:()=>u,ug:()=>x});var d,e=c(18401),f=c(60734),g=c(11314),h=c(71373),i=c(81633),j=c(70511),k=c(45367),l=c(29715),m=c(32765),n=function(a,b){return function(c,d){b(c,d,a)}};function o(a){return void 0!==a.command}function p(a){return void 0!==a.submenu}class q{static{this._instances=new Map}static{this.CommandPalette=new q("CommandPalette")}static{this.DebugBreakpointsContext=new q("DebugBreakpointsContext")}static{this.DebugCallStackContext=new q("DebugCallStackContext")}static{this.DebugConsoleContext=new q("DebugConsoleContext")}static{this.DebugVariablesContext=new q("DebugVariablesContext")}static{this.NotebookVariablesContext=new q("NotebookVariablesContext")}static{this.DebugHoverContext=new q("DebugHoverContext")}static{this.DebugWatchContext=new q("DebugWatchContext")}static{this.DebugToolBar=new q("DebugToolBar")}static{this.DebugToolBarStop=new q("DebugToolBarStop")}static{this.DebugDisassemblyContext=new q("DebugDisassemblyContext")}static{this.DebugCallStackToolbar=new q("DebugCallStackToolbar")}static{this.DebugCreateConfiguration=new q("DebugCreateConfiguration")}static{this.EditorContext=new q("EditorContext")}static{this.SimpleEditorContext=new q("SimpleEditorContext")}static{this.EditorContent=new q("EditorContent")}static{this.EditorLineNumberContext=new q("EditorLineNumberContext")}static{this.EditorContextCopy=new q("EditorContextCopy")}static{this.EditorContextPeek=new q("EditorContextPeek")}static{this.EditorContextShare=new q("EditorContextShare")}static{this.EditorTitle=new q("EditorTitle")}static{this.CompactWindowEditorTitle=new q("CompactWindowEditorTitle")}static{this.EditorTitleRun=new q("EditorTitleRun")}static{this.EditorTitleContext=new q("EditorTitleContext")}static{this.EditorTitleContextShare=new q("EditorTitleContextShare")}static{this.EmptyEditorGroup=new q("EmptyEditorGroup")}static{this.EmptyEditorGroupContext=new q("EmptyEditorGroupContext")}static{this.EditorTabsBarContext=new q("EditorTabsBarContext")}static{this.EditorTabsBarShowTabsSubmenu=new q("EditorTabsBarShowTabsSubmenu")}static{this.EditorTabsBarShowTabsZenModeSubmenu=new q("EditorTabsBarShowTabsZenModeSubmenu")}static{this.EditorActionsPositionSubmenu=new q("EditorActionsPositionSubmenu")}static{this.EditorSplitMoveSubmenu=new q("EditorSplitMoveSubmenu")}static{this.ExplorerContext=new q("ExplorerContext")}static{this.ExplorerContextShare=new q("ExplorerContextShare")}static{this.ExtensionContext=new q("ExtensionContext")}static{this.ExtensionEditorContextMenu=new q("ExtensionEditorContextMenu")}static{this.GlobalActivity=new q("GlobalActivity")}static{this.CommandCenter=new q("CommandCenter")}static{this.CommandCenterCenter=new q("CommandCenterCenter")}static{this.LayoutControlMenuSubmenu=new q("LayoutControlMenuSubmenu")}static{this.LayoutControlMenu=new q("LayoutControlMenu")}static{this.MenubarMainMenu=new q("MenubarMainMenu")}static{this.MenubarAppearanceMenu=new q("MenubarAppearanceMenu")}static{this.MenubarDebugMenu=new q("MenubarDebugMenu")}static{this.MenubarEditMenu=new q("MenubarEditMenu")}static{this.MenubarCopy=new q("MenubarCopy")}static{this.MenubarFileMenu=new q("MenubarFileMenu")}static{this.MenubarGoMenu=new q("MenubarGoMenu")}static{this.MenubarHelpMenu=new q("MenubarHelpMenu")}static{this.MenubarLayoutMenu=new q("MenubarLayoutMenu")}static{this.MenubarNewBreakpointMenu=new q("MenubarNewBreakpointMenu")}static{this.PanelAlignmentMenu=new q("PanelAlignmentMenu")}static{this.PanelPositionMenu=new q("PanelPositionMenu")}static{this.ActivityBarPositionMenu=new q("ActivityBarPositionMenu")}static{this.MenubarPreferencesMenu=new q("MenubarPreferencesMenu")}static{this.MenubarRecentMenu=new q("MenubarRecentMenu")}static{this.MenubarSelectionMenu=new q("MenubarSelectionMenu")}static{this.MenubarShare=new q("MenubarShare")}static{this.MenubarSwitchEditorMenu=new q("MenubarSwitchEditorMenu")}static{this.MenubarSwitchGroupMenu=new q("MenubarSwitchGroupMenu")}static{this.MenubarTerminalMenu=new q("MenubarTerminalMenu")}static{this.MenubarTerminalSuggestStatusMenu=new q("MenubarTerminalSuggestStatusMenu")}static{this.MenubarViewMenu=new q("MenubarViewMenu")}static{this.MenubarHomeMenu=new q("MenubarHomeMenu")}static{this.OpenEditorsContext=new q("OpenEditorsContext")}static{this.OpenEditorsContextShare=new q("OpenEditorsContextShare")}static{this.ProblemsPanelContext=new q("ProblemsPanelContext")}static{this.SCMInputBox=new q("SCMInputBox")}static{this.SCMChangeContext=new q("SCMChangeContext")}static{this.SCMResourceContext=new q("SCMResourceContext")}static{this.SCMResourceContextShare=new q("SCMResourceContextShare")}static{this.SCMResourceFolderContext=new q("SCMResourceFolderContext")}static{this.SCMResourceGroupContext=new q("SCMResourceGroupContext")}static{this.SCMSourceControl=new q("SCMSourceControl")}static{this.SCMSourceControlInline=new q("SCMSourceControlInline")}static{this.SCMSourceControlTitle=new q("SCMSourceControlTitle")}static{this.SCMHistoryTitle=new q("SCMHistoryTitle")}static{this.SCMHistoryItemContext=new q("SCMHistoryItemContext")}static{this.SCMHistoryItemChangeContext=new q("SCMHistoryItemChangeContext")}static{this.SCMHistoryItemHover=new q("SCMHistoryItemHover")}static{this.SCMHistoryItemRefContext=new q("SCMHistoryItemRefContext")}static{this.SCMQuickDiffDecorations=new q("SCMQuickDiffDecorations")}static{this.SCMTitle=new q("SCMTitle")}static{this.SearchContext=new q("SearchContext")}static{this.SearchActionMenu=new q("SearchActionContext")}static{this.StatusBarWindowIndicatorMenu=new q("StatusBarWindowIndicatorMenu")}static{this.StatusBarRemoteIndicatorMenu=new q("StatusBarRemoteIndicatorMenu")}static{this.StickyScrollContext=new q("StickyScrollContext")}static{this.TestItem=new q("TestItem")}static{this.TestItemGutter=new q("TestItemGutter")}static{this.TestProfilesContext=new q("TestProfilesContext")}static{this.TestMessageContext=new q("TestMessageContext")}static{this.TestMessageContent=new q("TestMessageContent")}static{this.TestPeekElement=new q("TestPeekElement")}static{this.TestPeekTitle=new q("TestPeekTitle")}static{this.TestCallStack=new q("TestCallStack")}static{this.TestCoverageFilterItem=new q("TestCoverageFilterItem")}static{this.TouchBarContext=new q("TouchBarContext")}static{this.TitleBar=new q("TitleBar")}static{this.TitleBarContext=new q("TitleBarContext")}static{this.TitleBarTitleContext=new q("TitleBarTitleContext")}static{this.TunnelContext=new q("TunnelContext")}static{this.TunnelPrivacy=new q("TunnelPrivacy")}static{this.TunnelProtocol=new q("TunnelProtocol")}static{this.TunnelPortInline=new q("TunnelInline")}static{this.TunnelTitle=new q("TunnelTitle")}static{this.TunnelLocalAddressInline=new q("TunnelLocalAddressInline")}static{this.TunnelOriginInline=new q("TunnelOriginInline")}static{this.ViewItemContext=new q("ViewItemContext")}static{this.ViewContainerTitle=new q("ViewContainerTitle")}static{this.ViewContainerTitleContext=new q("ViewContainerTitleContext")}static{this.ViewTitle=new q("ViewTitle")}static{this.ViewTitleContext=new q("ViewTitleContext")}static{this.CommentEditorActions=new q("CommentEditorActions")}static{this.CommentThreadTitle=new q("CommentThreadTitle")}static{this.CommentThreadActions=new q("CommentThreadActions")}static{this.CommentThreadAdditionalActions=new q("CommentThreadAdditionalActions")}static{this.CommentThreadTitleContext=new q("CommentThreadTitleContext")}static{this.CommentThreadCommentContext=new q("CommentThreadCommentContext")}static{this.CommentTitle=new q("CommentTitle")}static{this.CommentActions=new q("CommentActions")}static{this.CommentsViewThreadActions=new q("CommentsViewThreadActions")}static{this.InteractiveToolbar=new q("InteractiveToolbar")}static{this.InteractiveCellTitle=new q("InteractiveCellTitle")}static{this.InteractiveCellDelete=new q("InteractiveCellDelete")}static{this.InteractiveCellExecute=new q("InteractiveCellExecute")}static{this.InteractiveInputExecute=new q("InteractiveInputExecute")}static{this.InteractiveInputConfig=new q("InteractiveInputConfig")}static{this.ReplInputExecute=new q("ReplInputExecute")}static{this.IssueReporter=new q("IssueReporter")}static{this.NotebookToolbar=new q("NotebookToolbar")}static{this.NotebookToolbarContext=new q("NotebookToolbarContext")}static{this.NotebookStickyScrollContext=new q("NotebookStickyScrollContext")}static{this.NotebookCellTitle=new q("NotebookCellTitle")}static{this.NotebookCellDelete=new q("NotebookCellDelete")}static{this.NotebookCellInsert=new q("NotebookCellInsert")}static{this.NotebookCellBetween=new q("NotebookCellBetween")}static{this.NotebookCellListTop=new q("NotebookCellTop")}static{this.NotebookCellExecute=new q("NotebookCellExecute")}static{this.NotebookCellExecuteGoTo=new q("NotebookCellExecuteGoTo")}static{this.NotebookCellExecutePrimary=new q("NotebookCellExecutePrimary")}static{this.NotebookDiffCellInputTitle=new q("NotebookDiffCellInputTitle")}static{this.NotebookDiffDocumentMetadata=new q("NotebookDiffDocumentMetadata")}static{this.NotebookDiffCellMetadataTitle=new q("NotebookDiffCellMetadataTitle")}static{this.NotebookDiffCellOutputsTitle=new q("NotebookDiffCellOutputsTitle")}static{this.NotebookOutputToolbar=new q("NotebookOutputToolbar")}static{this.NotebookOutlineFilter=new q("NotebookOutlineFilter")}static{this.NotebookOutlineActionMenu=new q("NotebookOutlineActionMenu")}static{this.NotebookEditorLayoutConfigure=new q("NotebookEditorLayoutConfigure")}static{this.NotebookKernelSource=new q("NotebookKernelSource")}static{this.BulkEditTitle=new q("BulkEditTitle")}static{this.BulkEditContext=new q("BulkEditContext")}static{this.TimelineItemContext=new q("TimelineItemContext")}static{this.TimelineTitle=new q("TimelineTitle")}static{this.TimelineTitleContext=new q("TimelineTitleContext")}static{this.TimelineFilterSubMenu=new q("TimelineFilterSubMenu")}static{this.AccountsContext=new q("AccountsContext")}static{this.SidebarTitle=new q("SidebarTitle")}static{this.PanelTitle=new q("PanelTitle")}static{this.AuxiliaryBarTitle=new q("AuxiliaryBarTitle")}static{this.TerminalInstanceContext=new q("TerminalInstanceContext")}static{this.TerminalEditorInstanceContext=new q("TerminalEditorInstanceContext")}static{this.TerminalNewDropdownContext=new q("TerminalNewDropdownContext")}static{this.TerminalTabContext=new q("TerminalTabContext")}static{this.TerminalTabEmptyAreaContext=new q("TerminalTabEmptyAreaContext")}static{this.TerminalStickyScrollContext=new q("TerminalStickyScrollContext")}static{this.WebviewContext=new q("WebviewContext")}static{this.InlineCompletionsActions=new q("InlineCompletionsActions")}static{this.InlineEditsActions=new q("InlineEditsActions")}static{this.NewFile=new q("NewFile")}static{this.MergeInput1Toolbar=new q("MergeToolbar1Toolbar")}static{this.MergeInput2Toolbar=new q("MergeToolbar2Toolbar")}static{this.MergeBaseToolbar=new q("MergeBaseToolbar")}static{this.MergeInputResultToolbar=new q("MergeToolbarResultToolbar")}static{this.InlineSuggestionToolbar=new q("InlineSuggestionToolbar")}static{this.InlineEditToolbar=new q("InlineEditToolbar")}static{this.ChatContext=new q("ChatContext")}static{this.ChatCodeBlock=new q("ChatCodeblock")}static{this.ChatCompareBlock=new q("ChatCompareBlock")}static{this.ChatMessageTitle=new q("ChatMessageTitle")}static{this.ChatHistory=new q("ChatHistory")}static{this.ChatWelcomeHistoryContext=new q("ChatWelcomeHistoryContext")}static{this.ChatMessageFooter=new q("ChatMessageFooter")}static{this.ChatExecute=new q("ChatExecute")}static{this.ChatExecuteSecondary=new q("ChatExecuteSecondary")}static{this.ChatInput=new q("ChatInput")}static{this.ChatInputSide=new q("ChatInputSide")}static{this.ChatModePicker=new q("ChatModePicker")}static{this.ChatEditingWidgetToolbar=new q("ChatEditingWidgetToolbar")}static{this.ChatEditingEditorContent=new q("ChatEditingEditorContent")}static{this.ChatEditingEditorHunk=new q("ChatEditingEditorHunk")}static{this.ChatEditingDeletedNotebookCell=new q("ChatEditingDeletedNotebookCell")}static{this.ChatInputAttachmentToolbar=new q("ChatInputAttachmentToolbar")}static{this.ChatEditingWidgetModifiedFilesToolbar=new q("ChatEditingWidgetModifiedFilesToolbar")}static{this.ChatInputResourceAttachmentContext=new q("ChatInputResourceAttachmentContext")}static{this.ChatInputSymbolAttachmentContext=new q("ChatInputSymbolAttachmentContext")}static{this.ChatInlineResourceAnchorContext=new q("ChatInlineResourceAnchorContext")}static{this.ChatInlineSymbolAnchorContext=new q("ChatInlineSymbolAnchorContext")}static{this.ChatMessageCheckpoint=new q("ChatMessageCheckpoint")}static{this.ChatMessageRestoreCheckpoint=new q("ChatMessageRestoreCheckpoint")}static{this.ChatEditingCodeBlockContext=new q("ChatEditingCodeBlockContext")}static{this.ChatTitleBarMenu=new q("ChatTitleBarMenu")}static{this.ChatAttachmentsContext=new q("ChatAttachmentsContext")}static{this.ChatToolOutputResourceToolbar=new q("ChatToolOutputResourceToolbar")}static{this.ChatTextEditorMenu=new q("ChatTextEditorMenu")}static{this.ChatToolOutputResourceContext=new q("ChatToolOutputResourceContext")}static{this.ChatMultiDiffContext=new q("ChatMultiDiffContext")}static{this.ChatSessionsMenu=new q("ChatSessionsMenu")}static{this.ChatConfirmationMenu=new q("ChatConfirmationMenu")}static{this.AccessibleView=new q("AccessibleView")}static{this.MultiDiffEditorFileToolbar=new q("MultiDiffEditorFileToolbar")}static{this.DiffEditorHunkToolbar=new q("DiffEditorHunkToolbar")}static{this.DiffEditorSelectionToolbar=new q("DiffEditorSelectionToolbar")}constructor(a){if(q._instances.has(a))throw TypeError(`MenuId with identifier '${a}' already exists. Use MenuId.for(ident) or a unique identifier`);q._instances.set(a,this),this.id=a}}let r=(0,l.u1)("menuService");class s{static{this._all=new Map}static for(a){let b=this._all.get(a);return b||(b=new s(a),this._all.set(a,b)),b}static merge(a){let b=new Set;for(let c of a)c instanceof s&&b.add(c.id);return b}constructor(a){this.id=a,this.has=b=>b===a}}let t=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new f.QT({merge:s.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(a){return this._commands.set(a.id,a),this._onDidChangeMenu.fire(s.for(q.CommandPalette)),(0,g.lC)((0,g.s)(()=>{this._commands.delete(a.id)&&this._onDidChangeMenu.fire(s.for(q.CommandPalette))}))}getCommand(a){return this._commands.get(a)}getCommands(){let a=new Map;return this._commands.forEach((b,c)=>a.set(c,b)),a}appendMenuItem(a,b){let c=this._menuItems.get(a);c||(c=new h.w,this._menuItems.set(a,c));let d=c.push(b);return this._onDidChangeMenu.fire(s.for(a)),(0,g.lC)((0,g.s)(()=>{d(),this._onDidChangeMenu.fire(s.for(a))}))}appendMenuItems(a){let b=new g.Cm;for(let{id:c,item:d}of a)b.add(this.appendMenuItem(c,d));return b}getMenuItems(a){let b;return b=this._menuItems.has(a)?[...this._menuItems.get(a)]:[],a===q.CommandPalette&&this._appendImplicitItems(b),b}_appendImplicitItems(a){let b=new Set;for(let c of a)o(c)&&(b.add(c.command.id),c.alt&&b.add(c.alt.id));this._commands.forEach((c,d)=>{b.has(d)||a.push({command:c})})}};class u extends e.YH{constructor(a,b,c){super(`submenuitem.${a.submenu.id}`,"string"==typeof a.title?a.title:a.title.value,c,"submenu"),this.item=a,this.hideActions=b}}let v=d=class{static label(a,b){return b?.renderShortTitle&&a.shortTitle?"string"==typeof a.shortTitle?a.shortTitle:a.shortTitle.value:"string"==typeof a.title?a.title:a.title.value}constructor(a,b,c,e,f,g,h){let j;if(this.hideActions=e,this.menuKeybinding=f,this._commandService=h,this.id=a.id,this.label=d.label(a,c),this.tooltip=("string"==typeof a.tooltip?a.tooltip:a.tooltip?.value)??"",this.enabled=!a.precondition||g.contextMatchesRules(a.precondition),this.checked=void 0,a.toggled){let b=a.toggled.condition?a.toggled:{condition:a.toggled};this.checked=g.contextMatchesRules(b.condition),this.checked&&b.tooltip&&(this.tooltip="string"==typeof b.tooltip?b.tooltip:b.tooltip.value),this.checked&&i.L.isThemeIcon(b.icon)&&(j=b.icon),this.checked&&b.title&&(this.label="string"==typeof b.title?b.title:b.title.value)}j||(j=i.L.isThemeIcon(a.icon)?a.icon:void 0),this.item=a,this.alt=b?new d(b,void 0,c,e,void 0,g,h):void 0,this._options=c,this.class=j&&i.L.asClassName(j)}run(...a){let b=[];return this._options?.arg&&(b=[...b,this._options.arg]),this._options?.shouldForwardArgs&&(b=[...b,...a]),this._commandService.executeCommand(this.id,...b)}};v=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([n(5,k.fN),n(6,j.d)],v);class w{constructor(a){this.desc=a}}function x(a){let b=[],c=new a,{f1:d,menu:e,keybinding:f,...h}=c.desc;if(j.w.getCommand(h.id))throw Error(`Cannot register two commands with the same id: ${h.id}`);if(b.push(j.w.registerCommand({id:h.id,handler:(a,...b)=>c.run(a,...b),metadata:h.metadata??{description:c.desc.title}})),Array.isArray(e))for(let a of e)b.push(t.appendMenuItem(a.id,{command:{...h,precondition:null===a.precondition?void 0:h.precondition},...a}));else e&&b.push(t.appendMenuItem(e.id,{command:{...h,precondition:null===e.precondition?void 0:h.precondition},...e}));if(d&&(b.push(t.appendMenuItem(q.CommandPalette,{command:h,when:h.precondition})),b.push(t.addCommand(h))),Array.isArray(f))for(let a of f)b.push(m.f.registerKeybindingRule({...a,id:h.id,when:h.precondition?k.M$.and(h.precondition,a.when):a.when}));else f&&b.push(m.f.registerKeybindingRule({...f,id:h.id,when:h.precondition?k.M$.and(h.precondition,f.when):f.when}));return{dispose(){(0,g.AS)(b)}}}},79677:(a,b,c)=>{"use strict";c.d(b,{y:()=>d});class d{constructor(a,b){this.lineNumber=a,this.column=b}with(a=this.lineNumber,b=this.column){return a===this.lineNumber&&b===this.column?this:new d(a,b)}delta(a=0,b=0){return this.with(Math.max(1,this.lineNumber+a),Math.max(1,this.column+b))}equals(a){return d.equals(this,a)}static equals(a,b){return!a&&!b||!!a&&!!b&&a.lineNumber===b.lineNumber&&a.column===b.column}isBefore(a){return d.isBefore(this,a)}static isBefore(a,b){return a.lineNumber<b.lineNumber||!(b.lineNumber<a.lineNumber)&&a.column<b.column}isBeforeOrEqual(a){return d.isBeforeOrEqual(this,a)}static isBeforeOrEqual(a,b){return a.lineNumber<b.lineNumber||!(b.lineNumber<a.lineNumber)&&a.column<=b.column}static compare(a,b){let c=0|a.lineNumber,d=0|b.lineNumber;return c===d?(0|a.column)-(0|b.column):c-d}clone(){return new d(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(a){return new d(a.lineNumber,a.column)}static isIPosition(a){return a&&"number"==typeof a.lineNumber&&"number"==typeof a.column}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}}},79851:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});let d=(0,c(29715).u1)("keybindingService")},79854:(a,b,c)=>{"use strict";c.d(b,{J7:()=>j,W0:()=>h,aV:()=>i,nd:()=>g});var d=c(56167),e=c(25536),f=c(45367);new f.N1("isMac",d.zx,(0,e.kg)(1669,"Whether the operating system is macOS")),new f.N1("isLinux",d.j9,(0,e.kg)(1670,"Whether the operating system is Linux"));let g=new f.N1("isWindows",d.uF,(0,e.kg)(1671,"Whether the operating system is Windows")),h=new f.N1("isWeb",d.HZ,(0,e.kg)(1672,"Whether the platform is a web browser"));new f.N1("isMacNative",d.zx&&!d.HZ,(0,e.kg)(1673,"Whether the operating system is macOS on a non-browser platform")),new f.N1("isIOS",d.un,(0,e.kg)(1674,"Whether the operating system is iOS")),new f.N1("isMobile",d.Fr,(0,e.kg)(1675,"Whether the platform is a mobile web browser")),new f.N1("isDevelopment",!1,!0),new f.N1("productQualityType","",(0,e.kg)(1676,"Quality type of VS Code"));let i="inputFocus",j=new f.N1(i,!1,(0,e.kg)(1677,"Whether keyboard focus is inside an input box"))},80058:()=>{},80095:(a,b,c)=>{"use strict";var d;c.d(b,{j:()=>d}),function(a){let b=!1;a.enable=function(){b=!0},a.ofCaller=function(){if(!b)return;let a=Error,c=a.stackTraceLimit;a.stackTraceLimit=3;let d=Error().stack;return a.stackTraceLimit=c,e.fromStack(d,2)}}(d||(d={}));class e{static fromStack(a,b){let c=function(a){let b=a.match(/\((.*):(\d+):(\d+)\)/);if(b)return{fileName:b[1],line:parseInt(b[2]),column:parseInt(b[3]),id:a};let c=a.match(/at ([^\(\)]*):(\d+):(\d+)/);if(c)return{fileName:c[1],line:parseInt(c[2]),column:parseInt(c[3]),id:a}}(a.split("\n")[b+1]);return c?new e(c.fileName,c.line,c.column,c.id):void 0}constructor(a,b,c,d){this.fileName=a,this.line=b,this.column=c,this.id=d}}},80569:()=>{},80815:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},80820:()=>{},81040:(a,b,c)=>{"use strict";c.d(b,{e2:()=>i,sN:()=>g,tW:()=>f,v7:()=>l});var d=c(5030),e=c(98447);function f(a){return g(a,0)}function g(a,b){switch(typeof a){case"object":var c,d,e,f;if(null===a)return h(349,b);if(Array.isArray(a)){return c=a,d=h(104579,d=b),c.reduce((a,b)=>g(b,a),d)}return e=a,f=h(181387,f=b),Object.keys(e).sort().reduce((a,b)=>(a=i(b,a),g(e[b],a)),f);case"string":return i(a,b);case"boolean":return h(a?433:863,b);case"number":return h(a,b);case"undefined":return h(937,b);default:return h(617,b)}}function h(a,b){return(b<<5)-b+a|0}function i(a,b){b=h(149417,b);for(let c=0,d=a.length;c<d;c++)b=h(a.charCodeAt(c),b);return b}function j(a,b,c=32){let d=c-b;return(a<<b|(~((1<<d)-1)&a)>>>d)>>>0}function k(a,b=32){return a instanceof ArrayBuffer?(0,d.mU)(d.MB.wrap(new Uint8Array(a))):(a>>>0).toString(16).padStart(b/4,"0")}class l{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=0x67452301,this._h1=0xefcdab89,this._h2=0x98badcfe,this._h3=0x10325476,this._h4=0xc3d2e1f0,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(a){let b,c,d=a.length;if(0===d)return;let f=this._buff,g=this._buffLen,h=this._leftoverHighSurrogate;for(0!==h?(b=h,c=-1,h=0):(b=a.charCodeAt(0),c=0);;){let i=b;if(e.pc(b))if(c+1<d){let d=a.charCodeAt(c+1);e.LJ(d)?(c++,i=e.z_(b,d)):i=65533}else{h=b;break}else e.LJ(b)&&(i=65533);if(g=this._push(f,g,i),++c<d)b=a.charCodeAt(c);else break}this._buffLen=g,this._leftoverHighSurrogate=h}_push(a,b,c){return c<128?a[b++]=c:(c<2048?a[b++]=192|(1984&c)>>>6:(c<65536?a[b++]=224|(61440&c)>>>12:(a[b++]=240|(1835008&c)>>>18,a[b++]=128|(258048&c)>>>12),a[b++]=128|(4032&c)>>>6),a[b++]=128|(63&c)>>>0),b>=64&&(this._step(),b-=64,this._totalLen+=64,a[0]=a[64],a[1]=a[65],a[2]=a[66]),b}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),k(this._h0)+k(this._h1)+k(this._h2)+k(this._h3)+k(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let a=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(a/0x100000000),!1),this._buffDV.setUint32(60,a%0x100000000,!1),this._step()}_step(){let a,b,c,d=l._bigBlock32,e=this._buffDV;for(let a=0;a<64;a+=4)d.setUint32(a,e.getUint32(a,!1),!1);for(let a=64;a<320;a+=4)d.setUint32(a,j(d.getUint32(a-12,!1)^d.getUint32(a-32,!1)^d.getUint32(a-56,!1)^d.getUint32(a-64,!1),1),!1);let f=this._h0,g=this._h1,h=this._h2,i=this._h3,k=this._h4;for(let e=0;e<80;e++)e<20?(a=g&h|~g&i,b=0x5a827999):e<40?(a=g^h^i,b=0x6ed9eba1):e<60?(a=g&h|g&i|h&i,b=0x8f1bbcdc):(a=g^h^i,b=0xca62c1d6),c=j(f,5)+a+k+b+d.getUint32(4*e,!1)|0,k=i,i=h,h=j(g,30),g=f,f=c;this._h0=this._h0+f|0,this._h1=this._h1+g|0,this._h2=this._h2+h|0,this._h3=this._h3+i|0,this._h4=this._h4+k|0}}},81125:(a,b,c)=>{"use strict";c.d(b,{Ay:()=>g.Ay,Cm:()=>g.Cm,D7:()=>f.D7,Ft:()=>d.Ft,VD:()=>g.VD,dz:()=>f.dz,nx:()=>e.nx,s:()=>g.s,y4:()=>f.y4});var d=c(22450),e=c(37457),f=c(88347);c(60734);var g=c(11314)},81190:(a,b,c)=>{"use strict";c.d(b,{L:()=>d});let d=(0,c(29715).u1)("languageService")},81633:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(90399);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id}}(e||(e={}))},81820:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof h?d.loggers.push(a):d=new h([d,a]):d=a}function f(){return d}function g(a){}c.d(b,{EJ:()=>e,YQ:()=>g,tZ:()=>f});class h{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},82135:(a,b,c)=>{"use strict";c.d(b,{GM:()=>r,KL:()=>t,Kl:()=>l,Ob:()=>m,Ou:()=>q,XT:()=>o,Zb:()=>s,Zw:()=>n,bk:()=>p,dv:()=>k,wp:()=>u});var d=c(90399),e=c(81633),f=c(14088),g=c(25536),h=c(78323),i=c(54942);(0,h.x1A)("diffEditor.move.border","#8b8b8b9c",(0,g.kg)(134,"The border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.moveActive.border","#FFA500",(0,g.kg)(135,"The active border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},(0,g.kg)(136,"The color of the shadow around unchanged region widgets."));let j=(0,i.pU)("diff-insert",d.W.add,(0,g.kg)(137,"Line decoration for inserts in the diff editor.")),k=(0,i.pU)("diff-remove",d.W.remove,(0,g.kg)(138,"Line decoration for removals in the diff editor.")),l=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+e.L.asClassName(j),marginClassName:"gutter-insert"}),m=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+e.L.asClassName(k),marginClassName:"gutter-delete"}),n=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),o=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),p=f.kI.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),q=f.kI.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),r=f.kI.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),s=f.kI.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),t=f.kI.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),u=f.kI.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"})},82687:(a,b,c)=>{"use strict";c.d(b,{a:()=>d,w:()=>e});let d=(0,c(29715).u1)("dataChannelService");class e{getDataChannel(a){return{sendData:()=>{}}}}},82693:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(22450),e=c(98447);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},82962:(a,b,c)=>{"use strict";c.d(b,{Z4:()=>F,EH:()=>E,XF:()=>G});var d=c(88637),e=c(3055),f=c(32677),g=c(98350),h=c(75096),i=c(56167),j=c(62274);c(85999);var k=c(25536),l=c(54734),m=c(60734),n=c(61551),o=c(11314),p=c(88077),q=c(76136),r=c(67397),s=c(31662),t=c(43585),u=c(21036),v=c(18732);c(45442);let w=f.$,x="selectOption.entry.template";class y{get templateId(){return x}renderTemplate(a){let b=Object.create(null);return b.root=a,b.text=f.BC(a,w(".option-text")),b.detail=f.BC(a,w(".option-detail")),b.decoratorRight=f.BC(a,w(".option-decorator-right")),b}renderElement(a,b,c){let d=a.text,e=a.detail,f=a.decoratorRight,g=a.isDisabled;c.text.textContent=d,c.detail.textContent=e||"",c.decoratorRight.textContent=f||"",g?c.root.classList.add("option-disabled"):c.root.classList.remove("option-disabled")}disposeTemplate(a){}}class z extends o.jG{static{this.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN=32}static{this.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN=2}static{this.DEFAULT_MINIMUM_VISIBLE_OPTIONS=3}constructor(a,b,c,d,e){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=d,this.selectBoxOptions=e||Object.create(null),"number"!=typeof this.selectBoxOptions.minBottomMargin?this.selectBoxOptions.minBottomMargin=z.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new m.vl,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(c),this.selected=b||0,a&&this.setOptions(a,b),this.initStyleSheet()}setTitle(a){!this._hover&&a?this._hover=this._register((0,u.i)().setupManagedHover((0,h.nZ)("mouse"),this.selectElement,a)):this._hover&&this._hover.update(a)}getHeight(){return 22}getTemplateId(){return x}constructSelectDropDown(a){this.contextViewProvider=a,this.selectDropDownContainer=f.$(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=f.BC(this.selectDropDownContainer,w(".select-box-details-pane"));let b=f.BC(this.selectDropDownContainer,w(".select-box-dropdown-container-width-control")),c=f.BC(b,w(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",f.BC(c,this.widthControlElement),this._dropDownPosition=0,this.styleElement=q.li(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(f.ko(this.selectDropDownContainer,f.Bx.DRAG_START,a=>{f.fs.stop(a,!0)}))}registerListeners(){let a;this._register(f.un(this.selectElement,"change",a=>{this.selected=a.target.selectedIndex,this._onDidSelect.fire({index:a.target.selectedIndex,selected:a.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(f.ko(this.selectElement,f.Bx.CLICK,a=>{f.fs.stop(a),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(f.ko(this.selectElement,f.Bx.MOUSE_DOWN,a=>{f.fs.stop(a)})),this._register(f.ko(this.selectElement,"touchstart",b=>{a=this._isVisible})),this._register(f.ko(this.selectElement,"touchend",b=>{f.fs.stop(b),a?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(f.ko(this.selectElement,f.Bx.KEY_DOWN,a=>{let b=new s.Z(a),c=!1;i.zx?(18===b.keyCode||16===b.keyCode||10===b.keyCode||3===b.keyCode)&&(c=!0):(18===b.keyCode&&b.altKey||16===b.keyCode&&b.altKey||10===b.keyCode||3===b.keyCode)&&(c=!0),c&&(this.showSelectDropDown(),f.fs.stop(a,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(a,b){l.aI(this.options,a)||(this.options=a,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((a,b)=>{this.selectElement.add(this.createOption(a.text,b,a.isDisabled)),"string"==typeof a.description&&(this._hasDetails=!0)})),void 0!==b&&(this.select(b),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(a){a>=0&&a<this.options.length?this.selected=a:a>this.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(a){this.selectElement.tabIndex=a?0:-1}render(a){this.container=a,a.classList.add("select-container"),a.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){let a=[];this.styles.listFocusBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(a.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=a.join("\n")}styleSelectElement(){let a=this.styles.selectBackground??"",b=this.styles.selectForeground??"",c=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=a,this.selectElement.style.color=b,this.selectElement.style.borderColor=c}styleList(){let a=this.styles.selectBackground??"",b=p.gI(this.styles.selectListBackground,a);this.selectDropDownListContainer.style.backgroundColor=b,this.selectionDetailsPane.style.backgroundColor=b;let c=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=c,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(a,b,c){let d=document.createElement("option");return d.value=a,d.text=a,d.disabled=!!c,d}showSelectDropDown(){this.selectionDetailsPane.textContent="",this.contextViewProvider&&!this._isVisible&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(a){this.contextViewProvider&&this._isVisible&&(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),a&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(a,b){return a.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(b),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let a=0;return this.options.forEach((b,c)=>{this.updateDetail(c),this.selectionDetailsPane.offsetHeight>a&&(a=this.selectionDetailsPane.offsetHeight)}),a}layoutSelectDropDown(a){if(this._skipLayout||!this.selectList)return!1;{this.selectDropDownContainer.classList.add("visible");let b=f.zk(this.selectElement),c=f.BK(this.selectElement),d=f.zk(this.selectElement).getComputedStyle(this.selectElement),e=parseFloat(d.getPropertyValue("--dropdown-padding-top"))+parseFloat(d.getPropertyValue("--dropdown-padding-bottom")),g=b.innerHeight-c.top-c.height-(this.selectBoxOptions.minBottomMargin||0),h=c.top-z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,i=this.selectElement.offsetWidth,j=Math.max(this.setWidthControlElement(this.widthControlElement),Math.round(i)).toString()+"px";this.selectDropDownContainer.style.width=j,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let k=this.selectList.contentHeight;this._hasDetails&&void 0===this._cachedMaxDetailsHeight&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());let l=this._hasDetails?this._cachedMaxDetailsHeight:0,m=k+e+l,n=Math.floor((g-e-l)/this.getHeight()),o=Math.floor((h-e-l)/this.getHeight());if(a)return!(c.top+c.height>b.innerHeight-22)&&!(c.top<z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN)&&(!(n<1)||!(o<1))&&(n<z.DEFAULT_MINIMUM_VISIBLE_OPTIONS&&o>n&&this.options.length>n?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(c.top+c.height>b.innerHeight-22||c.top<z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN||0===this._dropDownPosition&&n<1||1===this._dropDownPosition&&o<1)return this.hideSelectDropDown(!0),!1;if(0===this._dropDownPosition){if(this._isVisible&&n+o<1)return this.hideSelectDropDown(!0),!1;m>g&&(k=n*this.getHeight())}else m>h&&(k=o*this.getHeight());return this.selectList.layout(k),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=k+e+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=k+e+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=j,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}}setWidthControlElement(a){let b=0;if(a){let c=0,d=0;this.options.forEach((a,b)=>{let e=a.detail?a.detail.length:0,f=a.decoratorRight?a.decoratorRight.length:0,g=a.text.length+e+f;g>d&&(c=b,d=g)}),a.textContent=this.options[c].text+(this.options[c].decoratorRight?this.options[c].decoratorRight+" ":""),b=f.Tr(a)}return b}createSelectList(a){if(this.selectList)return;this.selectDropDownListContainer=f.BC(a,w(".select-box-dropdown-list-container")),this.listRenderer=new y,this.selectList=this._register(new v.B8("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:a=>{let b=a.text;return a.detail&&(b+=`. ${a.detail}`),a.decoratorRight&&(b+=`. ${a.decoratorRight}`),a.description&&(b+=`. ${a.description}`),b},getWidgetAriaLabel:()=>(0,k.kg)(16,"Select Box"),getRole:()=>i.zx?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);let b=this._register(new r.f(this.selectDropDownListContainer,"keydown")),c=m.Jh.chain(b.event,a=>a.filter(()=>this.selectList.length>0).map(a=>new s.Z(a)));this._register(m.Jh.chain(c,a=>a.filter(a=>3===a.keyCode))(this.onEnter,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>2===a.keyCode))(this.onEnter,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>9===a.keyCode))(this.onEscape,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>16===a.keyCode))(this.onUpArrow,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>18===a.keyCode))(this.onDownArrow,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>12===a.keyCode))(this.onPageDown,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>11===a.keyCode))(this.onPageUp,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>14===a.keyCode))(this.onHome,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>13===a.keyCode))(this.onEnd,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>a.keyCode>=21&&a.keyCode<=56||a.keyCode>=85&&a.keyCode<=113))(this.onCharacter,this)),this._register(f.ko(this.selectList.getHTMLElement(),f.Bx.POINTER_UP,a=>this.onPointerUp(a))),this._register(this.selectList.onMouseOver(a=>void 0!==a.index&&this.selectList.setFocus([a.index]))),this._register(this.selectList.onDidChangeFocus(a=>this.onListFocus(a))),this._register(f.ko(this.selectDropDownContainer,f.Bx.FOCUS_OUT,a=>{!this._isVisible||f.QX(a.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(a){if(!this.selectList.length)return;f.fs.stop(a);let b=a.target;if(!b||b.classList.contains("slider"))return;let c=b.closest(".monaco-list-row");if(!c)return;let d=Number(c.getAttribute("data-index")),e=c.classList.contains("option-disabled");d>=0&&d<this.options.length&&!e&&(this.selected=d,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]),this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0))}onListBlur(){this._sticky||(this.selected!==this._currentSelection&&this.select(this._currentSelection),this.hideSelectDropDown(!1))}renderDescriptionMarkdown(a,b){let c=a=>{for(let b=0;b<a.childNodes.length;b++){let d=a.childNodes.item(b);"img"===(d.tagName&&d.tagName.toLowerCase())?d.remove():c(d)}},d=(0,t.Gc)({value:a,supportThemeIcons:!0},{actionHandler:b});return d.element.classList.add("select-box-description-markdown"),c(d.element),d.element}onListFocus(a){this._isVisible&&this._hasDetails&&this.updateDetail(a.indexes[0])}updateDetail(a){this.selectionDetailsPane.textContent="";let b=this.options[a],c=b?.description??"",d=b?.descriptionIsMarkdown??!1;if(c){if(d){let a=b.descriptionMarkdownActionHandler;this.selectionDetailsPane.appendChild(this.renderDescriptionMarkdown(c,a))}else this.selectionDetailsPane.textContent=c;this.selectionDetailsPane.style.display="block"}else this.selectionDetailsPane.style.display="none";this._skipLayout=!0,this.contextViewProvider.layout(),this._skipLayout=!1}onEscape(a){f.fs.stop(a),this.select(this._currentSelection),this.hideSelectDropDown(!0)}onEnter(a){f.fs.stop(a),this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0)}onDownArrow(a){if(this.selected<this.options.length-1){f.fs.stop(a,!0);let b=this.options[this.selected+1].isDisabled;if(b&&this.options.length>this.selected+2)this.selected+=2;else{if(b)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(a){this.selected>0&&(f.fs.stop(a,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(a){f.fs.stop(a),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected<this.options.length-1&&(this.selected++,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onPageDown(a){f.fs.stop(a),this.selectList.focusNextPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(a){f.fs.stop(a),this.options.length<2||(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(a){f.fs.stop(a),this.options.length<2||(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(a){let b=n.YM.toString(a.keyCode),c=-1;for(let d=0;d<this.options.length-1;d++)if(c=(d+this.selected+1)%this.options.length,this.options[c].text.charAt(0).toUpperCase()===b&&!this.options[c].isDisabled){this.select(c),this.selectList.setFocus([c]),this.selectList.reveal(this.selectList.getFocus()[0]),f.fs.stop(a);break}}dispose(){this.hideSelectDropDown(!1),super.dispose()}}class A extends o.jG{constructor(a,b,c,d){super(),this.selected=0,this.selectBoxOptions=d||Object.create(null),this.options=[],this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=this._register(new m.vl),this.styles=c,this.registerListeners(),this.setOptions(a,b)}registerListeners(){this._register(g.q.addTarget(this.selectElement)),[g.B.Tap].forEach(a=>{this._register(f.ko(this.selectElement,a,a=>{this.selectElement.focus()}))}),this._register(f.un(this.selectElement,"click",a=>{f.fs.stop(a,!0)})),this._register(f.un(this.selectElement,"change",a=>{this.selectElement.title=a.target.value,this._onDidSelect.fire({index:a.target.selectedIndex,selected:a.target.value})})),this._register(f.un(this.selectElement,"keydown",a=>{let b=!1;i.zx?(18===a.keyCode||16===a.keyCode||10===a.keyCode)&&(b=!0):(18===a.keyCode&&a.altKey||10===a.keyCode||3===a.keyCode)&&(b=!0),b&&a.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(a,b){this.options&&l.aI(this.options,a)||(this.options=a,this.selectElement.options.length=0,this.options.forEach((a,b)=>{this.selectElement.add(this.createOption(a.text,b,a.isDisabled))})),void 0!==b&&this.select(b)}select(a){0===this.options.length?this.selected=0:a>=0&&a<this.options.length?this.selected=a:a>this.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected<this.options.length&&"string"==typeof this.options[this.selected].text?this.selectElement.title=this.options[this.selected].text:this.selectElement.title=""}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(a){this.selectElement.tabIndex=a?0:-1}render(a){a.classList.add("select-container"),a.appendChild(this.selectElement),this.setOptions(this.options,this.selected),this.applyStyles()}applyStyles(){this.selectElement&&(this.selectElement.style.backgroundColor=this.styles.selectBackground??"",this.selectElement.style.color=this.styles.selectForeground??"",this.selectElement.style.borderColor=this.styles.selectBorder??"")}createOption(a,b,c){let d=document.createElement("option");return d.value=a,d.text=a,d.disabled=!!c,d}}class B extends j.x{constructor(a,b,c,d,e){super(),i.zx&&!e?.useCustomDrawn?this.selectBoxDelegate=new A(a,b,d,e):this.selectBoxDelegate=new z(a,b,c,d,e),this._register(this.selectBoxDelegate)}get onDidSelect(){return this.selectBoxDelegate.onDidSelect}setOptions(a,b){this.selectBoxDelegate.setOptions(a,b)}select(a){this.selectBoxDelegate.select(a)}focus(){this.selectBoxDelegate.focus()}blur(){this.selectBoxDelegate.blur()}setFocusable(a){this.selectBoxDelegate.setFocusable(a)}render(a){this.selectBoxDelegate.render(a)}}var C=c(18401),D=c(46339);c(76519);class E extends o.jG{get action(){return this._action}constructor(a,b,c={}){super(),this.options=c,this._context=a||this,this._action=b,b instanceof C.rc&&this._register(b.onDidChange(a=>{this.element&&this.handleActionChangeEvent(a)}))}handleActionChangeEvent(a){void 0!==a.enabled&&this.updateEnabled(),void 0!==a.checked&&this.updateChecked(),void 0!==a.class&&this.updateClass(),void 0!==a.label&&(this.updateLabel(),this.updateTooltip()),void 0!==a.tooltip&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new C.LN)),this._actionRunner}set actionRunner(a){this._actionRunner=a}isEnabled(){return this._action.enabled}setActionContext(a){this._context=a}render(a){let b=this.element=a;this._register(g.q.addTarget(a));let c=this.options&&this.options.draggable;c&&(a.draggable=!0,d.gm&&this._register((0,f.ko)(a,f.Bx.DRAG_START,a=>a.dataTransfer?.setData(e.t.TEXT,this._action.label)))),this._register((0,f.ko)(b,g.B.Tap,a=>this.onClick(a,!0))),this._register((0,f.ko)(b,f.Bx.MOUSE_DOWN,a=>{c||f.fs.stop(a,!0),this._action.enabled&&0===a.button&&b.classList.add("active")})),i.zx&&this._register((0,f.ko)(b,f.Bx.CONTEXT_MENU,a=>{0===a.button&&!0===a.ctrlKey&&this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.CLICK,a=>{f.fs.stop(a,!0),this.options&&this.options.isMenu||this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.DBLCLICK,a=>{f.fs.stop(a,!0)})),[f.Bx.MOUSE_UP,f.Bx.MOUSE_OUT].forEach(a=>{this._register((0,f.ko)(b,a,a=>{f.fs.stop(a),b.classList.remove("active")}))})}onClick(a,b=!1){f.fs.stop(a,!0);let c=D.z(this._context)?this.options?.useEventAsContext?a:{preserveFocus:b}:this._context;this.actionRunner.run(this._action,c)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(a){this.element&&(this.element.tabIndex=a?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}getHoverContents(){return this.getTooltip()}updateTooltip(){if(!this.element)return;let a=this.getHoverContents()??"";if(this.updateAriaLabel(),this.customHover||""===a)this.customHover&&this.customHover.update(a);else{let b=this.options.hoverDelegate??(0,h.nZ)("element");this.customHover=this._store.add((0,u.i)().setupManagedHover(b,this.element,a))}}updateAriaLabel(){if(this.element){let a=this.getTooltip()??"";this.element.setAttribute("aria-label",a)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class F extends E{constructor(a,b,c){super(a,b,c={...c,icon:void 0!==c.icon&&c.icon,label:void 0===c.label||c.label}),this.options=c,this.cssClass=""}render(a){super.render(a),D.j(this.element);let b=document.createElement("a");if(b.classList.add("action-label"),b.setAttribute("role",this.getDefaultAriaRole()),this.label=b,this.element.appendChild(b),this.options.label&&this.options.keybinding&&!this.options.keybindingNotRenderedWithLabel){let a=document.createElement("span");a.classList.add("keybinding"),a.textContent=this.options.keybinding,this.element.appendChild(a)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===C.wv.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(a){this.label&&(this.label.tabIndex=a?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let a=null;return this.action.tooltip?a=this.action.tooltip:this.action.label&&(a=this.action.label,this.options.keybinding&&(a=k.kg(0,"{0} ({1})",a,this.options.keybinding))),a??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){let a=this.getTooltip()??"";this.label.setAttribute("aria-label",a)}}updateChecked(){this.label&&(void 0!==this.action.checked?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class G extends E{constructor(a,b,c,d,e,f,g){super(a,b),this.selectBox=new B(c,d,e,f,g),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(a){this.selectBox.select(a)}registerListeners(){this._register(this.selectBox.onDidSelect(a=>this.runAction(a.selected,a.index)))}runAction(a,b){this.actionRunner.run(this._action,this.getActionContext(a,b))}getActionContext(a,b){return a}setFocusable(a){this.selectBox.setFocusable(a)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(a){this.selectBox.render(a)}}},83081:(a,b,c)=>{"use strict";c.d(b,{c:()=>k,z:()=>j});var d=c(98447),e=c(69467),f=c(29734),g=c(91834),h=c(79677),i=c(59317);class j{static _createWord(a,b,c,d,e){return{start:d,end:e,wordType:b,nextCharClass:c}}static _createIntlWord(a,b){return{start:a.index,end:a.index+a.segment.length,wordType:1,nextCharClass:b}}static _findPreviousWordOnLine(a,b,c){let d=b.getLineContent(c.lineNumber);return this._doFindPreviousWordOnLine(d,a,c)}static _doFindPreviousWordOnLine(a,b,c){let d=0,e=b.findPrevIntlWordBeforeOrAtOffset(a,c.column-2);for(let f=c.column-2;f>=0;f--){let c=a.charCodeAt(f),g=b.get(c);if(e&&f===e.index)return this._createIntlWord(e,g);if(0===g){if(2===d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1));d=1}else if(2===g){if(1===d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1));d=2}else if(1===g&&0!==d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1))}return 0!==d?this._createWord(a,d,1,0,this._findEndOfWord(a,b,d,0)):null}static _findEndOfWord(a,b,c,d){let e=b.findNextIntlWordAtOrAfterOffset(a,d),f=a.length;for(let g=d;g<f;g++){let d=a.charCodeAt(g),f=b.get(d);if(e&&g===e.index+e.segment.length||1===f||1===c&&2===f||2===c&&0===f)return g}return f}static _findNextWordOnLine(a,b,c){let d=b.getLineContent(c.lineNumber);return this._doFindNextWordOnLine(d,a,c)}static _doFindNextWordOnLine(a,b,c){let d=0,e=a.length,f=b.findNextIntlWordAtOrAfterOffset(a,c.column-1);for(let g=c.column-1;g<e;g++){let c=a.charCodeAt(g),e=b.get(c);if(f&&g===f.index)return this._createIntlWord(f,e);if(0===e){if(2===d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g);d=1}else if(2===e){if(1===d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g);d=2}else if(1===e&&0!==d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g)}return 0!==d?this._createWord(a,d,1,this._findStartOfWord(a,b,d,e-1),e):null}static _findStartOfWord(a,b,c,d){let e=b.findPrevIntlWordBeforeOrAtOffset(a,d);for(let f=d;f>=0;f--){let d=a.charCodeAt(f),g=b.get(d);if(e&&f===e.index)return f;if(1===g||1===c&&2===g||2===c&&0===g)return f+1}return 0}static moveWordLeft(a,b,c,d,e){let f=c.lineNumber,g=c.column;1===g&&f>1&&(f-=1,g=b.getLineMaxColumn(f));let i=j._findPreviousWordOnLine(a,b,new h.y(f,g));if(0===d)return new h.y(f,i?i.start+1:1);if(1===d)return!e&&i&&2===i.wordType&&i.end-i.start==1&&0===i.nextCharClass&&(i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1))),new h.y(f,i?i.start+1:1);if(3===d){for(;i&&2===i.wordType;)i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1));return new h.y(f,i?i.start+1:1)}return i&&g<=i.end+1&&(i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1))),new h.y(f,i?i.end+1:1)}static _moveWordPartLeft(a,b){let c=b.lineNumber,e=a.getLineMaxColumn(c);if(1===b.column)return c>1?new h.y(c-1,a.getLineMaxColumn(c-1)):b;let f=a.getLineContent(c);for(let a=b.column-1;a>1;a--){let b=f.charCodeAt(a-2),g=f.charCodeAt(a-1);if(95===b&&95!==g||45===b&&45!==g||(d.Lv(b)||d.DB(b))&&d.Wv(g))return new h.y(c,a);if(d.Wv(b)&&d.Wv(g)&&a+1<e){let b=f.charCodeAt(a);if(d.Lv(b)||d.DB(b))return new h.y(c,a)}}return new h.y(c,1)}static moveWordRight(a,b,c,d){let e=c.lineNumber,f=c.column,g=!1;f===b.getLineMaxColumn(e)&&e<b.getLineCount()&&(g=!0,e+=1,f=1);let i=j._findNextWordOnLine(a,b,new h.y(e,f));if(2===d)i&&2===i.wordType&&i.end-i.start==1&&0===i.nextCharClass&&(i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1))),f=i?i.end+1:b.getLineMaxColumn(e);else if(3===d){for(g&&(f=0);i&&(2===i.wordType||i.start+1<=f);)i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1));f=i?i.start+1:b.getLineMaxColumn(e)}else i&&!g&&f>=i.start+1&&(i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1))),f=i?i.start+1:b.getLineMaxColumn(e);return new h.y(e,f)}static _moveWordPartRight(a,b){let c=b.lineNumber,e=a.getLineMaxColumn(c);if(b.column===e)return c<a.getLineCount()?new h.y(c+1,1):b;let f=a.getLineContent(c);for(let a=b.column+1;a<e;a++){let b=f.charCodeAt(a-2),g=f.charCodeAt(a-1);if(95!==b&&95===g||45!==b&&45===g||(d.Lv(b)||d.DB(b))&&d.Wv(g))return new h.y(c,a);if(d.Wv(b)&&d.Wv(g)&&a+1<e){let b=f.charCodeAt(a);if(d.Lv(b)||d.DB(b))return new h.y(c,a)}}return new h.y(c,e)}static _deleteWordLeftWhitespace(a,b){let c=a.getLineContent(b.lineNumber),e=b.column-2,f=d.lT(c,e);return f+1<e?new i.Q(b.lineNumber,f+2,b.lineNumber,b.column):null}static deleteWordLeft(a,b){let c=a.wordSeparators,d=a.model,e=a.selection,g=a.whitespaceHeuristics;if(!e.isEmpty())return e;if(f.g.isAutoClosingPairDelete(a.autoClosingDelete,a.autoClosingBrackets,a.autoClosingQuotes,a.autoClosingPairs.autoClosingPairsOpenByEnd,a.model,[a.selection],a.autoClosedCharacters)){let b=a.selection.getPosition();return new i.Q(b.lineNumber,b.column-1,b.lineNumber,b.column+1)}let k=new h.y(e.positionLineNumber,e.positionColumn),l=k.lineNumber,m=k.column;if(1===l&&1===m)return null;if(g){let a=this._deleteWordLeftWhitespace(d,k);if(a)return a}let n=j._findPreviousWordOnLine(c,d,k);return 0===b?n?m=n.start+1:m>1?m=1:(l--,m=d.getLineMaxColumn(l)):(n&&m<=n.end+1&&(n=j._findPreviousWordOnLine(c,d,new h.y(l,n.start+1))),n?m=n.end+1:m>1?m=1:(l--,m=d.getLineMaxColumn(l))),new i.Q(l,m,k.lineNumber,k.column)}static deleteInsideWord(a,b,c){if(!c.isEmpty())return c;let d=new h.y(c.positionLineNumber,c.positionColumn),e=this._deleteInsideWordWhitespace(b,d);return e||this._deleteInsideWordDetermineDeleteRange(a,b,d)}static _charAtIsWhitespace(a,b){let c=a.charCodeAt(b);return 32===c||9===c}static _deleteInsideWordWhitespace(a,b){let c=a.getLineContent(b.lineNumber),d=c.length;if(0===d)return null;let e=Math.max(b.column-2,0);if(!this._charAtIsWhitespace(c,e))return null;let f=Math.min(b.column-1,d-1);if(!this._charAtIsWhitespace(c,f))return null;for(;e>0&&this._charAtIsWhitespace(c,e-1);)e--;for(;f+1<d&&this._charAtIsWhitespace(c,f+1);)f++;return new i.Q(b.lineNumber,e+1,b.lineNumber,f+2)}static _deleteInsideWordDetermineDeleteRange(a,b,c){let d=b.getLineContent(c.lineNumber),e=d.length;if(0===e)if(c.lineNumber>1)return new i.Q(c.lineNumber-1,b.getLineMaxColumn(c.lineNumber-1),c.lineNumber,1);else if(c.lineNumber<b.getLineCount())return new i.Q(c.lineNumber,1,c.lineNumber+1,1);else return new i.Q(c.lineNumber,1,c.lineNumber,1);let f=a=>a.start+1<=c.column&&c.column<=a.end+1,g=(a,b)=>(a=Math.min(a,c.column),b=Math.max(b,c.column),new i.Q(c.lineNumber,a,c.lineNumber,b)),h=a=>{let b=a.start+1,c=a.end+1,f=!1;for(;c-1<e&&this._charAtIsWhitespace(d,c-1);)f=!0,c++;if(!f)for(;b>1&&this._charAtIsWhitespace(d,b-2);)b--;return g(b,c)},k=j._findPreviousWordOnLine(a,b,c);if(k&&f(k))return h(k);let l=j._findNextWordOnLine(a,b,c);return l&&f(l)?h(l):k&&l?g(k.end+1,l.start+1):k?g(k.start+1,k.end+1):l?g(l.start+1,l.end+1):g(1,e+1)}static _deleteWordPartLeft(a,b){if(!b.isEmpty())return b;let c=b.getPosition(),d=j._moveWordPartLeft(a,c);return new i.Q(c.lineNumber,c.column,d.lineNumber,d.column)}static _findFirstNonWhitespaceChar(a,b){let c=a.length;for(let d=b;d<c;d++){let b=a.charAt(d);if(" "!==b&&" "!==b)return d}return c}static _deleteWordRightWhitespace(a,b){let c=a.getLineContent(b.lineNumber),d=b.column-1,e=this._findFirstNonWhitespaceChar(c,d);return d+1<e?new i.Q(b.lineNumber,b.column,b.lineNumber,e+1):null}static deleteWordRight(a,b){let c=a.wordSeparators,d=a.model,e=a.selection,f=a.whitespaceHeuristics;if(!e.isEmpty())return e;let g=new h.y(e.positionLineNumber,e.positionColumn),k=g.lineNumber,l=g.column,m=d.getLineCount(),n=d.getLineMaxColumn(k);if(k===m&&l===n)return null;if(f){let a=this._deleteWordRightWhitespace(d,g);if(a)return a}let o=j._findNextWordOnLine(c,d,g);return 2===b?o?l=o.end+1:l<n||k===m?l=n:(k++,l=(o=j._findNextWordOnLine(c,d,new h.y(k,1)))?o.start+1:d.getLineMaxColumn(k)):(o&&l>=o.start+1&&(o=j._findNextWordOnLine(c,d,new h.y(k,o.end+1))),o?l=o.start+1:l<n||k===m?l=n:(k++,l=(o=j._findNextWordOnLine(c,d,new h.y(k,1)))?o.start+1:d.getLineMaxColumn(k))),new i.Q(k,l,g.lineNumber,g.column)}static _deleteWordPartRight(a,b){if(!b.isEmpty())return b;let c=b.getPosition(),d=j._moveWordPartRight(a,c);return new i.Q(c.lineNumber,c.column,d.lineNumber,d.column)}static _createWordAtPosition(a,b,c){let d=new i.Q(b,c.start+1,b,c.end+1);return{word:a.getValueInRange(d),startColumn:d.startColumn,endColumn:d.endColumn}}static getWordAtPosition(a,b,c,d){let e=(0,g.i)(b,c),f=j._findPreviousWordOnLine(e,a,d);if(f&&1===f.wordType&&f.start<=d.column-1&&d.column-1<=f.end)return j._createWordAtPosition(a,d.lineNumber,f);let h=j._findNextWordOnLine(e,a,d);return h&&1===h.wordType&&h.start<=d.column-1&&d.column-1<=h.end?j._createWordAtPosition(a,d.lineNumber,h):null}static word(a,b,c,d,f){let k,l,m,n=(0,g.i)(a.wordSeparators,a.wordSegmenterLocales),o=j._findPreviousWordOnLine(n,b,f),p=j._findNextWordOnLine(n,b,f);if(!d){let a,c;return o&&1===o.wordType&&o.start<=f.column-1&&f.column-1<=o.end?(a=o.start+1,c=o.end+1):p&&1===p.wordType&&p.start<=f.column-1&&f.column-1<=p.end?(a=p.start+1,c=p.end+1):(a=o?o.end+1:1,c=p?p.start+1:b.getLineMaxColumn(f.lineNumber)),new e.mG(new i.Q(f.lineNumber,a,f.lineNumber,c),1,0,new h.y(f.lineNumber,c),0)}o&&1===o.wordType&&o.start<f.column-1&&f.column-1<o.end?(k=o.start+1,l=o.end+1):p&&1===p.wordType&&p.start<f.column-1&&f.column-1<p.end?(k=p.start+1,l=p.end+1):(k=f.column,l=f.column);let q=f.lineNumber;if(c.selectionStart.containsPosition(f))m=c.selectionStart.endColumn;else if(f.isBeforeOrEqual(c.selectionStart.getStartPosition())){m=k;let a=new h.y(q,m);c.selectionStart.containsPosition(a)&&(m=c.selectionStart.endColumn)}else{m=l;let a=new h.y(q,m);c.selectionStart.containsPosition(a)&&(m=c.selectionStart.startColumn)}return c.move(!0,q,m,0)}}class k extends j{static deleteWordPartLeft(a){let b=l([j.deleteWordLeft(a,0),j.deleteWordLeft(a,2),j._deleteWordPartLeft(a.model,a.selection)]);return b.sort(i.Q.compareRangesUsingEnds),b[2]}static deleteWordPartRight(a){let b=l([j.deleteWordRight(a,0),j.deleteWordRight(a,2),j._deleteWordPartRight(a.model,a.selection)]);return b.sort(i.Q.compareRangesUsingStarts),b[0]}static moveWordPartLeft(a,b,c,d){let e=l([j.moveWordLeft(a,b,c,0,d),j.moveWordLeft(a,b,c,2,d),j._moveWordPartLeft(b,c)]);return e.sort(h.y.compare),e[2]}static moveWordPartRight(a,b,c){let d=l([j.moveWordRight(a,b,c,0),j.moveWordRight(a,b,c,2),j._moveWordPartRight(b,c)]);return d.sort(h.y.compare),d[0]}}function l(a){return a.filter(a=>!!a)}},83191:()=>{},83594:(a,b,c)=>{"use strict";var d;c.d(b,{GB:()=>f,i3:()=>e,l:()=>d}),function(a){a[a.None=0]="None",a[a.Indent=1]="Indent",a[a.IndentOutdent=2]="IndentOutdent",a[a.Outdent=3]="Outdent"}(d||(d={}));class e{constructor(a){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=a.open,this.close=a.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(a.notIn))for(let b=0,c=a.notIn.length;b<c;b++)switch(a.notIn[b]){case"string":this._inString=!1;break;case"comment":this._inComment=!1;break;case"regex":this._inRegEx=!1}}isOK(a){switch(a){case 0:return!0;case 1:return this._inComment;case 2:return this._inString;case 3:return this._inRegEx}}shouldAutoClose(a,b){if(0===a.getTokenCount())return!0;let c=a.findTokenIndexAtOffset(b-2),d=a.getStandardTokenType(c);return this.isOK(d)}_findNeutralCharacterInRange(a,b){for(let c=a;c<=b;c++){let a=String.fromCharCode(c);if(!this.open.includes(a)&&!this.close.includes(a))return a}return null}findNeutralCharacter(){return!this._neutralCharacterSearched&&(this._neutralCharacterSearched=!0,this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(48,57)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(97,122)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(65,90))),this._neutralCharacter}}class f{constructor(a){for(let b of(this.autoClosingPairsOpenByStart=new Map,this.autoClosingPairsOpenByEnd=new Map,this.autoClosingPairsCloseByStart=new Map,this.autoClosingPairsCloseByEnd=new Map,this.autoClosingPairsCloseSingleChar=new Map,a))g(this.autoClosingPairsOpenByStart,b.open.charAt(0),b),g(this.autoClosingPairsOpenByEnd,b.open.charAt(b.open.length-1),b),g(this.autoClosingPairsCloseByStart,b.close.charAt(0),b),g(this.autoClosingPairsCloseByEnd,b.close.charAt(b.close.length-1),b),1===b.close.length&&1===b.open.length&&g(this.autoClosingPairsCloseSingleChar,b.close,b)}}function g(a,b,c){a.has(b)?a.get(b).push(c):a.set(b,[c])}},84774:()=>{},84815:()=>{},85157:(a,b,c)=>{"use strict";c.d(b,{ur:()=>y,uO:()=>C});var d=c(3055),e=c(32677),f=c(67397),g=c(98350),h=c(87229),i=c(54734),j=c(40565),k=c(53578),l=c(60734),m=c(11314),n=c(58699),o=c(21777);function p(a,b){let c=[];for(let d of b){if(a.start>=d.range.end)continue;if(a.end<d.range.start)break;let b=n.Q.intersect(a,d.range);n.Q.isEmpty(b)||c.push({range:b,size:d.size})}return c}function q({start:a,end:b},c){return{start:a+c,end:b+c}}class r{get paddingTop(){return this._paddingTop}set paddingTop(a){this._size=this._size+a-this._paddingTop,this._paddingTop=a}constructor(a){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=a??0,this._size=this._paddingTop}splice(a,b,c=[]){let d=c.length-b,e=p({start:0,end:a},this.groups),f=p({start:a+b,end:1/0},this.groups).map(a=>({range:q(a.range,d),size:a.size})),g=c.map((b,c)=>({range:{start:a+c,end:a+c+1},size:b.size}));this.groups=function(...a){return function(a){let b=[],c=null;for(let d of a){let a=d.range.start,e=d.range.end,f=d.size;if(c&&f===c.size){c.range.end=e;continue}c={range:{start:a,end:e},size:f},b.push(c)}return b}(a.reduce((a,b)=>a.concat(b),[]))}(e,g,f),this._size=this._paddingTop+this.groups.reduce((a,b)=>a+b.size*(b.range.end-b.range.start),0)}get count(){let a=this.groups.length;return a?this.groups[a-1].range.end:0}get size(){return this._size}indexAt(a){if(a<0)return -1;if(a<this._paddingTop)return 0;let b=0,c=this._paddingTop;for(let d of this.groups){let e=d.range.end-d.range.start,f=c+e*d.size;if(a<f)return b+Math.floor((a-c)/d.size);b+=e,c=f}return b}indexAfter(a){return Math.min(this.indexAt(a)+1,this.count)}positionAt(a){if(a<0)return -1;let b=0,c=0;for(let d of this.groups){let e=d.range.end-d.range.start,f=c+e;if(a<f)return this._paddingTop+b+(a-c)*d.size;b+=e*d.size,c=f}return -1}}class s{constructor(a){this.renderers=a,this.cache=new Map,this.transactionNodesPendingRemoval=new Set,this.inTransaction=!1}alloc(a){let b=this.getTemplateCache(a).pop(),c=!1;if(b)(c=this.transactionNodesPendingRemoval.has(b.domNode))&&this.transactionNodesPendingRemoval.delete(b.domNode);else{let c=(0,e.$)(".monaco-list-row"),d=this.getRenderer(a).renderTemplate(c);b={domNode:c,templateId:a,templateData:d}}return{row:b,isReusingConnectedDomNode:c}}release(a){a&&this.releaseRow(a)}transact(a){if(this.inTransaction)throw Error("Already in transaction");this.inTransaction=!0;try{a()}finally{for(let a of this.transactionNodesPendingRemoval)this.doRemoveNode(a);this.transactionNodesPendingRemoval.clear(),this.inTransaction=!1}}releaseRow(a){let{domNode:b,templateId:c}=a;b&&(this.inTransaction?this.transactionNodesPendingRemoval.add(b):this.doRemoveNode(b)),this.getTemplateCache(c).push(a)}doRemoveNode(a){a.classList.remove("scrolling"),a.remove()}getTemplateCache(a){let b=this.cache.get(a);return b||(b=[],this.cache.set(a,b)),b}dispose(){this.cache.forEach((a,b)=>{for(let c of a)this.getRenderer(b).disposeTemplate(c.templateData),c.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(a){let b=this.renderers.get(a);if(!b)throw Error(`No renderer found for ${a}`);return b}}var t=c(88347),u=c(61496);c(31503);var v=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};let w={CurrentDragAndDropData:void 0},x={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements:a=>[a],getDragURI:()=>null,onDragStart(){},onDragOver:()=>!1,drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class y{constructor(a){this.elements=a}update(){}getData(){return this.elements}}class z{constructor(a){this.elements=a}update(){}getData(){return this.elements}}class A{constructor(){this.types=[],this.files=[]}update(a){if(a.types&&this.types.splice(0,this.types.length,...a.types),a.files){this.files.splice(0,this.files.length);for(let b=0;b<a.files.length;b++){let c=a.files.item(b);c&&(c.size||c.type)&&this.files.push(c)}}}getData(){return{types:this.types,files:this.files}}}class B{constructor(a){a?.getSetSize?this.getSetSize=a.getSetSize.bind(a):this.getSetSize=(a,b,c)=>c,a?.getPosInSet?this.getPosInSet=a.getPosInSet.bind(a):this.getPosInSet=(a,b)=>b+1,a?.getRole?this.getRole=a.getRole.bind(a):this.getRole=a=>"listitem",a?.isChecked?this.isChecked=a.isChecked.bind(a):this.isChecked=a=>void 0}}class C{static{this.InstanceCount=0}get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(a){if(a!==this._horizontalScrolling){if(a&&this.supportDynamicHeights)throw Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=a,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(let a of this.items)this.measureItemWidth(a);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:(0,e.y6)(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(a,b,c,d=x){if(this.virtualDelegate=b,this.domId=`list_id_${++C.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new j.ve(50),this.splicing=!1,this.dragOverAnimationStopDisposable=m.jG.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=m.jG.None,this.onDragLeaveTimeout=m.jG.None,this.currentSelectionDisposable=m.jG.None,this.disposables=new m.Cm,this._onDidChangeContentHeight=new l.vl,this._onDidChangeContentWidth=new l.vl,this.onDidChangeContentHeight=l.Jh.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,d.horizontalScrolling&&d.supportDynamicHeights)throw Error("Horizontal scrolling and dynamic heights not supported simultaneously");for(let a of(this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(d.paddingTop??0),c))this.renderers.set(a.templateId,a);if(this.cache=this.disposables.add(new s(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support","boolean"!=typeof d.mouseSupport||d.mouseSupport),this._horizontalScrolling=d.horizontalScrolling??x.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=void 0===d.paddingBottom?0:d.paddingBottom,this.accessibilityProvider=new B(d.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(d.transformOptimization??x.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(g.q.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new o.yE({forceIntegerValues:!0,smoothScrollDuration:125*!!d.smoothScrolling,scheduleAtNextAnimationFrame:a=>(0,e.PG)((0,e.zk)(this.domNode),a)})),this.scrollableElement=this.disposables.add(new h.oO(this.rowsContainer,{alwaysConsumeMouseWheel:d.alwaysConsumeMouseWheel??x.alwaysConsumeMouseWheel,horizontal:1,vertical:d.verticalScrollMode??x.verticalScrollMode,useShadows:d.useShadows??x.useShadows,mouseWheelScrollSensitivity:d.mouseWheelScrollSensitivity,fastScrollSensitivity:d.fastScrollSensitivity,scrollByPage:d.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),a.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add((0,e.ko)(this.rowsContainer,g.B.Change,a=>this.onTouchChange(a))),this.disposables.add((0,e.ko)(this.scrollableElement.getDomNode(),"scroll",a=>{let b=a.target,c=b.scrollTop;b.scrollTop=0,d.scrollToActiveElement&&this.setScrollTop(this.scrollTop+c)})),this.disposables.add((0,e.ko)(this.domNode,"dragover",a=>this.onDragOver(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"drop",a=>this.onDrop(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"dragleave",a=>this.onDragLeave(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"dragend",a=>this.onDragEnd(a))),d.userSelection){if(d.dnd)throw Error("DND and user selection cannot be used simultaneously");this.disposables.add((0,e.ko)(this.domNode,"mousedown",a=>this.onPotentialSelectionStart(a)))}this.setRowLineHeight=d.setRowLineHeight??x.setRowLineHeight,this.setRowHeight=d.setRowHeight??x.setRowHeight,this.supportDynamicHeights=d.supportDynamicHeights??x.supportDynamicHeights,this.dnd=d.dnd??this.disposables.add(x.dnd),this.layout(d.initialSize?.height,d.initialSize?.width),d.scrollToActiveElement&&this._setupFocusObserver(a)}_setupFocusObserver(a){this.disposables.add((0,e.ko)(a,"focus",()=>{let b=(0,e.bq)();this.activeElement!==b&&null!==b&&(this.activeElement=b,this._scrollToActiveElement(this.activeElement,a))},!0))}_scrollToActiveElement(a,b){let c=b.getBoundingClientRect(),d=a.getBoundingClientRect().top-c.top;d<0&&this.setScrollTop(this.scrollTop+d)}updateOptions(a){let b;if(void 0!==a.paddingBottom&&(this.paddingBottom=a.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),void 0!==a.smoothScrolling&&this.scrollable.setSmoothScrollDuration(125*!!a.smoothScrolling),void 0!==a.horizontalScrolling&&(this.horizontalScrolling=a.horizontalScrolling),void 0!==a.scrollByPage&&(b={...b??{},scrollByPage:a.scrollByPage}),void 0!==a.mouseWheelScrollSensitivity&&(b={...b??{},mouseWheelScrollSensitivity:a.mouseWheelScrollSensitivity}),void 0!==a.fastScrollSensitivity&&(b={...b??{},fastScrollSensitivity:a.fastScrollSensitivity}),b&&this.scrollableElement.updateOptions(b),void 0!==a.paddingTop&&a.paddingTop!==this.rangeMap.paddingTop){let b=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),c=a.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=a.paddingTop,this.render(b,Math.max(0,this.lastRenderTop+c),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(a){return new r(a)}splice(a,b,c=[]){if(this.splicing)throw Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(a,b,c)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(a,b,c=[]){let d,e=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),f=n.Q.intersect(e,{start:a,end:a+b}),g=new Map;for(let a=f.end-1;a>=f.start;a--){let b=this.items[a];if(b.dragStartDisposable.dispose(),b.checkedDisposable.dispose(),b.row){let c=g.get(b.templateId);c||(c=[],g.set(b.templateId,c));let d=this.renderers.get(b.templateId);d&&d.disposeElement&&d.disposeElement(b.element,a,b.row.templateData,{height:b.size}),c.unshift(b.row)}b.row=null,b.stale=!0}let h={start:a+b,end:this.items.length},j=n.Q.intersect(h,e),k=n.Q.relativeComplement(h,e),l=c.map(a=>({id:String(this.itemId++),element:a,templateId:this.virtualDelegate.getTemplateId(a),size:this.virtualDelegate.getHeight(a),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(a),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:m.jG.None,checkedDisposable:m.jG.None,stale:!1}));0===a&&b>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,l),d=this.items,this.items=l):(this.rangeMap.splice(a,b,l),d=(0,i.V4)(this.items,a,b,l));let o=c.length-b,p=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),r=q(j,o),s=n.Q.intersect(p,r);for(let a=s.start;a<s.end;a++)this.updateItemInDOM(this.items[a],a);for(let a of n.Q.relativeComplement(r,p))for(let b=a.start;b<a.end;b++)this.removeItemFromDOM(b);let t=k.map(a=>q(a,o));for(let b of[{start:a,end:a+c.length},...t].map(a=>n.Q.intersect(p,a)).reverse())for(let a=b.end-1;a>=b.start;a--){let b=this.items[a],c=g.get(b.templateId),d=c?.pop();this.insertItemInDOM(a,d)}for(let a of g.values())for(let b of a)this.cache.release(b);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),d.map(a=>a.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=(0,e.PG)((0,e.zk)(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling)return void this.scrollableElementWidthDelayer.cancel();this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let a=0;for(let b of this.items)void 0!==b.width&&(a=Math.max(a,b.width));this.scrollWidth=a,this.scrollableElement.setScrollDimensions({scrollWidth:0===a?0:a+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(let a of this.items)a.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getVisibleRange(this.lastRenderTop,this.lastRenderHeight).start}element(a){return this.items[a].element}indexOf(a){return this.items.findIndex(b=>b.element===a)}domElement(a){let b=this.items[a].row;return b&&b.domNode}elementHeight(a){return this.items[a].size}elementTop(a){return this.rangeMap.positionAt(a)}indexAt(a){return this.rangeMap.indexAt(a)}indexAfter(a){return this.rangeMap.indexAfter(a)}layout(a,b){let c={height:"number"==typeof a?a:(0,e.H4)(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,c.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(c),void 0!==b&&(this.renderWidth=b,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:"number"==typeof b?b:(0,e.y6)(this.domNode)})}render(a,b,c,d,e,f=!1,g=!1){let h=this.getRenderRange(b,c),i=n.Q.relativeComplement(h,a).reverse(),j=n.Q.relativeComplement(a,h);if(f){let b=n.Q.intersect(a,h);for(let a=b.start;a<b.end;a++)this.updateItemInDOM(this.items[a],a)}this.cache.transact(()=>{for(let a of j)for(let b=a.start;b<a.end;b++)this.removeItemFromDOM(b,g);for(let a of i)for(let b=a.end-1;b>=a.start;b--)this.insertItemInDOM(b)}),void 0!==d&&(this.rowsContainer.style.left=`-${d}px`),this.rowsContainer.style.top=`-${b}px`,this.horizontalScrolling&&void 0!==e&&(this.rowsContainer.style.width=`${Math.max(e,this.renderWidth)}px`),this.lastRenderTop=b,this.lastRenderHeight=c}insertItemInDOM(a,b){let c=this.items[a];if(!c.row)if(b)c.row=b,c.stale=!0;else{let a=this.cache.alloc(c.templateId);c.row=a.row,c.stale||=a.isReusingConnectedDomNode}let d=this.accessibilityProvider.getRole(c.element)||"listitem";c.row.domNode.setAttribute("role",d);let f=this.accessibilityProvider.isChecked(c.element);if("boolean"==typeof f)c.row.domNode.setAttribute("aria-checked",String(!!f));else if(f){let a=a=>c.row.domNode.setAttribute("aria-checked",String(!!a));a(f.value),c.checkedDisposable=f.onDidChange(()=>a(f.value))}if(c.stale||!c.row.domNode.parentElement){let b=this.items.at(a+1)?.row?.domNode??null;(c.row.domNode.parentElement!==this.rowsContainer||c.row.domNode.nextElementSibling!==b)&&this.rowsContainer.insertBefore(c.row.domNode,b),c.stale=!1}this.updateItemInDOM(c,a);let g=this.renderers.get(c.templateId);if(!g)throw Error(`No renderer found for template id ${c.templateId}`);g?.renderElement(c.element,a,c.row.templateData,{height:c.size});let h=this.dnd.getDragURI(c.element);c.dragStartDisposable.dispose(),c.row.domNode.draggable=!!h,h&&(c.dragStartDisposable=(0,e.ko)(c.row.domNode,"dragstart",a=>this.onDragStart(c.element,h,a))),this.horizontalScrolling&&(this.measureItemWidth(c),this.eventuallyUpdateScrollWidth())}measureItemWidth(a){if(!a.row||!a.row.domNode)return;a.row.domNode.style.width="fit-content",a.width=(0,e.y6)(a.row.domNode);let b=(0,e.zk)(a.row.domNode).getComputedStyle(a.row.domNode);b.paddingLeft&&(a.width+=parseFloat(b.paddingLeft)),b.paddingRight&&(a.width+=parseFloat(b.paddingRight)),a.row.domNode.style.width=""}updateItemInDOM(a,b){a.row.domNode.style.top=`${this.elementTop(b)}px`,this.setRowHeight&&(a.row.domNode.style.height=`${a.size}px`),this.setRowLineHeight&&(a.row.domNode.style.lineHeight=`${a.size}px`),a.row.domNode.setAttribute("data-index",`${b}`),a.row.domNode.setAttribute("data-last-element",b===this.length-1?"true":"false"),a.row.domNode.setAttribute("data-parity",b%2==0?"even":"odd"),a.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(a.element,b,this.length))),a.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(a.element,b))),a.row.domNode.setAttribute("id",this.getElementDomId(b)),a.row.domNode.classList.toggle("drop-target",a.dropTarget)}removeItemFromDOM(a,b){let c=this.items[a];if(c.dragStartDisposable.dispose(),c.checkedDisposable.dispose(),c.row){let d=this.renderers.get(c.templateId);d&&d.disposeElement&&d.disposeElement(c.element,a,c.row.templateData,{height:c.size,onScroll:b}),this.cache.release(c.row),c.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(a,b){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:a,reuseAnimation:b})}get scrollTop(){return this.getScrollTop()}set scrollTop(a){this.setScrollTop(a)}get scrollHeight(){return this._scrollHeight+10*!!this.horizontalScrolling+this.paddingBottom}get onMouseClick(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"click")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseDblClick(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"dblclick")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseMiddleClick(){return l.Jh.filter(l.Jh.map(this.disposables.add(new f.f(this.domNode,"auxclick")).event,a=>this.toMouseEvent(a),this.disposables),a=>1===a.browserEvent.button,this.disposables)}get onMouseDown(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mousedown")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseOver(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mouseover")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseOut(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mouseout")).event,a=>this.toMouseEvent(a),this.disposables)}get onContextMenu(){return l.Jh.any(l.Jh.map(this.disposables.add(new f.f(this.domNode,"contextmenu")).event,a=>this.toMouseEvent(a),this.disposables),l.Jh.map(this.disposables.add(new f.f(this.domNode,g.B.Contextmenu)).event,a=>this.toGestureEvent(a),this.disposables))}get onTouchStart(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"touchstart")).event,a=>this.toTouchEvent(a),this.disposables)}get onTap(){return l.Jh.map(this.disposables.add(new f.f(this.rowsContainer,g.B.Tap)).event,a=>this.toGestureEvent(a),this.disposables)}toMouseEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toTouchEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toGestureEvent(a){let b=this.getItemIndexFromEventTarget(a.initialTarget||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toDragEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b],d=c&&c.element,e=this.getTargetSector(a,b);return{browserEvent:a,index:b,element:d,sector:e}}onScroll(a){try{let b=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(b,a.scrollTop,a.height,a.scrollLeft,a.scrollWidth,void 0,!0),this.supportDynamicHeights&&this._rerender(a.scrollTop,a.height,a.inSmoothScrolling)}catch(b){throw console.error("Got bad scroll event:",a),b}}onTouchChange(a){a.preventDefault(),a.stopPropagation(),this.scrollTop-=a.translationY}onDragStart(a,b,c){let f;if(!c.dataTransfer)return;let g=this.dnd.getDragElements(a);c.dataTransfer.effectAllowed="copyMove",c.dataTransfer.setData(d.t.TEXT,b),this.dnd.getDragLabel&&(f=this.dnd.getDragLabel(g,c)),void 0===f&&(f=String(g.length)),function(a,b,c,d=[]){if(!a.dataTransfer)return;let f=(0,e.$)(".monaco-drag-image");f.textContent=c,f.classList.add(...d),(a=>{for(;a&&!a.classList.contains("monaco-workbench");)a=a.parentElement;return a||b.ownerDocument.body})(b).appendChild(f),a.dataTransfer.setDragImage(f,-10,-10),setTimeout(()=>f.remove(),0)}(c,this.domNode,f,[this.domId]),this.domNode.classList.add("dragging"),this.currentDragData=new y(g),w.CurrentDragAndDropData=new z(g),this.dnd.onDragStart?.(this.currentDragData,c)}onPotentialSelectionStart(a){this.currentSelectionDisposable.dispose();let b=(0,e.YE)(this.domNode),c=this.currentSelectionDisposable=new m.Cm,d=c.add(new m.Cm);d.add((0,e.ko)(this.domNode,"selectstart",()=>{d.add((0,e.ko)(b,"mousemove",a=>{b.getSelection()?.isCollapsed===!1&&this.setupDragAndDropScrollTopAnimation(a)})),c.add((0,m.s)(()=>{let a=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.currentSelectionBounds=void 0,this.render(a,this.lastRenderTop,this.lastRenderHeight,void 0,void 0)})),c.add((0,e.ko)(b,"selectionchange",()=>{let a=b.getSelection();if(!a||a.isCollapsed){d.isDisposed&&c.dispose();return}let e=this.getIndexOfListElement(a.anchorNode),f=this.getIndexOfListElement(a.focusNode);void 0!==e&&void 0!==f&&(f<e&&([e,f]=[f,e]),this.currentSelectionBounds={start:e,end:f})}))})),d.add((0,e.ko)(b,"mouseup",()=>{d.dispose(),this.teardownDragAndDropScrollTopAnimation(),b.getSelection()?.isCollapsed!==!1&&c.dispose()}))}getIndexOfListElement(a){if(a&&this.domNode.contains(a))for(;a&&a!==this.domNode;){if(a.dataset?.index)return Number(a.dataset.index);a=a.parentElement}}onDragOver(a){var b,c;let d;if(a.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),w.CurrentDragAndDropData&&"vscode-ui"===w.CurrentDragAndDropData.getData()||(this.setupDragAndDropScrollTopAnimation(a.browserEvent),!a.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(w.CurrentDragAndDropData)this.currentDragData=w.CurrentDragAndDropData;else{if(!a.browserEvent.dataTransfer.types)return!1;this.currentDragData=new A}let e=this.dnd.onDragOver(this.currentDragData,a.element,a.index,a.sector,a.browserEvent);if(this.canDrop="boolean"==typeof e?e:e.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;a.browserEvent.dataTransfer.dropEffect="boolean"!=typeof e&&e.effect?.type===0?"copy":"move",d="boolean"!=typeof e&&e.feedback?e.feedback:void 0===a.index?[-1]:[a.index],d=-1===(d=(0,i.dM)(d).filter(a=>a>=-1&&a<this.length).sort((a,b)=>a-b))[0]?[-1]:d;let f="boolean"!=typeof e&&e.effect&&e.effect.position?e.effect.position:"drop-target";if(b=this.currentDragFeedback,c=d,(Array.isArray(b)&&Array.isArray(c)?(0,i.aI)(b,c):b===c)&&this.currentDragFeedbackPosition===f)return!0;if(this.currentDragFeedback=d,this.currentDragFeedbackPosition=f,this.currentDragFeedbackDisposable.dispose(),-1===d[0])this.domNode.classList.add(f),this.rowsContainer.classList.add(f),this.currentDragFeedbackDisposable=(0,m.s)(()=>{this.domNode.classList.remove(f),this.rowsContainer.classList.remove(f)});else{if(d.length>1&&"drop-target"!==f)throw Error("Can't use multiple feedbacks with position different than 'over'");for(let a of("drop-target-after"===f&&d[0]<this.length-1&&(d[0]+=1,f="drop-target-before"),d)){let b=this.items[a];b.dropTarget=!0,b.row?.domNode.classList.add(f)}this.currentDragFeedbackDisposable=(0,m.s)(()=>{for(let a of d){let b=this.items[a];b.dropTarget=!1,b.row?.domNode.classList.remove(f)}})}return!0}onDragLeave(a){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=(0,j.EQ)(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,a.element,a.index,a.browserEvent)}onDrop(a){if(!this.canDrop)return;let b=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,w.CurrentDragAndDropData=void 0,b&&a.browserEvent.dataTransfer&&(a.browserEvent.preventDefault(),b.update(a.browserEvent.dataTransfer),this.dnd.drop(b,a.element,a.index,a.sector,a.browserEvent))}onDragEnd(a){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,w.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(a)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=m.jG.None}setupDragAndDropScrollTopAnimation(a){if(!this.dragOverAnimationDisposable){let a=(0,e.cL)(this.domNode).top;this.dragOverAnimationDisposable=(0,e.i0)((0,e.zk)(this.domNode),this.animateDragAndDropScrollTop.bind(this,a))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=(0,j.EQ)(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=a.pageY}animateDragAndDropScrollTop(a){if(void 0===this.dragOverMouseY)return;let b=this.dragOverMouseY-a,c=this.renderHeight-35;b<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(b-35))):b>c&&(this.scrollTop+=Math.min(14,Math.floor(.3*(b-c))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(a,b){if(void 0===b)return;let c=Math.floor(a.offsetY/this.items[b].size/.25);return(0,u.qE)(c,0,3)}getItemIndexFromEventTarget(a){let b=this.scrollableElement.getDomNode(),c=a;for(;((0,e.sb)(c)||(0,e.xZ)(c))&&c!==this.rowsContainer&&b.contains(c);){let a=c.getAttribute("data-index");if(a){let b=Number(a);if(!isNaN(b))return b}c=c.parentElement}}getVisibleRange(a,b){return{start:this.rangeMap.indexAt(a),end:this.rangeMap.indexAfter(a+b-1)}}getRenderRange(a,b){let c=this.getVisibleRange(a,b);if(this.currentSelectionBounds){let a=this.rangeMap.count;c.start=Math.min(c.start,this.currentSelectionBounds.start,a),c.end=Math.min(Math.max(c.end,this.currentSelectionBounds.end+1),a)}return c}_rerender(a,b,c){let d,e,f=this.getRenderRange(a,b);a===this.elementTop(f.start)?(d=f.start,e=0):f.end-f.start>1&&(d=f.start+1,e=this.elementTop(d)-a);let g=0;for(;;){let h=this.getRenderRange(a,b),i=!1;for(let a=h.start;a<h.end;a++){let b=this.probeDynamicHeight(a);0!==b&&this.rangeMap.splice(a,1,[this.items[a]]),g+=b,i=i||0!==b}if(!i){for(let a of(0!==g&&this.eventuallyUpdateScrollDimensions(),n.Q.relativeComplement(f,h)))for(let b=a.start;b<a.end;b++)this.items[b].row&&this.removeItemFromDOM(b);for(let a of n.Q.relativeComplement(h,f).reverse())for(let b=a.end-1;b>=a.start;b--)this.insertItemInDOM(b);for(let a=h.start;a<h.end;a++)this.items[a].row&&this.updateItemInDOM(this.items[a],a);if("number"==typeof d){let b=this.scrollable.getFutureScrollPosition().scrollTop-a,f=this.elementTop(d)-e+b;this.setScrollTop(f,c)}this._onDidChangeContentHeight.fire(this.contentHeight);return}}}probeDynamicHeight(a){let b=this.items[a];if(this.virtualDelegate.getDynamicHeight){let a=this.virtualDelegate.getDynamicHeight(b.element);if(null!==a){let c=b.size;return b.size=a,b.lastDynamicHeightWidth=this.renderWidth,a-c}}if(!b.hasDynamicHeight||b.lastDynamicHeightWidth===this.renderWidth||this.virtualDelegate.hasDynamicHeight&&!this.virtualDelegate.hasDynamicHeight(b.element))return 0;let c=b.size;if(b.row)return b.row.domNode.style.height="",b.size=b.row.domNode.offsetHeight,0!==b.size||(0,e.QX)(b.row.domNode,(0,e.zk)(b.row.domNode).document.body)||console.warn("Measuring item node that is not in DOM! Add ListView to the DOM before measuring row height!",Error().stack),b.lastDynamicHeightWidth=this.renderWidth,b.size-c;let{row:d}=this.cache.alloc(b.templateId);d.domNode.style.height="",this.rowsContainer.appendChild(d.domNode);let f=this.renderers.get(b.templateId);if(!f)throw new t.D7("Missing renderer for templateId: "+b.templateId);return f.renderElement(b.element,a,d.templateData),b.size=d.domNode.offsetHeight,f.disposeElement?.(b.element,a,d.templateData),this.virtualDelegate.setDynamicHeight?.(b.element,b.size),b.lastDynamicHeightWidth=this.renderWidth,d.domNode.remove(),this.cache.release(d),b.size-c}getElementDomId(a){return`${this.domId}_${a}`}dispose(){for(let a of this.items)if(a.dragStartDisposable.dispose(),a.checkedDisposable.dispose(),a.row){let b=this.renderers.get(a.row.templateId);b&&(b.disposeElement?.(a.element,-1,a.row.templateData,void 0),b.disposeTemplate(a.row.templateData))}this.items=[],this.domNode?.remove(),this.dragOverAnimationDisposable?.dispose(),this.disposables.dispose()}}v([k.B],C.prototype,"onMouseClick",null),v([k.B],C.prototype,"onMouseDblClick",null),v([k.B],C.prototype,"onMouseMiddleClick",null),v([k.B],C.prototype,"onMouseDown",null),v([k.B],C.prototype,"onMouseOver",null),v([k.B],C.prototype,"onMouseOut",null),v([k.B],C.prototype,"onContextMenu",null),v([k.B],C.prototype,"onTouchStart",null),v([k.B],C.prototype,"onTap",null)},85531:()=>{},85999:()=>{},86031:(a,b,c)=>{"use strict";c.d(b,{HG:()=>q,KS:()=>u,un:()=>v});var d=c(32677),e=c(88347),f=c(60734),g=c(11314),h=c(25536),i=c(79487),j=c(45367),k=c(63090),l=c(29715),m=c(559),n=c(21899),o=c(91295),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,l.u1)("IInlineCompletionsService"),r=new j.N1("inlineCompletions.snoozed",!1,(0,h.kg)(76,"Whether inline completions are currently snoozed")),s=class extends g.jG{get snoozeTimeLeft(){return void 0===this._snoozeTimeEnd?0:Math.max(0,this._snoozeTimeEnd-Date.now())}constructor(a,b){super(),this._contextKeyService=a,this._telemetryService=b,this._onDidChangeIsSnoozing=this._register(new f.vl),this.onDidChangeIsSnoozing=this._onDidChangeIsSnoozing.event,this._snoozeTimeEnd=void 0,this._recentCompletionIds=[],this._timer=this._register(new d.Be);let c=r.bindTo(this._contextKeyService);this._register(this.onDidChangeIsSnoozing(()=>c.set(this.isSnoozing())))}setSnoozeDuration(a){if(a<0)throw new e.D7(`Invalid snooze duration: ${a}. Duration must be non-negative.`);if(0===a)return void this.cancelSnooze();let b=this.isSnoozing(),c=this.snoozeTimeLeft;this._snoozeTimeEnd=Date.now()+a,b||this._onDidChangeIsSnoozing.fire(!0),this._timer.cancelAndSet(()=>{if(this.isSnoozing())throw new e.D7("Snooze timer did not fire as expected");this._onDidChangeIsSnoozing.fire(!1)},this.snoozeTimeLeft+1),this._reportSnooze(a-c,a)}isSnoozing(){return this.snoozeTimeLeft>0}cancelSnooze(){this.isSnoozing()&&(this._reportSnooze(-this.snoozeTimeLeft,0),this._snoozeTimeEnd=void 0,this._timer.cancel(),this._onDidChangeIsSnoozing.fire(!1))}reportNewCompletion(a){this._lastCompletionId=a,this._recentCompletionIds.unshift(a),this._recentCompletionIds.length>5&&this._recentCompletionIds.pop()}_reportSnooze(a,b){let c=Math.round(a/1e3),d=Math.round(b/1e3);this._telemetryService.publicLog2("inlineCompletions.snooze",{deltaSeconds:c,totalSeconds:d,lastCompletionId:this._lastCompletionId,recentCompletionIds:this._recentCompletionIds})}};s=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,j.fN),p(1,o.k)],s),(0,k.v)(q,s,1);let t="inlineCompletions.lastSnoozeDuration";class u extends i.L{static{this.ID="editor.action.inlineSuggest.snooze"}constructor(){super({id:u.ID,title:(0,h.aS)(78,"Snooze Inline Suggestions"),precondition:j.M$.true(),f1:!0})}async run(a,...b){let c,d=a.get(m.GK),e=a.get(q),f=a.get(n.CS);b.length>0&&"number"==typeof b[0]&&(c=b[0]),c||(c=await this.getDurationFromUser(d,f)),c&&e.setSnoozeDuration(c)}async getDurationFromUser(a,b){let c=b.getNumber(t,0,3e5),d=[{label:"1 minute",id:"1",value:6e4},{label:"5 minutes",id:"5",value:3e5},{label:"10 minutes",id:"10",value:6e5},{label:"15 minutes",id:"15",value:9e5},{label:"30 minutes",id:"30",value:18e5},{label:"60 minutes",id:"60",value:36e5}],e=await a.pick(d,{placeHolder:(0,h.kg)(77,"Select snooze duration for Code completions and NES"),activeItem:d.find(a=>a.value===c)});if(e)return b.store(t,e.value,0,0),e.value}}class v extends i.L{static{this.ID="editor.action.inlineSuggest.cancelSnooze"}constructor(){super({id:v.ID,title:(0,h.aS)(79,"Cancel Snooze Inline Suggestions"),precondition:r,f1:!0})}async run(a){a.get(q).cancelSnooze()}}},86690:()=>{},87229:(a,b,c)=>{"use strict";c.d(b,{MU:()=>B,QC:()=>x,Se:()=>z,oO:()=>A});var d=c(88637),e=c(32677),f=c(27503),g=c(21280),h=c(4120),i=c(62274),j=c(40565),k=c(81633);class l extends i.x{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px",void 0!==a.top&&(this.bgDomNode.style.top="0px"),void 0!==a.left&&(this.bgDomNode.style.left="0px"),void 0!==a.bottom&&(this.bgDomNode.style.bottom="0px"),void 0!==a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.classList.add(...k.L.asClassNameArray(a.icon)),this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px",void 0!==a.top&&(this.domNode.style.top=a.top+"px"),void 0!==a.left&&(this.domNode.style.left=a.left+"px"),void 0!==a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),void 0!==a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new h._),this._register(e.un(this.bgDomNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register(e.un(this.domNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new e.Be),this._pointerdownScheduleRepeatTimer=this._register(new j.pc)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,e.zk(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}}var m=c(11314);class n extends m.jG{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new j.pc)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded)return void this._hide(!1);this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}}var o=c(56167);class p extends i.x{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new n(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new h._),this._shouldRender=!0,this.domNode=(0,f.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(e.ko(this.domNode.domNode,e.Bx.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new l(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=(0,f.Z)(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(e.ko(this.slider.domNode,e.Bx.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{let d=e.BK(this.domNode.domNode);b=a.pageX-d.left,c=a.pageY-d.top}let d="mouse"===a.pointerType,f=0===a.button;if(f||!d){let a=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(a):this._scrollbarState.getDesiredScrollPositionFromOffset(a))}f&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(o.uF&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a);this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f-b))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}var q=c(76558),r=c(90399);class s extends p{constructor(a,b,c){let d=a.getScrollDimensions();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,a.getCurrentScrollPosition().scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows){let a=(b.arrowSize-11)/2,c=(b.horizontalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonLeft,top:c,left:a,bottom:void 0,right:void 0,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,1,0))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonRight,top:c,left:void 0,bottom:void 0,right:a,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,-1,0))})}this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}}class t extends p{constructor(a,b,c){let d=a.getScrollDimensions();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,a.getCurrentScrollPosition().scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows){let a=(b.arrowSize-11)/2,c=(b.verticalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonUp,top:a,left:c,bottom:void 0,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,1))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonDown,top:void 0,left:c,bottom:a,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,-1))})}this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}}var u=c(60734),v=c(21777);c(6411);class w{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}}class x{static{this.INSTANCE=new x}constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(d.H8){let b=e.zk(a.browserEvent),c=(0,d.pR)(b);this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new w(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return Math.abs(Math.round(a)-a)<.01+100*Number.EPSILON}}class y extends i.x{get onScroll(){return this._onScroll.event}get options(){return this._options}constructor(a,b,c){super(),this._inertialTimeout=null,this._inertialSpeed={X:0,Y:0},this._onScroll=this._register(new u.vl),this._onWillScroll=this._register(new u.vl),a.style.overflow="hidden",this._options=function(a){let b={lazyRender:void 0!==a.lazyRender&&a.lazyRender,className:void 0!==a.className?a.className:"",useShadows:void 0===a.useShadows||a.useShadows,handleMouseWheel:void 0===a.handleMouseWheel||a.handleMouseWheel,flipAxes:void 0!==a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:void 0!==a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:void 0!==a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:void 0!==a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:void 0!==a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:void 0===a.scrollPredominantAxis||a.scrollPredominantAxis,mouseWheelSmoothScroll:void 0===a.mouseWheelSmoothScroll||a.mouseWheelSmoothScroll,inertialScroll:void 0!==a.inertialScroll&&a.inertialScroll,arrowSize:void 0!==a.arrowSize?a.arrowSize:11,listenOnDomNode:void 0!==a.listenOnDomNode?a.listenOnDomNode:null,horizontal:void 0!==a.horizontal?a.horizontal:1,horizontalScrollbarSize:void 0!==a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:void 0!==a.horizontalHasArrows&&a.horizontalHasArrows,vertical:void 0!==a.vertical?a.vertical:1,verticalScrollbarSize:void 0!==a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:void 0!==a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:void 0!==a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:void 0!==a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize=void 0!==a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize=void 0!==a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,o.zx&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));let d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new t(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new s(this._scrollable,this._options,d)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=(0,f.Z)(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=(0,f.Z)(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=(0,f.Z)(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new j.pc),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),this._inertialTimeout&&(this._inertialTimeout.dispose(),this._inertialTimeout=null),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,o.zx&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(a){void 0!==a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),void 0!==a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),void 0!==a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),void 0!==a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),void 0!==a.horizontal&&(this._options.horizontal=a.horizontal),void 0!==a.vertical&&(this._options.vertical=a.vertical),void 0!==a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),void 0!==a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),void 0!==a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new g.$(a))}async _periodicSync(){let a=!1;(0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y)&&(this._scrollable.setScrollPositionNow({scrollTop:this._scrollable.getCurrentScrollPosition().scrollTop-100*this._inertialSpeed.Y,scrollLeft:this._scrollable.getCurrentScrollPosition().scrollLeft-100*this._inertialSpeed.X}),this._inertialSpeed.X*=.9,this._inertialSpeed.Y*=.9,.01>Math.abs(this._inertialSpeed.X)&&(this._inertialSpeed.X=0),.01>Math.abs(this._inertialSpeed.Y)&&(this._inertialSpeed.Y=0),a=0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y),a?(this._inertialTimeout||(this._inertialTimeout=new j.pc),this._inertialTimeout.cancelAndSet(()=>this._periodicSync(),1e3/60)):(this._inertialTimeout?.dispose(),this._inertialTimeout=null)}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new g.$(a))};this._mouseWheelToDispose.push(e.ko(this._listenOnDomNode,e.Bx.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=x.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!o.zx&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}if(h=this._scrollable.validateScrollPosition(h),this._options.inertialScroll&&(e||d)){let a=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y&&(a=!0),this._inertialSpeed.Y=(d<0?-1:1)*Math.abs(d)**1.02,this._inertialSpeed.X=(e<0?-1:1)*Math.abs(e)**1.02,a&&this._periodicSync()}(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet(()=>this._hide(),500)}}class z extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;let c=new v.yE({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>e.PG(e.zk(a),b)});super(a,b,c),this._register(c)}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}}class A extends y{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class B extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;let c=new v.yE({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>e.PG(e.zk(a),b)});super(a,b,c),this._register(c),this._element=a,this._register(this.onScroll(a=>{a.scrollTopChanged&&(this._element.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this._element.scrollLeft=a.scrollLeft)})),this.scanDomNode()}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}},88077:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(18920);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},88322:()=>{},88323:()=>{},88347:(a,b,c)=>{"use strict";c.d(b,{AL:()=>k,D7:()=>q,EM:()=>o,MB:()=>j,M_:()=>h,Qg:()=>m,aD:()=>l,cU:()=>function a(b){if(b instanceof Error){let{name:c,message:d,cause:e}=b;return{$isError:!0,name:c,message:d,stack:b.stacktrace||b.stack,noTelemetry:p.isErrorNoTelemetry(b),cause:e?a(e):void 0,code:b.code}}return b},dz:()=>g,iH:()=>n,y4:()=>f});class d{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{if(a.stack){if(p.isErrorNoTelemetry(a))throw new p(a.message+"\n\n"+a.stack);throw Error(a.message+"\n\n"+a.stack)}throw a},0)}}emit(a){this.listeners.forEach(b=>{b(a)})}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}}let e=new d;function f(a){e.onUnexpectedError(a)}function g(a){j(a)||e.onUnexpectedError(a)}function h(a){j(a)||e.onUnexpectedExternalError(a)}let i="Canceled";function j(a){return a instanceof k||a instanceof Error&&a.name===i&&a.message===i}class k extends Error{constructor(){super(i),this.name=this.message}}function l(){let a=Error(i);return a.name=a.message,a}function m(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}function n(a){return a?Error(`Illegal state: ${a}`):Error("Illegal state")}class o extends Error{constructor(a){super("NotSupported"),a&&(this.message=a)}}class p extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(a){if(a instanceof p)return a;let b=new p;return b.message=a.message,b.stack=a.stack,b}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}}class q extends Error{constructor(a){super(a||"An unexpected bug occurred."),Object.setPrototypeOf(this,q.prototype)}}},88482:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(29715).u1)("ILanguageFeaturesService")},88637:(a,b,c)=>{"use strict";c.d(b,{Dy:()=>f,H8:()=>k,Qu:()=>p,Tc:()=>j,c8:()=>m,gm:()=>i,m0:()=>n,nr:()=>l,pR:()=>g});var d=c(29813);class e{constructor(){this.mapWindowIdToZoomFactor=new Map}static{this.INSTANCE=new e}getZoomFactor(a){return this.mapWindowIdToZoomFactor.get(this.getWindowId(a))??1}getWindowId(a){return a.vscodeWindowId}}function f(a,b,c){"string"==typeof b&&(b=a.matchMedia(b)),b.addEventListener("change",c)}function g(a){return e.INSTANCE.getZoomFactor(a)}let h=navigator.userAgent,i=h.indexOf("Firefox")>=0,j=h.indexOf("AppleWebKit")>=0,k=h.indexOf("Chrome")>=0,l=!k&&h.indexOf("Safari")>=0,m=!k&&!l&&j;h.indexOf("Electron/");let n=h.indexOf("Android")>=0,o=!1;if("function"==typeof d.G.matchMedia){let a=d.G.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),b=d.G.matchMedia("(display-mode: fullscreen)");o=a.matches,f(d.G,a,({matches:a})=>{o&&b.matches||(o=a)})}function p(){return o}},88662:(a,b,c)=>{"use strict";c.d(b,{W:()=>g,c:()=>f});var d=c(59317),e=c(25247);class f{static fromModelContentChanges(a){return a.map(a=>{let b=d.Q.lift(a.range);return new f((0,e.VL)(b.getStartPosition()),(0,e.VL)(b.getEndPosition()),(0,e.rR)(a.text))}).reverse()}constructor(a,b,c){this.startOffset=a,this.endOffset=b,this.newLength=c}toString(){return`[${(0,e.l4)(this.startOffset)}...${(0,e.l4)(this.endOffset)}) -> ${(0,e.l4)(this.newLength)}`}}class g{constructor(a){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=a.map(a=>h.from(a))}getOffsetBeforeChange(a){return this.adjustNextEdit(a),this.translateCurToOld(a)}getDistanceToNextChange(a){this.adjustNextEdit(a);let b=this.edits[this.nextEditIdx],c=b?this.translateOldToCur(b.offsetObj):null;return null===c?null:(0,e.MS)(a,c)}translateOldToCur(a){return a.lineCount===this.deltaLineIdxInOld?(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount+this.deltaOldToNewColumnCount):(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount)}translateCurToOld(a){let b=(0,e.l4)(a);return b.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount-this.deltaOldToNewColumnCount):(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount)}adjustNextEdit(a){for(;this.nextEditIdx<this.edits.length;){let b=this.edits[this.nextEditIdx],c=this.translateOldToCur(b.endOffsetAfterObj);if((0,e.vr)(c,a)){this.nextEditIdx++;let a=(0,e.l4)(c),d=(0,e.l4)(this.translateOldToCur(b.endOffsetBeforeObj)),f=a.lineCount-d.lineCount;this.deltaOldToNewLineCount+=f;let g=this.deltaLineIdxInOld===b.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,h=a.columnCount-d.columnCount;this.deltaOldToNewColumnCount=g+h,this.deltaLineIdxInOld=b.endOffsetBeforeObj.lineCount}else break}}}class h{static from(a){return new h(a.startOffset,a.endOffset,a.newLength)}constructor(a,b,c){this.endOffsetBeforeObj=(0,e.l4)(b),this.endOffsetAfterObj=(0,e.l4)((0,e.QB)(a,c)),this.offsetObj=(0,e.l4)(a)}}},89350:(a,b,c)=>{"use strict";c.d(b,{$8:()=>h,SL:()=>g,_3:()=>i,aY:()=>k,uY:()=>j});var d=c(54734),e=c(88347),f=c(95967);class g{static trivial(a,b){return new g([new h(f.L.ofLength(a.length),f.L.ofLength(b.length))],!1)}static trivialTimedOut(a,b){return new g([new h(f.L.ofLength(a.length),f.L.ofLength(b.length))],!0)}constructor(a,b){this.diffs=a,this.hitTimeout=b}}class h{static invert(a,b){let c=[];return(0,d.pN)(a,(a,d)=>{c.push(h.fromOffsetPairs(a?a.getEndExclusives():i.zero,d?d.getStarts():new i(b,(a?a.seq2Range.endExclusive-a.seq1Range.endExclusive:0)+b)))}),c}static fromOffsetPairs(a,b){return new h(new f.L(a.offset1,b.offset1),new f.L(a.offset2,b.offset2))}static assertSorted(a){let b;for(let c of a){if(b&&!(b.seq1Range.endExclusive<=c.seq1Range.start&&b.seq2Range.endExclusive<=c.seq2Range.start))throw new e.D7("Sequence diffs must be sorted");b=c}}constructor(a,b){this.seq1Range=a,this.seq2Range=b}swap(){return new h(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(a){return new h(this.seq1Range.join(a.seq1Range),this.seq2Range.join(a.seq2Range))}delta(a){return 0===a?this:new h(this.seq1Range.delta(a),this.seq2Range.delta(a))}deltaStart(a){return 0===a?this:new h(this.seq1Range.deltaStart(a),this.seq2Range.deltaStart(a))}deltaEnd(a){return 0===a?this:new h(this.seq1Range.deltaEnd(a),this.seq2Range.deltaEnd(a))}intersect(a){let b=this.seq1Range.intersect(a.seq1Range),c=this.seq2Range.intersect(a.seq2Range);if(b&&c)return new h(b,c)}getStarts(){return new i(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new i(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}class i{static{this.zero=new i(0,0)}static{this.max=new i(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER)}constructor(a,b){this.offset1=a,this.offset2=b}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(a){return 0===a?this:new i(this.offset1+a,this.offset2+a)}equals(a){return this.offset1===a.offset1&&this.offset2===a.offset2}}class j{static{this.instance=new j}isValid(){return!0}}class k{constructor(a){if(this.timeout=a,this.startTime=Date.now(),this.valid=!0,a<=0)throw new e.D7("timeout must be positive")}isValid(){return!(Date.now()-this.startTime<this.timeout)&&this.valid&&(this.valid=!1),this.valid}}},89420:()=>{},89535:(a,b,c)=>{"use strict";c.d(b,{$D:()=>d,I_:()=>f,To:()=>e,Ym:()=>g});let d=(0,c(29715).u1)("undoRedoService");class e{constructor(a,b){this.resource=a,this.elements=b}}class f{static{this._ID=0}constructor(){this.id=f._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new f}}class g{static{this._ID=0}constructor(){this.id=g._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new g}}},89754:()=>{},89876:()=>{},90078:()=>{},90389:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(27503);function e(a,b){a instanceof d.D?(a.setFontFamily(b.getMassagedFontFamily()),a.setFontWeight(b.fontWeight),a.setFontSize(b.fontSize),a.setFontFeatureSettings(b.fontFeatureSettings),a.setFontVariationSettings(b.fontVariationSettings),a.setLineHeight(b.lineHeight),a.setLetterSpacing(b.letterSpacing)):(a.style.fontFamily=b.getMassagedFontFamily(),a.style.fontWeight=b.fontWeight,a.style.fontSize=b.fontSize+"px",a.style.fontFeatureSettings=b.fontFeatureSettings,a.style.fontVariationSettings=b.fontVariationSettings,a.style.lineHeight=b.lineHeight+"px",a.style.letterSpacing=b.letterSpacing+"px")}},90399:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23140);let e={add:(0,d.k)("add",6e4),plus:(0,d.k)("plus",6e4),gistNew:(0,d.k)("gist-new",6e4),repoCreate:(0,d.k)("repo-create",6e4),lightbulb:(0,d.k)("lightbulb",60001),lightBulb:(0,d.k)("light-bulb",60001),repo:(0,d.k)("repo",60002),repoDelete:(0,d.k)("repo-delete",60002),gistFork:(0,d.k)("gist-fork",60003),repoForked:(0,d.k)("repo-forked",60003),gitPullRequest:(0,d.k)("git-pull-request",60004),gitPullRequestAbandoned:(0,d.k)("git-pull-request-abandoned",60004),recordKeys:(0,d.k)("record-keys",60005),keyboard:(0,d.k)("keyboard",60005),tag:(0,d.k)("tag",60006),gitPullRequestLabel:(0,d.k)("git-pull-request-label",60006),tagAdd:(0,d.k)("tag-add",60006),tagRemove:(0,d.k)("tag-remove",60006),person:(0,d.k)("person",60007),personFollow:(0,d.k)("person-follow",60007),personOutline:(0,d.k)("person-outline",60007),personFilled:(0,d.k)("person-filled",60007),gitBranch:(0,d.k)("git-branch",60008),gitBranchCreate:(0,d.k)("git-branch-create",60008),gitBranchDelete:(0,d.k)("git-branch-delete",60008),sourceControl:(0,d.k)("source-control",60008),mirror:(0,d.k)("mirror",60009),mirrorPublic:(0,d.k)("mirror-public",60009),star:(0,d.k)("star",60010),starAdd:(0,d.k)("star-add",60010),starDelete:(0,d.k)("star-delete",60010),starEmpty:(0,d.k)("star-empty",60010),comment:(0,d.k)("comment",60011),commentAdd:(0,d.k)("comment-add",60011),alert:(0,d.k)("alert",60012),warning:(0,d.k)("warning",60012),search:(0,d.k)("search",60013),searchSave:(0,d.k)("search-save",60013),logOut:(0,d.k)("log-out",60014),signOut:(0,d.k)("sign-out",60014),logIn:(0,d.k)("log-in",60015),signIn:(0,d.k)("sign-in",60015),eye:(0,d.k)("eye",60016),eyeUnwatch:(0,d.k)("eye-unwatch",60016),eyeWatch:(0,d.k)("eye-watch",60016),circleFilled:(0,d.k)("circle-filled",60017),primitiveDot:(0,d.k)("primitive-dot",60017),closeDirty:(0,d.k)("close-dirty",60017),debugBreakpoint:(0,d.k)("debug-breakpoint",60017),debugBreakpointDisabled:(0,d.k)("debug-breakpoint-disabled",60017),debugHint:(0,d.k)("debug-hint",60017),terminalDecorationSuccess:(0,d.k)("terminal-decoration-success",60017),primitiveSquare:(0,d.k)("primitive-square",60018),edit:(0,d.k)("edit",60019),pencil:(0,d.k)("pencil",60019),info:(0,d.k)("info",60020),issueOpened:(0,d.k)("issue-opened",60020),gistPrivate:(0,d.k)("gist-private",60021),gitForkPrivate:(0,d.k)("git-fork-private",60021),lock:(0,d.k)("lock",60021),mirrorPrivate:(0,d.k)("mirror-private",60021),close:(0,d.k)("close",60022),removeClose:(0,d.k)("remove-close",60022),x:(0,d.k)("x",60022),repoSync:(0,d.k)("repo-sync",60023),sync:(0,d.k)("sync",60023),clone:(0,d.k)("clone",60024),desktopDownload:(0,d.k)("desktop-download",60024),beaker:(0,d.k)("beaker",60025),microscope:(0,d.k)("microscope",60025),vm:(0,d.k)("vm",60026),deviceDesktop:(0,d.k)("device-desktop",60026),file:(0,d.k)("file",60027),fileText:(0,d.k)("file-text",60027),more:(0,d.k)("more",60028),ellipsis:(0,d.k)("ellipsis",60028),kebabHorizontal:(0,d.k)("kebab-horizontal",60028),mailReply:(0,d.k)("mail-reply",60029),reply:(0,d.k)("reply",60029),organization:(0,d.k)("organization",60030),organizationFilled:(0,d.k)("organization-filled",60030),organizationOutline:(0,d.k)("organization-outline",60030),newFile:(0,d.k)("new-file",60031),fileAdd:(0,d.k)("file-add",60031),newFolder:(0,d.k)("new-folder",60032),fileDirectoryCreate:(0,d.k)("file-directory-create",60032),trash:(0,d.k)("trash",60033),trashcan:(0,d.k)("trashcan",60033),history:(0,d.k)("history",60034),clock:(0,d.k)("clock",60034),folder:(0,d.k)("folder",60035),fileDirectory:(0,d.k)("file-directory",60035),symbolFolder:(0,d.k)("symbol-folder",60035),logoGithub:(0,d.k)("logo-github",60036),markGithub:(0,d.k)("mark-github",60036),github:(0,d.k)("github",60036),terminal:(0,d.k)("terminal",60037),console:(0,d.k)("console",60037),repl:(0,d.k)("repl",60037),zap:(0,d.k)("zap",60038),symbolEvent:(0,d.k)("symbol-event",60038),error:(0,d.k)("error",60039),stop:(0,d.k)("stop",60039),variable:(0,d.k)("variable",60040),symbolVariable:(0,d.k)("symbol-variable",60040),array:(0,d.k)("array",60042),symbolArray:(0,d.k)("symbol-array",60042),symbolModule:(0,d.k)("symbol-module",60043),symbolPackage:(0,d.k)("symbol-package",60043),symbolNamespace:(0,d.k)("symbol-namespace",60043),symbolObject:(0,d.k)("symbol-object",60043),symbolMethod:(0,d.k)("symbol-method",60044),symbolFunction:(0,d.k)("symbol-function",60044),symbolConstructor:(0,d.k)("symbol-constructor",60044),symbolBoolean:(0,d.k)("symbol-boolean",60047),symbolNull:(0,d.k)("symbol-null",60047),symbolNumeric:(0,d.k)("symbol-numeric",60048),symbolNumber:(0,d.k)("symbol-number",60048),symbolStructure:(0,d.k)("symbol-structure",60049),symbolStruct:(0,d.k)("symbol-struct",60049),symbolParameter:(0,d.k)("symbol-parameter",60050),symbolTypeParameter:(0,d.k)("symbol-type-parameter",60050),symbolKey:(0,d.k)("symbol-key",60051),symbolText:(0,d.k)("symbol-text",60051),symbolReference:(0,d.k)("symbol-reference",60052),goToFile:(0,d.k)("go-to-file",60052),symbolEnum:(0,d.k)("symbol-enum",60053),symbolValue:(0,d.k)("symbol-value",60053),symbolRuler:(0,d.k)("symbol-ruler",60054),symbolUnit:(0,d.k)("symbol-unit",60054),activateBreakpoints:(0,d.k)("activate-breakpoints",60055),archive:(0,d.k)("archive",60056),arrowBoth:(0,d.k)("arrow-both",60057),arrowDown:(0,d.k)("arrow-down",60058),arrowLeft:(0,d.k)("arrow-left",60059),arrowRight:(0,d.k)("arrow-right",60060),arrowSmallDown:(0,d.k)("arrow-small-down",60061),arrowSmallLeft:(0,d.k)("arrow-small-left",60062),arrowSmallRight:(0,d.k)("arrow-small-right",60063),arrowSmallUp:(0,d.k)("arrow-small-up",60064),arrowUp:(0,d.k)("arrow-up",60065),bell:(0,d.k)("bell",60066),bold:(0,d.k)("bold",60067),book:(0,d.k)("book",60068),bookmark:(0,d.k)("bookmark",60069),debugBreakpointConditionalUnverified:(0,d.k)("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:(0,d.k)("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:(0,d.k)("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:(0,d.k)("debug-breakpoint-data-unverified",60072),debugBreakpointData:(0,d.k)("debug-breakpoint-data",60073),debugBreakpointDataDisabled:(0,d.k)("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:(0,d.k)("debug-breakpoint-log-unverified",60074),debugBreakpointLog:(0,d.k)("debug-breakpoint-log",60075),debugBreakpointLogDisabled:(0,d.k)("debug-breakpoint-log-disabled",60075),briefcase:(0,d.k)("briefcase",60076),broadcast:(0,d.k)("broadcast",60077),browser:(0,d.k)("browser",60078),bug:(0,d.k)("bug",60079),calendar:(0,d.k)("calendar",60080),caseSensitive:(0,d.k)("case-sensitive",60081),check:(0,d.k)("check",60082),checklist:(0,d.k)("checklist",60083),chevronDown:(0,d.k)("chevron-down",60084),chevronLeft:(0,d.k)("chevron-left",60085),chevronRight:(0,d.k)("chevron-right",60086),chevronUp:(0,d.k)("chevron-up",60087),chromeClose:(0,d.k)("chrome-close",60088),chromeMaximize:(0,d.k)("chrome-maximize",60089),chromeMinimize:(0,d.k)("chrome-minimize",60090),chromeRestore:(0,d.k)("chrome-restore",60091),circleOutline:(0,d.k)("circle-outline",60092),circle:(0,d.k)("circle",60092),debugBreakpointUnverified:(0,d.k)("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:(0,d.k)("terminal-decoration-incomplete",60092),circleSlash:(0,d.k)("circle-slash",60093),circuitBoard:(0,d.k)("circuit-board",60094),clearAll:(0,d.k)("clear-all",60095),clippy:(0,d.k)("clippy",60096),closeAll:(0,d.k)("close-all",60097),cloudDownload:(0,d.k)("cloud-download",60098),cloudUpload:(0,d.k)("cloud-upload",60099),code:(0,d.k)("code",60100),collapseAll:(0,d.k)("collapse-all",60101),colorMode:(0,d.k)("color-mode",60102),commentDiscussion:(0,d.k)("comment-discussion",60103),creditCard:(0,d.k)("credit-card",60105),dash:(0,d.k)("dash",60108),dashboard:(0,d.k)("dashboard",60109),database:(0,d.k)("database",60110),debugContinue:(0,d.k)("debug-continue",60111),debugDisconnect:(0,d.k)("debug-disconnect",60112),debugPause:(0,d.k)("debug-pause",60113),debugRestart:(0,d.k)("debug-restart",60114),debugStart:(0,d.k)("debug-start",60115),debugStepInto:(0,d.k)("debug-step-into",60116),debugStepOut:(0,d.k)("debug-step-out",60117),debugStepOver:(0,d.k)("debug-step-over",60118),debugStop:(0,d.k)("debug-stop",60119),debug:(0,d.k)("debug",60120),deviceCameraVideo:(0,d.k)("device-camera-video",60121),deviceCamera:(0,d.k)("device-camera",60122),deviceMobile:(0,d.k)("device-mobile",60123),diffAdded:(0,d.k)("diff-added",60124),diffIgnored:(0,d.k)("diff-ignored",60125),diffModified:(0,d.k)("diff-modified",60126),diffRemoved:(0,d.k)("diff-removed",60127),diffRenamed:(0,d.k)("diff-renamed",60128),diff:(0,d.k)("diff",60129),diffSidebyside:(0,d.k)("diff-sidebyside",60129),discard:(0,d.k)("discard",60130),editorLayout:(0,d.k)("editor-layout",60131),emptyWindow:(0,d.k)("empty-window",60132),exclude:(0,d.k)("exclude",60133),extensions:(0,d.k)("extensions",60134),eyeClosed:(0,d.k)("eye-closed",60135),fileBinary:(0,d.k)("file-binary",60136),fileCode:(0,d.k)("file-code",60137),fileMedia:(0,d.k)("file-media",60138),filePdf:(0,d.k)("file-pdf",60139),fileSubmodule:(0,d.k)("file-submodule",60140),fileSymlinkDirectory:(0,d.k)("file-symlink-directory",60141),fileSymlinkFile:(0,d.k)("file-symlink-file",60142),fileZip:(0,d.k)("file-zip",60143),files:(0,d.k)("files",60144),filter:(0,d.k)("filter",60145),flame:(0,d.k)("flame",60146),foldDown:(0,d.k)("fold-down",60147),foldUp:(0,d.k)("fold-up",60148),fold:(0,d.k)("fold",60149),folderActive:(0,d.k)("folder-active",60150),folderOpened:(0,d.k)("folder-opened",60151),gear:(0,d.k)("gear",60152),gift:(0,d.k)("gift",60153),gistSecret:(0,d.k)("gist-secret",60154),gist:(0,d.k)("gist",60155),gitCommit:(0,d.k)("git-commit",60156),gitCompare:(0,d.k)("git-compare",60157),compareChanges:(0,d.k)("compare-changes",60157),gitMerge:(0,d.k)("git-merge",60158),githubAction:(0,d.k)("github-action",60159),githubAlt:(0,d.k)("github-alt",60160),globe:(0,d.k)("globe",60161),grabber:(0,d.k)("grabber",60162),graph:(0,d.k)("graph",60163),gripper:(0,d.k)("gripper",60164),heart:(0,d.k)("heart",60165),home:(0,d.k)("home",60166),horizontalRule:(0,d.k)("horizontal-rule",60167),hubot:(0,d.k)("hubot",60168),inbox:(0,d.k)("inbox",60169),issueReopened:(0,d.k)("issue-reopened",60171),issues:(0,d.k)("issues",60172),italic:(0,d.k)("italic",60173),jersey:(0,d.k)("jersey",60174),json:(0,d.k)("json",60175),kebabVertical:(0,d.k)("kebab-vertical",60176),key:(0,d.k)("key",60177),law:(0,d.k)("law",60178),lightbulbAutofix:(0,d.k)("lightbulb-autofix",60179),linkExternal:(0,d.k)("link-external",60180),link:(0,d.k)("link",60181),listOrdered:(0,d.k)("list-ordered",60182),listUnordered:(0,d.k)("list-unordered",60183),liveShare:(0,d.k)("live-share",60184),loading:(0,d.k)("loading",60185),location:(0,d.k)("location",60186),mailRead:(0,d.k)("mail-read",60187),mail:(0,d.k)("mail",60188),markdown:(0,d.k)("markdown",60189),megaphone:(0,d.k)("megaphone",60190),mention:(0,d.k)("mention",60191),milestone:(0,d.k)("milestone",60192),gitPullRequestMilestone:(0,d.k)("git-pull-request-milestone",60192),mortarBoard:(0,d.k)("mortar-board",60193),move:(0,d.k)("move",60194),multipleWindows:(0,d.k)("multiple-windows",60195),mute:(0,d.k)("mute",60196),noNewline:(0,d.k)("no-newline",60197),note:(0,d.k)("note",60198),octoface:(0,d.k)("octoface",60199),openPreview:(0,d.k)("open-preview",60200),package:(0,d.k)("package",60201),paintcan:(0,d.k)("paintcan",60202),pin:(0,d.k)("pin",60203),play:(0,d.k)("play",60204),run:(0,d.k)("run",60204),plug:(0,d.k)("plug",60205),preserveCase:(0,d.k)("preserve-case",60206),preview:(0,d.k)("preview",60207),project:(0,d.k)("project",60208),pulse:(0,d.k)("pulse",60209),question:(0,d.k)("question",60210),quote:(0,d.k)("quote",60211),radioTower:(0,d.k)("radio-tower",60212),reactions:(0,d.k)("reactions",60213),references:(0,d.k)("references",60214),refresh:(0,d.k)("refresh",60215),regex:(0,d.k)("regex",60216),remoteExplorer:(0,d.k)("remote-explorer",60217),remote:(0,d.k)("remote",60218),remove:(0,d.k)("remove",60219),replaceAll:(0,d.k)("replace-all",60220),replace:(0,d.k)("replace",60221),repoClone:(0,d.k)("repo-clone",60222),repoForcePush:(0,d.k)("repo-force-push",60223),repoPull:(0,d.k)("repo-pull",60224),repoPush:(0,d.k)("repo-push",60225),report:(0,d.k)("report",60226),requestChanges:(0,d.k)("request-changes",60227),rocket:(0,d.k)("rocket",60228),rootFolderOpened:(0,d.k)("root-folder-opened",60229),rootFolder:(0,d.k)("root-folder",60230),rss:(0,d.k)("rss",60231),ruby:(0,d.k)("ruby",60232),saveAll:(0,d.k)("save-all",60233),saveAs:(0,d.k)("save-as",60234),save:(0,d.k)("save",60235),screenFull:(0,d.k)("screen-full",60236),screenNormal:(0,d.k)("screen-normal",60237),searchStop:(0,d.k)("search-stop",60238),server:(0,d.k)("server",60240),settingsGear:(0,d.k)("settings-gear",60241),settings:(0,d.k)("settings",60242),shield:(0,d.k)("shield",60243),smiley:(0,d.k)("smiley",60244),sortPrecedence:(0,d.k)("sort-precedence",60245),splitHorizontal:(0,d.k)("split-horizontal",60246),splitVertical:(0,d.k)("split-vertical",60247),squirrel:(0,d.k)("squirrel",60248),starFull:(0,d.k)("star-full",60249),starHalf:(0,d.k)("star-half",60250),symbolClass:(0,d.k)("symbol-class",60251),symbolColor:(0,d.k)("symbol-color",60252),symbolConstant:(0,d.k)("symbol-constant",60253),symbolEnumMember:(0,d.k)("symbol-enum-member",60254),symbolField:(0,d.k)("symbol-field",60255),symbolFile:(0,d.k)("symbol-file",60256),symbolInterface:(0,d.k)("symbol-interface",60257),symbolKeyword:(0,d.k)("symbol-keyword",60258),symbolMisc:(0,d.k)("symbol-misc",60259),symbolOperator:(0,d.k)("symbol-operator",60260),symbolProperty:(0,d.k)("symbol-property",60261),wrench:(0,d.k)("wrench",60261),wrenchSubaction:(0,d.k)("wrench-subaction",60261),symbolSnippet:(0,d.k)("symbol-snippet",60262),tasklist:(0,d.k)("tasklist",60263),telescope:(0,d.k)("telescope",60264),textSize:(0,d.k)("text-size",60265),threeBars:(0,d.k)("three-bars",60266),thumbsdown:(0,d.k)("thumbsdown",60267),thumbsup:(0,d.k)("thumbsup",60268),tools:(0,d.k)("tools",60269),triangleDown:(0,d.k)("triangle-down",60270),triangleLeft:(0,d.k)("triangle-left",60271),triangleRight:(0,d.k)("triangle-right",60272),triangleUp:(0,d.k)("triangle-up",60273),twitter:(0,d.k)("twitter",60274),unfold:(0,d.k)("unfold",60275),unlock:(0,d.k)("unlock",60276),unmute:(0,d.k)("unmute",60277),unverified:(0,d.k)("unverified",60278),verified:(0,d.k)("verified",60279),versions:(0,d.k)("versions",60280),vmActive:(0,d.k)("vm-active",60281),vmOutline:(0,d.k)("vm-outline",60282),vmRunning:(0,d.k)("vm-running",60283),watch:(0,d.k)("watch",60284),whitespace:(0,d.k)("whitespace",60285),wholeWord:(0,d.k)("whole-word",60286),window:(0,d.k)("window",60287),wordWrap:(0,d.k)("word-wrap",60288),zoomIn:(0,d.k)("zoom-in",60289),zoomOut:(0,d.k)("zoom-out",60290),listFilter:(0,d.k)("list-filter",60291),listFlat:(0,d.k)("list-flat",60292),listSelection:(0,d.k)("list-selection",60293),selection:(0,d.k)("selection",60293),listTree:(0,d.k)("list-tree",60294),debugBreakpointFunctionUnverified:(0,d.k)("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:(0,d.k)("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:(0,d.k)("debug-breakpoint-function-disabled",60296),debugStackframeActive:(0,d.k)("debug-stackframe-active",60297),circleSmallFilled:(0,d.k)("circle-small-filled",60298),debugStackframeDot:(0,d.k)("debug-stackframe-dot",60298),terminalDecorationMark:(0,d.k)("terminal-decoration-mark",60298),debugStackframe:(0,d.k)("debug-stackframe",60299),debugStackframeFocused:(0,d.k)("debug-stackframe-focused",60299),debugBreakpointUnsupported:(0,d.k)("debug-breakpoint-unsupported",60300),symbolString:(0,d.k)("symbol-string",60301),debugReverseContinue:(0,d.k)("debug-reverse-continue",60302),debugStepBack:(0,d.k)("debug-step-back",60303),debugRestartFrame:(0,d.k)("debug-restart-frame",60304),debugAlt:(0,d.k)("debug-alt",60305),callIncoming:(0,d.k)("call-incoming",60306),callOutgoing:(0,d.k)("call-outgoing",60307),menu:(0,d.k)("menu",60308),expandAll:(0,d.k)("expand-all",60309),feedback:(0,d.k)("feedback",60310),gitPullRequestReviewer:(0,d.k)("git-pull-request-reviewer",60310),groupByRefType:(0,d.k)("group-by-ref-type",60311),ungroupByRefType:(0,d.k)("ungroup-by-ref-type",60312),account:(0,d.k)("account",60313),gitPullRequestAssignee:(0,d.k)("git-pull-request-assignee",60313),bellDot:(0,d.k)("bell-dot",60314),debugConsole:(0,d.k)("debug-console",60315),library:(0,d.k)("library",60316),output:(0,d.k)("output",60317),runAll:(0,d.k)("run-all",60318),syncIgnored:(0,d.k)("sync-ignored",60319),pinned:(0,d.k)("pinned",60320),githubInverted:(0,d.k)("github-inverted",60321),serverProcess:(0,d.k)("server-process",60322),serverEnvironment:(0,d.k)("server-environment",60323),pass:(0,d.k)("pass",60324),issueClosed:(0,d.k)("issue-closed",60324),stopCircle:(0,d.k)("stop-circle",60325),playCircle:(0,d.k)("play-circle",60326),record:(0,d.k)("record",60327),debugAltSmall:(0,d.k)("debug-alt-small",60328),vmConnect:(0,d.k)("vm-connect",60329),cloud:(0,d.k)("cloud",60330),merge:(0,d.k)("merge",60331),export:(0,d.k)("export",60332),graphLeft:(0,d.k)("graph-left",60333),magnet:(0,d.k)("magnet",60334),notebook:(0,d.k)("notebook",60335),redo:(0,d.k)("redo",60336),checkAll:(0,d.k)("check-all",60337),pinnedDirty:(0,d.k)("pinned-dirty",60338),passFilled:(0,d.k)("pass-filled",60339),circleLargeFilled:(0,d.k)("circle-large-filled",60340),circleLarge:(0,d.k)("circle-large",60341),circleLargeOutline:(0,d.k)("circle-large-outline",60341),combine:(0,d.k)("combine",60342),gather:(0,d.k)("gather",60342),table:(0,d.k)("table",60343),variableGroup:(0,d.k)("variable-group",60344),typeHierarchy:(0,d.k)("type-hierarchy",60345),typeHierarchySub:(0,d.k)("type-hierarchy-sub",60346),typeHierarchySuper:(0,d.k)("type-hierarchy-super",60347),gitPullRequestCreate:(0,d.k)("git-pull-request-create",60348),runAbove:(0,d.k)("run-above",60349),runBelow:(0,d.k)("run-below",60350),notebookTemplate:(0,d.k)("notebook-template",60351),debugRerun:(0,d.k)("debug-rerun",60352),workspaceTrusted:(0,d.k)("workspace-trusted",60353),workspaceUntrusted:(0,d.k)("workspace-untrusted",60354),workspaceUnknown:(0,d.k)("workspace-unknown",60355),terminalCmd:(0,d.k)("terminal-cmd",60356),terminalDebian:(0,d.k)("terminal-debian",60357),terminalLinux:(0,d.k)("terminal-linux",60358),terminalPowershell:(0,d.k)("terminal-powershell",60359),terminalTmux:(0,d.k)("terminal-tmux",60360),terminalUbuntu:(0,d.k)("terminal-ubuntu",60361),terminalBash:(0,d.k)("terminal-bash",60362),arrowSwap:(0,d.k)("arrow-swap",60363),copy:(0,d.k)("copy",60364),personAdd:(0,d.k)("person-add",60365),filterFilled:(0,d.k)("filter-filled",60366),wand:(0,d.k)("wand",60367),debugLineByLine:(0,d.k)("debug-line-by-line",60368),inspect:(0,d.k)("inspect",60369),layers:(0,d.k)("layers",60370),layersDot:(0,d.k)("layers-dot",60371),layersActive:(0,d.k)("layers-active",60372),compass:(0,d.k)("compass",60373),compassDot:(0,d.k)("compass-dot",60374),compassActive:(0,d.k)("compass-active",60375),azure:(0,d.k)("azure",60376),issueDraft:(0,d.k)("issue-draft",60377),gitPullRequestClosed:(0,d.k)("git-pull-request-closed",60378),gitPullRequestDraft:(0,d.k)("git-pull-request-draft",60379),debugAll:(0,d.k)("debug-all",60380),debugCoverage:(0,d.k)("debug-coverage",60381),runErrors:(0,d.k)("run-errors",60382),folderLibrary:(0,d.k)("folder-library",60383),debugContinueSmall:(0,d.k)("debug-continue-small",60384),beakerStop:(0,d.k)("beaker-stop",60385),graphLine:(0,d.k)("graph-line",60386),graphScatter:(0,d.k)("graph-scatter",60387),pieChart:(0,d.k)("pie-chart",60388),bracket:(0,d.k)("bracket",60175),bracketDot:(0,d.k)("bracket-dot",60389),bracketError:(0,d.k)("bracket-error",60390),lockSmall:(0,d.k)("lock-small",60391),azureDevops:(0,d.k)("azure-devops",60392),verifiedFilled:(0,d.k)("verified-filled",60393),newline:(0,d.k)("newline",60394),layout:(0,d.k)("layout",60395),layoutActivitybarLeft:(0,d.k)("layout-activitybar-left",60396),layoutActivitybarRight:(0,d.k)("layout-activitybar-right",60397),layoutPanelLeft:(0,d.k)("layout-panel-left",60398),layoutPanelCenter:(0,d.k)("layout-panel-center",60399),layoutPanelJustify:(0,d.k)("layout-panel-justify",60400),layoutPanelRight:(0,d.k)("layout-panel-right",60401),layoutPanel:(0,d.k)("layout-panel",60402),layoutSidebarLeft:(0,d.k)("layout-sidebar-left",60403),layoutSidebarRight:(0,d.k)("layout-sidebar-right",60404),layoutStatusbar:(0,d.k)("layout-statusbar",60405),layoutMenubar:(0,d.k)("layout-menubar",60406),layoutCentered:(0,d.k)("layout-centered",60407),target:(0,d.k)("target",60408),indent:(0,d.k)("indent",60409),recordSmall:(0,d.k)("record-small",60410),errorSmall:(0,d.k)("error-small",60411),terminalDecorationError:(0,d.k)("terminal-decoration-error",60411),arrowCircleDown:(0,d.k)("arrow-circle-down",60412),arrowCircleLeft:(0,d.k)("arrow-circle-left",60413),arrowCircleRight:(0,d.k)("arrow-circle-right",60414),arrowCircleUp:(0,d.k)("arrow-circle-up",60415),layoutSidebarRightOff:(0,d.k)("layout-sidebar-right-off",60416),layoutPanelOff:(0,d.k)("layout-panel-off",60417),layoutSidebarLeftOff:(0,d.k)("layout-sidebar-left-off",60418),blank:(0,d.k)("blank",60419),heartFilled:(0,d.k)("heart-filled",60420),map:(0,d.k)("map",60421),mapHorizontal:(0,d.k)("map-horizontal",60421),foldHorizontal:(0,d.k)("fold-horizontal",60421),mapFilled:(0,d.k)("map-filled",60422),mapHorizontalFilled:(0,d.k)("map-horizontal-filled",60422),foldHorizontalFilled:(0,d.k)("fold-horizontal-filled",60422),circleSmall:(0,d.k)("circle-small",60423),bellSlash:(0,d.k)("bell-slash",60424),bellSlashDot:(0,d.k)("bell-slash-dot",60425),commentUnresolved:(0,d.k)("comment-unresolved",60426),gitPullRequestGoToChanges:(0,d.k)("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:(0,d.k)("git-pull-request-new-changes",60428),searchFuzzy:(0,d.k)("search-fuzzy",60429),commentDraft:(0,d.k)("comment-draft",60430),send:(0,d.k)("send",60431),sparkle:(0,d.k)("sparkle",60432),insert:(0,d.k)("insert",60433),mic:(0,d.k)("mic",60434),thumbsdownFilled:(0,d.k)("thumbsdown-filled",60435),thumbsupFilled:(0,d.k)("thumbsup-filled",60436),coffee:(0,d.k)("coffee",60437),snake:(0,d.k)("snake",60438),game:(0,d.k)("game",60439),vr:(0,d.k)("vr",60440),chip:(0,d.k)("chip",60441),piano:(0,d.k)("piano",60442),music:(0,d.k)("music",60443),micFilled:(0,d.k)("mic-filled",60444),repoFetch:(0,d.k)("repo-fetch",60445),copilot:(0,d.k)("copilot",60446),lightbulbSparkle:(0,d.k)("lightbulb-sparkle",60447),robot:(0,d.k)("robot",60448),sparkleFilled:(0,d.k)("sparkle-filled",60449),diffSingle:(0,d.k)("diff-single",60450),diffMultiple:(0,d.k)("diff-multiple",60451),surroundWith:(0,d.k)("surround-with",60452),share:(0,d.k)("share",60453),gitStash:(0,d.k)("git-stash",60454),gitStashApply:(0,d.k)("git-stash-apply",60455),gitStashPop:(0,d.k)("git-stash-pop",60456),vscode:(0,d.k)("vscode",60457),vscodeInsiders:(0,d.k)("vscode-insiders",60458),codeOss:(0,d.k)("code-oss",60459),runCoverage:(0,d.k)("run-coverage",60460),runAllCoverage:(0,d.k)("run-all-coverage",60461),coverage:(0,d.k)("coverage",60462),githubProject:(0,d.k)("github-project",60463),mapVertical:(0,d.k)("map-vertical",60464),foldVertical:(0,d.k)("fold-vertical",60464),mapVerticalFilled:(0,d.k)("map-vertical-filled",60465),foldVerticalFilled:(0,d.k)("fold-vertical-filled",60465),goToSearch:(0,d.k)("go-to-search",60466),percentage:(0,d.k)("percentage",60467),sortPercentage:(0,d.k)("sort-percentage",60467),attach:(0,d.k)("attach",60468),goToEditingSession:(0,d.k)("go-to-editing-session",60469),editSession:(0,d.k)("edit-session",60470),codeReview:(0,d.k)("code-review",60471),copilotWarning:(0,d.k)("copilot-warning",60472),python:(0,d.k)("python",60473),copilotLarge:(0,d.k)("copilot-large",60474),copilotWarningLarge:(0,d.k)("copilot-warning-large",60475),keyboardTab:(0,d.k)("keyboard-tab",60476),copilotBlocked:(0,d.k)("copilot-blocked",60477),copilotNotConnected:(0,d.k)("copilot-not-connected",60478),flag:(0,d.k)("flag",60479),lightbulbEmpty:(0,d.k)("lightbulb-empty",60480),symbolMethodArrow:(0,d.k)("symbol-method-arrow",60481),copilotUnavailable:(0,d.k)("copilot-unavailable",60482),repoPinned:(0,d.k)("repo-pinned",60483),keyboardTabAbove:(0,d.k)("keyboard-tab-above",60484),keyboardTabBelow:(0,d.k)("keyboard-tab-below",60485),gitPullRequestDone:(0,d.k)("git-pull-request-done",60486),mcp:(0,d.k)("mcp",60487),extensionsLarge:(0,d.k)("extensions-large",60488),layoutPanelDock:(0,d.k)("layout-panel-dock",60489),layoutSidebarLeftDock:(0,d.k)("layout-sidebar-left-dock",60490),layoutSidebarRightDock:(0,d.k)("layout-sidebar-right-dock",60491),copilotInProgress:(0,d.k)("copilot-in-progress",60492),copilotError:(0,d.k)("copilot-error",60493),copilotSuccess:(0,d.k)("copilot-success",60494),chatSparkle:(0,d.k)("chat-sparkle",60495),searchSparkle:(0,d.k)("search-sparkle",60496),editSparkle:(0,d.k)("edit-sparkle",60497),copilotSnooze:(0,d.k)("copilot-snooze",60498),sendToRemoteAgent:(0,d.k)("send-to-remote-agent",60499),commentDiscussionSparkle:(0,d.k)("comment-discussion-sparkle",60500),chatSparkleWarning:(0,d.k)("chat-sparkle-warning",60501),chatSparkleError:(0,d.k)("chat-sparkle-error",60502),collection:(0,d.k)("collection",60503),newCollection:(0,d.k)("new-collection",60504),thinking:(0,d.k)("thinking",60505)},f={dialogError:(0,d.k)("dialog-error","error"),dialogWarning:(0,d.k)("dialog-warning","warning"),dialogInfo:(0,d.k)("dialog-info","info"),dialogClose:(0,d.k)("dialog-close","close"),treeItemExpanded:(0,d.k)("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:(0,d.k)("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:(0,d.k)("tree-filter-on-type-off","list-selection"),treeFilterClear:(0,d.k)("tree-filter-clear","close"),treeItemLoading:(0,d.k)("tree-item-loading","loading"),menuSelection:(0,d.k)("menu-selection","check"),menuSubmenu:(0,d.k)("menu-submenu","chevron-right"),menuBarMore:(0,d.k)("menubar-more","more"),scrollbarButtonLeft:(0,d.k)("scrollbar-button-left","triangle-left"),scrollbarButtonRight:(0,d.k)("scrollbar-button-right","triangle-right"),scrollbarButtonUp:(0,d.k)("scrollbar-button-up","triangle-up"),scrollbarButtonDown:(0,d.k)("scrollbar-button-down","triangle-down"),toolBarMore:(0,d.k)("toolbar-more","more"),quickInputBack:(0,d.k)("quick-input-back","arrow-left"),dropDownButton:(0,d.k)("drop-down-button",60084),symbolCustomColor:(0,d.k)("symbol-customcolor",60252),exportIcon:(0,d.k)("export",60332),workspaceUnspecified:(0,d.k)("workspace-unspecified",60355),newLine:(0,d.k)("newline",60394),thumbsDownFilled:(0,d.k)("thumbsdown-filled",60435),thumbsUpFilled:(0,d.k)("thumbsup-filled",60436),gitFetch:(0,d.k)("git-fetch",60445),lightbulbSparkleAutofix:(0,d.k)("lightbulb-sparkle-autofix",60447),debugBreakpointPending:(0,d.k)("debug-breakpoint-pending",60377)},g={...e,...f}},91170:()=>{},91295:(a,b,c)=>{"use strict";c.d(b,{k:()=>d});let d=(0,c(29715).u1)("telemetryService")},91389:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(88347),e=c(98447),f=c(70588),g=c(28272),h=c(43188),i=c(69467),j=c(91834),k=c(59317),l=c(79677),m=c(83594),n=c(59298),o=c(65576),p=c(31613),q=c(29214);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=e.UU(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=e.UU(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=e.UU(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=e.HG(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(d||1===b.length)return null;if(f&&f.length===b.length)return f;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=e.uz(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if(e.lT(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){let e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},91459:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},91580:(a,b,c)=>{"use strict";c.d(b,{Hq:()=>k,TN:()=>i,fO:()=>j});var d=c(29715),e=c(11314),f=c(38041),g=c(32677),h=function(a,b){return function(c,d){b(c,d,a)}};let i=(0,d.u1)("hoverService"),j=class extends e.jG{get delay(){return this.isInstantlyHovering()?0:this.hoverOptions?.dynamicDelay?a=>this.hoverOptions?.dynamicDelay?.(a)??this._delay:this._delay}constructor(a,b,c={},d,f){super(),this.placement=a,this.hoverOptions=b,this.overrideOptions=c,this.configurationService=d,this.hoverService=f,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new e.Cm),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(a=>{a.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(a,b){let c="function"==typeof this.overrideOptions?this.overrideOptions(a,b):this.overrideOptions;for(let b of(this.hoverDisposables.clear(),(0,g.sb)(a.target)?[a.target]:a.target.targetElements))this.hoverDisposables.add((0,g.un)(b,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));let d=(0,g.sb)(a.content)?void 0:"string"==typeof a.content?a.content.toString():a.content.value;return this.hoverService.showInstantHover({...a,...c,persistence:{hideOnKeyDown:!0,...c.persistence},id:d,appearance:{...a.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...c.appearance}},b)}isInstantlyHovering(){return!!this.hoverOptions?.instantHover&&Date.now()-this.lastHoverHideTime<this.timeLimit}onDidHideHover(){this.hoverDisposables.clear(),this.hoverOptions?.instantHover&&(this.lastHoverHideTime=Date.now())}};j=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([h(3,f.pG),h(4,i)],j);let k={showHover:function(){throw Error("Native hover function not implemented.")},delay:0,showNativeHover:!0}},91732:(a,b,c)=>{"use strict";function d(a){return a}c.d(b,{VV:()=>f,o5:()=>e});class e{constructor(a,b){this.lastCache=void 0,this.lastArgKey=void 0,"function"==typeof a?(this._fn=a,this._computeKey=d):(this._fn=b,this._computeKey=a.getCacheKey)}get(a){let b=this._computeKey(a);return this.lastArgKey!==b&&(this.lastArgKey=b,this.lastCache=this._fn(a)),this.lastCache}}class f{get cachedValues(){return this._map}constructor(a,b){this._map=new Map,this._map2=new Map,"function"==typeof a?(this._fn=a,this._computeKey=d):(this._fn=b,this._computeKey=a.getCacheKey)}get(a){let b=this._computeKey(a);if(this._map2.has(b))return this._map2.get(b);let c=this._fn(a);return this._map.set(a,c),this._map2.set(b,c),c}}},91778:()=>{},91834:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(11628),e=c(9888),f=c(62138);class g extends f.V{constructor(a,b){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=b,this.intlSegmenterLocales.length>0?this._segmenter=d.x.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let b=0,c=a.length;b<c;b++)this.set(a.charCodeAt(b),2);this.set(32,1),this.set(9,1)}findPrevIntlWordBeforeOrAtOffset(a,b){let c=null;for(let d of this._getIntlSegmenterWordsOnLine(a)){if(d.index>b)break;c=d}return c}findNextIntlWordAtOrAfterOffset(a,b){for(let c of this._getIntlSegmenterWordsOnLine(a))if(!(c.index<b))return c;return null}_getIntlSegmenterWordsOnLine(a){return this._segmenter?(this._cachedLine===a||(this._cachedLine=a,this._cachedSegments=this._filterWordSegments(this._segmenter.value.segment(a))),this._cachedSegments):[]}_filterWordSegments(a){let b=[];for(let c of a)this._isWordLike(c)&&b.push(c);return b}_isWordLike(a){return!!a.isWordLike}}let h=new e.qK(10);function i(a,b){let c=`${a}/${b.join(",")}`,d=h.get(c);return d||(d=new g(a,b),h.set(c,d)),d}},92540:()=>{},93349:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});var d=c(88347);function e(a,b){let c=globalThis.MonacoEnvironment;if(c?.createTrustedTypesPolicy)try{return c.createTrustedTypesPolicy(a,b)}catch(a){(0,d.dz)(a);return}try{return globalThis.trustedTypes?.createPolicy(a,b)}catch(a){(0,d.dz)(a);return}}},93353:(a,b,c)=>{"use strict";c.d(b,{e:()=>g});var d=c(88637),e=c(29813),f=c(56167);let g={clipboard:{writeText:f.ib||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:f.ib||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:f.ib||d.Qu()?0:navigator.keyboard||d.nr?1:2,touch:"ontouchstart"in e.G||navigator.maxTouchPoints>0,pointerEvents:e.G.PointerEvent&&("ontouchstart"in e.G||navigator.maxTouchPoints>0)}},93468:(a,b,c)=>{"use strict";c.d(b,{U:()=>n});var d,e=c(81040),f=c(9888),g=c(61496),h=c(22671),i=c(63090),j=c(29715),k=c(66153),l=c(18920),m=function(a,b){return function(c,d){b(c,d,a)}};let n=(0,j.u1)("ILanguageFeatureDebounceService");!function(a){let b=new WeakMap,c=0;a.of=function(a){let d=b.get(a);return void 0===d&&(d=++c,b.set(a,d)),d}}(d||(d={}));class o{constructor(a){this._default=a}get(a){return this._default}update(a,b){return this._default}default(){return this._default}}class p{constructor(a,b,c,d,e,g){this._logService=a,this._name=b,this._registry=c,this._default=d,this._min=e,this._max=g,this._cache=new f.qK(50,.7)}_key(a){return a.id+this._registry.all(a).reduce((a,b)=>(0,e.sN)(d.of(b),a),0)}get(a){let b=this._key(a),c=this._cache.get(b);return c?(0,g.qE)(c.value,this._min,this._max):this.default()}update(a,b){let c=this._key(a),d=this._cache.get(c);d||(d=new g.mu(6),this._cache.set(c,d));let e=(0,g.qE)(d.update(b),this._min,this._max);return(0,l.v$)(a.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${a.uri.toString()} is ${e}ms`),e}_overall(){let a=new g.Uq;for(let[,b]of this._cache)a.update(b.value);return a.value}default(){let a=0|this._overall()||this._default;return(0,g.qE)(a,this._min,this._max)}}let q=class{constructor(a,b){this._logService=a,this._data=new Map,this._isDev=b.isExtensionDevelopment||!b.isBuilt}for(a,b,c){let e=c?.min??50,f=c?.max??e**2,g=c?.key??void 0,h=`${d.of(a)},${e}${g?","+g:""}`,i=this._data.get(h);return i||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${b}] is disabled in developed mode`),i=new o(1.5*e)):i=new p(this._logService,b,a,0|this._overallAverage()||1.5*e,e,f),this._data.set(h,i)),i}_overallAverage(){let a=new g.Uq;for(let b of this._data.values())a.update(b.default());return a.value}};q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([m(0,k.rr),m(1,h.k)],q),(0,i.v)(n,q,1)},93835:(a,b,c)=>{"use strict";c.d(b,{R:()=>d});let d={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}}},94505:(a,b,c)=>{"use strict";c.d(b,{FH:()=>j,Sc:()=>m,kk:()=>n,lM:()=>k});var d=c(90399),e=c(60734),f=c(81633),g=c(21036),h=c(75096),i=c(62274);c(95013);let j={inputActiveOptionBorder:"#007ACC00",inputActiveOptionForeground:"#FFFFFF",inputActiveOptionBackground:"#0E639C50"};class k extends i.x{get onChange(){return this._onChange.event}get onKeyDown(){return this._onKeyDown.event}constructor(a){super(),this._onChange=this._register(new e.vl),this._onKeyDown=this._register(new e.vl),this._opts=a,this._checked=this._opts.isChecked;let b=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,b.push(...f.L.asClassNameArray(this._icon))),this._opts.actionClassName&&b.push(...this._opts.actionClassName.split(" ")),this._checked&&b.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register((0,g.i)().setupManagedHover(a.hoverDelegate??(0,h.nZ)("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...b),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,a=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),a.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,a=>{if(this.enabled){if(10===a.keyCode||3===a.keyCode){this.checked=!this._checked,this._onChange.fire(!0),a.preventDefault(),a.stopPropagation();return}this._onKeyDown.fire(a)}})}get enabled(){return"true"!==this.domNode.getAttribute("aria-disabled")}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(a){this._checked=a,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}setIcon(a){this._icon&&this.domNode.classList.remove(...f.L.asClassNameArray(this._icon)),this._icon=a,this._icon&&this.domNode.classList.add(...f.L.asClassNameArray(this._icon))}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1)),this.domNode.classList.remove("disabled")}disable(){this.domNode.setAttribute("aria-disabled",String(!0)),this.domNode.classList.add("disabled")}setTitle(a){this._hover.update(a),this.domNode.setAttribute("aria-label",a)}}class l extends i.x{static{this.CLASS_NAME="monaco-checkbox"}constructor(a,b,c){super(),this.checkbox=a,this.domNode=b,this.styles=c,this._onChange=this._register(new e.vl),this.onChange=this._onChange.event,this.applyStyles()}get enabled(){return this.checkbox.enabled}enable(){this.checkbox.enable(),this.applyStyles(!0)}disable(){this.checkbox.disable(),this.applyStyles(!1)}setTitle(a){this.checkbox.setTitle(a)}applyStyles(a=this.enabled){this.domNode.style.color=(a?this.styles.checkboxForeground:this.styles.checkboxDisabledForeground)||"",this.domNode.style.backgroundColor=(a?this.styles.checkboxBackground:this.styles.checkboxDisabledBackground)||"",this.domNode.style.borderColor=(a?this.styles.checkboxBorder:this.styles.checkboxDisabledBackground)||"";let b=this.styles.size||18;this.domNode.style.width=this.domNode.style.height=this.domNode.style.fontSize=`${b}px`,this.domNode.style.fontSize=`${b-2}px`}}class m extends l{constructor(a,b,c){let e=new k({title:a,isChecked:b,icon:d.W.check,actionClassName:l.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(e,e.domNode,c),this._register(e),this._register(this.checkbox.onChange(a=>{this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this.checkbox.checked}set checked(a){this.checkbox.checked=a,this.applyStyles()}applyStyles(a){this.checkbox.checked?this.checkbox.setIcon(d.W.check):this.checkbox.setIcon(void 0),super.applyStyles(a)}}class n extends l{constructor(a,b,c){let e;switch(b){case!0:e=d.W.check;break;case"partial":e=d.W.dash;break;case!1:e=void 0}let f=new k({title:a,isChecked:!0===b,icon:e,actionClassName:m.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(f,f.domNode,c),this._state=b,this._register(f),this._register(this.checkbox.onChange(a=>{this._state=this.checkbox.checked,this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this._state}set checked(a){this._state!==a&&(this._state=a,this.checkbox.checked=!0===a,this.applyStyles())}applyStyles(a){switch(this._state){case!0:this.checkbox.setIcon(d.W.check);break;case"partial":this.checkbox.setIcon(d.W.dash);break;case!1:this.checkbox.setIcon(void 0)}super.applyStyles(a)}}},94548:(a,b,c)=>{"use strict";function d(){return!1}function e(a){return{dispose(){}}}c.d(b,{O:()=>e,e:()=>d})},95013:()=>{},95102:(a,b,c)=>{"use strict";c.d(b,{T:()=>f,x:()=>e});let d=[];function e(a){d.push(a)}function f(){return d.slice(0)}},95159:(a,b,c)=>{"use strict";var d;c.d(b,{N6:()=>d,TH:()=>e,pv:()=>f}),function(a){a[a.Disabled=0]="Disabled",a[a.EnabledForActive=1]="EnabledForActive",a[a.Enabled=2]="Enabled"}(d||(d={}));class e{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class f{constructor(a,b){this.top=a,this.endColumn=b}}},95265:(a,b,c)=>{"use strict";function d(a,b,c=a.length-1){let e=function(a,b,c=a.length-1){for(let d=c;d>=0;d--)if(b(a[d]))return d;return -1}(a,b,c);if(-1!==e)return a[e]}function e(a,b){let c=f(a,b);return -1===c?void 0:a[c]}function f(a,b,c=0,d=a.length){let e=c,g=d;for(;e<g;){let c=Math.floor((e+g)/2);b(a[c])?e=c+1:g=c}return e-1}function g(a,b){let c=h(a,b);return c===a.length?void 0:a[c]}function h(a,b,c=0,d=a.length){let e=c,f=d;for(;e<f;){let c=Math.floor((e+f)/2);b(a[c])?f=c:e=c+1}return e}c.d(b,{Cn:()=>j,TM:()=>m,Uk:()=>d,XP:()=>g,hw:()=>h,iM:()=>f,kh:()=>l,lx:()=>e,oH:()=>n,ot:()=>k,vJ:()=>i});class i{static{this.assertInvariants=!1}constructor(a){this._array=a,this._findLastMonotonousLastIdx=0}findLastMonotonous(a){if(i.assertInvariants){if(this._prevFindLastPredicate){for(let b of this._array)if(this._prevFindLastPredicate(b)&&!a(b))throw Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=a}let b=f(this._array,a,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=b+1,-1===b?void 0:this._array[b]}}function j(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>0&&(c=e)}return c}function k(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>=0&&(c=e)}return c}function l(a,b){return j(a,(a,c)=>-b(a,c))}function m(a,b){if(0===a.length)return -1;let c=0;for(let d=1;d<a.length;d++)b(a[d],a[c])>0&&(c=d);return c}function n(a,b){for(let c of a){let a=b(c);if(void 0!==a)return a}}},95299:(a,b,c)=>{"use strict";c.d(b,{W:()=>m,m:()=>l});var d=c(54734),e=c(22450),f=c(88347),g=c(98447),h=c(79677),i=c(59317),j=c(48363),k=c(25917);class l{static fromStringEdit(a,b){return new l(a.replacements.map(a=>m.fromStringReplacement(a,b)))}static fromParallelReplacementsUnsorted(a){return new l(a.slice().sort((0,d.VE)(a=>a.range,i.Q.compareRangesUsingStarts)))}constructor(a){this.replacements=a,(0,e.Ft)(()=>(0,e.Xo)(a,(a,b)=>a.range.getEndPosition().isBeforeOrEqual(b.range.getStartPosition())))}mapPosition(a){let b=0,c=0,d=0;for(let e of this.replacements){let f=e.range.getStartPosition();if(a.isBeforeOrEqual(f))break;let g=e.range.getEndPosition(),i=j.W.ofText(e.text);if(a.isBefore(g)){let a=new h.y(f.lineNumber+b,f.column+(f.lineNumber+b===c?d:0)),e=i.addToPosition(a);return n(a,e)}f.lineNumber+b!==c&&(d=0),b+=i.lineCount-(e.range.endLineNumber-e.range.startLineNumber),0===i.lineCount?g.lineNumber!==f.lineNumber?d+=i.columnCount-(g.column-1):d+=i.columnCount-(g.column-f.column):d=i.columnCount,c=g.lineNumber+b}return new h.y(a.lineNumber+b,a.column+(a.lineNumber+b===c?d:0))}mapRange(a){var b,c;return n((b=this.mapPosition(a.getStartPosition()))instanceof h.y?b:b.getStartPosition(),(c=this.mapPosition(a.getEndPosition()))instanceof h.y?c:c.getEndPosition())}apply(a){let b="",c=new h.y(1,1);for(let d of this.replacements){let e=d.range,f=e.getStartPosition(),g=e.getEndPosition(),h=n(c,f);h.isEmpty()||(b+=a.getValueOfRange(h)),b+=d.text,c=g}let d=n(c,a.endPositionExclusive);return d.isEmpty()||(b+=a.getValueOfRange(d)),b}applyToString(a){let b=new k.tp(a);return this.apply(b)}getNewRanges(){let a=[],b=0,c=0,d=0;for(let e of this.replacements){let f=j.W.ofText(e.text),g=h.y.lift({lineNumber:e.range.startLineNumber+c,column:e.range.startColumn+(e.range.startLineNumber===b?d:0)}),i=f.createRange(g);a.push(i),c=i.endLineNumber-e.range.endLineNumber,d=i.endColumn-e.range.endColumn,b=e.range.endLineNumber}return a}toReplacement(a){if(0===this.replacements.length)throw new f.D7;if(1===this.replacements.length)return this.replacements[0];let b=this.replacements[0].range.getStartPosition(),c=this.replacements[this.replacements.length-1].range.getEndPosition(),d="";for(let b=0;b<this.replacements.length;b++){let c=this.replacements[b];if(d+=c.text,b<this.replacements.length-1){let e=this.replacements[b+1],f=i.Q.fromPositions(c.range.getEndPosition(),e.range.getStartPosition());d+=a.getValueOfRange(f)}}return new m(i.Q.fromPositions(b,c),d)}toString(a){return void 0===a?this.replacements.map(a=>a.toString()).join("\n"):"string"==typeof a?this.toString(new k.tp(a)):0===this.replacements.length?"":this.replacements.map(b=>{let c=a.getValueOfRange(b.range),d=i.Q.fromPositions(new h.y(Math.max(1,b.range.startLineNumber-1),1),b.range.getStartPosition()),e=a.getValueOfRange(d);e.length>10&&(e="..."+e.substring(e.length-10));let f=i.Q.fromPositions(b.range.getEndPosition(),new h.y(b.range.endLineNumber+1,1)),g=a.getValueOfRange(f);g.length>10&&(g=g.substring(0,10)+"...");let j=c;if(j.length>10){let a=Math.floor(5);j=j.substring(0,a)+"..."+j.substring(j.length-a)}let k=b.text;if(k.length>10){let a=Math.floor(5);k=k.substring(0,a)+"..."+k.substring(k.length-a)}return 0===j.length?`${e}❰${k}❱${g}`:`${e}❰${j}↦${k}❱${g}`}).join("\n")}}class m{static joinReplacements(a,b){if(0===a.length)throw new f.D7;if(1===a.length)return a[0];let c=a[0].range.getStartPosition(),d=a[a.length-1].range.getEndPosition(),e="";for(let c=0;c<a.length;c++){let d=a[c];if(e+=d.text,c<a.length-1){let f=a[c+1],g=i.Q.fromPositions(d.range.getEndPosition(),f.range.getStartPosition());e+=b.getValueOfRange(g)}}return new m(i.Q.fromPositions(c,d),e)}static fromStringReplacement(a,b){return new m(b.getTransformer().getRange(a.replaceRange),a.newText)}static delete(a){return new m(a,"")}constructor(a,b){this.range=a,this.text=b}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(a,b){return a.range.equalsRange(b.range)&&a.text===b.text}equals(a){return m.equals(this,a)}removeCommonPrefixAndSuffix(a){return this.removeCommonPrefix(a).removeCommonSuffix(a)}removeCommonPrefix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Qp)(b,c),e=j.W.ofText(b.substring(0,d)).addToPosition(this.range.getStartPosition()),f=c.substring(d);return new m(i.Q.fromPositions(e,this.range.getEndPosition()),f)}removeCommonSuffix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Vi)(b,c),e=j.W.ofText(b.substring(0,b.length-d)).addToPosition(this.range.getStartPosition()),f=c.substring(0,c.length-d);return new m(i.Q.fromPositions(this.range.getStartPosition(),e),f)}toString(){let a=this.range.getStartPosition(),b=this.range.getEndPosition();return`(${a.lineNumber},${a.column} -> ${b.lineNumber},${b.column}): "${this.text}"`}}function n(a,b){if(a.lineNumber===b.lineNumber&&a.column===Number.MAX_SAFE_INTEGER)return i.Q.fromPositions(b,b);if(!a.isBeforeOrEqual(b))throw new f.D7("start must be before end");return new i.Q(a.lineNumber,a.column,b.lineNumber,b.column)}},95659:()=>{},95967:(a,b,c)=>{"use strict";c.d(b,{L:()=>e,h:()=>f});var d=c(88347);class e{static fromTo(a,b){return new e(a,b)}static addRange(a,b){let c=0;for(;c<b.length&&b[c].endExclusive<a.start;)c++;let d=c;for(;d<b.length&&b[d].start<=a.endExclusive;)d++;if(c===d)b.splice(c,0,a);else{let f=Math.min(a.start,b[c].start),g=Math.max(a.endExclusive,b[d-1].endExclusive);b.splice(c,d-c,new e(f,g))}}static tryCreate(a,b){if(!(a>b))return new e(a,b)}static ofLength(a){return new e(0,a)}static ofStartAndLength(a,b){return new e(a,a+b)}static emptyAt(a){return new e(a,a)}constructor(a,b){if(this.start=a,this.endExclusive=b,a>b)throw new d.D7(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(a){return new e(this.start+a,this.endExclusive+a)}deltaStart(a){return new e(this.start+a,this.endExclusive)}deltaEnd(a){return new e(this.start,this.endExclusive+a)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(a){return this.start===a.start&&this.endExclusive===a.endExclusive}contains(a){return this.start<=a&&a<this.endExclusive}join(a){return new e(Math.min(this.start,a.start),Math.max(this.endExclusive,a.endExclusive))}intersect(a){let b=Math.max(this.start,a.start),c=Math.min(this.endExclusive,a.endExclusive);if(b<=c)return new e(b,c)}intersectionLength(a){let b=Math.max(this.start,a.start);return Math.max(0,Math.min(this.endExclusive,a.endExclusive)-b)}intersects(a){return Math.max(this.start,a.start)<Math.min(this.endExclusive,a.endExclusive)}intersectsOrTouches(a){return Math.max(this.start,a.start)<=Math.min(this.endExclusive,a.endExclusive)}isBefore(a){return this.endExclusive<=a.start}isAfter(a){return this.start>=a.endExclusive}slice(a){return a.slice(this.start,this.endExclusive)}substring(a){return a.substring(this.start,this.endExclusive)}clip(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,a))}clipCyclic(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return a<this.start?this.endExclusive-(this.start-a)%this.length:a>=this.endExclusive?this.start+(a-this.start)%this.length:a}forEach(a){for(let b=this.start;b<this.endExclusive;b++)a(b)}joinRightTouching(a){if(this.endExclusive!==a.start)throw new d.D7(`Invalid join: ${this.toString()} and ${a.toString()}`);return new e(this.start,a.endExclusive)}}class f{constructor(){this._sortedRanges=[]}addRange(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<a.start;)b++;let c=b;for(;c<this._sortedRanges.length&&this._sortedRanges[c].start<=a.endExclusive;)c++;if(b===c)this._sortedRanges.splice(b,0,a);else{let d=Math.min(a.start,this._sortedRanges[b].start),f=Math.max(a.endExclusive,this._sortedRanges[c-1].endExclusive);this._sortedRanges.splice(b,c-b,new e(d,f))}}toString(){return this._sortedRanges.map(a=>a.toString()).join(", ")}intersectsStrict(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<=a.start;)b++;return b<this._sortedRanges.length&&this._sortedRanges[b].start<a.endExclusive}intersectWithRange(a){let b=new f;for(let c of this._sortedRanges){let d=c.intersect(a);d&&b.addRange(d)}return b}intersectWithRangeLength(a){return this.intersectWithRange(a).length}get length(){return this._sortedRanges.reduce((a,b)=>a+b.length,0)}}},95987:()=>{},96085:(a,b,c)=>{"use strict";c.d(b,{W6:()=>k,vH:()=>l});var d=c(25536),e=c(60734),f=c(61059),g=c(11314),h=c(64336),i=c(59714);class j extends g.jG{constructor(){super(),this._onDidChangeLanguages=this._register(new e.vl),this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(a){return this._languages.push(a),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let b=0,c=this._languages.length;b<c;b++)if(this._languages[b]===a)return void this._languages.splice(b,1)}}}getLanguages(){return this._languages}}let k=new j;f.O.add("editor.modesRegistry",k);let l="plaintext";k.registerLanguage({id:l,extensions:[".txt"],aliases:[d.kg(780,"Plain Text"),"text"],mimetypes:[h.K.text]}),f.O.as(i.Fd.Configuration).registerDefaultConfigurations([{overrides:{"[plaintext]":{"editor.unicodeHighlight.ambiguousCharacters":!1,"editor.unicodeHighlight.invisibleCharacters":!1},"[go]":{"editor.insertSpaces":!1},"[makefile]":{"editor.insertSpaces":!1},"[shellscript]":{"files.eol":"\n"},"[yaml]":{"editor.insertSpaces":!0,"editor.tabSize":2}}}])},96096:(a,b,c)=>{"use strict";let d,e;c.d(b,{Bm:()=>j,FB:()=>k,N2:()=>i,ZK:()=>n,u5:()=>l,zV:()=>m});var f=c(80095),g=c(63411),h=c(81820);function i(a){d=a}function j(a){e=a}function k(a){}function l(a){}class m{get TChange(){return null}reportChanges(){this.get()}read(a){return a?a.readObservable(this):this.get()}map(a,b,c=f.j.ofCaller()){let e=void 0===b?void 0:a,h=void 0===b?a:b;return d({owner:e,debugName:()=>{let a=(0,g.qQ)(h);if(void 0!==a)return a;let b=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(h.toString());return b?`${this.debugName}.${b[2]}`:e?void 0:`${this.debugName} (mapped)`},debugReferenceFn:h},a=>h(this.read(a),a),c)}flatten(){return d({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},a=>this.read(a).read(a))}recomputeInitiallyAndOnChange(a,b){return a.add(e(this,b)),this}}class n extends m{constructor(a){super(),this._observers=new Set,(0,h.tZ)()?.handleObservableCreated(this,a)}addObserver(a){let b=this._observers.size;this._observers.add(a),0===b&&this.onFirstObserverAdded(),b!==this._observers.size&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}removeObserver(a){let b=this._observers.delete(a);b&&0===this._observers.size&&this.onLastObserverRemoved(),b&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}onFirstObserverAdded(){}onLastObserverRemoved(){}debugGetObservers(){return this._observers}}},96287:(a,b,c)=>{"use strict";c.d(b,{M:()=>f});var d=c(60734);class e{constructor(){this._onDidChange=new d.vl,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}let f=new e},96503:()=>{},97210:(a,b,c)=>{"use strict";c.d(b,{N:()=>f,c2:()=>g});var d=c(54734),e=c(97360);class f{constructor(a){this.values=a,this.prefixSum=new Uint32Array(a.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(a,b){a=(0,e.j)(a);let c=this.values,d=this.prefixSum,f=b.length;return 0!==f&&(this.values=new Uint32Array(c.length+f),this.values.set(c.subarray(0,a),0),this.values.set(c.subarray(a),a+f),this.values.set(b,a),a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(d.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(a,b){return a=(0,e.j)(a),b=(0,e.j)(b),this.values[a]!==b&&(this.values[a]=b,a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),!0)}removeValues(a,b){a=(0,e.j)(a),b=(0,e.j)(b);let c=this.values,d=this.prefixSum;if(a>=c.length)return!1;let f=c.length-a;return b>=f&&(b=f),0!==b&&(this.values=new Uint32Array(c.length-b),this.values.set(c.subarray(0,a),0),this.values.set(c.subarray(a+b),a),this.prefixSum=new Uint32Array(this.values.length),a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(d.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(a){return a<0?0:(a=(0,e.j)(a),this._getPrefixSum(a))}_getPrefixSum(a){if(a<=this.prefixSumValidIndex[0])return this.prefixSum[a];let b=this.prefixSumValidIndex[0]+1;0===b&&(this.prefixSum[0]=this.values[0],b++),a>=this.values.length&&(a=this.values.length-1);for(let c=b;c<=a;c++)this.prefixSum[c]=this.prefixSum[c-1]+this.values[c];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],a),this.prefixSum[a]}getIndexOf(a){a=Math.floor(a),this.getTotalSum();let b=0,c=this.values.length-1,d=0,e=0,f=0;for(;b<=c;)if(d=b+(c-b)/2|0,f=(e=this.prefixSum[d])-this.values[d],a<f)c=d-1;else if(a>=e)b=d+1;else break;return new h(d,a-f)}}class g{constructor(a){this._values=a,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(a){return(this._ensureValid(),0===a)?0:this._prefixSum[a-1]}getIndexOf(a){this._ensureValid();let b=this._indexBySum[a],c=b>0?this._prefixSum[b-1]:0;return new h(b,a-c)}removeValues(a,b){this._values.splice(a,b),this._invalidate(a)}insertValues(a,b){this._values=(0,d.nK)(this._values,a,b),this._invalidate(a)}_invalidate(a){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,a-1)}_ensureValid(){if(!this._isValid){for(let a=this._validEndIndex+1,b=this._values.length;a<b;a++){let b=this._values[a],c=a>0?this._prefixSum[a-1]:0;this._prefixSum[a]=c+b;for(let d=0;d<b;d++)this._indexBySum[c+d]=a}this._prefixSum.length=this._values.length,this._indexBySum.length=this._prefixSum[this._prefixSum.length-1],this._isValid=!0,this._validEndIndex=this._values.length-1}}setValue(a,b){this._values[a]!==b&&(this._values[a]=b,this._invalidate(a))}}class h{constructor(a,b){this.index=a,this.remainder=b,this._prefixSumIndexOfResultBrand=void 0,this.index=a,this.remainder=b}}},97360:(a,b,c)=>{"use strict";function d(a){return a<0?0:a>255?255:0|a}function e(a){return a<0?0:a>0xffffffff?0xffffffff:0|a}c.d(b,{W:()=>d,j:()=>e})},97619:(a,b,c)=>{"use strict";let d;c.d(b,{_K:()=>h,bJ:()=>g,iD:()=>i});var e=c(56167);let f=globalThis.vscode;if(void 0!==f&&void 0!==f.process){let a=f.process;d={get platform(){return a.platform},get arch(){return a.arch},get env(){return a.env},cwd:()=>a.cwd()}}else d="undefined"!=typeof process&&"string"==typeof process?.versions?.node?{get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd:()=>process.env.VSCODE_CWD||process.cwd()}:{get platform(){return e.uF?"win32":e.zx?"darwin":"linux"},get arch(){return},get env(){return{}},cwd:()=>"/"};let g=d.cwd,h=d.env,i=d.platform},97654:()=>{},97791:(a,b,c)=>{"use strict";c.d(b,{O:()=>k});var d=c(53578),e=c(11314),f=c(56167),g=c(29892),h=c(48268),i=c(47341);let j=0;class k extends e.jG{get cacheKey(){return`${this.fontFamily}_${this.fontSize}px`}constructor(a,b,c,d){super(),this.fontSize=a,this.fontFamily=b,this.devicePixelRatio=c,this._decorationStyleCache=d,this.id=j++,this._workGlyph={source:null,boundingBox:{left:0,bottom:0,right:0,top:0},originOffset:{x:0,y:0},fontBoundingBoxAscent:0,fontBoundingBoxDescent:0},this._workGlyphConfig={chars:void 0,tokenMetadata:0,decorationStyleSetId:0},this._antiAliasing=f.zx?"greyscale":"subpixel";let e=Math.ceil(this.fontSize*c);this._canvas=new OffscreenCanvas(3*e,3*e),this._ctx=(0,i.HS)(this._canvas.getContext("2d",{willReadFrequently:!0,alpha:"greyscale"===this._antiAliasing})),this._ctx.textBaseline="top",this._ctx.fillStyle="#FFFFFF",this._ctx.font=`${e}px ${this.fontFamily}`,this._textMetrics=this._ctx.measureText("A")}rasterizeGlyph(a,b,c,d){return""===a?{source:this._canvas,boundingBox:{top:0,left:0,bottom:-1,right:-1},originOffset:{x:0,y:0},fontBoundingBoxAscent:0,fontBoundingBoxDescent:0}:this._workGlyphConfig.chars===a&&this._workGlyphConfig.tokenMetadata===b&&this._workGlyphConfig.decorationStyleSetId===c?this._workGlyph:(this._workGlyphConfig.chars=a,this._workGlyphConfig.tokenMetadata=b,this._workGlyphConfig.decorationStyleSetId=c,this._rasterizeGlyph(a,b,c,d))}_rasterizeGlyph(a,b,c,d){let e=Math.ceil(this.fontSize*this.devicePixelRatio),f=3*e;this._canvas.width!==f&&(this._canvas.width=f,this._canvas.height=f),this._ctx.save();let i=(15&b)/10,j=d[h.x.getBackground(b)],k=this._decorationStyleCache.getStyleSet(c);"subpixel"===this._antiAliasing?(this._ctx.fillStyle=j,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height)):this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height);let l=new g.fe(200),m=h.x.getFontStyle(b);1&m&&l.appendString("italic "),k?.bold!==void 0?k.bold&&l.appendString("bold "):2&m&&l.appendString("bold "),l.appendString(`${e}px ${this.fontFamily}`),this._ctx.font=l.build(),k?.color!==void 0?this._ctx.fillStyle=`#${k.color.toString(16).padStart(8,"0")}`:this._ctx.fillStyle=d[h.x.getForeground(b)],this._ctx.textBaseline="top",k?.opacity!==void 0&&(this._ctx.globalAlpha=k.opacity),this._ctx.fillText(a,e+i,e),this._ctx.restore();let n=this._ctx.getImageData(0,0,this._canvas.width,this._canvas.height);if("subpixel"===this._antiAliasing){let a=parseInt(j.substring(1,3),16),b=parseInt(j.substring(3,5),16),c=parseInt(j.substring(5,7),16);this._clearColor(n,a,b,c),this._ctx.putImageData(n,0,0)}return this._findGlyphBoundingBox(n,this._workGlyph.boundingBox),this._workGlyph.source=this._canvas,this._workGlyph.originOffset.x=this._workGlyph.boundingBox.left-e,this._workGlyph.originOffset.y=this._workGlyph.boundingBox.top-e,this._workGlyph.fontBoundingBoxAscent=this._textMetrics.fontBoundingBoxAscent,this._workGlyph.fontBoundingBoxDescent=this._textMetrics.fontBoundingBoxDescent,this._workGlyph}_clearColor(a,b,c,d){for(let e=0;e<a.data.length;e+=4)a.data[e]===b&&a.data[e+1]===c&&a.data[e+2]===d&&(a.data[e+3]=0)}_findGlyphBoundingBox(a,b){let c=this._canvas.height,d=this._canvas.width,e=!1;for(let f=0;f<c;f++){for(let c=0;c<d;c++){let g=f*d*4+4*c+3;if(0!==a.data[g]){b.top=f,e=!0;break}}if(e)break}b.left=0,e=!1;for(let f=0;f<d;f++){for(let g=0;g<c;g++){let c=g*d*4+4*f+3;if(0!==a.data[c]){b.left=f,e=!0;break}}if(e)break}b.right=d,e=!1;for(let f=d-1;f>=b.left;f--){for(let g=0;g<c;g++){let c=g*d*4+4*f+3;if(0!==a.data[c]){b.right=f,e=!0;break}}if(e)break}b.bottom=b.top,e=!1;for(let f=c-1;f>=0;f--){for(let c=0;c<d;c++){let g=f*d*4+4*c+3;if(0!==a.data[g]){b.bottom=f,e=!0;break}}if(e)break}}getTextMetrics(a){return this._ctx.measureText(a)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([d.B],k.prototype,"cacheKey",null)},97924:(a,b,c)=>{"use strict";c.d(b,{L:()=>u});var d,e,f=c(32677),g=c(88347),h=c(60734),i=c(11314),j=c(9888),k=c(29715),l=c(42484),m=c(97791),n=c(66153);let o=class extends i.jG{constructor(a){super(),this._logService=a,this._tasks=[],this._i=0,this._register((0,i.s)(()=>this.clear()))}enqueue(a){this._tasks.push(a),this._start()}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(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=Date.now(),!this._tasks[this._i]()&&this._i++,1.5*(c=Math.max(b=Math.max(1,Date.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&this._logService.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}};o=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=n.rr,function(a,b){d(a,b,0)})],o);class p extends o{_requestCallback(a){return(0,f.fz)().setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){(0,f.fz)().clearTimeout(a)}_createDeadline(a){let b=Date.now()+a;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}class q extends o{_requestCallback(a){return(0,f.fz)().requestIdleCallback(a)}_cancelCallback(a){(0,f.fz)().cancelIdleCallback(a)}}let r="requestIdleCallback"in(0,f.fz)()?q:p;var s=c(10958),t=function(a,b){return function(c,d){b(c,d,a)}};let u=class extends i.jG{static{e=this}static{this.maximumPageCount=16}get pages(){return this._pages}constructor(a,b,c,d,e){super(),this._maxTextureSize=a,this._decorationStyleCache=c,this._themeService=d,this._instantiationService=e,this._warmUpTask=this._register(new i.HE),this._warmedUpRasterizers=new Set,this._pages=[],this._glyphPageIndex=new j.QO,this._onDidDeleteGlyphs=this._register(new h.vl),this.onDidDeleteGlyphs=this._onDidDeleteGlyphs.event,this._allocatorType=b?.allocatorType??"slab",this._register(h.Jh.runAndSubscribe(this._themeService.onDidColorThemeChange,()=>{this._colorMap&&this.clear(),this._colorMap=this._themeService.getColorTheme().tokenColorMap}));let g=Math.max(1,Math.floor((0,f.fz)().devicePixelRatio));this.pageSize=Math.min(1024*g,this._maxTextureSize),this._initFirstPage(),this._register((0,i.s)(()=>(0,i.AS)(this._pages)))}_initFirstPage(){let a=this._instantiationService.createInstance(s.g,0,this.pageSize,this._allocatorType);this._pages.push(a);let b=new m.O(1,"",1,this._decorationStyleCache);a.getGlyph(b,"",0,0),b.dispose()}clear(){for(let a of this._pages)a.dispose();this._pages.length=0,this._glyphPageIndex.clear(),this._warmedUpRasterizers.clear(),this._warmUpTask.clear(),this._initFirstPage(),this._onDidDeleteGlyphs.fire()}getGlyph(a,b,c,d,e){return c&=-2048,c|=Math.floor(e%1*10),this._warmedUpRasterizers.has(a.id)||(this._warmUpAtlas(a),this._warmedUpRasterizers.add(a.id)),this._tryGetGlyph(this._glyphPageIndex.get(b,c,d,a.cacheKey)??0,a,b,c,d)}_tryGetGlyph(a,b,c,d,e){return this._glyphPageIndex.set(a,c,d,e,b.cacheKey),this._pages[a].getGlyph(b,c,d,e)??(a+1<this._pages.length?this._tryGetGlyph(a+1,b,c,d,e):void 0)??this._getGlyphFromNewPage(b,c,d,e)}_getGlyphFromNewPage(a,b,c,d){if(this._pages.length>=e.maximumPageCount)throw Error(`Attempt to create a texture atlas page past the limit ${e.maximumPageCount}`);return this._pages.push(this._instantiationService.createInstance(s.g,this._pages.length,this.pageSize,this._allocatorType)),this._glyphPageIndex.set(this._pages.length-1,b,c,d,a.cacheKey),this._pages[this._pages.length-1].getGlyph(a,b,c,d)}getStats(){return this._pages.map(a=>a.getStats())}_warmUpAtlas(a){let b=this._colorMap;if(!b)throw new g.D7("Cannot warm atlas without color map");this._warmUpTask.value?.clear();let c=this._warmUpTask.value=this._instantiationService.createInstance(r);for(let d=65;d<=90;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=97;d<=122;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=33;d<=126;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)})}};u=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([t(3,l.Gy),t(4,k._Y)],u)},98350:(a,b,c)=>{"use strict";c.d(b,{B:()=>d,q:()=>k});var d,e=c(32677),f=c(29813),g=c(53578),h=c(60734),i=c(11314),j=c(71373);!function(a){a.Tap="-monaco-gesturetap",a.Change="-monaco-gesturechange",a.Start="-monaco-gesturestart",a.End="-monaco-gesturesend",a.Contextmenu="-monaco-gesturecontextmenu"}(d||(d={}));class k extends i.jG{static{this.SCROLL_FRICTION=-.005}static{this.HOLD_DELAY=700}static{this.CLEAR_TAP_COUNT_TIME=400}constructor(){super(),this.dispatched=!1,this.targets=new j.w,this.ignoreTargets=new j.w,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(h.Jh.runAndSubscribe(e.Iv,({window:a,disposables:b})=>{b.add(e.ko(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(e.ko(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(e.ko(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:f.G,disposables:this._store}))}static addTarget(a){if(!k.isTouchDevice())return i.jG.None;k.INSTANCE||(k.INSTANCE=(0,i.lC)(new k));let b=k.INSTANCE.targets.push(a);return(0,i.s)(b)}static ignoreTarget(a){if(!k.isTouchDevice())return i.jG.None;k.INSTANCE||(k.INSTANCE=(0,i.lC)(new k));let b=k.INSTANCE.ignoreTargets.push(a);return(0,i.s)(b)}static isTouchDevice(){return"ontouchstart"in f.G||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,e=a.targetTouches.length;c<e;c++){let e=a.targetTouches.item(c);this.activeTouches[e.identifier]={id:e.identifier,initialTarget:e.target,initialTimeStamp:b,initialPageX:e.pageX,initialPageY:e.pageY,rollingTimestamps:[b],rollingPageX:[e.pageX],rollingPageY:[e.pageY]};let f=this.newGestureEvent(d.Start,e.target);f.pageX=e.pageX,f.pageY=e.pageY,this.dispatchEvent(f)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(a,b){let c=Date.now(),e=Object.keys(this.activeTouches).length;for(let f=0,g=b.changedTouches.length;f<g;f++){let g=b.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<k.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(d.Tap,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(i>=k.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(d.Contextmenu,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(1===e){let b=h.rollingPageX.at(-1),d=h.rollingPageY.at(-1),e=h.rollingTimestamps.at(-1)-h.rollingTimestamps[0],f=b-h.rollingPageX[0],g=d-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(a,i,c,Math.abs(f)/e,f>0?1:-1,b,Math.abs(g)/e,g>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(d.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(b.preventDefault(),b.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(a){if(a.type===d.Tap){let b=new Date().getTime(),c=0;c=b-this._lastSetTapCountTime>k.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=b,a.tapCount=c}else(a.type===d.Change||a.type===d.Contextmenu)&&(this._lastSetTapCountTime=0);if(a.initialTarget instanceof Node){for(let b of this.ignoreTargets)if(b.contains(a.initialTarget))return;let b=[];for(let c of this.targets)if(c.contains(a.initialTarget)){let d=0,e=a.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;b.push([d,c])}for(let[c,d]of(b.sort((a,b)=>a[0]-b[0]),b))d.dispatchEvent(a),this.dispatched=!0}}inertia(a,b,c,f,g,h,i,j,l){this.handle=e.PG(a,()=>{let e=Date.now(),m=e-c,n=0,o=0,p=!0;f+=k.SCROLL_FRICTION*m,i+=k.SCROLL_FRICTION*m,f>0&&(p=!1,n=g*f*m),i>0&&(p=!1,o=j*i*m);let q=this.newGestureEvent(d.Change);q.translationX=n,q.translationY=o,b.forEach(a=>a.dispatchEvent(q)),p||this.inertia(a,b,e,f,g,h+n,i,j,l+o)})}onTouchMove(a){let b=Date.now();for(let c=0,e=a.changedTouches.length;c<e;c++){let e=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(e.identifier))){console.warn("end of an UNKNOWN touch",e);continue}let f=this.activeTouches[e.identifier],g=this.newGestureEvent(d.Change,f.initialTarget);g.translationX=e.pageX-f.rollingPageX.at(-1),g.translationY=e.pageY-f.rollingPageY.at(-1),g.pageX=e.pageX,g.pageY=e.pageY,this.dispatchEvent(g),f.rollingPageX.length>3&&(f.rollingPageX.shift(),f.rollingPageY.shift(),f.rollingTimestamps.shift()),f.rollingPageX.push(e.pageX),f.rollingPageY.push(e.pageY),f.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([g.B],k,"isTouchDevice",null)},98447:(a,b,c)=>{"use strict";let d;c.d(b,{$X:()=>U,AV:()=>g,BO:()=>o,Bm:()=>p,Bq:()=>m,DB:()=>A,E_:()=>Q,GP:()=>i,HG:()=>t,LJ:()=>I,LU:()=>Y,Lv:()=>B,MV:()=>O,NB:()=>n,OS:()=>q,Q_:()=>D,Qp:()=>F,S8:()=>ac,Ss:()=>W,UD:()=>w,UU:()=>u,Vi:()=>G,W1:()=>y,Wd:()=>ab,Wv:()=>C,Z5:()=>K,_J:()=>T,aC:()=>S,bm:()=>l,eY:()=>r,ih:()=>k,iy:()=>N,jy:()=>j,km:()=>M,lF:()=>x,lT:()=>v,m:()=>P,ne:()=>V,ns:()=>E,pc:()=>H,r_:()=>X,tk:()=>$,tl:()=>ad,uz:()=>s,y_:()=>ae,zY:()=>Z,z_:()=>J,zd:()=>z});var e=c(91732),f=c(49982);function g(a){return!a||"string"!=typeof a||0===a.trim().length}let h=/{(\d+)}/g;function i(a,...b){return 0===b.length?a:a.replace(h,function(a,c){let d=parseInt(c,10);return isNaN(d)||d<0||d>=b.length?a:b[d]})}function j(a){return a.replace(/[<>"'&]/g,a=>{switch(a){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return a})}function k(a){return a.replace(/[<>&]/g,function(a){switch(a){case"<":return"<";case">":return">";case"&":return"&";default:return a}})}function l(a){return a.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function m(a,b=" "){return o(n(a,b),b)}function n(a,b){if(!a||!b)return a;let c=b.length;if(0===c||0===a.length)return a;let d=0;for(;a.indexOf(b,d)===d;)d+=c;return a.substring(d)}function o(a,b){if(!a||!b)return a;let c=b.length,d=a.length;if(0===c||0===d)return a;let e=d,f=-1;for(;-1!==(f=a.lastIndexOf(b,e-1))&&f+c===e;){if(0===f)return"";e=f}return a.substring(0,e)}function p(a){return a.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function q(a,b,c={}){if(!a)throw Error("Cannot create regex from empty string");b||(a=l(a)),c.wholeWord&&(/\B/.test(a.charAt(0))||(a="\\b"+a),/\B/.test(a.charAt(a.length-1))||(a+="\\b"));let d="";return c.global&&(d+="g"),c.matchCase||(d+="i"),c.multiline&&(d+="m"),c.unicode&&(d+="u"),new RegExp(a,d)}function r(a){return"^"!==a.source&&"^$"!==a.source&&"$"!==a.source&&"^\\s*$"!==a.source&&!!(a.exec("")&&0===a.lastIndex)}function s(a){return a.split(/\r\n|\r|\n/)}function t(a){for(let b=0,c=a.length;b<c;b++){let c=a.charCodeAt(b);if(32!==c&&9!==c)return b}return -1}function u(a,b=0,c=a.length){for(let d=b;d<c;d++){let c=a.charCodeAt(d);if(32!==c&&9!==c)return a.substring(b,d)}return a.substring(b,c)}function v(a,b=a.length-1){for(let c=b;c>=0;c--){let b=a.charCodeAt(c);if(32!==b&&9!==b)return c}return -1}function w(a,b){return a<b?-1:+(a>b)}function x(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let d=a.charCodeAt(c),f=b.charCodeAt(e);if(d<f)return -1;if(d>f)return 1}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function y(a,b){return z(a,b,0,a.length,0,b.length)}function z(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let g=a.charCodeAt(c),h=b.charCodeAt(e);if(g===h)continue;if(g>=128||h>=128)return x(a.toLowerCase(),b.toLowerCase(),c,d,e,f);B(g)&&(g-=32),B(h)&&(h-=32);let i=g-h;if(0!==i)return i}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function A(a){return a>=48&&a<=57}function B(a){return a>=97&&a<=122}function C(a){return a>=65&&a<=90}function D(a,b){return a.length===b.length&&0===z(a,b)}function E(a,b){let c=b.length;return!(b.length>a.length)&&0===z(a,b,0,c)}function F(a,b){let c,d=Math.min(a.length,b.length);for(c=0;c<d;c++)if(a.charCodeAt(c)!==b.charCodeAt(c))return c;return d}function G(a,b){let c,d=Math.min(a.length,b.length),e=a.length-1,f=b.length-1;for(c=0;c<d;c++)if(a.charCodeAt(e-c)!==b.charCodeAt(f-c))return c;return d}function H(a){return 55296<=a&&a<=56319}function I(a){return 56320<=a&&a<=57343}function J(a,b){return(a-55296<<10)+(b-56320)+65536}function K(a,b,c){let d=a.charCodeAt(c);if(H(d)&&c+1<b){let b=a.charCodeAt(c+1);if(I(b))return J(d,b)}return d}class L{get offset(){return this._offset}constructor(a,b=0){this._str=a,this._len=a.length,this._offset=b}setOffset(a){this._offset=a}prevCodePoint(){let a=function(a,b){let c=a.charCodeAt(b-1);if(I(c)&&b>1){let d=a.charCodeAt(b-2);if(H(d))return J(d,c)}return c}(this._str,this._offset);return this._offset-=a>=65536?2:1,a}nextCodePoint(){let a=K(this._str,this._len,this._offset);return this._offset+=a>=65536?2:1,a}eol(){return this._offset>=this._len}}class M{get offset(){return this._iterator.offset}constructor(a,b=0){this._iterator=new L(a,b)}nextGraphemeLength(){let a=aa.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.nextCodePoint());for(;!b.eol();){let c=b.offset,e=a.getGraphemeBreakType(b.nextCodePoint());if(_(d,e)){b.setOffset(c);break}d=e}return b.offset-c}prevGraphemeLength(){let a=aa.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.prevCodePoint());for(;b.offset>0;){let c=b.offset,e=a.getGraphemeBreakType(b.prevCodePoint());if(_(e,d)){b.setOffset(c);break}d=e}return c-b.offset}eol(){return this._iterator.eol()}}function N(a,b){return new M(a,b).nextGraphemeLength()}function O(a,b){return new M(a,b).prevGraphemeLength()}function P(a,b){b>0&&I(a.charCodeAt(b))&&b--;let c=b+N(a,b);return[c-O(a,c),c]}function Q(a){return d||(d=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/),d.test(a)}let R=/^[\t\n\r\x20-\x7E]*$/;function S(a){return R.test(a)}let T=/[\u2028\u2029]/;function U(a){return T.test(a)}function V(a){return a>=11904&&a<=55215||a>=63744&&a<=64255||a>=65281&&a<=65374}function W(a){return a>=127462&&a<=127487||8986===a||8987===a||9200===a||9203===a||a>=9728&&a<=10175||11088===a||11093===a||a>=127744&&a<=128591||a>=128640&&a<=128764||a>=128992&&a<=129008||a>=129280&&a<=129535||a>=129648&&a<=129782}RegExp("(?:"+[/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/.source,/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/.source,/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/.source].join("|")+")","g");let X=String.fromCharCode(65279);function Y(a){return!!(a&&a.length>0&&65279===a.charCodeAt(0))}function Z(a,b=!1){return!!a&&(b&&(a=a.replace(/\\./g,"")),a.toLowerCase()!==a)}function $(a){return(a%=52)<26?String.fromCharCode(97+a):String.fromCharCode(65+a-26)}function _(a,b){return 0===a?5!==b&&7!==b:(2!==a||3!==b)&&(4===a||2===a||3===a||4===b||2===b||3===b||(8!==a||8!==b&&9!==b&&11!==b&&12!==b)&&(11!==a&&9!==a||9!==b&&10!==b)&&(12!==a&&10!==a||10!==b)&&5!==b&&13!==b&&7!==b&&1!==a&&(13!==a||14!==b)&&(6!==a||6!==b)&&!0)}class aa{static{this._INSTANCE=null}static getInstance(){return aa._INSTANCE||(aa._INSTANCE=new aa),aa._INSTANCE}constructor(){this._data=JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}getGraphemeBreakType(a){if(a<32)return 10===a?3:13===a?2:4;if(a<127)return 0;let b=this._data,c=b.length/3,d=1;for(;d<=c;)if(a<b[3*d])d*=2;else{if(!(a>b[3*d+1]))return b[3*d+2];d=2*d+1}return 0}}function ab(a,b){if(0===a)return 0;let c=function(a,b){var c;let d=new L(b,a),e=d.prevCodePoint();for(;127995<=(c=e)&&c<=127999||65039===e||8419===e;){if(0===d.offset)return;e=d.prevCodePoint()}if(!W(e))return;let f=d.offset;return f>0&&8205===d.prevCodePoint()&&(f=d.offset),f}(a,b);if(void 0!==c)return c;let d=new L(b,a);return d.prevCodePoint(),d.offset}let ac="\xa0";class ad{static{this.ambiguousCharacterData=new f.d(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}'))}static{this.cache=new e.o5({getCacheKey:JSON.stringify},a=>{let b;function c(a){let b=new Map;for(let c=0;c<a.length;c+=2)b.set(a[c],a[c+1]);return b}let d=this.ambiguousCharacterData.value,e=a.filter(a=>!a.startsWith("_")&&a in d);for(let a of(0===e.length&&(e=["_default"]),e))b=function(a,b){if(!a)return b;let c=new Map;for(let[d,e]of a)b.has(d)&&c.set(d,e);return c}(b,c(d[a]));return new ad(function(a,b){let c=new Map(a);for(let[a,d]of b)c.set(a,d);return c}(c(d._common),b))})}static getInstance(a){return ad.cache.get(Array.from(a))}static{this._locales=new f.d(()=>Object.keys(ad.ambiguousCharacterData.value).filter(a=>!a.startsWith("_")))}static getLocales(){return ad._locales.value}constructor(a){this.confusableDictionary=a}isAmbiguous(a){return this.confusableDictionary.has(a)}getPrimaryConfusable(a){return this.confusableDictionary.get(a)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}class ae{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(ae.getRawData())].flat())),this._data}static isInvisibleCharacter(a){return ae.getData().has(a)}static get codePoints(){return ae.getData()}}},98787:(a,b,c)=>{"use strict";c.d(b,{V:()=>f,w:()=>g});var d=c(11314),e=c(43589);function f(a,b,c,d=e.jM.ofCaller()){return(0,e.eP)({debugName:()=>`Configuration Key "${a}"`},b=>c.onDidChangeConfiguration(c=>{c.affectsConfiguration(a)&&b(c)}),()=>c.getValue(a)??b,d)}function g(a,b,c,f=e.jM.ofCaller()){let h=a.bindTo(b),i=new d.Cm;return(0,e.C)({debugName:()=>`Set Context Key "${a.key}"`},a=>{let b=c(a);return h.set(b),b},f).recomputeInitiallyAndOnChange(i),i}},98867:(a,b,c)=>{"use strict";let d,e,f,g,h;c.d(b,{h5:()=>l,vr:()=>j,xE:()=>k});var i=c(32677);function j(a){(d=document.createElement("div")).className="monaco-aria-container";let b=()=>{let a=document.createElement("div");return a.className="monaco-alert",a.setAttribute("role","alert"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};e=b(),f=b();let c=()=>{let a=document.createElement("div");return a.className="monaco-status",a.setAttribute("aria-live","polite"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};g=c(),h=c(),a.appendChild(d)}function k(a){d&&(e.textContent!==a?(i.w_(f),m(e,a)):(i.w_(e),m(f,a)))}function l(a){d&&(g.textContent!==a?(i.w_(h),m(g,a)):(i.w_(g),m(h,a)))}function m(a,b){i.w_(a),b.length>2e4&&(b=b.substr(0,2e4)),a.textContent=b,a.style.visibility="hidden",a.style.visibility="visible"}c(30967)},99695:(a,b,c)=>{"use strict";c.d(b,{FW:()=>i,Zv:()=>e,dG:()=>g,z5:()=>j});var d=c(88347);function e(a,b){if("number"==typeof a){if(0===a)return null;let c=(65535&a)>>>0,d=(0xffff0000&a)>>>16;return new h(0!==d?[f(c,b),f(d,b)]:[f(c,b)])}{let c=[];for(let d=0;d<a.length;d++)c.push(f(a[d],b));return new h(c)}}function f(a,b){let c=!!(2048&a),d=!!(256&a);return new g(2===b?d:c,!!(1024&a),!!(512&a),2===b?c:d,255&a)}class g{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(a){return a instanceof g&&this.ctrlKey===a.ctrlKey&&this.shiftKey===a.shiftKey&&this.altKey===a.altKey&&this.metaKey===a.metaKey&&this.keyCode===a.keyCode}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}}class h{constructor(a){if(0===a.length)throw(0,d.Qg)("chords");this.chords=a}}class i{constructor(a,b,c,d,e,f){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyLabel=e,this.keyAriaLabel=f}}class j{}},99964:(a,b,c)=>{"use strict";c.d(b,{Z:()=>f,l:()=>e});var d=c(29715);let e=(0,d.u1)("contextViewService"),f=(0,d.u1)("contextMenuService")}};
|
|
694
|
+
`;class cL extends cJ{static{this.maxSupportedColumns=2e3}get bindGroupEntries(){return[{binding:1,resource:{buffer:this._cellBindBuffer}},{binding:6,resource:{buffer:this._scrollOffsetBindBuffer}}]}constructor(a,b,c,d){super(a,b,c,d),this.type="viewport",this.wgsl=cK,this._cellBindBufferLineCapacity=63,this._activeDoubleBufferIndex=0,this._visibleObjectCount=0,this._scrollInitialized=!1,this._onDidChangeBindGroupEntries=this._register(new v.vl),this.onDidChangeBindGroupEntries=this._onDidChangeBindGroupEntries.event,this._rebuildCellBuffer(this._cellBindBufferLineCapacity),this._scrollOffsetBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco scroll offset buffer",size:2*Float32Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST})).object,this._scrollOffsetValueBuffer=new Float32Array(2)}_rebuildCellBuffer(a){this._cellBindBuffer?.destroy();let b=(Math.floor(a/32)+1)*32,c=b*cL.maxSupportedColumns*6*Float32Array.BYTES_PER_ELEMENT;this._cellBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco full file cell buffer",size:c,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._cellValueBuffers=[new ArrayBuffer(c),new ArrayBuffer(c)],this._cellBindBufferLineCapacity=b,this._onDidChangeBindGroupEntries.fire()}onConfigurationChanged(a){return!0}onDecorationsChanged(a){return!0}onTokensChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onLinesChanged(a){return!0}onScrollChanged(a){let b=(0,t.fz)().devicePixelRatio;return this._scrollOffsetValueBuffer[0]=(a?.scrollLeft??this._context.viewLayout.getCurrentScrollLeft())*b,this._scrollOffsetValueBuffer[1]=(a?.scrollTop??this._context.viewLayout.getCurrentScrollTop())*b,this._device.queue.writeBuffer(this._scrollOffsetBindBuffer,0,this._scrollOffsetValueBuffer),!0}onThemeChanged(a){return!0}onLineMappingChanged(a){return!0}onZonesChanged(a){return!0}reset(){for(let a of[0,1]){let b=new Float32Array(this._cellValueBuffers[a]);b.fill(0,0,b.length),this._device.queue.writeBuffer(this._cellBindBuffer,0,b.buffer,0,b.byteLength)}}update(a,b){let c,d,e,f,g,h,i,j,k,l="",m=0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=(0,t.fz)().devicePixelRatio;this._scrollInitialized||(this.onScrollChanged(),this._scrollInitialized=!0),this._cellBindBufferLineCapacity<a.endLineNumber-a.startLineNumber+1&&this._rebuildCellBuffer(a.endLineNumber-a.startLineNumber+1);let B=new Float32Array(this._cellValueBuffers[this._activeDoubleBufferIndex]);B.fill(0);let C=6*cL.maxSupportedColumns;for(n=a.startLineNumber;n<=a.endLineNumber;n++)if(this._viewGpuContext.canRender(b,a,n)){h=a.getViewLineRenderingData(n),r=0,k=cG(h,b),m=b.spaceWidth*A,p=0,j=h.tokens,v=h.minColumn-1,w=0;for(let t=0,y=j.getCount();t<y;t++)if(!((w=j.getEndOffset(t))<=v)){for(x=j.getMetadata(t),o=v;o<w&&!(o>cL.maxSupportedColumns);o++){if(void 0===(c=k.getSegmentAtIndex(o)))continue;for(i of(l=c,h.isBasicASCII&&b.useMonospaceOptimizations||(m=this.glyphRasterizer.getTextMetrics(l).width),f=void 0,e=void 0,g=void 0,h.inlineDecorations))if(!(n<i.range.startLineNumber)&&!(n>i.range.endLineNumber)&&(n!==i.range.startLineNumber||!(o<i.range.startColumn-1))&&(n!==i.range.endLineNumber||!(o>=i.range.endColumn-1)))for(let a of cz.n.decorationCssRuleExtractor.getStyleRules(this._viewGpuContext.canvas.domNode,i.inlineClassName))for(let b of a.style){let c=a.styleMap.get(b)?.toString()??"";switch(b){case"color":{let a=b9.Q1.Format.CSS.parse(c);if(!a)throw new u.D7("Invalid color format "+c);f=a.toNumber32Bit();break}case"font-weight":e=function(a){switch(a){case"lighter":case"normal":return 400;case"bolder":case"bold":return 700}return parseInt(a)}(c)>=400;break;case"opacity":var D;g=(D=c).endsWith("%")?parseFloat(D.substring(0,D.length-1))/100:D.match(/^\d+(?:\.\d*)/)?parseFloat(D):1;break;default:throw new u.D7("Unexpected inline decoration style")}}if(" "===l||" "===l){if(s=((n-1)*cL.maxSupportedColumns+o)*6,B.fill(0,s,s+6)," "===l){let a=o+r;p+=m*((r=ac.A.nextRenderTabStop(o+r,h.tabSize))-a),r-=o+1}else p+=m;continue}let j=cz.n.decorationStyleCache.getOrCreateEntry(f,e,g);d=this._viewGpuContext.atlas.getGlyph(this.glyphRasterizer,l,x,j,p),q=Math.round(a.relativeVerticalOffset[n-a.startLineNumber]*A+Math.floor((a.lineHeight*A-(d.fontBoundingBoxAscent+d.fontBoundingBoxDescent))/2)+d.fontBoundingBoxAscent),B[(s=((n-a.startLineNumber)*cL.maxSupportedColumns+o)*6)+0]=Math.floor(p),B[s+1]=q,B[s+4]=d.glyphIndex,B[s+5]=d.pageIndex,p+=m}v=w}y=((n-a.startLineNumber)*cL.maxSupportedColumns+w)*6,z=(n-a.startLineNumber)*cL.maxSupportedColumns*6,B.fill(0,y,z)}let E=(a.endLineNumber-a.startLineNumber+1)*C;return this._device.queue.writeBuffer(this._cellBindBuffer,0,B.buffer,0,(a.endLineNumber-a.startLineNumber)*C*Float32Array.BYTES_PER_ELEMENT),this._activeDoubleBufferIndex=+!this._activeDoubleBufferIndex,this._visibleObjectCount=E,E}draw(a,b){if(this._visibleObjectCount<=0)throw new u.D7("Attempt to draw 0 objects");a.draw(cD.xW.length/2,this._visibleObjectCount)}}class cM extends cJ{static{this.maxSupportedLines=3e3}static{this.maxSupportedColumns=200}get bindGroupEntries(){return[{binding:1,resource:{buffer:this._cellBindBuffer}},{binding:6,resource:{buffer:this._scrollOffsetBindBuffer}}]}constructor(a,b,c,d){super(a,b,c,d),this.type="fullfile",this.wgsl=cK,this._activeDoubleBufferIndex=0,this._upToDateLines=[new Set,new Set],this._visibleObjectCount=0,this._finalRenderedLine=0,this._scrollInitialized=!1,this._queuedBufferUpdates=[[],[]];let e=cM.maxSupportedLines*cM.maxSupportedColumns*6*Float32Array.BYTES_PER_ELEMENT;this._cellBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco full file cell buffer",size:e,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._cellValueBuffers=[new ArrayBuffer(e),new ArrayBuffer(e)],this._scrollOffsetBindBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco scroll offset buffer",size:2*Float32Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST})).object,this._scrollOffsetValueBuffer=new Float32Array(2)}onConfigurationChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}onDecorationsChanged(a){return this._invalidateAllLines(),!0}onTokensChanged(a){for(let b of a.ranges)this._invalidateLineRange(b.fromLineNumber,b.toLineNumber);return!0}onLinesDeleted(a){return this._invalidateLinesFrom(a.fromLineNumber),this._queueBufferUpdate(a),!0}onLinesInserted(a){return this._invalidateLinesFrom(a.fromLineNumber),!0}onLinesChanged(a){return this._invalidateLineRange(a.fromLineNumber,a.fromLineNumber+a.count),!0}onScrollChanged(a){let b=(0,t.fz)().devicePixelRatio;return this._scrollOffsetValueBuffer[0]=(a?.scrollLeft??this._context.viewLayout.getCurrentScrollLeft())*b,this._scrollOffsetValueBuffer[1]=(a?.scrollTop??this._context.viewLayout.getCurrentScrollTop())*b,this._device.queue.writeBuffer(this._scrollOffsetBindBuffer,0,this._scrollOffsetValueBuffer),!0}onThemeChanged(a){return this._invalidateAllLines(),!0}onLineMappingChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}onZonesChanged(a){return this._invalidateAllLines(),this._queueBufferUpdate(a),!0}_invalidateAllLines(){this._upToDateLines[0].clear(),this._upToDateLines[1].clear()}_invalidateLinesFrom(a){for(let b of[0,1]){let c=this._upToDateLines[b];for(let b of c)b>=a&&c.delete(b)}}_invalidateLineRange(a,b){for(let c=a;c<=b;c++)this._upToDateLines[0].delete(c),this._upToDateLines[1].delete(c)}reset(){for(let a of(this._invalidateAllLines(),[0,1])){let b=new Float32Array(this._cellValueBuffers[a]);b.fill(0,0,b.length),this._device.queue.writeBuffer(this._cellBindBuffer,0,b.buffer,0,b.byteLength)}this._finalRenderedLine=0}update(a,b){let c,d,e,f,g,h,i,j,k,l="",m=0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=(0,t.fz)().devicePixelRatio;this._scrollInitialized||(this.onScrollChanged(),this._scrollInitialized=!0);let B=new Float32Array(this._cellValueBuffers[this._activeDoubleBufferIndex]),C=6*cM.maxSupportedColumns,D=this._upToDateLines[this._activeDoubleBufferIndex],E=3e3,F=0,G=this._queuedBufferUpdates[this._activeDoubleBufferIndex];for(;G.length;){let a=G.shift();switch(a.type){case 2:case 8:case 17:B.fill(0),E=1,F=Math.max(F,this._finalRenderedLine),this._finalRenderedLine=0;break;case 10:{let b=(a.fromLineNumber-1)*cM.maxSupportedColumns*6,c=a.toLineNumber*cM.maxSupportedColumns*6,d=(this._finalRenderedLine-(a.toLineNumber-a.fromLineNumber+1))*cM.maxSupportedColumns*6;B.set(B.subarray(c),b),B.fill(0,d),E=Math.min(E,a.fromLineNumber),F=Math.max(F,this._finalRenderedLine),this._finalRenderedLine-=a.toLineNumber-a.fromLineNumber+1}}}for(n=a.startLineNumber;n<=a.endLineNumber;n++){if(!this._viewGpuContext.canRender(b,a,n)){y=(n-1)*cM.maxSupportedColumns*6,z=n*cM.maxSupportedColumns*6,B.fill(0,y,z),E=Math.min(E,n),F=Math.max(F,n);continue}if(!D.has(n)){E=Math.min(E,n),F=Math.max(F,n),h=a.getViewLineRenderingData(n),r=0,k=cG(h,b),m=b.spaceWidth*A,p=0,j=h.tokens,v=h.minColumn-1,w=0;for(let t=0,y=j.getCount();t<y;t++)if(!((w=j.getEndOffset(t))<=v)){for(x=j.getMetadata(t),o=v;o<w&&!(o>cM.maxSupportedColumns);o++){if(void 0===(c=k.getSegmentAtIndex(o)))continue;for(i of(l=c,h.isBasicASCII&&b.useMonospaceOptimizations||(m=this.glyphRasterizer.getTextMetrics(l).width),f=void 0,e=void 0,g=void 0,h.inlineDecorations))if(!(n<i.range.startLineNumber)&&!(n>i.range.endLineNumber)&&(n!==i.range.startLineNumber||!(o<i.range.startColumn-1))&&(n!==i.range.endLineNumber||!(o>=i.range.endColumn-1)))for(let a of cz.n.decorationCssRuleExtractor.getStyleRules(this._viewGpuContext.canvas.domNode,i.inlineClassName))for(let b of a.style){let c=a.styleMap.get(b)?.toString()??"";switch(b){case"color":{let a=b9.Q1.Format.CSS.parse(c);if(!a)throw new u.D7("Invalid color format "+c);f=a.toNumber32Bit();break}case"font-weight":e=function(a){switch(a){case"lighter":case"normal":return 400;case"bolder":case"bold":return 700}return parseInt(a)}(c)>=400;break;case"opacity":var H;g=(H=c).endsWith("%")?parseFloat(H.substring(0,H.length-1))/100:H.match(/^\d+(?:\.\d*)/)?parseFloat(H):1;break;default:throw new u.D7("Unexpected inline decoration style")}}if(" "===l||" "===l){if(s=((n-1)*cM.maxSupportedColumns+o)*6,B.fill(0,s,s+6)," "===l){let a=o+r;p+=m*((r=ac.A.nextRenderTabStop(o+r,h.tabSize))-a),r-=o+1}else p+=m;continue}let j=cz.n.decorationStyleCache.getOrCreateEntry(f,e,g);d=this._viewGpuContext.atlas.getGlyph(this.glyphRasterizer,l,x,j,p),q=Math.round(a.relativeVerticalOffset[n-a.startLineNumber]*A+Math.floor((a.lineHeight*A-(d.fontBoundingBoxAscent+d.fontBoundingBoxDescent))/2)+d.fontBoundingBoxAscent),B[(s=((n-1)*cM.maxSupportedColumns+o)*6)+0]=Math.floor(p),B[s+1]=q,B[s+4]=d.glyphIndex,B[s+5]=d.pageIndex,p+=m}v=w}y=((n-1)*cM.maxSupportedColumns+w)*6,z=n*cM.maxSupportedColumns*6,B.fill(0,y,z),D.add(n)}}let I=(a.endLineNumber-a.startLineNumber+1)*C;return(E=Math.min(E,cM.maxSupportedLines))<=(F=Math.min(F,cM.maxSupportedLines))&&this._device.queue.writeBuffer(this._cellBindBuffer,(E-1)*C*Float32Array.BYTES_PER_ELEMENT,B.buffer,(E-1)*C*Float32Array.BYTES_PER_ELEMENT,(F-E+1)*C*Float32Array.BYTES_PER_ELEMENT),this._finalRenderedLine=Math.max(this._finalRenderedLine,F),this._activeDoubleBufferIndex=+!this._activeDoubleBufferIndex,this._visibleObjectCount=I,I}draw(a,b){if(this._visibleObjectCount<=0)throw new u.D7("Attempt to draw 0 objects");a.draw(cD.xW.length/2,this._visibleObjectCount,void 0,(b.startLineNumber-1)*cM.maxSupportedColumns)}_queueBufferUpdate(a){this._queuedBufferUpdates[0].push(a),this._queuedBufferUpdates[1].push(a)}}var cN=c(97791),cO=function(a,b){return function(c,d){b(c,d,a)}};let cP=class extends Z{constructor(a,b,c,d){super(a),this._viewGpuContext=b,this._instantiationService=c,this._logService=d,this._atlasGpuTextureVersions=[],this._initialized=!1,this._glyphRasterizer=this._register(new w.HE),this._renderStrategy=this._register(new w.HE),this.canvas=this._viewGpuContext.canvas.domNode,this._register((0,cA.fm)(a=>{this._viewGpuContext.canvasDevicePixelDimensions.read(a);let b=this._lastViewportData;b&&setTimeout(()=>{b===this._lastViewportData&&this.renderText(b)})})),this.initWebgpu()}async initWebgpu(){let a,b;if(this._device=cz.n.deviceSync||await cz.n.device,this._store.isDisposed)return;let c=cz.n.atlas;this._register(c.onDidDeleteGlyphs(()=>{this._atlasGpuTextureVersions.length=0,this._atlasGpuTextureVersions[0]=0,this._atlasGpuTextureVersions[1]=0,this._renderStrategy.value.reset()}));let d=navigator.gpu.getPreferredCanvasFormat();this._viewGpuContext.ctx.configure({device:this._device,format:d,alphaMode:"premultiplied"}),this._renderPassColorAttachment={view:null,loadOp:"load",storeOp:"store"},this._renderPassDescriptor={label:"Monaco render pass",colorAttachments:[this._renderPassColorAttachment]};{let b=new Float32Array(6),c=(a=this.canvas.width,c=this.canvas.height)=>(b[0]=a,b[1]=c,b[2]=Math.ceil(this._context.configuration.options.get(165).contentLeft*(0,t.fz)().devicePixelRatio),b[3]=0,b[4]=b[0]-b[2],b[5]=b[1]-b[3],b);a=this._register(cC.B.createBuffer(this._device,{label:"Monaco uniform buffer",size:24,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST},()=>c())).object,this._register((0,cA.lp)(this._viewGpuContext.canvasDevicePixelDimensions,({width:b,height:d})=>{this._device.queue.writeBuffer(a,0,c(b,d))})),this._register((0,cA.lp)(this._viewGpuContext.contentLeft,()=>{this._device.queue.writeBuffer(a,0,c())}))}b=this._register(cC.B.createBuffer(this._device,{label:"Monaco atlas info uniform buffer",size:8,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST},()=>{let a=new Float32Array(2);return a[0]=c.pageSize,a[1]=c.pageSize,a})).object;let e=this._context.configuration.options.get(58),f=this._context.configuration.options.get(61);this._glyphRasterizer.value=this._register(new cN.O(f,e,this._viewGpuContext.devicePixelRatio.get(),cz.n.decorationStyleCache)),this._register((0,cA.lp)(this._viewGpuContext.devicePixelRatio,()=>{this._refreshGlyphRasterizer()})),this._renderStrategy.value=this._instantiationService.createInstance(cM,this._context,this._viewGpuContext,this._device,this._glyphRasterizer),this._glyphStorageBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco glyph storage buffer",size:cE.L.maximumPageCount*(24*cB.g.maximumGlyphCount),usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST})).object,this._atlasGpuTextureVersions[0]=0,this._atlasGpuTextureVersions[1]=0,this._atlasGpuTexture=this._register(cC.B.createTexture(this._device,{label:"Monaco atlas texture",format:"rgba8unorm",size:{width:c.pageSize,height:c.pageSize,depthOrArrayLayers:cE.L.maximumPageCount},dimension:"2d",usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT})).object,this._updateAtlasStorageBufferAndTexture(),this._vertexBuffer=this._register(cC.B.createBuffer(this._device,{label:"Monaco vertex buffer",size:cD.xW.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST},cD.xW)).object;let g=this._device.createShaderModule({label:"Monaco shader module",code:this._renderStrategy.value.wgsl});if(this._pipeline=this._device.createRenderPipeline({label:"Monaco render pipeline",layout:"auto",vertex:{module:g,buffers:[{arrayStride:2*Float32Array.BYTES_PER_ELEMENT,attributes:[{shaderLocation:0,offset:0,format:"float32x2"}]}]},fragment:{module:g,targets:[{format:d,blend:{color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"}}}]}}),this._rebuildBindGroup=()=>{this._bindGroup=this._device.createBindGroup({label:"Monaco bind group",layout:this._pipeline.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:this._glyphStorageBuffer}},{binding:2,resource:this._device.createSampler({label:"Monaco atlas sampler",magFilter:"nearest",minFilter:"nearest"})},{binding:3,resource:this._atlasGpuTexture.createView()},{binding:4,resource:{buffer:a}},{binding:5,resource:{buffer:b}},...this._renderStrategy.value.bindGroupEntries]})},this._rebuildBindGroup(),this._initialized=!0,this._initViewportData){for(let a of this._initViewportData)this.renderText(a);this._initViewportData=void 0}}_refreshRenderStrategy(a){if(this._renderStrategy.value?.type==="viewport"||a.endLineNumber<cM.maxSupportedLines&&this._viewportMaxColumn(a)<cM.maxSupportedColumns)return;this._logService.trace(`File is larger than ${cM.maxSupportedLines} lines or ${cM.maxSupportedColumns} columns, switching to viewport render strategy`);let b=this._instantiationService.createInstance(cL,this._context,this._viewGpuContext,this._device,this._glyphRasterizer);this._renderStrategy.value=b,this._register(b.onDidChangeBindGroupEntries(()=>this._rebuildBindGroup?.())),this._rebuildBindGroup?.()}_viewportMaxColumn(a){let b=0;for(let c=a.startLineNumber;c<=a.endLineNumber;c++)b=Math.max(b,a.getViewLineRenderingData(c).maxColumn);return b}_updateAtlasStorageBufferAndTexture(){for(let[a,b]of cz.n.atlas.pages.entries()){if(a>=cE.L.maximumPageCount){console.log(`Attempt to upload atlas page [${a}], only ${cE.L.maximumPageCount} are supported currently`);continue}if(b.version===this._atlasGpuTextureVersions[a])continue;this._logService.trace("Updating atlas page[",a,"] from version ",this._atlasGpuTextureVersions[a]," to version ",b.version);let c=new Float32Array(6*cB.g.maximumGlyphCount),d=0;for(let a of b.glyphs)c[d+0]=a.x,c[d+0+1]=a.y,c[d+2]=a.w,c[d+2+1]=a.h,c[d+4]=a.originOffsetX,c[d+4+1]=a.originOffsetY,d+=6;if(d/6>cB.g.maximumGlyphCount)throw Error(`Attempting to write more glyphs (${d/6}) than the GPUBuffer can hold (${cB.g.maximumGlyphCount})`);this._device.queue.writeBuffer(this._glyphStorageBuffer,6*a*cB.g.maximumGlyphCount*Float32Array.BYTES_PER_ELEMENT,c,0,6*cB.g.maximumGlyphCount),b.usedArea.right-b.usedArea.left>0&&b.usedArea.bottom-b.usedArea.top>0&&this._device.queue.copyExternalImageToTexture({source:b.source},{texture:this._atlasGpuTexture,origin:{x:b.usedArea.left,y:b.usedArea.top,z:a}},{width:b.usedArea.right-b.usedArea.left+1,height:b.usedArea.bottom-b.usedArea.top+1}),this._atlasGpuTextureVersions[a]=b.version}}prepareRender(a){throw new u.D7("Should not be called")}render(a){throw new u.D7("Should not be called")}onConfigurationChanged(a){return this._refreshGlyphRasterizer(),!0}onCursorStateChanged(a){return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onLineMappingChanged(a){return!0}onRevealRangeRequest(a){return!0}onScrollChanged(a){return!0}onThemeChanged(a){return!0}onZonesChanged(a){return!0}_refreshGlyphRasterizer(){let a=this._glyphRasterizer.value;if(!a)return;let b=this._context.configuration.options.get(58),c=this._context.configuration.options.get(61),d=this._viewGpuContext.devicePixelRatio.get();(a.fontFamily!==b||a.fontSize!==c||a.devicePixelRatio!==d)&&(this._glyphRasterizer.value=new cN.O(c,b,d,cz.n.decorationStyleCache))}renderText(a){if(this._initialized)return this._refreshRenderStrategy(a),this._renderText(a);this._initViewportData=this._initViewportData??[],this._initViewportData.push(a)}_renderText(a){this._viewGpuContext.rectangleRenderer.draw(a);let b=new bD(this._context.configuration,this._context.theme.type);this._renderStrategy.value.update(a,b),this._updateAtlasStorageBufferAndTexture();let c=this._device.createCommandEncoder({label:"Monaco command encoder"});this._renderPassColorAttachment.view=this._viewGpuContext.ctx.getCurrentTexture().createView({label:"Monaco canvas texture view"});let d=c.beginRenderPass(this._renderPassDescriptor);d.setPipeline(this._pipeline),d.setVertexBuffer(0,this._vertexBuffer);let e=Math.ceil(this._viewGpuContext.contentLeft.get()*this._viewGpuContext.devicePixelRatio.get());d.setScissorRect(e,0,this.canvas.width-e,this.canvas.height),d.setBindGroup(0,this._bindGroup),this._renderStrategy.value.draw(d,a),d.end();let f=c.finish();this._device.queue.submit([f]),this._lastViewportData=a,this._lastViewLineOptions=b}linesVisibleRangesForRange(a,b){if(!this._lastViewportData)return null;let c=a.endLineNumber,d=ab.Q.intersectRanges(a,this._lastViewportData.visibleRange);if(!d)return null;let e=this._lastViewportData.startLineNumber,f=this._lastViewportData.endLineNumber,g=this._lastViewportData,h=this._lastViewLineOptions;if(!g||!h)return null;let i=[],j=0;b&&(j=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(d.startLineNumber,1)).lineNumber);for(let a=d.startLineNumber;a<=d.endLineNumber;a++){if(a<e||a>f)continue;let g=a===d.startLineNumber?d.startColumn:1,k=a!==c,l=k?this._context.viewModel.getLineMaxColumn(a):d.endColumn,m=this._visibleRangesForLineRange(a,g,l);m&&(b&&a<c&&j!==(j=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(a+1,1)).lineNumber)&&(m.ranges[m.ranges.length-1].width+=h.spaceWidth),i.push(new aW.BG(m.outsideRenderedLine,a,aW.Y.from(m.ranges),k)))}return 0===i.length?null:i}_visibleRangesForLineRange(a,b,c){let d;if(this.shouldRender())return null;let e=this._lastViewportData,f=this._lastViewLineOptions;if(!e||!f||a<e.startLineNumber||a>e.endLineNumber)return null;let g=e.getViewLineRenderingData(a),h=g.content;g.isBasicASCII&&f.useMonospaceOptimizations||(d=cG(g,f));let i="",j=0,k=0;for(let a=0;a<b-1;a++){if(g.isBasicASCII&&f.useMonospaceOptimizations)i=h.charAt(a);else{if(void 0===(i=d.getSegmentAtIndex(a)))continue;k+=this._renderStrategy.value.glyphRasterizer.getTextMetrics(i).width/(0,t.fz)().devicePixelRatio-f.spaceWidth}" "===i?j=ac.A.nextRenderTabStop(j,g.tabSize):j++}let l=j,m=0;for(let a=b-1;a<c-1;a++){if(g.isBasicASCII&&f.useMonospaceOptimizations)i=h.charAt(a);else{if(void 0===(i=d.getSegmentAtIndex(a)))continue;m+=this._renderStrategy.value.glyphRasterizer.getTextMetrics(i).width/(0,t.fz)().devicePixelRatio-f.spaceWidth}" "===i?l=ac.A.nextRenderTabStop(l,g.tabSize):l++}return new aW.pj(!1,[new aW.IO(j*f.spaceWidth+k,(l-j)*f.spaceWidth+m)])}visibleRangeForPosition(a){let b=this._visibleRangesForLineRange(a.lineNumber,a.column,a.column);return b?new aW.qN(b.outsideRenderedLine,b.ranges[0].left):null}getLineWidth(a){if(!this._lastViewportData||!this._lastViewLineOptions||!this._viewGpuContext.canRender(this._lastViewLineOptions,this._lastViewportData,a))return;let b=this._lastViewportData.getViewLineRenderingData(a),c=this._visibleRangesForLineRange(a,1,b.maxColumn),d=c?.ranges.at(-1);if(d)return d.width}getPositionAtCoordinate(a,b){if(!this._lastViewportData||!this._lastViewLineOptions||!this._viewGpuContext.canRender(this._lastViewLineOptions,this._lastViewportData,a))return;let c=this._lastViewportData.getViewLineRenderingData(a),d=c.content,e=(0,t.fz)().devicePixelRatio,f=b*e,g=this._lastViewLineOptions.spaceWidth*e,h=cG(c,this._lastViewLineOptions),i=0,j=0,k=0,l=0;for(let a=0;a<d.length;a++){let b=h.getSegmentAtIndex(a);if(void 0===b){l++;continue}if(" "===b){let b=a+k;j=g*((k=ac.A.nextRenderTabStop(a+k,c.tabSize))-b),k-=a+1}else j=c.isBasicASCII&&this._lastViewLineOptions.useMonospaceOptimizations?g:this._renderStrategy.value.glyphRasterizer.getTextMetrics(b).width;if(f<i+j/2)break;i+=j,l++}return new aa.y(a,l+1)}};cP=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cO(2,cy._Y),cO(3,aL.rr)],cP),c(47610);var cQ=c(25536),cR=c(18668),cS=c(79851);class cT extends Z{}class cU{_getPageOfLine(a,b){return Math.floor((a-1)/b)}_getRangeForPage(a,b){let c=a*b;return new ab.Q(c+1,1,c+b+1,1)}fromEditorSelection(a,b,c,d){let e,f,g,h=this._getPageOfLine(b.startLineNumber,c),i=this._getRangeForPage(h,c),j=this._getPageOfLine(b.endLineNumber,c),k=this._getRangeForPage(j,c),l=i.intersectRanges(new ab.Q(1,1,b.startLineNumber,b.startColumn));if(d&&a.getValueLengthInRange(l,1)>500){let b=a.modifyPosition(l.getEndPosition(),-500);l=ab.Q.fromPositions(b,l.getEndPosition())}let m=a.getValueInRange(l,1),n=a.getLineCount(),o=a.getLineMaxColumn(n),p=k.intersectRanges(new ab.Q(b.endLineNumber,b.endColumn,n,o));if(d&&a.getValueLengthInRange(p,1)>500){let b=a.modifyPosition(p.getStartPosition(),500);p=ab.Q.fromPositions(p.getStartPosition(),b)}let q=a.getValueInRange(p,1);if(h===j||h+1===j)e=a.getValueInRange(b,1);else{let c=i.intersectRanges(b),d=k.intersectRanges(b);e=a.getValueInRange(c,1)+String.fromCharCode(8230)+a.getValueInRange(d,1)}return d&&e.length>1e3&&(e=e.substring(0,500)+String.fromCharCode(8230)+e.substring(e.length-500,e.length)),0===b.getDirection()?(f=m.length,g=m.length+e.length):(g=m.length,f=m.length+e.length),{value:m+e+q,selection:b,selectionStart:f,selectionEnd:g,startPositionWithinEditor:l.getStartPosition(),newlineCountBeforeSelection:l.endLineNumber-l.startLineNumber}}}function cV(a,b){if(1===a.get(2)){let a=b.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),c=b.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),d=b.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),e=cQ.kg(56,"The editor is not accessible at this time.");return a?cQ.kg(57,"{0} To enable screen reader optimized mode, use {1}",e,a):c?cQ.kg(58,"{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",e,c):d?cQ.kg(59,"{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",e,d):e}return a.get(8)}function cW(a){let b=0,c=-1;for(;-1!==(c=a.indexOf("\n",c+1));)b++;return b}var cX=c(91834),cY=function(a,b){return function(c,d){b(c,d,a)}};class cZ{constructor(a,b,c,d,e){this._context=a,this.modelLineNumber=b,this.distanceToModelLineStart=c,this.widthOfHiddenLineTextBefore=d,this.distanceToModelLineEnd=e,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(a){let b=new aa.y(this.modelLineNumber,this.distanceToModelLineStart+1),c=new aa.y(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(b),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(c),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=a.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=a.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(a){return this._previousPresentation||(a?this._previousPresentation=a:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}let c$=z.gm,c_=class extends cT{constructor(a,b,c,d,e,f){super(a),this._keybindingService=e,this._instantiationService=f,this._primaryCursorPosition=new aa.y(1,1),this._primaryCursorVisibleRange=null,this._viewController=c,this._visibleRangeProvider=d,this._scrollLeft=0,this._scrollTop=0;let g=this._context.configuration.options,h=g.get(165);this._setAccessibilityOptions(g),this._contentLeft=h.contentLeft,this._contentWidth=h.contentWidth,this._contentHeight=h.height,this._fontInfo=g.get(59),this._emptySelectionClipboard=g.get(45),this._copyWithSyntaxHighlighting=g.get(31),this._visibleTextArea=null,this._selections=[new aw.L(1,1,1,1)],this._modelSelections=[new aw.L(1,1,1,1)],this._lastRenderPosition=null,this.textArea=(0,W.Z)(document.createElement("textarea")),$.write(this.textArea,7),this.textArea.setClassName(`inputarea ${bB}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");let{tabSize:i}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${i*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",cV(g,this._keybindingService)),this.textArea.setAttribute("aria-required",g.get(9)?"true":"false"),this.textArea.setAttribute("tabindex",String(g.get(140))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",cQ.kg(60,"editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",g.get(104)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=(0,W.Z)(document.createElement("div")),this.textAreaCover.setPosition("absolute"),b.appendChild(this.textArea),b.appendChild(this.textAreaCover);let j=new cU,k=this._register(new aS(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(aR,{getDataToCopy:()=>(0,aM.Ps)(this._context.viewModel,this._modelSelections,this._emptySelectionClipboard,this._copyWithSyntaxHighlighting),getScreenReaderContent:()=>{if(1===this._accessibilitySupport){let a=this._selections[0];if(C.zx&&a.isEmpty()){let b=a.getStartPosition(),c=this._getWordBeforePosition(b);if(0===c.length&&(c=this._getCharacterBeforePosition(b)),c.length>0)return new aN(c,c.length,c.length,ab.Q.fromPositions(b),0)}if(C.zx&&!a.isEmpty()&&500>this._context.viewModel.getValueLengthInRange(a,0)){let b=this._context.viewModel.getValueInRange(a,0);return new aN(b,0,b.length,a,0)}if(z.nr&&!a.isEmpty()){let a="vscode-placeholder";return new aN(a,0,a.length,null,void 0)}return aN.EMPTY}if(z.m0){let a=this._selections[0];if(a.isEmpty()){let b=a.getStartPosition(),[c,d]=this._getAndroidWordAtPosition(b);if(c.length>0)return new aN(c,d,d,ab.Q.fromPositions(b),0)}return aN.EMPTY}let a=j.fromEditorSelection(this._context.viewModel,this._selections[0],this._accessibilityPageSize,0===this._accessibilitySupport);return aN.fromScreenReaderContentState(a)},deduceModelPosition:(a,b,c)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(a,b,c)},k,C.OS,{isAndroid:z.m0,isChrome:z.H8,isFirefox:z.gm,isSafari:z.nr})),this._register(this._textAreaInput.onKeyDown(a=>{this._viewController.emitKeyDown(a)})),this._register(this._textAreaInput.onKeyUp(a=>{this._viewController.emitKeyUp(a)})),this._register(this._textAreaInput.onPaste(a=>{let b=!1,c=null,d=null;a.metadata&&(b=this._emptySelectionClipboard&&!!a.metadata.isFromEmptySelection,c=void 0!==a.metadata.multicursorText?a.metadata.multicursorText:null,d=a.metadata.mode),this._viewController.paste(a.text,b,c,d)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(a=>{a.replacePrevCharCnt||a.replaceNextCharCnt||a.positionDelta?this._viewController.compositionType(a.text,a.replacePrevCharCnt,a.replaceNextCharCnt,a.positionDelta):this._viewController.type(a.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(a=>{this._viewController.setSelection(a)})),this._register(this._textAreaInput.onCompositionStart(a=>{let b=this.textArea.domNode,c=this._modelSelections[0],{distanceToModelLineStart:d,widthOfHiddenTextBefore:e}=(()=>{let a=b.value.substring(0,Math.min(b.selectionStart,b.selectionEnd)),d=a.lastIndexOf("\n"),e=a.substring(d+1),f=e.lastIndexOf(" "),g=e.length-f-1,h=c.getStartPosition(),i=Math.min(h.column-1,g),j=h.column-1-i,k=e.substring(0,e.length-i),{tabSize:l}=this._context.viewModel.model.getOptions();return{distanceToModelLineStart:j,widthOfHiddenTextBefore:function(a,b,c,d){if(0===b.length)return 0;let e=a.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";let f=a.createElement("span");(0,y.M)(f,c),f.style.whiteSpace="pre",f.style.tabSize=`${d*c.spaceWidth}px`,f.append(b),e.appendChild(f),a.body.appendChild(e);let g=f.offsetWidth;return e.remove(),g}(this.textArea.domNode.ownerDocument,k,this._fontInfo,l)}})(),{distanceToModelLineEnd:f}=(()=>{let a=b.value.substring(Math.max(b.selectionStart,b.selectionEnd)),d=a.indexOf("\n"),e=-1===d?a:a.substring(0,d),f=e.indexOf(" "),g=-1===f?e.length:e.length-f-1,h=c.getEndPosition(),i=Math.min(this._context.viewModel.model.getLineMaxColumn(h.lineNumber)-h.column,g);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(h.lineNumber)-h.column-i}})();this._context.viewModel.revealRange("keyboard",!0,ab.Q.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new cZ(this._context,c.startLineNumber,d,e,f),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${bB} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(a=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${bB}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(cR.M.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}get domNode(){return this.textArea}writeScreenReaderContent(a){this._textAreaInput.writeNativeTextAreaContent(a)}dispose(){super.dispose(),this.textArea.domNode.remove(),this.textAreaCover.domNode.remove()}_getAndroidWordAtPosition(a){let b=this._context.viewModel.getLineContent(a.lineNumber),c=(0,cX.i)('`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',[]),d=!0,e=a.column,f=!0,g=a.column,h=0;for(;h<50&&(d||f);){if(d&&e<=1&&(d=!1),d){let a=b.charCodeAt(e-2);0!==c.get(a)?d=!1:e--}if(f&&g>b.length&&(f=!1),f){let a=b.charCodeAt(g-1);0!==c.get(a)?f=!1:g++}h++}return[b.substring(e-1,g-1),a.column-e]}_getWordBeforePosition(a){let b=this._context.viewModel.getLineContent(a.lineNumber),c=(0,cX.i)(this._context.configuration.options.get(148),[]),d=a.column,e=0;for(;d>1;){let f=b.charCodeAt(d-2);if(0!==c.get(f)||e>50)return b.substring(d-1,a.column-1);e++,d--}return b.substring(0,a.column-1)}_getCharacterBeforePosition(a){if(a.column>1){let b=this._context.viewModel.getLineContent(a.lineNumber).charAt(a.column-2);if(!aK.pc(b.charCodeAt(0)))return b}return""}_setAccessibilityOptions(a){this._accessibilitySupport=a.get(2);let b=a.get(3);2===this._accessibilitySupport&&b===K.qB.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=b;let c=a.get(165).wrappingColumn;if(-1!==c&&1!==this._accessibilitySupport){let b=a.get(59);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(c*b.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=+!c$}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);this._setAccessibilityOptions(b),this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,this._contentHeight=c.height,this._fontInfo=b.get(59),this._emptySelectionClipboard=b.get(45),this._copyWithSyntaxHighlighting=b.get(31),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");let{tabSize:d}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${d*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",cV(b,this._keybindingService)),this.textArea.setAttribute("aria-required",b.get(9)?"true":"false"),this.textArea.setAttribute("tabindex",String(b.get(140))),(a.hasChanged(41)||a.hasChanged(104))&&this._ensureReadOnlyAttribute(),a.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(a){return this._selections=a.selections.slice(0),this._modelSelections=a.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return this._scrollLeft=a.scrollLeft,this._scrollTop=a.scrollTop,!0}onZonesChanged(a){return!0}isFocused(){return this._textAreaInput.isFocused()}focus(){this._textAreaInput.focusTextArea()}refreshFocusState(){this._textAreaInput.refreshFocusState()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(a){a.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",a.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),a.role&&this.textArea.setAttribute("role",a.role)}_ensureReadOnlyAttribute(){let a=this._context.configuration.options;!cR.M.enabled||a.get(41)&&a.get(104)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(a){this._primaryCursorPosition=new aa.y(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=a.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(a)}render(a){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){let a=this._visibleTextArea.visibleTextareaStart,b=this._visibleTextArea.visibleTextareaEnd,c=this._visibleTextArea.startPosition,d=this._visibleTextArea.endPosition;if(c&&d&&a&&b&&b.left>=this._scrollLeft&&a.left<=this._scrollLeft+this._contentWidth){let e=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,f=cW(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart)),g=this._visibleTextArea.widthOfHiddenLineTextBefore,h=this._contentLeft+a.left-this._scrollLeft,i=b.left-a.left+1;if(h<this._contentLeft){let a=this._contentLeft-h;h+=a,g+=a,i-=a}i>this._contentWidth&&(i=this._contentWidth);let j=this._context.viewLayout.getLineHeightForLineNumber(c.lineNumber),k=this._context.viewModel.getFontSizeAtPosition(this._primaryCursorPosition),l=this._context.viewModel.getViewLineData(c.lineNumber),m=l.tokens.findTokenIndexAtOffset(c.column-1),n=m===l.tokens.findTokenIndexAtOffset(d.column-1),o=this._visibleTextArea.definePresentation(n?l.tokens.getPresentation(m):null);this.textArea.domNode.scrollTop=f*j,this.textArea.domNode.scrollLeft=g,this._doRender({lastRenderPosition:null,top:e,left:h,width:i,height:j,useCover:!1,color:(bN.dG.getColorMap()||[])[o.foreground],italic:o.italic,bold:o.bold,underline:o.underline,strikethrough:o.strikethrough,fontSize:k})}return}if(!this._primaryCursorVisibleRange)return void this._renderAtTopLeft();let a=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(a<this._contentLeft||a>this._contentLeft+this._contentWidth)return void this._renderAtTopLeft();let b=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(b<0||b>this._contentHeight)return void this._renderAtTopLeft();if(C.zx||2===this._accessibilitySupport){let c=this._primaryCursorPosition.lineNumber,d=this._context.viewLayout.getLineHeightForLineNumber(c);this._doRender({lastRenderPosition:this._primaryCursorPosition,top:b,left:this._textAreaWrapping?this._contentLeft:a,width:this._textAreaWidth,height:d,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;let e=this._textAreaInput.textAreaState.newlineCountBeforeSelection??cW(this.textArea.domNode.value.substring(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=e*d;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:b,left:this._textAreaWrapping?this._contentLeft:a,width:this._textAreaWidth,height:+!c$,useCover:!1})}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:+!c$,useCover:!0})}_doRender(a){this._lastRenderPosition=a.lastRenderPosition;let b=this.textArea,c=this.textAreaCover;(0,y.M)(b,this._fontInfo),b.setTop(a.top),b.setLeft(a.left),b.setWidth(a.width),b.setHeight(a.height),b.setLineHeight(a.height),b.setFontSize(a.fontSize??this._fontInfo.fontSize),b.setColor(a.color?b9.Q1.Format.CSS.formatHex(a.color):""),b.setFontStyle(a.italic?"italic":""),a.bold&&b.setFontWeight("bold"),b.setTextDecoration(`${a.underline?" underline":""}${a.strikethrough?" line-through":""}`),c.setTop(a.useCover?a.top:0),c.setLeft(a.useCover?a.left:0),c.setWidth(a.useCover?a.width:0),c.setHeight(a.useCover?a.height:0);let d=this._context.configuration.options;d.get(66)?c.setClassName("monaco-editor-background textAreaCover "+bJ.OUTER_CLASS_NAME):0!==d.get(76).renderType?c.setClassName("monaco-editor-background textAreaCover "+bA.CLASS_NAME):c.setClassName("monaco-editor-background textAreaCover")}};c_=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cY(4,cS.b),cY(5,cy._Y)],c_),c(38288);let c0=class extends w.jG{constructor(a,b,c){super(),this._domNode=b,this._onFocusChange=c,this._isFocused=!1,this._isPaused=!1,this._register((0,t.ko)(this._domNode,"focus",()=>{a.trace("NativeEditContext.focus"),this._isPaused||this.refreshFocusState()})),this._register((0,t.ko)(this._domNode,"blur",()=>{a.trace("NativeEditContext.blur"),this._isPaused||this._handleFocusedChanged(!1)}))}pause(){this._isPaused=!0}resume(){this._isPaused=!1,this.refreshFocusState()}_handleFocusedChanged(a){this._isFocused!==a&&(this._isFocused=a,this._onFocusChange(this._isFocused))}focus(){this._domNode.focus(),this.refreshFocusState()}refreshFocusState(){let a=(0,t.jG)(this._domNode),b=a?a.activeElement:(0,t.bq)(),c=this._domNode===b;this._handleFocusedChanged(c)}get isFocused(){return this._isFocused}};function c1(a,b,c,d){return a.addEventListener(b,c,d),{dispose(){a.removeEventListener(b,c)}}}c0=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(f=aL.rr,function(a,b){f(a,b,0)})],c0);var c2=c(22889),c3=c(16749);let c4=(0,aZ.H)("richScreenReaderContent",{createHTML:a=>a}),c5="data-line-number",c6=class extends w.jG{constructor(a,b,c,d){super(),this._domNode=a,this._context=b,this._viewController=c,this._accessibilityService=d,this._selectionChangeListener=this._register(new w.HE),this._accessibilityPageSize=1,this._ignoreSelectionChangeTime=0,this._state=c9.NULL,this._strategy=new da,this._renderedLines=new Map,this._renderedSelection=new aw.L(1,1,1,1),this.onConfigurationChanged(this._context.configuration.options)}updateScreenReaderContent(a){let b=(0,t.fz)().document.activeElement;if(b&&b===this._domNode.domNode)if(this._accessibilityService.isScreenReaderOptimized()){let b=this._getScreenReaderContentLineIntervals(a);this._state.equals(b)||(this._state=b,this._renderedLines=this._renderScreenReaderContent(b)),this._renderedSelection.equalsSelection(a)||(this._renderedSelection=a,this._setSelectionOnScreenReaderContent(this._context,this._renderedLines,a))}else this._state=c9.NULL,this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.textContent=""}updateScrollTop(a){let b=this._state.intervals;if(!b.length)return;let c=this._context.viewModel.viewLayout,d=b[0].startLine,e=c.getVerticalOffsetForLineNumber(d),f=c.getVerticalOffsetForLineNumber(a.positionLineNumber);this._domNode.domNode.scrollTop=f-e}onFocusChange(a){a?this._selectionChangeListener.value=this._setSelectionChangeListener():this._selectionChangeListener.value=void 0}onConfigurationChanged(a){this._accessibilityPageSize=a.get(3)}onWillCut(){this._setIgnoreSelectionChangeTime("onCut")}onWillPaste(){this._setIgnoreSelectionChangeTime("onWillPaste")}_setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}_setSelectionChangeListener(){let a=0;return(0,t.ko)(this._domNode.domNode.ownerDocument,"selectionchange",()=>{if((0,t.fz)().document.activeElement!==this._domNode.domNode||!this._accessibilityService.isScreenReaderOptimized()||!cR.M.enabled)return;let b=Date.now(),c=b-a;if(a=b,c<5)return;let d=b-this._ignoreSelectionChangeTime;if(this._ignoreSelectionChangeTime=0,d<100)return;let e=this._getEditorSelectionFromDomRange();e&&this._viewController.setSelection(e)})}_renderScreenReaderContent(a){let b=[],c=new Map;for(let d of a.intervals)for(let a=d.startLine;a<=d.endLine;a++){let d=this._renderLine(a);c.set(a,d),b.push(d.domNode)}return this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.replaceChildren(...b),c}_renderLine(a){let b,c=this._context.viewModel,d=c.getViewLineRenderingData(a),e=this._context.configuration.options,f=e.get(59),g=e.get(133),h=e.get(108),i=e.get(60),j=e.get(40),k=c2.d.filter(d.inlineDecorations,a,d.minColumn,d.maxColumn),l=f.isMonospace&&!j,m=i!==K.Bc.OFF;b="off"===e.get(47)?e.get(113):"none";let n=new c3.zL(l,f.canUseHalfwidthRightwardsArrow,d.content,d.continuesWithWrappedLine,d.isBasicASCII,d.containsRTL,d.minColumn-1,d.tokens,k,d.tabSize,d.startVisibleColumn,f.spaceWidth,f.middotWidth,f.wsmiddotWidth,g,b,h,m,null,null,0,!0),o=new a$.fe(1e4),p=(0,c3.UW)(n,o),q=o.build(),r=c4?.createHTML(q)??q,s=c.viewLayout.getLineHeightForLineNumber(a)+"px",t=document.createElement("div");return t.innerHTML=r,t.style.lineHeight=s,t.style.height=s,t.setAttribute(c5,a.toString()),new c7(t,p.characterMapping)}_setSelectionOnScreenReaderContent(a,b,c){let d=(0,t.fz)().document.getSelection();if(!d)return;let e=c.startLineNumber,f=c.endLineNumber,g=b.get(e),h=b.get(f);if(!g||!h)return;let i=a.viewModel,j=i.model,k=i.coordinatesConverter,l=new ab.Q(e,1,e,c.selectionStartColumn),m=k.convertViewRangeToModelRange(l),n=j.getCharacterCountInRange(m),o=new ab.Q(f,1,f,c.positionColumn),p=k.convertViewRangeToModelRange(o),q=j.getCharacterCountInRange(p),r=g.characterMapping.getDomPosition(n),s=h.characterMapping.getDomPosition(q),u=g.domNode.firstChild,v=h.domNode.firstChild,w=u.childNodes,x=v.childNodes,y=w.item(r.partIndex),z=x.item(s.partIndex);y.firstChild&&z.firstChild&&(this._setIgnoreSelectionChangeTime("setRange"),d.setBaseAndExtent(y.firstChild,1===c.startColumn?0:r.charIndex+1,z.firstChild,1===c.endColumn?0:s.charIndex+1))}_getScreenReaderContentLineIntervals(a){return this._strategy.fromEditorSelection(this._context.viewModel,a,this._accessibilityPageSize)}_getEditorSelectionFromDomRange(){if(!this._renderedLines)return;let a=(0,t.fz)().document.getSelection();if(!a||0===a.rangeCount)return;let b=a.getRangeAt(0),c=b.startContainer,d=b.endContainer,e=c.parentElement,f=d.parentElement;if(!e||!(0,t.sb)(e)||!f||!(0,t.sb)(f))return;let g=e.parentElement?.parentElement,h=f.parentElement?.parentElement;if(!g||!h)return;let i=g.getAttribute(c5),j=h.getAttribute(c5);if(!i||!j)return;let k=parseInt(i),l=parseInt(j),m=this._renderedLines.get(k)?.characterMapping,n=this._renderedLines.get(l)?.characterMapping;if(!m||!n)return;let o=(0,_.r)(m,e,b.startOffset),p=(0,_.r)(n,f,b.endOffset);return"forward"===a.direction?new aw.L(k,o,l,p):new aw.L(l,p,k,o)}};c6=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(g=N.j,function(a,b){g(a,b,3)})],c6);class c7{constructor(a,b){this.domNode=a,this.characterMapping=b}}class c8{constructor(a,b){this.startLine=a,this.endLine=b}}class c9{constructor(a,b){this.intervals=b;let c="";for(let d of b)for(let b=d.startLine;b<=d.endLine;b++)c+=a.getLineContent(b)+"\n";this.value=c}equals(a){return this.value===a.value}static get NULL(){return new c9({getLineContent:()=>"",getLineCount:()=>1,getLineMaxColumn:()=>1,getValueInRange:()=>"",getValueLengthInRange:()=>0,modifyPosition:(a,b)=>a},[])}}class da{constructor(){}_getPageOfLine(a,b){return Math.floor((a-1)/b)}_getRangeForPage(a,b,c){let d=b*c,e=Math.min(d+c,a.getLineCount());return new c8(d+1,e)}fromEditorSelection(a,b,c){let d=this._getPageOfLine(b.startLineNumber,c),e=this._getRangeForPage(a,d,c),f=this._getPageOfLine(b.endLineNumber,c),g=this._getRangeForPage(a,f,c),h=[{startLine:e.startLine,endLine:e.endLine}];return d+1<f&&h.push({startLine:g.startLine,endLine:g.endLine}),new c9(a,h)}}var db=c(32793);let dc=class extends w.jG{constructor(a,b,c,d){super(),this._domNode=a,this._context=b,this._viewController=c,this._accessibilityService=d,this._selectionChangeListener=this._register(new w.HE),this._accessibilityPageSize=1,this._ignoreSelectionChangeTime=0,this._strategy=new cU,this.onConfigurationChanged(this._context.configuration.options)}updateScreenReaderContent(a){let b=this._domNode.domNode,c=(0,t.fz)().document.activeElement;if(c&&c===b)if(this._accessibilityService.isScreenReaderOptimized()){this._state=this._getScreenReaderContentState(a),b.textContent!==this._state.value&&(this._setIgnoreSelectionChangeTime("setValue"),b.textContent=this._state.value);let c=(0,t.fz)().document.getSelection();if(!c)return;let d=this._getScreenReaderRange(this._state.selectionStart,this._state.selectionEnd);if(!d)return;this._setIgnoreSelectionChangeTime("setRange"),c.setBaseAndExtent(d.anchorNode,d.anchorOffset,d.focusNode,d.focusOffset)}else this._state=void 0,this._setIgnoreSelectionChangeTime("setValue"),this._domNode.domNode.textContent=""}updateScrollTop(a){if(!this._state)return;let b=this._context.viewModel.viewLayout,c=this._state.startPositionWithinEditor.lineNumber,d=b.getVerticalOffsetForLineNumber(c),e=b.getVerticalOffsetForLineNumber(a.positionLineNumber);this._domNode.domNode.scrollTop=e-d}onFocusChange(a){a?this._selectionChangeListener.value=this._setSelectionChangeListener():this._selectionChangeListener.value=void 0}onConfigurationChanged(a){this._accessibilityPageSize=a.get(3)}onWillCut(){this._setIgnoreSelectionChangeTime("onCut")}onWillPaste(){this._setIgnoreSelectionChangeTime("onWillPaste")}_setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}_setSelectionChangeListener(){let a=0;return(0,t.ko)(this._domNode.domNode.ownerDocument,"selectionchange",()=>{let b=this._accessibilityService.isScreenReaderOptimized();if(!this._state||!b||!cR.M.enabled||(0,t.fz)().document.activeElement!==this._domNode.domNode)return;let c=(0,t.fz)().document.getSelection();if(!c||0===c.rangeCount)return;let d=c.getRangeAt(0),e=Date.now(),f=e-a;if(a=e,f<5)return;let g=e-this._ignoreSelectionChangeTime;this._ignoreSelectionChangeTime=0,g<100||this._viewController.setSelection(this._getEditorSelectionFromDomRange(this._context,this._state,c.direction,d))})}_getScreenReaderContentState(a){let b=this._strategy.fromEditorSelection(this._context.viewModel,a,this._accessibilityPageSize,0===this._accessibilityService.getAccessibilitySupport()),c=this._context.viewModel.model.getPositionAt(1/0),d=b.value;return 1===c.column&&a.getEndPosition().equals(c)&&(d+="\n"),b.value=d,b}_getScreenReaderRange(a,b){let c=this._domNode.domNode.firstChild;if(!c)return;let d=new globalThis.Range;return d.setStart(c,a),d.setEnd(c,b),{anchorNode:c,anchorOffset:a,focusNode:c,focusOffset:b}}_getEditorSelectionFromDomRange(a,b,c,d){let e=a.viewModel,f=e.model,g=e.coordinatesConverter.convertViewPositionToModelPosition(b.startPositionWithinEditor),h=f.getOffsetAt(g),i=d.startOffset+h,j=d.endOffset+h;if(1===f.getEndOfLineSequence()){let a=b.value,c=new db.a(a),e=c.getPosition(d.startOffset),f=c.getPosition(d.endOffset);i+=e.lineNumber-1,j+=f.lineNumber-1}let k=f.getPositionAt(i),l=f.getPositionAt(j),m="forward"===c?k:l,n="forward"===c?l:k;return aw.L.fromPositions(m,n)}};dc=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(h=N.j,function(a,b){h(a,b,3)})],dc);var dd=function(a,b){return function(c,d){b(c,d,a)}};let de=class extends w.jG{constructor(a,b,c,d,e){super(),this._domNode=a,this._context=b,this._viewController=c,this._keybindingService=d,this._accessibilityService=e,this._contentLeft=1,this._contentWidth=1,this._contentHeight=1,this._divWidth=1,this._primarySelection=new aw.L(1,1,1,1),this._primaryCursorVisibleRange=null,this._state=this._register(new w.HE),this._instantiateScreenReaderContent(),this._updateConfigurationSettings(),this._updateDomAttributes()}onWillPaste(){this._state.value?.onWillPaste()}onWillCut(){this._state.value?.onWillCut()}handleFocusChange(a){this._state.value?.onFocusChange(a),this.writeScreenReaderContent()}onConfigurationChanged(a){this._instantiateScreenReaderContent(),this._updateConfigurationSettings(),this._updateDomAttributes(),a.hasChanged(2)&&this.writeScreenReaderContent()}_instantiateScreenReaderContent(){let a=this._context.configuration.options.get(107);this._renderRichContent!==a&&(this._renderRichContent=a,this._state.value=this._createScreenReaderContent(a))}_createScreenReaderContent(a){return a?new c6(this._domNode,this._context,this._viewController,this._accessibilityService):new dc(this._domNode,this._context,this._viewController,this._accessibilityService)}_updateConfigurationSettings(){let a=this._context.configuration.options,b=a.get(165),c=b.wrappingColumn;this._contentLeft=b.contentLeft,this._contentWidth=b.contentWidth,this._contentHeight=b.height,this._fontInfo=a.get(59),this._divWidth=Math.round(c*this._fontInfo.typicalHalfwidthCharacterWidth),this._state.value?.onConfigurationChanged(a)}_updateDomAttributes(){let a=this._context.configuration.options;this._domNode.domNode.setAttribute("role","textbox"),this._domNode.domNode.setAttribute("aria-required",a.get(9)?"true":"false"),this._domNode.domNode.setAttribute("aria-multiline","true"),this._domNode.domNode.setAttribute("aria-autocomplete",a.get(104)?"none":"both"),this._domNode.domNode.setAttribute("aria-roledescription",(0,cQ.kg)(55,"editor")),this._domNode.domNode.setAttribute("aria-label",cV(a,this._keybindingService));let b=this._context.viewModel.model.getOptions().tabSize,c=a.get(59).spaceWidth;this._domNode.domNode.style.tabSize=`${b*c}px`;let d=a.get(154),e="inherit"===d?a.get(153):d,f="inherit"===e?a.get(149):e;this._domNode.domNode.style.textWrap="off"===f?"nowrap":"wrap"}onCursorStateChanged(a){this._primarySelection=a.selections[0]??new aw.L(1,1,1,1)}prepareRender(a){this.writeScreenReaderContent(),this._primaryCursorVisibleRange=a.visibleRangeForPosition(this._primarySelection.getPosition())}render(a){if(!this._primaryCursorVisibleRange)return void this._renderAtTopLeft();let b=this._context.viewLayout.getCurrentScrollLeft(),c=this._contentLeft+this._primaryCursorVisibleRange.left-b;if(c<this._contentLeft||c>this._contentLeft+this._contentWidth)return void this._renderAtTopLeft();let d=this._context.viewLayout.getCurrentScrollTop(),e=this._primarySelection.positionLineNumber,f=this._context.viewLayout.getVerticalOffsetForLineNumber(e)-d;if(f<0||f>this._contentHeight)return void this._renderAtTopLeft();let g=this._context.viewLayout.getLineHeightForLineNumber(e);this._doRender(f,this._contentLeft,this._divWidth,g),this._state.value?.updateScrollTop(this._primarySelection)}_renderAtTopLeft(){this._doRender(0,0,this._contentWidth,1)}_doRender(a,b,c,d){(0,y.M)(this._domNode,this._fontInfo),this._domNode.setTop(a),this._domNode.setLeft(b),this._domNode.setWidth(c),this._domNode.setHeight(d),this._domNode.setLineHeight(d)}setAriaOptions(a){a.activeDescendant?(this._domNode.setAttribute("aria-haspopup","true"),this._domNode.setAttribute("aria-autocomplete","list"),this._domNode.setAttribute("aria-activedescendant",a.activeDescendant)):(this._domNode.setAttribute("aria-haspopup","false"),this._domNode.setAttribute("aria-autocomplete","both"),this._domNode.removeAttribute("aria-activedescendant")),a.role&&this._domNode.setAttribute("role",a.role)}writeScreenReaderContent(){this._state.value?.updateScreenReaderContent(this._primarySelection)}};de=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dd(3,cS.b),dd(4,N.j)],de),(n||(n={})).create=function(a,b){return new a.EditContext(b)};var df=c(25285),dg=function(a,b){return function(c,d){b(c,d,a)}};!function(a){a.NONE="edit-context-composition-none",a.SECONDARY="edit-context-composition-secondary",a.PRIMARY="edit-context-composition-primary"}(o||(o={}));let dh=class extends cT{constructor(a,b,c,d,e,f,g){let h;super(b),this._viewController=d,this._visibleRangeProvider=e,this.logService=g,this._previousEditContextSelection=new cs.L(0,0),this._editContextPrimarySelection=new aw.L(1,1,1,1),this._decorations=[],this._primarySelection=new aw.L(1,1,1,1),this._targetWindowId=-1,this._scrollTop=0,this._scrollLeft=0,this.domNode=new W.D(document.createElement("div")),this.domNode.setClassName("native-edit-context"),this._imeTextArea=new W.D(document.createElement("textarea")),this._imeTextArea.setClassName("ime-text-area"),this._imeTextArea.setAttribute("readonly","true"),this._imeTextArea.setAttribute("tabindex","-1"),this._imeTextArea.setAttribute("aria-hidden","true"),this.domNode.setAttribute("autocorrect","off"),this.domNode.setAttribute("autocapitalize","off"),this.domNode.setAttribute("autocomplete","off"),this.domNode.setAttribute("spellcheck","false"),this._updateDomAttributes(),c.appendChild(this.domNode),c.appendChild(this._imeTextArea),this._parent=c.domNode,this._focusTracker=this._register(new c0(g,this.domNode.domNode,a=>{g.trace("NativeEditContext#handleFocusChange : ",a),this._screenReaderSupport.handleFocusChange(a),this._context.viewModel.setHasFocus(a)}));let i=(0,t.zk)(this.domNode.domNode);this._editContext=n.create(i),this.setEditContextOnDomNode(),this._screenReaderSupport=this._register(f.createInstance(de,this.domNode,b,this._viewController)),this._register((0,t.ko)(this.domNode.domNode,"copy",a=>{this.logService.trace("NativeEditContext#copy"),this._ensureClipboardGetsEditorSelection(a)})),this._register((0,t.ko)(this.domNode.domNode,"cut",a=>{this.logService.trace("NativeEditContext#cut"),this._screenReaderSupport.onWillCut(),this._ensureClipboardGetsEditorSelection(a),this.logService.trace("NativeEditContext#cut (before viewController.cut)"),this._viewController.cut()})),this._register((0,t.ko)(this.domNode.domNode,"keyup",a=>this._onKeyUp(a))),this._register((0,t.ko)(this.domNode.domNode,"keydown",async a=>this._onKeyDown(a))),this._register((0,t.ko)(this._imeTextArea.domNode,"keyup",a=>this._onKeyUp(a))),this._register((0,t.ko)(this._imeTextArea.domNode,"keydown",async a=>this._onKeyDown(a))),this._register((0,t.ko)(this.domNode.domNode,"beforeinput",async a=>{("insertParagraph"===a.inputType||"insertLineBreak"===a.inputType)&&this._onType(this._viewController,{text:"\n",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0})})),this._register((0,t.ko)(this.domNode.domNode,"paste",a=>{if(this.logService.trace("NativeEditContext#paste"),a.preventDefault(),!a.clipboardData)return;let[b,c]=aM.Mz.getTextData(a.clipboardData);if(this.logService.trace("NativeEditContext#paste with id : ",c?.id," with text.length: ",b.length),!b)return;c=c||aM.bs.INSTANCE.get(b);let d=!1,e=null,f=null;c&&(d=this._context.configuration.options.get(45)&&!!c.isFromEmptySelection,e=void 0!==c.multicursorText?c.multicursorText:null,f=c.mode),this.logService.trace("NativeEditContext#paste (before viewController.paste)"),this._viewController.paste(b,d,e,f)})),this._register(c1(this._editContext,"textformatupdate",a=>this._handleTextFormatUpdate(a))),this._register(c1(this._editContext,"characterboundsupdate",a=>this._updateCharacterBounds(a))),this._register(c1(this._editContext,"textupdate",a=>{let b=a.text;if(1===b.length){let c=b.charCodeAt(0);if((0,aK.pc)(c)){h=b;return}if((0,aK.LJ)(c)&&h){let c={text:h+b,selectionEnd:a.selectionEnd,selectionStart:a.selectionStart,updateRangeStart:a.updateRangeStart-1,updateRangeEnd:a.updateRangeEnd-1};h=void 0,this._emitTypeEvent(this._viewController,c);return}}this._emitTypeEvent(this._viewController,a)})),this._register(c1(this._editContext,"compositionstart",a=>{this._updateEditContext(),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(c1(this._editContext,"compositionend",a=>{this._updateEditContext(),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()}));let j=!1;this._register(cR.M.onDidChange(()=>{cR.M.enabled&&j&&(this._focusTracker.resume(),this.domNode.focus(),j=!1),!cR.M.enabled&&this.isFocused()&&(this._focusTracker.pause(),this._imeTextArea.focus(),j=!0)})),this._register(df.q.register(a,this))}dispose(){this.domNode.domNode.editContext=void 0,this.domNode.domNode.blur(),this.domNode.domNode.remove(),this._imeTextArea.domNode.remove(),super.dispose()}setAriaOptions(a){this._screenReaderSupport.setAriaOptions(a)}getLastRenderData(){return this._primarySelection.getPosition()}prepareRender(a){this._screenReaderSupport.prepareRender(a),this._updateSelectionAndControlBounds(a)}render(a){this._screenReaderSupport.render(a)}onCursorStateChanged(a){return this._primarySelection=a.modelSelections[0]??new aw.L(1,1,1,1),this._screenReaderSupport.onCursorStateChanged(a),this._updateEditContext(),!0}onConfigurationChanged(a){return this._screenReaderSupport.onConfigurationChanged(a),this._updateDomAttributes(),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.fromLineNumber+a.count-1),!0}onLinesDeleted(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.toLineNumber),!0}onLinesInserted(a){return this._updateEditContextOnLineChange(a.fromLineNumber,a.toLineNumber),!0}_updateEditContextOnLineChange(a,b){this._editContextPrimarySelection.endLineNumber<a||this._editContextPrimarySelection.startLineNumber>b||this._updateEditContext()}onScrollChanged(a){return this._scrollLeft=a.scrollLeft,this._scrollTop=a.scrollTop,!0}onZonesChanged(a){return!0}onWillPaste(){this.logService.trace("NativeEditContext#onWillPaste"),this._onWillPaste()}_onWillPaste(){this._screenReaderSupport.onWillPaste()}onWillCopy(){this.logService.trace("NativeEditContext#onWillCopy"),this.logService.trace("NativeEditContext#isFocused : ",this.domNode.domNode===(0,t.bq)())}writeScreenReaderContent(){this._screenReaderSupport.writeScreenReaderContent()}isFocused(){return this._focusTracker.isFocused}focus(){this._focusTracker.focus(),this.refreshFocusState()}refreshFocusState(){this._focusTracker.refreshFocusState()}setEditContextOnDomNode(){let a=(0,t.zk)(this.domNode.domNode),b=(0,t.Q2)(a);this._targetWindowId!==b&&(this.domNode.domNode.editContext=this._editContext,this._targetWindowId=b)}_onKeyUp(a){this._viewController.emitKeyUp(new aI.Z(a))}_onKeyDown(a){let b=new aI.Z(a);114===b.keyCode&&b.stopPropagation(),this._viewController.emitKeyDown(b)}_updateDomAttributes(){let a=this._context.configuration.options;this.domNode.domNode.setAttribute("tabindex",String(a.get(140)))}_updateEditContext(){let a=this._getNewEditContextState();a&&(this._editContext.updateText(0,Number.MAX_SAFE_INTEGER,a.text??" "),this._editContext.updateSelection(a.selectionStartOffset,a.selectionEndOffset),this._editContextPrimarySelection=a.editContextPrimarySelection,this._previousEditContextSelection=new cs.L(a.selectionStartOffset,a.selectionEndOffset))}_emitTypeEvent(a,b){if(!this._editContext)return;let c=this._previousEditContextSelection.endExclusive,d=this._previousEditContextSelection.start;this._previousEditContextSelection=new cs.L(b.selectionStart,b.selectionEnd);let e=0,f=0;b.updateRangeEnd>c&&(e=b.updateRangeEnd-c),b.updateRangeStart<d&&(f=d-b.updateRangeStart);let g="";d<b.updateRangeStart&&(g+=this._editContext.text.substring(d,b.updateRangeStart)),g+=b.text,c>b.updateRangeEnd&&(g+=this._editContext.text.substring(b.updateRangeEnd,c));let h=0;b.selectionStart===b.selectionEnd&&d===c&&(h=b.selectionStart-(b.updateRangeStart+b.text.length));let i={text:g,replacePrevCharCnt:f,replaceNextCharCnt:e,positionDelta:h};this._onType(a,i)}_onType(a,b){b.replacePrevCharCnt||b.replaceNextCharCnt||b.positionDelta?a.compositionType(b.text,b.replacePrevCharCnt,b.replaceNextCharCnt,b.positionDelta):a.type(b.text)}_getNewEditContextState(){let a=this._primarySelection,b=this._context.viewModel.model;if(!b.isValidRange(a))return;let c=a.startLineNumber,d=a.endLineNumber,e=b.getLineMaxColumn(d),f=new ab.Q(c,1,d,e),g=b.getValueInRange(f,0),h=a.startColumn-1,i=g.length+a.endColumn-e;return{text:g,selectionStartOffset:h,selectionEndOffset:i,editContextPrimarySelection:a}}_editContextStartPosition(){return new aa.y(this._editContextPrimarySelection.startLineNumber,1)}_handleTextFormatUpdate(a){if(!this._editContext)return;let b=a.getTextFormats(),c=this._editContextStartPosition(),d=[];b.forEach(a=>{let b=this._context.viewModel.model,e=b.getOffsetAt(c),f=b.getPositionAt(e+a.rangeStart),g=b.getPositionAt(e+a.rangeEnd),h=ab.Q.fromPositions(f,g),i=a.underlineThickness.toLowerCase(),j=o.NONE;switch(i){case"thin":j=o.SECONDARY;break;case"thick":j=o.PRIMARY}d.push({range:h,options:{description:"textFormatDecoration",inlineClassName:j}})}),this._decorations=this._context.viewModel.model.deltaDecorations(this._decorations,d)}_updateSelectionAndControlBounds(a){let b;if(!this._parent)return;let c=this._context.configuration.options.get(165).contentLeft,d=this._parent.getBoundingClientRect(),e=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(this._primarySelection),f=this._context.viewLayout.getVerticalOffsetForLineNumber(e.startLineNumber),g=d.top+f-this._scrollTop,h=this._context.viewLayout.getVerticalOffsetAfterLineNumber(e.endLineNumber),i=d.left+c-this._scrollLeft;if(this._primarySelection.isEmpty()){let c=a.visibleRangeForPosition(e.getStartPosition());c&&(i+=c.left),b=0}else b=d.width-c;let j=new DOMRect(i,g,b,h-f);this._editContext.updateSelectionBounds(j),this._editContext.updateControlBounds(j)}_updateCharacterBounds(a){if(!this._parent)return;let b=this._context.configuration.options,c=b.get(59).typicalHalfwidthCharacterWidth,d=b.get(165).contentLeft,e=this._parent.getBoundingClientRect(),f=[],g=new db.a(this._editContext.text);for(let b=a.rangeStart;b<a.rangeEnd;b++){let a=g.getPosition(b),h=this._editContextPrimarySelection.startLineNumber-1,i=new aa.y(h+a.lineNumber,a.column),j=i.delta(0,1),k=ab.Q.fromPositions(i,j),l=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(k),m=this._visibleRangeProvider.linesVisibleRangesForRange(l,!0)??[],n=l.startLineNumber,o=this._context.viewLayout.getVerticalOffsetForLineNumber(n),p=e.top+o-this._scrollTop,q=0,r=c;if(m.length>0)for(let a of m[0].ranges){q=a.left,r=a.width;break}let s=this._context.viewLayout.getLineHeightForLineNumber(n);f.push(new DOMRect(e.left+d+q-this._scrollLeft,p,r,s))}this._editContext.updateCharacterBounds(a.rangeStart,f)}_ensureClipboardGetsEditorSelection(a){let b,c=this._context.configuration.options,d=c.get(45),e=c.get(31),f=this._context.viewModel.getCursorStates().map(a=>a.modelState.selection),g=(0,aM.Ps)(this._context.viewModel,f,d,e);this.logService.getLevel()===aL.$b.Trace&&(b=(0,aO.b)());let h={version:1,id:b,isFromEmptySelection:g.isFromEmptySelection,multicursorText:g.multicursorText,mode:g.mode};aM.bs.INSTANCE.set(z.gm?g.text.replace(/\r\n/g,"\n"):g.text,h),a.preventDefault(),a.clipboardData&&aM.Mz.setTextData(a.clipboardData,g.text,g.html,h),this.logService.trace("NativeEditContext#_ensureClipboardGetsEditorSelectios with id : ",b," with text.length: ",g.text.length)}};dh=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([dg(5,cy._Y),dg(6,aL.rr)],dh);class di extends Z{constructor(a,b){super(a),this._viewGpuContext=b,this._gpuShapes=[],this._register((0,cA.fm)(a=>this._updateEntries(a)))}onConfigurationChanged(a){return this._updateEntries(void 0),!0}prepareRender(a){}render(a){}_updateEntries(a){let b=this._context.configuration.options,c=b.get(116),d=b.get(59).typicalHalfwidthCharacterWidth,e=this._viewGpuContext.devicePixelRatio.read(a);for(let a=0,b=c.length;a<b;a++){let b=c[a],f=this._gpuShapes[a],g=b.color?b9.Q1.fromHex(b.color):this._context.theme.getColor(bf.ik)??b9.Q1.white,h=[b.column*d*e,0,Math.max(1,Math.ceil(e)),Number.MAX_SAFE_INTEGER,g.rgba.r/255,g.rgba.g/255,g.rgba.b/255,g.rgba.a];f?f.setRaw(h):this._gpuShapes[a]=this._viewGpuContext.rectangleRenderer.register(...h)}for(;this._gpuShapes.length>c.length;)this._gpuShapes.splice(-1,1)[0].dispose()}}c(30810);class dj extends be{static{this.CLASS_NAME="gpu-mark"}constructor(a,b){super(),this._viewGpuContext=b,this._context=a,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return!0}onCursorStateChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onDecorationsChanged(a){return!0}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=a.viewportData,e=new bD(this._context.configuration,this._context.theme.type),f=[];for(let a=b;a<=c;a++){let c=a-b,g=this._viewGpuContext.canRenderDetailed(e,d,a);f[c]=g.length?`<div class="${dj.CLASS_NAME}" title="Cannot render on GPU: ${g.join(", ")}"></div>`:""}this._renderResult=f}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}let dk=class extends Y.i{constructor(a,b,c,d,e,f,g,h,i){super(),this._instantiationService=i,this._shouldRecomputeGlyphMarginLanes=!1,this._ownerID=b,this._widgetFocusTracker=this._register(new dn(a,h)),this._register(this._widgetFocusTracker.onChange(()=>{this._context.viewModel.setHasWidgetFocus(this._widgetFocusTracker.hasFocus())})),this._selections=[new aw.L(1,1,1,1)],this._renderAnimationFrame=null,this._overflowGuardContainer=(0,W.Z)(document.createElement("div")),$.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._viewController=new aY(d,f,g,c),this._context=new cx(d,e,f),this._context.addEventHandler(this),this._viewParts=[],this._editContextEnabled=this._context.configuration.options.get(170),this._accessibilitySupport=this._context.configuration.options.get(2),this._editContext=this._instantiateEditContext(),this._viewParts.push(this._editContext),this._linesContent=(0,W.Z)(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=(0,W.Z)(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),"on"===this._context.configuration.options.get(46)&&(this._viewGpuContext=this._instantiationService.createInstance(cz.n,this._context)),this._scrollbar=new bm(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new bH(this._context,this._viewGpuContext,this._linesContent),this._viewGpuContext&&(this._viewLinesGpu=this._instantiationService.createInstance(cP,this._context,this._viewGpuContext)),this._viewZones=new cr(this._context),this._viewParts.push(this._viewZones);let j=new cc(this._context);this._viewParts.push(j);let k=new cg(this._context);this._viewParts.push(k);let l=new a4(this._context);this._viewParts.push(l),l.addDynamicOverlay(new bj(this._context)),l.addDynamicOverlay(new cl(this._context)),l.addDynamicOverlay(new by(this._context)),l.addDynamicOverlay(new bl(this._context)),l.addDynamicOverlay(new ct(this._context));let m=new a5(this._context);this._viewParts.push(m),m.addDynamicOverlay(new bk(this._context)),m.addDynamicOverlay(new bK(this._context)),m.addDynamicOverlay(new bI(this._context)),m.addDynamicOverlay(new bA(this._context)),this._viewGpuContext&&m.addDynamicOverlay(new dj(this._context,this._viewGpuContext)),this._glyphMarginWidgets=new br(this._context),this._viewParts.push(this._glyphMarginWidgets);let n=new bJ(this._context);n.getDomNode().appendChild(this._viewZones.marginDomNode),n.getDomNode().appendChild(m.getDomNode()),n.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(n),this._contentWidgets=new a8(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new cp(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new b8(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);let o=this._viewGpuContext?new di(this._context,this._viewGpuContext):new cf(this._context);this._viewParts.push(o);let p=new a7(this._context);this._viewParts.push(p);let q=new b5(this._context);if(this._viewParts.push(q),j){let a=this._scrollbar.getOverviewRulerLayoutInfo();a.parent.insertBefore(j.getDomNode(),a.insertBefore)}this._linesContent.appendChild(l.getDomNode()),"domNode"in o&&this._linesContent.appendChild(o.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(n.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._viewGpuContext&&this._overflowGuardContainer.appendChild(this._viewGpuContext.canvas),this._overflowGuardContainer.appendChild(k.getDomNode()),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(q.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),h?(h.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),h.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new aV(this._context,this._viewController,this._createPointerHandlerHelper()))}_instantiateEditContext(){return this._context.configuration.options.get(170)?this._instantiationService.createInstance(dh,this._ownerID,this._context,this._overflowGuardContainer,this._viewController,this._createTextAreaHandlerHelper()):this._instantiationService.createInstance(c_,this._context,this._overflowGuardContainer,this._viewController,this._createTextAreaHandlerHelper())}_updateEditContext(){let a=this._context.configuration.options.get(170),b=this._context.configuration.options.get(2);if(this._editContextEnabled===a&&this._accessibilitySupport===b)return;this._editContextEnabled=a,this._accessibilitySupport=b;let c=this._editContext.isFocused(),d=this._viewParts.indexOf(this._editContext);this._editContext.dispose(),this._editContext=this._instantiateEditContext(),c&&this._editContext.focus(),-1!==d&&this._viewParts.splice(d,1,this._editContext)}_computeGlyphMarginLanes(){let a=this._context.viewModel.model,b=this._context.viewModel.glyphLanes,c=[],d=0;for(let e of((c=(c=c.concat(a.getAllMarginDecorations().map(a=>{let b=a.options.glyphMargin?.position??ae.ZS.Center;return d=Math.max(d,a.range.endLineNumber),{range:a.range,lane:b,persist:a.options.glyphMargin?.persistLane}}))).concat(this._glyphMarginWidgets.getWidgets().map(b=>{let c=a.validateRange(b.preference.range);return d=Math.max(d,c.endLineNumber),{range:c,lane:b.preference.lane}}))).sort((a,b)=>ab.Q.compareRangesUsingStarts(a.range,b.range)),b.reset(d),c))b.push(e.lane,e.range,e.persist);return b}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,viewLinesGpu:this._viewLinesGpu,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:a=>{this._editContext.domNode.domNode.dispatchEvent(a)},getLastRenderData:()=>new ai(this._viewCursors.getLastRenderData()||[],this._editContext.getLastRenderData()),renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:a=>this._viewZones.shouldSuppressMouseDownOnViewZone(a),shouldSuppressMouseDownOnWidget:a=>this._contentWidgets.shouldSuppressMouseDownOnWidget(a),getPositionFromDOMInfo:(a,b)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(a,b)),visibleRangeForPosition:(a,b)=>{this._flushAccumulatedAndRenderNow();let c=new aa.y(a,b);return this._viewLines.visibleRangeForPosition(c)??this._viewLinesGpu?.visibleRangeForPosition(c)??null},getLineWidth:a=>{if(this._flushAccumulatedAndRenderNow(),this._viewLinesGpu){let b=this._viewLinesGpu.getLineWidth(a);if(void 0!==b)return b}return this._viewLines.getLineWidth(a)}}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:a=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(a)),linesVisibleRangesForRange:(a,b)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.linesVisibleRangesForRange(a,b))}}_applyLayout(){let a=this._context.configuration.options.get(165);this.domNode.setWidth(a.width),this.domNode.setHeight(a.height),this._overflowGuardContainer.setWidth(a.width),this._overflowGuardContainer.setHeight(a.height),this._linesContent.setWidth(0x1000000),this._linesContent.setHeight(0x1000000)}_getEditorClassName(){let a=this._editContext.isFocused()?" focused":"";return this._context.configuration.options.get(162)+" "+(0,bg.Pz)(this._context.theme.type)+a}handleEvents(a){super.handleEvents(a),this._scheduleRender()}onConfigurationChanged(a){return this.domNode.setClassName(this._getEditorClassName()),this._updateEditContext(),this._applyLayout(),!1}onCursorStateChanged(a){return this._selections=a.selections,!1}onDecorationsChanged(a){return a.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(a){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(a){return this._context.theme.update(a.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){for(let a of(null!==this._renderAnimationFrame&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewGpuContext?.dispose(),this._viewLines.dispose(),this._viewLinesGpu?.dispose(),this._viewParts))a.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new u.D7;if(null===this._renderAnimationFrame){this._editContext instanceof dh&&this._editContext.setEditContextOnDomNode();let a=this._createCoordinatedRendering();this._renderAnimationFrame=dm.INSTANCE.scheduleCoordinatedRendering({window:t.zk(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new u.D7;try{return a.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new u.D7;return a.renderText()},prepareRender:(b,c)=>{if(this._store.isDisposed)throw new u.D7;return a.prepareRender(b,c)},render:(b,c)=>{if(this._store.isDisposed)throw new u.D7;return a.render(b,c)}})}}_flushAccumulatedAndRenderNow(){let a=this._createCoordinatedRendering();dl(()=>a.prepareRenderText());let b=dl(()=>a.renderText());if(b){let[c,d]=b;dl(()=>a.prepareRender(c,d)),dl(()=>a.render(c,d))}}_getViewPartsToRender(){let a=[],b=0;for(let c of this._viewParts)c.shouldRender()&&(a[b++]=c);return a}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;let a=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(a.requiredLanes)}j.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let a=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&0===a.length)return null;let b=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(b.startLineNumber,b.endLineNumber,b.centeredLineNumber);let c=new cv(this._selections,b,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(c),this._viewLines.shouldRender()&&(this._viewLines.renderText(c),this._viewLines.onDidRender(),a=this._getViewPartsToRender()),this._viewLinesGpu?.shouldRender()&&(this._viewLinesGpu.renderText(c),this._viewLinesGpu.onDidRender()),[a,new aW.eh(this._context.viewLayout,c,this._viewLines,this._viewLinesGpu)]},prepareRender:(a,b)=>{for(let c of a)c.prepareRender(b)},render:(a,b)=>{for(let c of a)c.render(b),c.onDidRender()}}}delegateVerticalScrollbarPointerDown(a){this._scrollbar.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this._scrollbar.delegateScrollFromMouseWheelEvent(a)}restoreState(a){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:a.scrollTop,scrollLeft:a.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(a,b){let c=this._context.viewModel.model.validatePosition({lineNumber:a,column:b}),d=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(c);this._flushAccumulatedAndRenderNow();let e=this._viewLines.visibleRangeForPosition(new aa.y(d.lineNumber,d.column));return e?e.left:-1}getTargetAtClientPoint(a,b){let c=this._pointerHandler.getTargetAtClientPoint(a,b);return c?a6.convertViewToModelMouseTarget(c,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(a){return new ce(this._context,a)}change(a){this._viewZones.changeViewZones(a),this._scheduleRender()}render(a,b){if(b)for(let a of(this._viewLines.forceShouldRender(),this._viewParts))a.forceShouldRender();a?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(a){this._editContext.writeScreenReaderContent(a)}focus(){this._editContext.focus()}isFocused(){return this._editContext.isFocused()}isWidgetFocused(){return this._widgetFocusTracker.hasFocus()}setAriaOptions(a){this._editContext.setAriaOptions(a)}addContentWidget(a){this._contentWidgets.addWidget(a.widget),this.layoutContentWidget(a),this._scheduleRender()}layoutContentWidget(a){this._contentWidgets.setWidgetPosition(a.widget,a.position?.position??null,a.position?.secondaryPosition??null,a.position?.preference??null,a.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(a){this._contentWidgets.removeWidget(a.widget),this._scheduleRender()}addOverlayWidget(a){this._overlayWidgets.addWidget(a.widget),this.layoutOverlayWidget(a),this._scheduleRender()}layoutOverlayWidget(a){this._overlayWidgets.setWidgetPosition(a.widget,a.position)&&this._scheduleRender()}removeOverlayWidget(a){this._overlayWidgets.removeWidget(a.widget),this._scheduleRender()}addGlyphMarginWidget(a){this._glyphMarginWidgets.addWidget(a.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(a){let b=a.position;this._glyphMarginWidgets.setWidgetPosition(a.widget,b)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(a){this._glyphMarginWidgets.removeWidget(a.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};function dl(a){try{return a()}catch(a){return(0,u.dz)(a),null}}dk=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(i=cy._Y,function(a,b){i(a,b,8)})],dk);class dm{static{this.INSTANCE=new dm}constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(a){return this._coordinatedRenderings.push(a),this._scheduleRender(a.window),{dispose:()=>{let b=this._coordinatedRenderings.indexOf(a);if(-1!==b&&(this._coordinatedRenderings.splice(b,1),0===this._coordinatedRenderings.length)){for(let[a,b]of this._animationFrameRunners)b.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(a){if(!this._animationFrameRunners.has(a)){let b=()=>{this._animationFrameRunners.delete(a),this._onRenderScheduled()};this._animationFrameRunners.set(a,t.Oq(a,b,100))}}_onRenderScheduled(){let a=this._coordinatedRenderings.slice(0);for(let b of(this._coordinatedRenderings=[],a))dl(()=>b.prepareRenderText());let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];b[c]=dl(()=>d.renderText())}for(let c=0,d=a.length;c<d;c++){let d=a[c],e=b[c];if(!e)continue;let[f,g]=e;dl(()=>d.prepareRender(f,g))}for(let c=0,d=a.length;c<d;c++){let d=a[c],e=b[c];if(!e)continue;let[f,g]=e;dl(()=>d.render(f,g))}}}class dn extends w.jG{constructor(a,b){super(),this._onChange=this._register(new v.vl),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(t.w5(a)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),b&&(this._overflowWidgetsDomNode=this._register(t.w5(b)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){let a=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==a&&(this._hadFocus=a,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}var dp=c(22450);class dq{constructor(a,b,c,d,e){this.injectionOffsets=a,this.injectionOptions=b,this.breakOffsets=c,this.breakOffsetsVisibleColumn=d,this.wrappedTextIndentLength=e}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(a){return a>0?this.wrappedTextIndentLength:0}getLineLength(a){let b=a>0?this.breakOffsets[a-1]:0,c=this.breakOffsets[a]-b;return a>0&&(c+=this.wrappedTextIndentLength),c}getMaxOutputOffset(a){return this.getLineLength(a)}translateToInputOffset(a,b){a>0&&(b=Math.max(0,b-this.wrappedTextIndentLength));let c=0===a?b:this.breakOffsets[a-1]+b;if(null!==this.injectionOffsets)for(let a=0;a<this.injectionOffsets.length;a++)if(c>this.injectionOffsets[a])c<this.injectionOffsets[a]+this.injectionOptions[a].content.length?c=this.injectionOffsets[a]:c-=this.injectionOptions[a].content.length;else break;return c}translateToOutputPosition(a,b=2){let c=a;if(null!==this.injectionOffsets)for(let d=0;d<this.injectionOffsets.length&&!(a<this.injectionOffsets[d])&&(1===b||a!==this.injectionOffsets[d]);d++)c+=this.injectionOptions[d].content.length;return this.offsetInInputWithInjectionsToOutputPosition(c,b)}offsetInInputWithInjectionsToOutputPosition(a,b=2){let c=0,d=this.breakOffsets.length-1,e=0,f=0;for(;c<=d;){e=c+(d-c)/2|0;let g=this.breakOffsets[e];if(f=e>0?this.breakOffsets[e-1]:0,0===b)if(a<=f)d=e-1;else if(a>g)c=e+1;else break;else if(a<f)d=e-1;else if(a>=g)c=e+1;else break}let g=a-f;return e>0&&(g+=this.wrappedTextIndentLength),new dt(e,g)}normalizeOutputPosition(a,b,c){if(null!==this.injectionOffsets){let d=this.outputPositionToOffsetInInputWithInjections(a,b),e=this.normalizeOffsetInInputWithInjectionsAroundInjections(d,c);if(e!==d)return this.offsetInInputWithInjectionsToOutputPosition(e,c)}if(0===c){if(a>0&&b===this.getMinOutputOffset(a))return new dt(a-1,this.getMaxOutputOffset(a-1))}else if(1===c&&a<this.getOutputLineCount()-1&&b===this.getMaxOutputOffset(a))return new dt(a+1,this.getMinOutputOffset(a+1));return new dt(a,b)}outputPositionToOffsetInInputWithInjections(a,b){return a>0&&(b=Math.max(0,b-this.wrappedTextIndentLength)),(a>0?this.breakOffsets[a-1]:0)+b}normalizeOffsetInInputWithInjectionsAroundInjections(a,b){let c=this.getInjectedTextAtOffset(a);if(!c)return a;if(2===b)if(a===c.offsetInInputWithInjections+c.length&&dr(this.injectionOptions[c.injectedTextIndex].cursorStops))return c.offsetInInputWithInjections+c.length;else{let a=c.offsetInInputWithInjections;if(ds(this.injectionOptions[c.injectedTextIndex].cursorStops))return a;let b=c.injectedTextIndex-1;for(;b>=0&&this.injectionOffsets[b]===this.injectionOffsets[c.injectedTextIndex]&&!dr(this.injectionOptions[b].cursorStops)&&(a-=this.injectionOptions[b].content.length,!ds(this.injectionOptions[b].cursorStops));){;b--}return a}if(1===b||4===b){let a=c.offsetInInputWithInjections+c.length,b=c.injectedTextIndex;for(;b+1<this.injectionOffsets.length&&this.injectionOffsets[b+1]===this.injectionOffsets[b];)a+=this.injectionOptions[b+1].content.length,b++;return a}if(0===b||3===b){let a=c.offsetInInputWithInjections,b=c.injectedTextIndex;for(;b-1>=0&&this.injectionOffsets[b-1]===this.injectionOffsets[b];)a-=this.injectionOptions[b-1].content.length,b--;return a}(0,dp.xb)(b)}getInjectedText(a,b){let c=this.outputPositionToOffsetInInputWithInjections(a,b),d=this.getInjectedTextAtOffset(c);return d?{options:this.injectionOptions[d.injectedTextIndex]}:null}getInjectedTextAtOffset(a){let b=this.injectionOffsets,c=this.injectionOptions;if(null!==b){let d=0;for(let e=0;e<b.length;e++){let f=c[e].content.length,g=b[e]+d,h=b[e]+d+f;if(g>a)break;if(a<=h)return{injectedTextIndex:e,offsetInInputWithInjections:g,length:f};d+=f}}}}function dr(a){return null==a||a===ae.VW.Right||a===ae.VW.Both}function ds(a){return null==a||a===ae.VW.Left||a===ae.VW.Both}class dt{constructor(a,b){this.outputLineIndex=a,this.outputOffset=b}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(a){return new aa.y(a+this.outputLineIndex,this.outputOffset+1)}}var du=c(71760);let dv=(0,aZ.H)("domLineBreaksComputer",{createHTML:a=>a});class dw{static create(a){return new dw(new WeakRef(a))}constructor(a){this.targetWindow=a}createLineBreaksComputer(a,b,c,d,e,f){let g=[],h=[];return{addRequest:(a,b,c)=>{g.push(a),h.push(b)},finalize:()=>(function(a,b,c,d,e,f,g,h){function i(a){let c=h[a];if(!c)return null;{let d=du.uK.applyInjectedText(b[a],c),e=c.map(a=>a.options);return new dq(c.map(a=>a.column-1),e,[d.length],[],0)}}if(-1===e){let a=[];for(let c=0,d=b.length;c<d;c++)a[c]=i(c);return a}let j=Math.round(e*c.typicalHalfwidthCharacterWidth),k=Math.round(d*(3===f?2:+(2===f))),l=Math.ceil(c.spaceWidth*k),m=document.createElement("div");(0,y.M)(m,c);let n=new a$.fe(1e4),o=[],p=[],q=[],r=[],s=[];for(let a=0;a<b.length;a++){let e=du.uK.applyInjectedText(b[a],h[a]),g=0,i=0,k=j;if(0!==f)if(-1===(g=aK.HG(e)))g=0;else{for(let a=0;a<g;a++){let b=9===e.charCodeAt(a)?d-i%d:1;i+=b}let a=Math.ceil(c.spaceWidth*i);a+c.typicalFullwidthCharacterWidth>j?(g=0,i=0):k=j-a}let m=e.substr(g),t=function(a,b,c,d,e,f){if(0!==f){let a=String(f);e.appendString('<div style="text-indent: -'),e.appendString(a),e.appendString("px; padding-left: "),e.appendString(a),e.appendString("px; box-sizing: border-box; width:")}else e.appendString('<div style="width:');e.appendString(String(d)),e.appendString('px;">');let g=a.length,h=b,i=0,j=[],k=[],l=0<g?a.charCodeAt(0):0;e.appendString("<span>");for(let b=0;b<g;b++){0!==b&&b%16384==0&&e.appendString("</span><span>"),j[b]=i,k[b]=h;let d=l;l=b+1<g?a.charCodeAt(b+1):0;let f=1,m=1;switch(d){case 9:m=f=c-h%c;for(let a=1;a<=f;a++)a<f?e.appendCharCode(160):e.appendASCIICharCode(32);break;case 32:32===l?e.appendCharCode(160):e.appendASCIICharCode(32);break;case 60:e.appendString("<");break;case 62:e.appendString(">");break;case 38:e.appendString("&");break;case 0:e.appendString("�");break;case 65279:case 8232:case 8233:case 133:e.appendCharCode(65533);break;default:aK.ne(d)&&m++,d<32?e.appendCharCode(9216+d):e.appendCharCode(d)}i+=f,h+=m}return e.appendString("</span>"),j[a.length]=i,k[a.length]=h,e.appendString("</div>"),[j,k]}(m,i,d,k,n,l);o[a]=g,p[a]=i,q[a]=m,r[a]=t[0],s[a]=t[1]}let t=n.build();m.innerHTML=dv?.createHTML(t)??t,m.style.position="absolute",m.style.top="10000","keepAll"===g?(m.style.wordBreak="keep-all",m.style.overflowWrap="anywhere"):(m.style.wordBreak="inherit",m.style.overflowWrap="break-word"),a.document.body.appendChild(m);let u=document.createRange(),v=Array.prototype.slice.call(m.children,0),w=[];for(let a=0;a<b.length;a++){let b,c,d=function(a,b,c,d){if(c.length<=1)return null;let e=Array.prototype.slice.call(b.children,0),f=[];try{!function a(b,c,d,e,f,g,h,i){if(e===g||(f=f||dx(b,c,d[e],d[e+1]),h=h||dx(b,c,d[g],d[g+1]),.1>=Math.abs(f[0].top-h[0].top)))return;if(e+1===g)return void i.push(g);let j=e+(g-e)/2|0,k=dx(b,c,d[j],d[j+1]);a(b,c,d,e,f,j,k,i),a(b,c,d,j,k,g,h,i)}(a,e,d,0,null,c.length-1,null,f)}catch(a){return console.log(a),null}return 0===f.length?null:(f.push(c.length),f)}(u,v[a],q[a],r[a]);if(null===d){w[a]=i(a);continue}let e=o[a],f=p[a]+k,g=s[a],j=[];for(let a=0,b=d.length;a<b;a++)j[a]=g[d[a]];if(0!==e)for(let a=0,b=d.length;a<b;a++)d[a]+=e;let l=h[a];l?(b=l.map(a=>a.options),c=l.map(a=>a.column-1)):(b=null,c=null),w[a]=new dq(c,b,d,j,f)}return m.remove(),w})((0,bv.ni)(this.targetWindow.deref()),g,a,b,c,d,e,h)}}}function dx(a,b,c,d){return a.setStart(b[c/16384|0].firstChild,c%16384),a.setEnd(b[d/16384|0].firstChild,d%16384),a.getClientRects()}class dy extends w.jG{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new w.$w),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(a,b,c){for(let d of(this._editor=a,this._instantiationService=c,b)){if(this._pending.has(d.id)){(0,u.dz)(Error(`Cannot have two contributions with the same id ${d.id}`));continue}this._pending.set(d.id,d)}this._instantiateSome(0),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register((0,t.U3)((0,t.zk)(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){let a={};for(let[b,c]of this._instances)"function"==typeof c.saveViewState&&(a[b]=c.saveViewState());return a}restoreViewState(a){for(let[b,c]of this._instances)"function"==typeof c.restoreViewState&&c.restoreViewState(a[b])}get(a){return this._instantiateById(a),this._instances.get(a)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return(0,t.U3)((0,t.zk)(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(a){if(!this._finishedInstantiation[a])for(let b of(this._finishedInstantiation[a]=!0,this._findPendingContributionsByInstantiation(a)))this._instantiateById(b.id)}_findPendingContributionsByInstantiation(a){let b=[];for(let[,c]of this._pending)c.instantiation===a&&b.push(c);return b}_instantiateById(a){let b=this._pending.get(a);if(b){if(this._pending.delete(a),!this._instantiationService||!this._editor)throw Error("Cannot instantiate contributions before being initialized!");try{let a=this._instantiationService.createInstance(b.ctor,this._editor);this._instances.set(b.id,a),"function"==typeof a.restoreViewState&&0!==b.instantiation&&console.warn(`Editor contribution '${b.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(a){(0,u.dz)(a)}}}}var dz=c(83081),dA=c(12783),dB=c(15380),dC=c(69262),dD=c(59298),dE=c(14088),dF=c(88482),dG=c(62138);class dH{static create(a){return new dH(a.get(151),a.get(150))}constructor(a,b){this.classifier=new dI(a,b)}createLineBreaksComputer(a,b,c,d,e,f){let g=[],h=[],i=[];return{addRequest:(a,b,c)=>{g.push(a),h.push(b),i.push(c)},finalize:()=>{let j=a.typicalFullwidthCharacterWidth/a.typicalHalfwidthCharacterWidth,k=[];for(let a=0,l=g.length;a<l;a++){let l=h[a],m=i[a];!m||m.injectionOptions||l||f?k[a]=function(a,b,c,d,e,f,g,h,i){let j,k,l=du.uK.applyInjectedText(b,c);if(c&&c.length>0?(j=c.map(a=>a.options),k=c.map(a=>a.column-1)):(j=null,k=null),-1===e)return j?new dq(k,j,[l.length],[],0):null;let m=l.length;if(m<=1)return j?new dq(k,j,[l.length],[],0):null;let n="keepAll"===h,o=dN(l,d,e,f,g),p=e-o,q=[],r=[],s=0,t=0,u=0,v=e,w=l.charCodeAt(0),x=a.get(w),y=dL(w,0,d,f),z=1;aK.pc(w)&&(y+=1,w=l.charCodeAt(1),x=a.get(w),z++);for(let b=z;b<m;b++){var A,B;let c,e,g=b,h=l.charCodeAt(b);aK.pc(h)?(b++,c=0,e=2):(c=a.get(h),e=dL(h,y,d,f)),dM(w,x,h,c,n)&&(t=g,u=y),y+=e,i&&(A=l,(B=b)>=2&&(B<3||"\\"!==A.charAt(B-3))&&"\\"===A.charAt(B-2)&&"n"===A.charAt(B-1)&&A.includes('"'))&&(y+=v),y>v&&((0===t||y-u>p)&&(t=g,u=y-e),q[s]=t,r[s]=u,s++,v=u+p,t=0),w=h,x=c}return 0!==s||c&&0!==c.length?(q[s]=m,r[s]=y,new dq(k,j,q,r,o)):null}(this.classifier,g[a],l,b,c,j,d,e,f):k[a]=function(a,b,c,d,e,f,g,h){if(-1===e)return null;let i=c.length;if(i<=1)return null;let j="keepAll"===h,k=b.breakOffsets,l=b.breakOffsetsVisibleColumn,m=dN(c,d,e,f,g),n=e-m,o=dJ,p=dK,q=0,r=0,s=0,t=e,u=k.length,v=0;{let a=Math.abs(l[v]-t);for(;v+1<u;){let b=Math.abs(l[v+1]-t);if(b>=a)break;a=b,v++}}for(;v<u;){let b=v<0?0:k[v],e=v<0?0:l[v];r>b&&(b=r,e=s);let g=0,h=0,m=0,w=0;if(e<=t){let s=e,u=0===b?0:c.charCodeAt(b-1),v=0===b?0:a.get(u),x=!0;for(let e=b;e<i;e++){let b,i,k=e,l=c.charCodeAt(e);if(aK.pc(l)?(e++,b=0,i=2):(b=a.get(l),i=dL(l,s,d,f)),k>r&&dM(u,v,l,b,j)&&(g=k,h=s),(s+=i)>t){k>r?(m=k,w=s-i):(m=e+1,w=s),s-h>n&&(g=0),x=!1;break}u=l,v=b}if(x){q>0&&(o[q]=k[k.length-1],p[q]=l[k.length-1],q++);break}}if(0===g){let i=e,k=c.charCodeAt(b),l=a.get(k),o=!1;for(let d=b-1;d>=r;d--){let b,e,p=d+1,q=c.charCodeAt(d);if(9===q){o=!0;break}if(aK.LJ(q)?(d--,b=0,e=2):(b=a.get(q),e=aK.ne(q)?f:1),i<=t){if(0===m&&(m=p,w=i),i<=t-n)break;if(dM(q,b,k,l,j)){g=p,h=i;break}}i-=e,k=q,l=b}if(0!==g){let a=n-(w-h);if(a<=d){let b=c.charCodeAt(m);a-(aK.pc(b)?2:dL(b,w,d,f))<0&&(g=0)}}if(o){v--;continue}}if(0===g&&(g=m,h=w),g<=r){let a=c.charCodeAt(r);aK.pc(a)?(g=r+2,h=s+2):(g=r+1,h=s+dL(a,s,d,f))}for(r=g,o[q]=g,s=h,p[q]=h,q++,t=h+n;v<0||v<u&&l[v]<h;)v++;let x=Math.abs(l[v]-t);for(;v+1<u;){let a=Math.abs(l[v+1]-t);if(a>=x)break;x=a,v++}}return 0===q?null:(o.length=q,p.length=q,dJ=b.breakOffsets,dK=b.breakOffsetsVisibleColumn,b.breakOffsets=o,b.breakOffsetsVisibleColumn=p,b.wrappedTextIndentLength=m,b)}(this.classifier,m,g[a],b,c,j,d,e)}return dJ.length=0,dK.length=0,k}}}}class dI extends dG.V{constructor(a,b){super(0);for(let b=0;b<a.length;b++)this.set(a.charCodeAt(b),1);for(let a=0;a<b.length;a++)this.set(b.charCodeAt(a),2)}get(a){return a>=0&&a<256?this._asciiMap[a]:a>=12352&&a<=12543||a>=13312&&a<=19903||a>=19968&&a<=40959?3:this._map.get(a)||this._defaultValue}}let dJ=[],dK=[];function dL(a,b,c,d){return 9===a?c-b%c:aK.ne(a)||a<32?d:1}function dM(a,b,c,d,e){return 32!==c&&(2===b&&2!==d||1!==b&&1===d||!e&&3===b&&2!==d||!e&&3===d&&1!==b)}function dN(a,b,c,d,e){let f=0;if(0!==e){let g=aK.HG(a);if(-1!==g){for(let c=0;c<g;c++){let d=9===a.charCodeAt(c)?b-f%b:1;f+=d}let h=3===e?2:+(2===e);for(let a=0;a<h;a++){let a=b-f%b;f+=a}f+d>c&&(f=0)}}return f}var dO=c(95265),dP=c(69467);class dQ{constructor(a){this._selTrackedRange=null,this._trackSelection=!0,this._setState(a,new dP.mG(new ab.Q(1,1,1,1),0,0,new aa.y(1,1),0),new dP.mG(new ab.Q(1,1,1,1),0,0,new aa.y(1,1),0))}dispose(a){this._removeTrackedRange(a)}startTrackingSelection(a){this._trackSelection=!0,this._updateTrackedRange(a)}stopTrackingSelection(a){this._trackSelection=!1,this._removeTrackedRange(a)}_updateTrackedRange(a){this._trackSelection&&(this._selTrackedRange=a.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(a){this._selTrackedRange=a.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new dP.MF(this.modelState,this.viewState)}readSelectionFromMarkers(a){let b=a.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!b.isEmpty()?aw.L.fromRange(b.collapseToEnd(),this.modelState.selection.getDirection()):aw.L.fromRange(b,this.modelState.selection.getDirection())}ensureValidState(a){this._setState(a,this.modelState,this.viewState)}setState(a,b,c){this._setState(a,b,c)}static _validatePositionWithCache(a,b,c,d){return b.equals(c)?d:a.normalizePosition(b,2)}static _validateViewState(a,b){let c=b.position,d=b.selectionStart.getStartPosition(),e=b.selectionStart.getEndPosition(),f=a.normalizePosition(c,2),g=this._validatePositionWithCache(a,d,c,f),h=this._validatePositionWithCache(a,e,d,g);return c.equals(f)&&d.equals(g)&&e.equals(h)?b:new dP.mG(ab.Q.fromPositions(g,h),b.selectionStartKind,b.selectionStartLeftoverVisibleColumns+d.column-g.column,f,b.leftoverVisibleColumns+c.column-f.column)}_setState(a,b,c){if(c&&(c=dQ._validateViewState(a.viewModel,c)),b){let c=a.model.validateRange(b.selectionStart),d=b.selectionStart.equalsRange(c)?b.selectionStartLeftoverVisibleColumns:0,e=a.model.validatePosition(b.position),f=b.position.equals(e)?b.leftoverVisibleColumns:0;b=new dP.mG(c,b.selectionStartKind,d,e,f)}else{if(!c)return;let d=a.model.validateRange(a.coordinatesConverter.convertViewRangeToModelRange(c.selectionStart)),e=a.model.validatePosition(a.coordinatesConverter.convertViewPositionToModelPosition(c.position));b=new dP.mG(d,c.selectionStartKind,c.selectionStartLeftoverVisibleColumns,e,c.leftoverVisibleColumns)}if(c){let d=a.coordinatesConverter.validateViewRange(c.selectionStart,b.selectionStart),e=a.coordinatesConverter.validateViewPosition(c.position,b.position);c=new dP.mG(d,b.selectionStartKind,b.selectionStartLeftoverVisibleColumns,e,b.leftoverVisibleColumns)}else{let d=a.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(b.selectionStart.startLineNumber,b.selectionStart.startColumn)),e=a.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(b.selectionStart.endLineNumber,b.selectionStart.endColumn)),f=new ab.Q(d.lineNumber,d.column,e.lineNumber,e.column),g=a.coordinatesConverter.convertModelPositionToViewPosition(b.position);c=new dP.mG(f,b.selectionStartKind,b.selectionStartLeftoverVisibleColumns,g,b.leftoverVisibleColumns)}this.modelState=b,this.viewState=c,this._updateTrackedRange(a)}}class dR{constructor(a){this.context=a,this.cursors=[new dQ(a)],this.lastAddedCursorIndex=0}dispose(){for(let a of this.cursors)a.dispose(this.context)}startTrackingSelections(){for(let a of this.cursors)a.startTrackingSelection(this.context)}stopTrackingSelections(){for(let a of this.cursors)a.stopTrackingSelection(this.context)}updateContext(a){this.context=a}ensureValidState(){for(let a of this.cursors)a.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(a=>a.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(a=>a.asCursorState())}getViewPositions(){return this.cursors.map(a=>a.viewState.position)}getTopMostViewPosition(){return(0,dO.kh)(this.cursors,(0,A.VE)(a=>a.viewState.position,aa.y.compare)).viewState.position}getBottomMostViewPosition(){return(0,dO.ot)(this.cursors,(0,A.VE)(a=>a.viewState.position,aa.y.compare)).viewState.position}getSelections(){return this.cursors.map(a=>a.modelState.selection)}getViewSelections(){return this.cursors.map(a=>a.viewState.selection)}setSelections(a){this.setStates(dP.MF.fromModelSelections(a))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(a){null!==a&&(this.cursors[0].setState(this.context,a[0].modelState,a[0].viewState),this._setSecondaryStates(a.slice(1)))}_setSecondaryStates(a){let b=this.cursors.length-1,c=a.length;if(b<c){let a=c-b;for(let b=0;b<a;b++)this._addSecondaryCursor()}else if(b>c){let a=b-c;for(let b=0;b<a;b++)this._removeSecondaryCursor(this.cursors.length-2)}for(let b=0;b<c;b++)this.cursors[b+1].setState(this.context,a[b].modelState,a[b].viewState)}killSecondaryCursors(){this._setSecondaryStates([])}_addSecondaryCursor(){this.cursors.push(new dQ(this.context)),this.lastAddedCursorIndex=this.cursors.length-1}getLastAddedCursorIndex(){return 1===this.cursors.length||0===this.lastAddedCursorIndex?0:this.lastAddedCursorIndex}_removeSecondaryCursor(a){this.lastAddedCursorIndex>=a+1&&this.lastAddedCursorIndex--,this.cursors[a+1].dispose(this.context),this.cursors.splice(a+1,1)}normalize(){if(1===this.cursors.length)return;let a=this.cursors.slice(0),b=[];for(let c=0,d=a.length;c<d;c++)b.push({index:c,selection:a[c].modelState.selection});b.sort((0,A.VE)(a=>a.selection,ab.Q.compareRangesUsingStarts));for(let c=0;c<b.length-1;c++){let d=b[c],e=b[c+1],f=d.selection,g=e.selection;if(this.context.cursorConfig.multiCursorMergeOverlapping&&(g.isEmpty()||f.isEmpty()?g.getStartPosition().isBeforeOrEqual(f.getEndPosition()):g.getStartPosition().isBefore(f.getEndPosition()))){let f=d.index<e.index?c:c+1,g=d.index<e.index?c+1:c,h=b[g].index,i=b[f].index,j=b[g].selection,k=b[f].selection;if(!j.equalsSelection(k)){let c,d,e=j.plusRange(k),g=j.selectionStartLineNumber===j.startLineNumber&&j.selectionStartColumn===j.startColumn,l=k.selectionStartLineNumber===k.startLineNumber&&k.selectionStartColumn===k.startColumn;h===this.lastAddedCursorIndex?(c=g,this.lastAddedCursorIndex=i):c=l,d=c?new aw.L(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new aw.L(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn),b[f].selection=d;let m=dP.MF.fromModelSelection(d);a[i].setState(this.context,m.modelState,m.viewState)}for(let a of b)a.index>h&&a.index--;a.splice(h,1),b.splice(g,1),this._removeSecondaryCursor(h-1),c--}}}}class dS{constructor(a,b,c,d){this._cursorContextBrand=void 0,this.model=a,this.viewModel=b,this.coordinatesConverter=c,this.cursorConfig=d}}var dT=c(29734),dU=c(77705),dV=c(91389);class dW{constructor(){this.type=0}}class dX{constructor(){this.type=1}}class dY{constructor(a){this.type=2,this._source=a}hasChanged(a){return this._source.hasChanged(a)}}class dZ{constructor(a,b,c){this.selections=a,this.modelSelections=b,this.reason=c,this.type=3}}class d${constructor(a){this.type=4,a?(this.affectsMinimap=a.affectsMinimap,this.affectsOverviewRuler=a.affectsOverviewRuler,this.affectsGlyphMargin=a.affectsGlyphMargin,this.affectsLineNumber=a.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class d_{constructor(){this.type=5}}class d0{constructor(a){this.type=6,this.isFocused=a}}class d1{constructor(){this.type=7}}class d2{constructor(){this.type=8}}class d3{constructor(a,b){this.fromLineNumber=a,this.count=b,this.type=9}}class d4{constructor(a,b){this.type=10,this.fromLineNumber=a,this.toLineNumber=b}}class d5{constructor(a,b){this.type=11,this.fromLineNumber=a,this.toLineNumber=b}}class d6{constructor(a,b,c,d,e,f,g){this.source=a,this.minimalReveal=b,this.range=c,this.selections=d,this.verticalType=e,this.revealHorizontal=f,this.scrollType=g,this.type=12}}class d7{constructor(a){this.type=13,this.scrollWidth=a.scrollWidth,this.scrollLeft=a.scrollLeft,this.scrollHeight=a.scrollHeight,this.scrollTop=a.scrollTop,this.scrollWidthChanged=a.scrollWidthChanged,this.scrollLeftChanged=a.scrollLeftChanged,this.scrollHeightChanged=a.scrollHeightChanged,this.scrollTopChanged=a.scrollTopChanged}}class d8{constructor(a){this.theme=a,this.type=14}}class d9{constructor(a){this.type=15,this.ranges=a}}class ea{constructor(){this.type=16}}class eb{constructor(){this.type=17}}class ec extends w.jG{constructor(){super(),this._onEvent=this._register(new v.vl),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(a){this._addOutgoingEvent(a),this._emitOutgoingEvents()}_addOutgoingEvent(a){for(let b=0,c=this._outgoingEvents.length;b<c;b++){let c=this._outgoingEvents[b].kind===a.kind?this._outgoingEvents[b].attemptToMerge(a):null;if(c){this._outgoingEvents[b]=c;return}}this._outgoingEvents.push(a)}_emitOutgoingEvents(){for(;this._outgoingEvents.length>0;){if(this._collector||this._isConsumingViewEventQueue)return;let a=this._outgoingEvents.shift();a.isNoOp()||this._onEvent.fire(a)}}addViewEventHandler(a){for(let b=0,c=this._eventHandlers.length;b<c;b++)this._eventHandlers[b]===a&&console.warn("Detected duplicate listener in ViewEventDispatcher",a);this._eventHandlers.push(a)}removeViewEventHandler(a){for(let b=0;b<this._eventHandlers.length;b++)if(this._eventHandlers[b]===a){this._eventHandlers.splice(b,1);break}}beginEmitViewEvents(){return this._collectorCnt++,1===this._collectorCnt&&(this._collector=new ed),this._collector}endEmitViewEvents(){if(this._collectorCnt--,0===this._collectorCnt){let a=this._collector.outgoingEvents,b=this._collector.viewEvents;for(let b of(this._collector=null,a))this._addOutgoingEvent(b);b.length>0&&this._emitMany(b)}this._emitOutgoingEvents()}emitSingleViewEvent(a){try{this.beginEmitViewEvents().emitViewEvent(a)}finally{this.endEmitViewEvents()}}_emitMany(a){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(a):this._viewEventQueue=a,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){let a=this._viewEventQueue;for(let b of(this._viewEventQueue=null,this._eventHandlers.slice(0)))b.handleEvents(a)}}}class ed{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(a){this.viewEvents.push(a)}emitOutgoingEvent(a){this.outgoingEvents.push(a)}}class ee{constructor(a,b,c,d){this.kind=0,this._oldContentWidth=a,this._oldContentHeight=b,this.contentWidth=c,this.contentHeight=d,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(a){return a.kind!==this.kind?null:new ee(this._oldContentWidth,this._oldContentHeight,a.contentWidth,a.contentHeight)}}class ef{constructor(a,b){this.kind=1,this.oldHasFocus=a,this.hasFocus=b}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(a){return a.kind!==this.kind?null:new ef(this.oldHasFocus,a.hasFocus)}}class eg{constructor(a,b){this.kind=2,this.oldHasFocus=a,this.hasFocus=b}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(a){return a.kind!==this.kind?null:new ef(this.oldHasFocus,a.hasFocus)}}class eh{constructor(a,b,c,d,e,f,g,h){this.kind=3,this._oldScrollWidth=a,this._oldScrollLeft=b,this._oldScrollHeight=c,this._oldScrollTop=d,this.scrollWidth=e,this.scrollLeft=f,this.scrollHeight=g,this.scrollTop=h,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(a){return a.kind!==this.kind?null:new eh(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,a.scrollWidth,a.scrollLeft,a.scrollHeight,a.scrollTop)}}class ei{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class ej{constructor(){this.kind=5}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class ek{constructor(a,b,c,d,e,f,g){this.kind=7,this.oldSelections=a,this.selections=b,this.oldModelVersionId=c,this.modelVersionId=d,this.source=e,this.reason=f,this.reachedMaxCursorCount=g}static _selectionsAreEqual(a,b){if(!a&&!b)return!0;if(!a||!b)return!1;let c=a.length;if(c!==b.length)return!1;for(let d=0;d<c;d++)if(!a[d].equalsSelection(b[d]))return!1;return!0}isNoOp(){return ek._selectionsAreEqual(this.oldSelections,this.selections)&&this.oldModelVersionId===this.modelVersionId}attemptToMerge(a){return a.kind!==this.kind?null:new ek(this.oldSelections,a.selections,this.oldModelVersionId,a.modelVersionId,a.source,a.reason,this.reachedMaxCursorCount||a.reachedMaxCursorCount)}}class el{constructor(){this.kind=6}isNoOp(){return!1}attemptToMerge(a){return a.kind!==this.kind?null:this}}class em{constructor(a){this.event=a,this.kind=8}isNoOp(){return!1}attemptToMerge(a){return null}}class en{constructor(a){this.event=a,this.kind=9}isNoOp(){return!1}attemptToMerge(a){return null}}class eo{constructor(a){this.event=a,this.kind=10}isNoOp(){return!1}attemptToMerge(a){return null}}class ep{constructor(a){this.event=a,this.kind=11}isNoOp(){return!1}attemptToMerge(a){return null}}class eq{constructor(a){this.event=a,this.kind=12}isNoOp(){return!1}attemptToMerge(a){return null}}class er{constructor(a){this.event=a,this.kind=13}isNoOp(){return!1}attemptToMerge(a){return null}}class es{constructor(a){this.event=a,this.kind=14}isNoOp(){return!1}attemptToMerge(a){return null}}class et{constructor(a){this.event=a,this.kind=15}isNoOp(){return!1}attemptToMerge(a){return null}}var eu=c(42715);class ev extends w.jG{constructor(a,b,c,d){super(),this._model=a,this._knownModelVersionId=this._model.getVersionId(),this._viewModel=b,this._coordinatesConverter=c,this.context=new dS(this._model,this._viewModel,this._coordinatesConverter,d),this._cursors=new dR(this.context),this._hasFocus=!1,this._isHandling=!1,this._compositionState=null,this._columnSelectData=null,this._autoClosedActions=[],this._prevEditOperationType=0}dispose(){this._cursors.dispose(),this._autoClosedActions=(0,w.AS)(this._autoClosedActions),super.dispose()}updateConfiguration(a){this.context=new dS(this._model,this._viewModel,this._coordinatesConverter,a),this._cursors.updateContext(this.context)}onLineMappingChanged(a){this._knownModelVersionId===this._model.getVersionId()&&this.setStates(a,"viewModel",0,this.getCursorStates())}setHasFocus(a){this._hasFocus=a}_validateAutoClosedActions(){if(this._autoClosedActions.length>0){let a=this._cursors.getSelections();for(let b=0;b<this._autoClosedActions.length;b++){let c=this._autoClosedActions[b];!c.isValid(a)&&(c.dispose(),this._autoClosedActions.splice(b,1),b--)}}}getPrimaryCursorState(){return this._cursors.getPrimaryCursor()}getLastAddedCursorIndex(){return this._cursors.getLastAddedCursorIndex()}getCursorStates(){return this._cursors.getAll()}setStates(a,b,c,d){let e=!1,f=this.context.cursorConfig.multiCursorLimit;null!==d&&d.length>f&&(d=d.slice(0,f),e=!0);let g=ew.from(this._model,this);return this._cursors.setStates(d),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(a,b,c,g,e)}setCursorColumnSelectData(a){this._columnSelectData=a}revealAll(a,b,c,d,e,f){let g=this._cursors.getViewPositions(),h=null,i=null;g.length>1?i=this._cursors.getViewSelections():h=ab.Q.fromPositions(g[0],g[0]),a.emitViewEvent(new d6(b,c,h,i,d,e,f))}revealPrimary(a,b,c,d,e,f){let g=[this._cursors.getPrimaryCursor().viewState.selection];a.emitViewEvent(new d6(b,c,null,g,d,e,f))}saveState(){let a=[],b=this._cursors.getSelections();for(let c=0,d=b.length;c<d;c++){let d=b[c];a.push({inSelectionMode:!d.isEmpty(),selectionStart:{lineNumber:d.selectionStartLineNumber,column:d.selectionStartColumn},position:{lineNumber:d.positionLineNumber,column:d.positionColumn}})}return a}restoreState(a,b){let c=[];for(let a=0,d=b.length;a<d;a++){let d=b[a],e=1,f=1;d.position&&d.position.lineNumber&&(e=d.position.lineNumber),d.position&&d.position.column&&(f=d.position.column);let g=e,h=f;d.selectionStart&&d.selectionStart.lineNumber&&(g=d.selectionStart.lineNumber),d.selectionStart&&d.selectionStart.column&&(h=d.selectionStart.column),c.push({selectionStartLineNumber:g,selectionStartColumn:h,positionLineNumber:e,positionColumn:f})}this.setStates(a,"restoreState",0,dP.MF.fromModelSelections(c)),this.revealAll(a,"restoreState",!1,0,!0,1)}onModelContentChanged(a,b){if(b instanceof du.vn){if(!this._isHandling){this._isHandling=!0;try{this.setStates(a,"modelChange",0,this.getCursorStates())}finally{this._isHandling=!1}}}else{let c=b.rawContentChangedEvent;if(this._knownModelVersionId=c.versionId,this._isHandling)return;let d=c.containsEvent(1);if(this._prevEditOperationType=0,d)this._cursors.dispose(),this._cursors=new dR(this.context),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(a,"model",1,null,!1);else if(this._hasFocus&&c.resultingSelection&&c.resultingSelection.length>0){let b=dP.MF.fromModelSelections(c.resultingSelection);this.setStates(a,"modelChange",c.isUndoing?5:c.isRedoing?6:2,b)&&this.revealAll(a,"modelChange",!1,0,!0,0)}else{let b=this._cursors.readSelectionFromMarkers();this.setStates(a,"modelChange",2,dP.MF.fromModelSelections(b))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;let a=this._cursors.getPrimaryCursor(),b=a.viewState.selectionStart.getStartPosition(),c=a.viewState.position;return{isReal:!1,fromViewLineNumber:b.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,b),toViewLineNumber:c.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,c)}}getSelections(){return this._cursors.getSelections()}setSelections(a,b,c,d){this.setStates(a,b,d,dP.MF.fromModelSelections(c))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(a){this._prevEditOperationType=a}_pushAutoClosedAction(a,b){let c=[],d=[];for(let e=0,f=a.length;e<f;e++)c.push({range:a[e],options:{description:"auto-closed-character",inlineClassName:"auto-closed-character",stickiness:1}}),d.push({range:b[e],options:{description:"auto-closed-enclosing",stickiness:1}});let e=this._model.deltaDecorations([],c),f=this._model.deltaDecorations([],d);this._autoClosedActions.push(new ex(this._model,e,f))}_executeEditOperation(a,b){if(!a)return;a.shouldPushStackElementBefore&&this._model.pushStackElement();let c=ey.executeCommands(this._model,this._cursors.getSelections(),a.commands,b);if(c){this._interpretCommandResult(c);let b=[],d=[];for(let c=0;c<a.commands.length;c++){let e=a.commands[c];e instanceof dV.Hs&&e.enclosingRange&&e.closeCharacterRange&&(b.push(e.closeCharacterRange),d.push(e.enclosingRange))}b.length>0&&this._pushAutoClosedAction(b,d),this._prevEditOperationType=a.type}a.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(a){a&&0!==a.length||(a=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(a),this._cursors.normalize()}_emitStateChangedIfNecessary(a,b,c,d,e){let f=ew.from(this._model,this);if(f.equals(d))return!1;let g=this._cursors.getSelections(),h=this._cursors.getViewSelections();if(a.emitViewEvent(new dZ(h,g,c)),!d||d.cursorState.length!==f.cursorState.length||f.cursorState.some((a,b)=>!a.modelState.equals(d.cursorState[b].modelState))){let h=d?d.cursorState.map(a=>a.modelState.selection):null,i=d?d.modelVersionId:0;a.emitOutgoingEvent(new ek(h,g,i,f.modelVersionId,b||"keyboard",c,e))}return!0}_findAutoClosingPairs(a){if(!a.length)return null;let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c];if(!d.text||d.text.indexOf("\n")>=0)return null;let e=d.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!e)return null;let f=e[1],g=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(f);if(!g||1!==g.length)return null;let h=g[0].open,i=d.text.length-e[2].length-1,j=d.text.lastIndexOf(h,i-1);if(-1===j)return null;b.push([j,i])}return b}executeEdits(a,b,c,d,e){let f=null;"snippet"===b&&(f=this._findAutoClosingPairs(c)),f&&(c[0]._isTracked=!0);let g=[],h=[],i=this._model.pushEditOperations(this.getSelections(),c,a=>{if(f)for(let b=0,c=f.length;b<c;b++){let[c,d]=f[b],e=a[b],i=e.range.startLineNumber,j=e.range.startColumn-1+c,k=e.range.startColumn-1+d;g.push(new ab.Q(i,k+1,i,k+2)),h.push(new ab.Q(i,j+1,i,k+2))}let b=d(a);return b&&(this._isHandling=!0),b},void 0,e);i&&(this._isHandling=!1,this.setSelections(a,b,i,0)),g.length>0&&this._pushAutoClosedAction(g,h)}_executeEdit(a,b,c,d=0){if(this.context.cursorConfig.readOnly)return;let e=ew.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),a()}catch(a){(0,u.dz)(a)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(b,c,d,e,!1)&&this.revealAll(b,c,!1,0,!0,0)}getAutoClosedCharacters(){return ex.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(a){this._compositionState=new eA(this._model,this.getSelections())}endComposition(a,b){let c=eu.dg.cursor({kind:"compositionEnd",detailedSource:b}),d=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{"keyboard"===b&&this._executeEditOperation(dU.T.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,d,this.getSelections(),this.getAutoClosedCharacters()),c)},a,b)}type(a,b,c){let d=eu.dg.cursor({kind:"type",detailedSource:c});this._executeEdit(()=>{if("keyboard"===c){let a=b.length,c=0;for(;c<a;){let a=aK.iy(b,c),e=b.substr(c,a);this._executeEditOperation(dU.T.typeWithInterceptors(!!this._compositionState,this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),this.getAutoClosedCharacters(),e),d),c+=a}}else this._executeEditOperation(dU.T.typeWithoutInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),b),d)},a,c)}compositionType(a,b,c,d,e,f){let g=eu.dg.cursor({kind:"compositionType",detailedSource:f});if(0===b.length&&0===c&&0===d){if(0!==e){let b=this.getSelections().map(a=>{let b=a.getPosition();return new aw.L(b.lineNumber,b.column+e,b.lineNumber,b.column+e)});this.setSelections(a,f,b,0)}return}this._executeEdit(()=>{this._executeEditOperation(dU.T.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),b,c,d,e),g)},a,f)}paste(a,b,c,d,e){let f=eu.dg.cursor({kind:"paste",detailedSource:e});this._executeEdit(()=>{this._executeEditOperation(dU.T.paste(this.context.cursorConfig,this._model,this.getSelections(),b,c,d||[]),f)},a,e,4)}cut(a,b){let c=eu.dg.cursor({kind:"cut",detailedSource:b});this._executeEdit(()=>{this._executeEditOperation(dT.g.cut(this.context.cursorConfig,this._model,this.getSelections()),c)},a,b)}executeCommand(a,b,c){let d=eu.dg.cursor({kind:"executeCommand",detailedSource:c});this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new dP.vY(0,[b],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}),d)},a,c)}executeCommands(a,b,c){let d=eu.dg.cursor({kind:"executeCommands",detailedSource:c});this._executeEdit(()=>{this._executeEditOperation(new dP.vY(0,b,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}),d)},a,c)}}class ew{static from(a,b){return new ew(a.getVersionId(),b.getCursorStates())}constructor(a,b){this.modelVersionId=a,this.cursorState=b}equals(a){if(!a||this.modelVersionId!==a.modelVersionId||this.cursorState.length!==a.cursorState.length)return!1;for(let b=0,c=this.cursorState.length;b<c;b++)if(!this.cursorState[b].equals(a.cursorState[b]))return!1;return!0}}class ex{static getAllAutoClosedCharacters(a){let b=[];for(let c of a)b=b.concat(c.getAutoClosedCharactersRanges());return b}constructor(a,b,c){this._model=a,this._autoClosedCharactersDecorations=b,this._autoClosedEnclosingDecorations=c}dispose(){this._autoClosedCharactersDecorations=this._model.deltaDecorations(this._autoClosedCharactersDecorations,[]),this._autoClosedEnclosingDecorations=this._model.deltaDecorations(this._autoClosedEnclosingDecorations,[])}getAutoClosedCharactersRanges(){let a=[];for(let b=0;b<this._autoClosedCharactersDecorations.length;b++){let c=this._model.getDecorationRange(this._autoClosedCharactersDecorations[b]);c&&a.push(c)}return a}isValid(a){let b=[];for(let a=0;a<this._autoClosedEnclosingDecorations.length;a++){let c=this._model.getDecorationRange(this._autoClosedEnclosingDecorations[a]);if(c&&(b.push(c),c.startLineNumber!==c.endLineNumber))return!1}b.sort(ab.Q.compareRangesUsingStarts),a.sort(ab.Q.compareRangesUsingStarts);for(let c=0;c<a.length;c++)if(c>=b.length||!b[c].strictContainsRange(a[c]))return!1;return!0}}class ey{static executeCommands(a,b,c,d=eu.dg.unknown({name:"executeCommands"})){let e={model:a,selectionsBefore:b,trackedRanges:[],trackedRangesDirection:[]},f=this._innerExecuteCommands(e,c,d);for(let a=0,b=e.trackedRanges.length;a<b;a++)e.model._setTrackedRange(e.trackedRanges[a],null,0);return f}static _innerExecuteCommands(a,b,c){if(this._arrayIsEmpty(b))return null;let d=this._getEditOperations(a,b);if(0===d.operations.length)return null;let e=d.operations,f=this._getLoserCursorMap(e);if(f.hasOwnProperty("0"))return console.warn("Ignoring commands"),null;let g=[];for(let a=0,b=e.length;a<b;a++)f.hasOwnProperty(e[a].identifier.major.toString())||g.push(e[a]);d.hadTrackedEditOperation&&g.length>0&&(g[0]._isTracked=!0);let h=a.model.pushEditOperations(a.selectionsBefore,g,c=>{let d=[];for(let b=0;b<a.selectionsBefore.length;b++)d[b]=[];for(let a of c)a.identifier&&d[a.identifier.major].push(a);let e=(a,b)=>a.identifier.minor-b.identifier.minor,f=[];for(let c=0;c<a.selectionsBefore.length;c++)d[c].length>0?(d[c].sort(e),f[c]=b[c].computeCursorState(a.model,{getInverseEditOperations:()=>d[c],getTrackedSelection:b=>{let c=parseInt(b,10),d=a.model._getTrackedRange(a.trackedRanges[c]);return 0===a.trackedRangesDirection[c]?new aw.L(d.startLineNumber,d.startColumn,d.endLineNumber,d.endColumn):new aw.L(d.endLineNumber,d.endColumn,d.startLineNumber,d.startColumn)}})):f[c]=a.selectionsBefore[c];return f},void 0,c);h||(h=a.selectionsBefore);let i=[];for(let a in f)f.hasOwnProperty(a)&&i.push(parseInt(a,10));for(let a of(i.sort((a,b)=>b-a),i))h.splice(a,1);return h}static _arrayIsEmpty(a){for(let b=0,c=a.length;b<c;b++)if(a[b])return!1;return!0}static _getEditOperations(a,b){let c=[],d=!1;for(let e=0,f=b.length;e<f;e++){let f=b[e];if(f){let b=this._getEditOperationsFromCommand(a,e,f);c=c.concat(b.operations),d=d||b.hadTrackedEditOperation}}return{operations:c,hadTrackedEditOperation:d}}static _getEditOperationsFromCommand(a,b,c){let d=[],e=0,f=(a,f,g=!1)=>{ab.Q.isEmpty(a)&&""===f||d.push({identifier:{major:b,minor:e++},range:a,text:f,forceMoveMarkers:g,isAutoWhitespaceEdit:c.insertsAutoWhitespace})},g=!1;try{c.getEditOperations(a.model,{addEditOperation:f,addTrackedEditOperation:(a,b,c)=>{g=!0,f(a,b,c)},trackSelection:(b,c)=>{let d,e=aw.L.liftSelection(b);if(e.isEmpty())if("boolean"==typeof c)d=c?2:3;else{let b=a.model.getLineMaxColumn(e.startLineNumber);d=e.startColumn===b?2:3}else d=1;let f=a.trackedRanges.length,g=a.model._setTrackedRange(null,e,d);return a.trackedRanges[f]=g,a.trackedRangesDirection[f]=e.getDirection(),f.toString()}})}catch(a){return(0,u.dz)(a),{operations:[],hadTrackedEditOperation:!1}}return{operations:d,hadTrackedEditOperation:g}}static _getLoserCursorMap(a){(a=a.slice(0)).sort((a,b)=>-ab.Q.compareRangesUsingEnds(a.range,b.range));let b={};for(let c=1;c<a.length;c++){let d=a[c-1],e=a[c];if(ab.Q.getStartPosition(d.range).isBefore(ab.Q.getEndPosition(e.range))){let f;b[(f=d.identifier.major>e.identifier.major?d.identifier.major:e.identifier.major).toString()]=!0;for(let b=0;b<a.length;b++)a[b].identifier.major===f&&(a.splice(b,1),b<c&&c--,b--);c>0&&c--}}return b}}class ez{constructor(a,b,c,d){this.text=a,this.lineNumber=b,this.startSelectionOffset=c,this.endSelectionOffset=d}}class eA{static _capture(a,b){let c=[];for(let d of b){if(d.startLineNumber!==d.endLineNumber)return null;let b=d.startLineNumber;c.push(new ez(a.getLineContent(b),b,d.startColumn-1,d.endColumn-1))}return c}constructor(a,b){this._original=eA._capture(a,b)}deduceOutcome(a,b){if(!this._original)return null;let c=eA._capture(a,b);if(!c||this._original.length!==c.length)return null;let d=[];for(let a=0,b=this._original.length;a<b;a++)d.push(eA._deduceOutcome(this._original[a],c[a]));return d}static _deduceOutcome(a,b){let c=Math.min(a.startSelectionOffset,b.startSelectionOffset,aK.Qp(a.text,b.text)),d=Math.min(a.text.length-a.endSelectionOffset,b.text.length-b.endSelectionOffset,aK.Vi(a.text,b.text)),e=a.text.substring(c,a.text.length-d),f=b.text.length-d,g=b.text.substring(c,f),h=new ab.Q(b.lineNumber,c+1,b.lineNumber,f+1);return new dU.v(e,a.startSelectionOffset-c,a.endSelectionOffset-c,g,b.startSelectionOffset-c,b.endSelectionOffset-c,h)}}var eB=c(96085),eC=c(28550),eD=c(21777),eE=c(20715);class eF{constructor(a,b,c,d,e){this.decorationId=a,this.index=b,this.lineNumber=c,this.specialHeight=d,this.prefixSum=e,this.maximumSpecialHeight=d,this.deleted=!1}}class eG{constructor(a,b){if(this._decorationIDToCustomLine=new eH,this._orderedCustomLines=[],this._pendingSpecialLinesToInsert=[],this._invalidIndex=0,this._hasPending=!1,this._defaultLineHeight=a,b.length>0){for(let a of b)this.insertOrChangeCustomLineHeight(a.decorationId,a.startLineNumber,a.endLineNumber,a.lineHeight);this.commit()}}set defaultLineHeight(a){this._defaultLineHeight=a}get defaultLineHeight(){return this._defaultLineHeight}removeCustomLineHeight(a){let b=this._decorationIDToCustomLine.get(a);if(b){for(let c of(this._decorationIDToCustomLine.delete(a),b))c.deleted=!0,this._invalidIndex=Math.min(this._invalidIndex,c.index);this._hasPending=!0}}insertOrChangeCustomLineHeight(a,b,c,d){this.removeCustomLineHeight(a);for(let e=b;e<=c;e++){let b=new eF(a,-1,e,d,0);this._pendingSpecialLinesToInsert.push(b)}this._hasPending=!0}heightForLineNumber(a){let b=this._binarySearchOverOrderedCustomLinesArray(a);return b>=0?this._orderedCustomLines[b].maximumSpecialHeight:this._defaultLineHeight}getAccumulatedLineHeightsIncludingLineNumber(a){let b=this._binarySearchOverOrderedCustomLinesArray(a);if(b>=0)return this._orderedCustomLines[b].prefixSum+this._orderedCustomLines[b].maximumSpecialHeight;if(-1===b)return this._defaultLineHeight*a;let c=this._orderedCustomLines[-(b+1)-1];return c.prefixSum+c.maximumSpecialHeight+this._defaultLineHeight*(a-c.lineNumber)}onLinesDeleted(a,b){let c,d,e=b-a+1,f=this._orderedCustomLines.length,g=this._binarySearchOverOrderedCustomLinesArray(a);if(g>=0){c=g;for(let b=g-1;b>=0;b--)if(this._orderedCustomLines[b].lineNumber===a)c--;else break}else c=g===-(f+1)&&-1!==g?f-1:-(g+1);let h=this._binarySearchOverOrderedCustomLinesArray(b);if(h>=0){d=h;for(let a=h+1;a<f;a++)if(this._orderedCustomLines[a].lineNumber===b)d++;else break}else d=h===-(f+1)&&-1!==h?f-1:-(h+1);let i=d>c,j=d===c&&this._orderedCustomLines[c]&&this._orderedCustomLines[c].lineNumber>=a&&this._orderedCustomLines[c].lineNumber<=b;if(i||j){let f=0;for(let a=c;a<=d;a++)f=Math.max(f,this._orderedCustomLines[a].maximumSpecialHeight);let g=0;if(c>0){let b=this._orderedCustomLines[c-1];g=b.prefixSum+b.maximumSpecialHeight+this._defaultLineHeight*(a-b.lineNumber-1)}else g=a>0?(a-1)*this._defaultLineHeight:0;let h=this._orderedCustomLines[c],i=this._orderedCustomLines[d],j=this._orderedCustomLines[d+1],k=j&&j.lineNumber===b+1?j.maximumSpecialHeight:this._defaultLineHeight,l=i.prefixSum+i.maximumSpecialHeight-h.prefixSum+this._defaultLineHeight*(b-i.lineNumber)+this._defaultLineHeight*(h.lineNumber-a)+k-f,m=new Set,n=[],o=new eH,p=0;for(let b=0;b<this._orderedCustomLines.length;b++){let h=this._orderedCustomLines[b];if(b<c)n.push(h),o.add(h.decorationId,h);else if(b>=c&&b<=d){let b=h.decorationId;m.has(b)?p++:(h.index-=p,h.lineNumber=a,h.prefixSum=g,h.maximumSpecialHeight=f,n.push(h),o.add(h.decorationId,h))}else b>d&&(h.index-=p,h.lineNumber-=e,h.prefixSum-=l,n.push(h),o.add(h.decorationId,h));m.add(h.decorationId)}this._orderedCustomLines=n,this._decorationIDToCustomLine=o}else{let a=e*this._defaultLineHeight;for(let c=d;c<this._orderedCustomLines.length;c++){let d=this._orderedCustomLines[c];d.lineNumber>b&&(d.lineNumber-=e,d.prefixSum-=a)}}}onLinesInserted(a,b){let c,d=b-a+1,e=this._binarySearchOverOrderedCustomLinesArray(a);if(e>=0){c=e;for(let b=e-1;b>=0;b--)if(this._orderedCustomLines[b].lineNumber===a)c--;else break}else c=-(e+1);let f=[],g=new Set;for(let b=c;b<this._orderedCustomLines.length;b++)this._orderedCustomLines[b].lineNumber===a&&g.add(this._orderedCustomLines[b].decorationId);let h=new Set;for(let b=c-1;b>=0;b--)this._orderedCustomLines[b].lineNumber===a-1&&h.add(this._orderedCustomLines[b].decorationId);let i=(0,eE.E$)(h,g);for(let a=c;a<this._orderedCustomLines.length;a++)this._orderedCustomLines[a].lineNumber+=d,this._orderedCustomLines[a].prefixSum+=this._defaultLineHeight*d;if(i.size>0){for(let b of i){let c=this._decorationIDToCustomLine.get(b);if(c){let d=c.reduce((a,b)=>Math.min(a,b.lineNumber),a),e=c.reduce((a,b)=>Math.max(a,b.lineNumber),a),g=c.reduce((a,b)=>Math.max(a,b.specialHeight),0);f.push({decorationId:b,startLineNumber:d,endLineNumber:e,lineHeight:g})}}for(let a of f)this.insertOrChangeCustomLineHeight(a.decorationId,a.startLineNumber,a.endLineNumber,a.lineHeight);this.commit()}}commit(){if(!this._hasPending)return;for(let a of this._pendingSpecialLinesToInsert){let b=this._binarySearchOverOrderedCustomLinesArray(a.lineNumber),c=b>=0?b:-(b+1);this._orderedCustomLines.splice(c,0,a),this._invalidIndex=Math.min(this._invalidIndex,c)}this._pendingSpecialLinesToInsert=[];let a=new eH,b=[];for(let c=0;c<this._invalidIndex;c++){let d=this._orderedCustomLines[c];b.push(d),a.add(d.decorationId,d)}let c=0,d=this._invalidIndex>0?b[this._invalidIndex-1]:void 0;for(let e=this._invalidIndex;e<this._orderedCustomLines.length;e++){let f=this._orderedCustomLines[e];if(f.deleted){c++;continue}if(f.index=e-c,d&&d.lineNumber===f.lineNumber)f.maximumSpecialHeight=d.maximumSpecialHeight,f.prefixSum=d.prefixSum;else{let a,b=f.specialHeight;for(let a=e;a<this._orderedCustomLines.length;a++){let c=this._orderedCustomLines[a];if(!c.deleted){if(c.lineNumber!==f.lineNumber)break;b=Math.max(b,c.specialHeight)}}f.maximumSpecialHeight=b,a=d?d.prefixSum+d.maximumSpecialHeight+this._defaultLineHeight*(f.lineNumber-d.lineNumber-1):this._defaultLineHeight*(f.lineNumber-1),f.prefixSum=a}d=f,b.push(f),a.add(f.decorationId,f)}this._orderedCustomLines=b,this._decorationIDToCustomLine=a,this._invalidIndex=1/0,this._hasPending=!1}_binarySearchOverOrderedCustomLinesArray(a){return(0,A.Uw)(this._orderedCustomLines.length,b=>{let c=this._orderedCustomLines[b];return c.lineNumber===a?0:c.lineNumber<a?-1:1})}}class eH{constructor(){this._map=new Map}add(a,b){let c=this._map.get(a);c?c.push(b):this._map.set(a,[b])}get(a){return this._map.get(a)}delete(a){this._map.delete(a)}}class eI{constructor(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}insert(a){this._hasPending=!0,this._inserts.push(a)}change(a){this._hasPending=!0,this._changes.push(a)}remove(a){this._hasPending=!0,this._removes.push(a)}commit(a){if(!this._hasPending)return;let b=this._inserts,c=this._changes,d=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],a._commitPendingChanges(b,c,d)}}class eJ{constructor(a,b,c,d,e){this.id=a,this.afterLineNumber=b,this.ordinal=c,this.height=d,this.minWidth=e,this.prefixSum=0}}class eK{static{this.INSTANCE_COUNT=0}constructor(a,b,c,d,e){this._instanceId=aK.tk(++eK.INSTANCE_COUNT),this._pendingChanges=new eI,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=a,this._paddingTop=c,this._paddingBottom=d,this._lineHeightsManager=new eG(b,e)}static findInsertionIndex(a,b,c){let d=0,e=a.length;for(;d<e;){let f=d+e>>>1;b===a[f].afterLineNumber?c<a[f].ordinal?e=f:d=f+1:b<a[f].afterLineNumber?e=f:d=f+1}return d}setDefaultLineHeight(a){this._lineHeightsManager.defaultLineHeight=a}setPadding(a,b){this._paddingTop=a,this._paddingBottom=b}onFlushed(a,b){this._lineCount=a,this._lineHeightsManager=new eG(this._lineHeightsManager.defaultLineHeight,b)}changeLineHeights(a){let b=!1;try{a({insertOrChangeCustomLineHeight:(a,c,d,e)=>{b=!0,this._lineHeightsManager.insertOrChangeCustomLineHeight(a,c,d,e)},removeCustomLineHeight:a=>{b=!0,this._lineHeightsManager.removeCustomLineHeight(a)}})}finally{this._lineHeightsManager.commit()}return b}changeWhitespace(a){let b=!1;try{let c={insertWhitespace:(a,c,d,e)=>{b=!0,a|=0,c|=0,d|=0,e|=0;let f=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new eJ(f,a,c,d,e)),f},changeOneWhitespace:(a,c,d)=>{b=!0,c|=0,d|=0,this._pendingChanges.change({id:a,newAfterLineNumber:c,newHeight:d})},removeWhitespace:a=>{b=!0,this._pendingChanges.remove({id:a})}};a(c)}finally{this._pendingChanges.commit(this)}return b}_commitPendingChanges(a,b,c){if((a.length>0||c.length>0)&&(this._minWidth=-1),a.length+b.length+c.length<=1){for(let b of a)this._insertWhitespace(b);for(let a of b)this._changeOneWhitespace(a.id,a.newAfterLineNumber,a.newHeight);for(let a of c){let b=this._findWhitespaceIndex(a.id);-1!==b&&this._removeWhitespace(b)}return}let d=new Set;for(let a of c)d.add(a.id);let e=new Map;for(let a of b)e.set(a.id,a);let f=a=>{let b=[];for(let c of a)if(!d.has(c.id)){if(e.has(c.id)){let a=e.get(c.id);c.afterLineNumber=a.newAfterLineNumber,c.height=a.newHeight}b.push(c)}return b},g=f(this._arr).concat(f(a));g.sort((a,b)=>a.afterLineNumber===b.afterLineNumber?a.ordinal-b.ordinal:a.afterLineNumber-b.afterLineNumber),this._arr=g,this._prefixSumValidIndex=-1}_insertWhitespace(a){let b=eK.findInsertionIndex(this._arr,a.afterLineNumber,a.ordinal);this._arr.splice(b,0,a),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,b-1)}_findWhitespaceIndex(a){let b=this._arr;for(let c=0,d=b.length;c<d;c++)if(b[c].id===a)return c;return -1}_changeOneWhitespace(a,b,c){let d=this._findWhitespaceIndex(a);if(-1!==d&&(this._arr[d].height!==c&&(this._arr[d].height=c,this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,d-1)),this._arr[d].afterLineNumber!==b)){let a=this._arr[d];this._removeWhitespace(d),a.afterLineNumber=b,this._insertWhitespace(a)}}_removeWhitespace(a){this._arr.splice(a,1),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,a-1)}onLinesDeleted(a,b){a|=0,b|=0,this._lineCount-=b-a+1;for(let c=0,d=this._arr.length;c<d;c++){let d=this._arr[c].afterLineNumber;a<=d&&d<=b?this._arr[c].afterLineNumber=a-1:d>b&&(this._arr[c].afterLineNumber-=b-a+1)}this._lineHeightsManager.onLinesDeleted(a,b)}onLinesInserted(a,b){a|=0,b|=0,this._lineCount+=b-a+1;for(let c=0,d=this._arr.length;c<d;c++){let d=this._arr[c].afterLineNumber;a<=d&&(this._arr[c].afterLineNumber+=b-a+1)}this._lineHeightsManager.onLinesInserted(a,b)}getWhitespacesTotalHeight(){return 0===this._arr.length?0:this.getWhitespacesAccumulatedHeight(this._arr.length-1)}getWhitespacesAccumulatedHeight(a){a|=0;let b=Math.max(0,this._prefixSumValidIndex+1);0===b&&(this._arr[0].prefixSum=this._arr[0].height,b++);for(let c=b;c<=a;c++)this._arr[c].prefixSum=this._arr[c-1].prefixSum+this._arr[c].height;return this._prefixSumValidIndex=Math.max(this._prefixSumValidIndex,a),this._arr[a].prefixSum}getLinesTotalHeight(){return this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(this._lineCount)+this.getWhitespacesTotalHeight()+this._paddingTop+this._paddingBottom}getWhitespaceAccumulatedHeightBeforeLineNumber(a){a|=0;let b=this._findLastWhitespaceBeforeLineNumber(a);return -1===b?0:this.getWhitespacesAccumulatedHeight(b)}_findLastWhitespaceBeforeLineNumber(a){a|=0;let b=this._arr,c=0,d=b.length-1;for(;c<=d;){let e=(d-c|0)/2|0,f=c+e|0;if(b[f].afterLineNumber<a)if(f+1>=b.length||b[f+1].afterLineNumber>=a)return f;else c=f+1|0;else d=f-1|0}return -1}_findFirstWhitespaceAfterLineNumber(a){a|=0;let b=this._findLastWhitespaceBeforeLineNumber(a)+1;return b<this._arr.length?b:-1}getFirstWhitespaceIndexAfterLineNumber(a){return a|=0,this._findFirstWhitespaceAfterLineNumber(a)}getVerticalOffsetForLineNumber(a,b=!1){return((a|=0)>1?this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(a-1):0)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(a-!!b)+this._paddingTop}getLineHeightForLineNumber(a){return this._lineHeightsManager.heightForLineNumber(a)}getVerticalOffsetAfterLineNumber(a,b=!1){return a|=0,this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(a)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(a+ +!!b)+this._paddingTop}getWhitespaceMinWidth(){if(-1===this._minWidth){let a=0;for(let b=0,c=this._arr.length;b<c;b++)a=Math.max(a,this._arr[b].minWidth);this._minWidth=a}return this._minWidth}isAfterLines(a){return a>this.getLinesTotalHeight()}isInTopPadding(a){return 0!==this._paddingTop&&a<this._paddingTop}isInBottomPadding(a){return 0!==this._paddingBottom&&a>=this.getLinesTotalHeight()-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(a){if((a|=0)<0)return 1;let b=0|this._lineCount,c=1,d=b;for(;c<d;){let b=(c+d)/2|0,e=this.getLineHeightForLineNumber(b),f=0|this.getVerticalOffsetForLineNumber(b);if(a>=f+e)c=b+1;else{if(a>=f)return b;d=b}}return c>b?b:c}getLinesViewportData(a,b){let c,d;a|=0,b|=0;let e=0|this.getLineNumberAtOrAfterVerticalOffset(a),f=0|this.getVerticalOffsetForLineNumber(e),g=0|this._lineCount,h=0|this.getFirstWhitespaceIndexAfterLineNumber(e),i=0|this.getWhitespacesCount();-1===h?(h=i,d=g+1,c=0):(d=0|this.getAfterLineNumberForWhitespaceIndex(h),c=0|this.getHeightForWhitespaceIndex(h));let j=f,k=j,l=0;f>=5e5&&(k-=l=Math.floor((l=5e5*Math.floor(f/5e5))/this._lineHeightsManager.defaultLineHeight)*this._lineHeightsManager.defaultLineHeight);let m=[],n=a+(b-a)/2,o=-1;for(let a=e;a<=g;a++){let f=this.getLineHeightForLineNumber(a);if(-1===o){let b=j,c=j+f;(b<=n&&n<c||b>n)&&(o=a)}for(j+=f,m[a-e]=k,k+=f;d===a;)k+=c,j+=c,++h>=i?d=g+1:(d=0|this.getAfterLineNumberForWhitespaceIndex(h),c=0|this.getHeightForWhitespaceIndex(h));if(j>=b){g=a;break}}-1===o&&(o=g);let p=0|this.getVerticalOffsetForLineNumber(g),q=e,r=g;return q<r&&f<a&&q++,q<r&&p+this.getLineHeightForLineNumber(g)>b&&r--,{bigNumbersDelta:l,startLineNumber:e,endLineNumber:g,relativeVerticalOffset:m,centeredLineNumber:o,completelyVisibleStartLineNumber:q,completelyVisibleEndLineNumber:r,lineHeight:this._lineHeightsManager.defaultLineHeight}}getVerticalOffsetForWhitespaceIndex(a){a|=0;let b=this.getAfterLineNumberForWhitespaceIndex(a);return(b>=1?this._lineHeightsManager.getAccumulatedLineHeightsIncludingLineNumber(b):0)+(a>0?this.getWhitespacesAccumulatedHeight(a-1):0)+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(a){a|=0;let b=0,c=this.getWhitespacesCount()-1;if(c<0)return -1;let d=this.getVerticalOffsetForWhitespaceIndex(c),e=this.getHeightForWhitespaceIndex(c);if(a>=d+e)return -1;for(;b<c;){let d=Math.floor((b+c)/2),e=this.getVerticalOffsetForWhitespaceIndex(d),f=this.getHeightForWhitespaceIndex(d);if(a>=e+f)b=d+1;else{if(a>=e)return d;c=d}}return b}getWhitespaceAtVerticalOffset(a){a|=0;let b=this.getWhitespaceIndexAtOrAfterVerticallOffset(a);if(b<0||b>=this.getWhitespacesCount())return null;let c=this.getVerticalOffsetForWhitespaceIndex(b);if(c>a)return null;let d=this.getHeightForWhitespaceIndex(b);return{id:this.getIdForWhitespaceIndex(b),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(b),verticalOffset:c,height:d}}getWhitespaceViewportData(a,b){a|=0,b|=0;let c=this.getWhitespaceIndexAtOrAfterVerticallOffset(a),d=this.getWhitespacesCount()-1;if(c<0)return[];let e=[];for(let a=c;a<=d;a++){let c=this.getVerticalOffsetForWhitespaceIndex(a),d=this.getHeightForWhitespaceIndex(a);if(c>=b)break;e.push({id:this.getIdForWhitespaceIndex(a),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(a),verticalOffset:c,height:d})}return e}getWhitespaces(){return this._arr.slice(0)}getWhitespacesCount(){return this._arr.length}getIdForWhitespaceIndex(a){return a|=0,this._arr[a].id}getAfterLineNumberForWhitespaceIndex(a){return a|=0,this._arr[a].afterLineNumber}getHeightForWhitespaceIndex(a){return a|=0,this._arr[a].height}}class eL{constructor(a,b,c,d){(a|=0)<0&&(a=0),(b|=0)<0&&(b=0),(c|=0)<0&&(c=0),(d|=0)<0&&(d=0),this.width=a,this.contentWidth=b,this.scrollWidth=Math.max(a,b),this.height=c,this.contentHeight=d,this.scrollHeight=Math.max(c,d)}equals(a){return this.width===a.width&&this.contentWidth===a.contentWidth&&this.height===a.height&&this.contentHeight===a.contentHeight}}class eM extends w.jG{constructor(a,b){super(),this._onDidContentSizeChange=this._register(new v.vl),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new eL(0,0,0,0),this._scrollable=this._register(new eD.yE({forceIntegerValues:!0,smoothScrollDuration:a,scheduleAtNextAnimationFrame:b})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(a){this._scrollable.setSmoothScrollDuration(a)}validateScrollPosition(a){return this._scrollable.validateScrollPosition(a)}getScrollDimensions(){return this._dimensions}setScrollDimensions(a){if(this._dimensions.equals(a))return;let b=this._dimensions;this._dimensions=a,this._scrollable.setScrollDimensions({width:a.width,scrollWidth:a.scrollWidth,height:a.height,scrollHeight:a.scrollHeight},!0);let c=b.contentWidth!==a.contentWidth,d=b.contentHeight!==a.contentHeight;(c||d)&&this._onDidContentSizeChange.fire(new ee(b.contentWidth,b.contentHeight,a.contentWidth,a.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(a){this._scrollable.setScrollPositionNow(a)}setScrollPositionSmooth(a){this._scrollable.setScrollPositionSmooth(a)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class eN extends w.jG{constructor(a,b,c,d){super(),this._configuration=a;let e=this._configuration.options,f=e.get(165),g=e.get(96);this._linesLayout=new eK(b,e.get(75),g.top,g.bottom,c),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new eM(0,d)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new eL(f.contentWidth,0,f.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(125*!!this._configuration.options.get(130))}onConfigurationChanged(a){let b=this._configuration.options;if(a.hasChanged(75)&&this._linesLayout.setDefaultLineHeight(b.get(75)),a.hasChanged(96)){let a=b.get(96);this._linesLayout.setPadding(a.top,a.bottom)}if(a.hasChanged(165)){let a=b.get(165),c=a.contentWidth,d=a.height,e=this._scrollable.getScrollDimensions(),f=e.contentWidth;this._scrollable.setScrollDimensions(new eL(c,e.contentWidth,d,this._getContentHeight(c,d,f)))}else this._updateHeight();a.hasChanged(130)&&this._configureSmoothScrollDuration()}onFlushed(a,b){this._linesLayout.onFlushed(a,b)}onLinesDeleted(a,b){this._linesLayout.onLinesDeleted(a,b)}onLinesInserted(a,b){this._linesLayout.onLinesInserted(a,b)}_getHorizontalScrollbarHeight(a,b){let c=this._configuration.options.get(117);return 2===c.horizontal||a>=b?0:c.horizontalScrollbarSize}_getContentHeight(a,b,c){let d=this._configuration.options,e=this._linesLayout.getLinesTotalHeight();return d.get(119)?e+=Math.max(0,b-d.get(75)-d.get(96).bottom):d.get(117).ignoreHorizontalScrollbarInContentHeight||(e+=this._getHorizontalScrollbarHeight(a,c)),e}_updateHeight(){let a=this._scrollable.getScrollDimensions(),b=a.width,c=a.height,d=a.contentWidth;this._scrollable.setScrollDimensions(new eL(b,a.contentWidth,c,this._getContentHeight(b,c,d)))}getCurrentViewport(){let a=this._scrollable.getScrollDimensions(),b=this._scrollable.getCurrentScrollPosition();return new ca.LM(b.scrollTop,b.scrollLeft,a.width,a.height)}getFutureViewport(){let a=this._scrollable.getScrollDimensions(),b=this._scrollable.getFutureScrollPosition();return new ca.LM(b.scrollTop,b.scrollLeft,a.width,a.height)}_computeContentWidth(){let a=this._configuration.options,b=this._maxLineWidth,c=a.get(166),d=a.get(59),e=a.get(165);if(c.isViewportWrapping){let c=a.get(81);return b>e.contentWidth+d.typicalHalfwidthCharacterWidth&&c.enabled&&"right"===c.side?b+e.verticalScrollbarWidth:b}{let c=a.get(118)*d.typicalHalfwidthCharacterWidth,f=this._linesLayout.getWhitespaceMinWidth();return Math.max(b+c+e.verticalScrollbarWidth,f,this._overlayWidgetsMinWidth)}}setMaxLineWidth(a){this._maxLineWidth=a,this._updateContentWidth()}setOverlayWidgetsMinWidth(a){this._overlayWidgetsMinWidth=a,this._updateContentWidth()}_updateContentWidth(){let a=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new eL(a.width,this._computeContentWidth(),a.height,a.contentHeight)),this._updateHeight()}saveState(){let a=this._scrollable.getFutureScrollPosition(),b=a.scrollTop,c=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(b);return{scrollTop:b,scrollTopWithoutViewZones:b-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(c),scrollLeft:a.scrollLeft}}changeWhitespace(a){let b=this._linesLayout.changeWhitespace(a);return b&&this.onHeightMaybeChanged(),b}changeSpecialLineHeights(a){let b=this._linesLayout.changeLineHeights(a);return b&&this.onHeightMaybeChanged(),b}getVerticalOffsetForLineNumber(a,b=!1){return this._linesLayout.getVerticalOffsetForLineNumber(a,b)}getVerticalOffsetAfterLineNumber(a,b=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(a,b)}getLineHeightForLineNumber(a){return this._linesLayout.getLineHeightForLineNumber(a)}isAfterLines(a){return this._linesLayout.isAfterLines(a)}isInTopPadding(a){return this._linesLayout.isInTopPadding(a)}isInBottomPadding(a){return this._linesLayout.isInBottomPadding(a)}getLineNumberAtVerticalOffset(a){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(a)}getWhitespaceAtVerticalOffset(a){return this._linesLayout.getWhitespaceAtVerticalOffset(a)}getLinesViewportData(){let a=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(a.top,a.top+a.height)}getLinesViewportDataAtScrollTop(a){let b=this._scrollable.getScrollDimensions();return a+b.height>b.scrollHeight&&(a=b.scrollHeight-b.height),a<0&&(a=0),this._linesLayout.getLinesViewportData(a,a+b.height)}getWhitespaceViewportData(){let a=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(a.top,a.top+a.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(a){return this._scrollable.validateScrollPosition(a)}setScrollPosition(a,b){1===b?this._scrollable.setScrollPositionNow(a):this._scrollable.setScrollPositionSmooth(a)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(a,b){let c=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:c.scrollLeft+a,scrollTop:c.scrollTop+b})}}var eO=c(72991);class eP{constructor(a,b,c,d,e){this.editorId=a,this.model=b,this.configuration=c,this._linesCollection=d,this._coordinatesConverter=e,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(a){let b=a.id,c=this._decorationsCache[b];if(!c){let d,e=a.range,f=a.options;if(f.isWholeLine){let a=this._coordinatesConverter.convertModelPositionToViewPosition(new aa.y(e.startLineNumber,1),0,!1,!0),b=this._coordinatesConverter.convertModelPositionToViewPosition(new aa.y(e.endLineNumber,this.model.getLineMaxColumn(e.endLineNumber)),1);d=new ab.Q(a.lineNumber,a.column,b.lineNumber,b.column)}else d=this._coordinatesConverter.convertModelRangeToViewRange(e,1);c=new b$.vo(d,f),this._decorationsCache[b]=c}return c}getMinimapDecorationsInRange(a){return this._getDecorationsInRange(a,!0,!1).decorations}getDecorationsViewportData(a){let b=null!==this._cachedModelDecorationsResolver;return(b=b&&a.equalsRange(this._cachedModelDecorationsResolverViewRange))||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(a,!1,!1),this._cachedModelDecorationsResolverViewRange=a),this._cachedModelDecorationsResolver}getDecorationsOnLine(a,b=!1,c=!1){let d=new ab.Q(a,this._linesCollection.getViewLineMinColumn(a),a,this._linesCollection.getViewLineMaxColumn(a));return this._getDecorationsInRange(d,b,c)}_getDecorationsInRange(a,b,c){let d=this._linesCollection.getDecorationsInRange(a,this.editorId,(0,K.$C)(this.configuration.options),(0,K.Vs)(this.configuration.options),b,c),e=a.startLineNumber,f=a.endLineNumber,g=[],h=0,i=[];for(let a=e;a<=f;a++)i[a-e]=[];let j=!1;for(let a=0,b=d.length;a<b;a++){let b=d[a],c=b.options;if(!(0,b$.GN)(this.model,b))continue;let k=this._getOrCreateViewModelDecoration(b),l=k.range;if(g[h++]=k,c.inlineClassName){let a=new eO.k(l,c.inlineClassName,3*!!c.inlineClassNameAffectsLetterSpacing),b=Math.max(e,l.startLineNumber),d=Math.min(f,l.endLineNumber);for(let c=b;c<=d;c++)i[c-e].push(a)}if(c.beforeContentClassName&&e<=l.startLineNumber&&l.startLineNumber<=f){let a=new eO.k(new ab.Q(l.startLineNumber,l.startColumn,l.startLineNumber,l.startColumn),c.beforeContentClassName,1);i[l.startLineNumber-e].push(a)}if(c.afterContentClassName&&e<=l.endLineNumber&&l.endLineNumber<=f){let a=new eO.k(new ab.Q(l.endLineNumber,l.endColumn,l.endLineNumber,l.endColumn),c.afterContentClassName,2);i[l.endLineNumber-e].push(a)}c.affectsFont&&(j=!0)}return{decorations:g,inlineDecorations:i,hasVariableFonts:j}}}var eQ=c(21005);function eR(a,b){return null!==a?new eS(a,b):b?eT.INSTANCE:eU.INSTANCE}class eS{constructor(a,b){this._projectionData=a,this._isVisible=b}isVisible(){return this._isVisible}setVisible(a){return this._isVisible=a,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(a,b,c){let d;this._assertVisible();let e=c>0?this._projectionData.breakOffsets[c-1]:0,f=this._projectionData.breakOffsets[c];if(null!==this._projectionData.injectionOffsets){let c=this._projectionData.injectionOffsets.map((a,b)=>new du.uK(0,0,a+1,this._projectionData.injectionOptions[b],0));d=du.uK.applyInjectedText(a.getLineContent(b),c).substring(e,f)}else d=a.getValueInRange({startLineNumber:b,startColumn:e+1,endLineNumber:b,endColumn:f+1});return c>0&&(d=eW(this._projectionData.wrappedTextIndentLength)+d),d}getViewLineLength(a,b,c){return this._assertVisible(),this._projectionData.getLineLength(c)}getViewLineMinColumn(a,b,c){return this._assertVisible(),this._projectionData.getMinOutputOffset(c)+1}getViewLineMaxColumn(a,b,c){return this._assertVisible(),this._projectionData.getMaxOutputOffset(c)+1}getViewLineData(a,b,c){let d=[];return this.getViewLinesData(a,b,c,1,0,[!0],d),d[0]}getViewLinesData(a,b,c,d,e,f,g){let h;this._assertVisible();let i=this._projectionData,j=i.injectionOffsets,k=i.injectionOptions,l=null;if(j){l=[];let a=0,b=0;for(let c=0;c<i.getOutputLineCount();c++){let d=[];l[c]=d;let e=c>0?i.breakOffsets[c-1]:0,f=i.breakOffsets[c];for(;b<j.length;){let g=k[b].content.length,h=j[b]+a,l=h+g;if(h>f)break;if(e<l){let a=k[b];if(a.inlineClassName){let b=c>0?i.wrappedTextIndentLength:0,g=b+Math.max(h-e,0),j=b+Math.min(l-e,f-e);g!==j&&d.push(new eO.o(g,j,a.inlineClassName,a.inlineClassNameAffectsLetterSpacing))}}if(l<=f)a+=g,b++;else break}}}if(j){let c=[];for(let a=0;a<j.length;a++){let b=j[a],d=k[a].tokens;d?d.forEach((d,e)=>{c.push({offset:b,text:d.substring(k[a].content),tokenMetadata:e.metadata})}):c.push({offset:b,text:k[a].content,tokenMetadata:eQ.f7.defaultTokenMetadata})}h=a.tokenization.getLineTokens(b).withInserted(c)}else h=a.tokenization.getLineTokens(b);for(let a=c;a<c+d;a++){let b=e+a-c;if(!f[b]){g[b]=null;continue}g[b]=this._getViewLineData(h,l?l[a]:null,a)}}_getViewLineData(a,b,c){this._assertVisible();let d=this._projectionData,e=c>0?d.wrappedTextIndentLength:0,f=c>0?d.breakOffsets[c-1]:0,g=d.breakOffsets[c],h=a.sliceAndInflate(f,g,e),i=h.getLineContent();c>0&&(i=eW(d.wrappedTextIndentLength)+i);let j=this._projectionData.getMinOutputOffset(c)+1,k=i.length+1,l=c+1<this.getViewLineCount(),m=0===c?0:d.breakOffsetsVisibleColumn[c-1];return new ca.GP(i,l,j,k,m,h,b)}getModelColumnOfViewPosition(a,b){return this._assertVisible(),this._projectionData.translateToInputOffset(a,b-1)+1}getViewPositionOfModelPosition(a,b,c=2){return this._assertVisible(),this._projectionData.translateToOutputPosition(b-1,c).toPosition(a)}getViewLineNumberOfModelPosition(a,b){return this._assertVisible(),a+this._projectionData.translateToOutputPosition(b-1).outputLineIndex}normalizePosition(a,b,c){let d=b.lineNumber-a;return this._projectionData.normalizeOutputPosition(a,b.column-1,c).toPosition(d)}getInjectedTextAt(a,b){return this._projectionData.getInjectedText(a,b-1)}_assertVisible(){if(!this._isVisible)throw Error("Not supported")}}class eT{static{this.INSTANCE=new eT}constructor(){}isVisible(){return!0}setVisible(a){return a?this:eU.INSTANCE}getProjectionData(){return null}getViewLineCount(){return 1}getViewLineContent(a,b,c){return a.getLineContent(b)}getViewLineLength(a,b,c){return a.getLineLength(b)}getViewLineMinColumn(a,b,c){return a.getLineMinColumn(b)}getViewLineMaxColumn(a,b,c){return a.getLineMaxColumn(b)}getViewLineData(a,b,c){let d=a.tokenization.getLineTokens(b),e=d.getLineContent();return new ca.GP(e,!1,1,e.length+1,0,d.inflate(),null)}getViewLinesData(a,b,c,d,e,f,g){if(!f[e]){g[e]=null;return}g[e]=this.getViewLineData(a,b,0)}getModelColumnOfViewPosition(a,b){return b}getViewPositionOfModelPosition(a,b){return new aa.y(a,b)}getViewLineNumberOfModelPosition(a,b){return a}normalizePosition(a,b,c){return b}getInjectedTextAt(a,b){return null}}class eU{static{this.INSTANCE=new eU}constructor(){}isVisible(){return!1}setVisible(a){return a?eT.INSTANCE:this}getProjectionData(){return null}getViewLineCount(){return 0}getViewLineContent(a,b,c){throw Error("Not supported")}getViewLineLength(a,b,c){throw Error("Not supported")}getViewLineMinColumn(a,b,c){throw Error("Not supported")}getViewLineMaxColumn(a,b,c){throw Error("Not supported")}getViewLineData(a,b,c){throw Error("Not supported")}getViewLinesData(a,b,c,d,e,f,g){throw Error("Not supported")}getModelColumnOfViewPosition(a,b){throw Error("Not supported")}getViewPositionOfModelPosition(a,b){throw Error("Not supported")}getViewLineNumberOfModelPosition(a,b){throw Error("Not supported")}normalizePosition(a,b,c){throw Error("Not supported")}getInjectedTextAt(a,b){throw Error("Not supported")}}let eV=[""];function eW(a){if(a>=eV.length)for(let b=1;b<=a;b++)eV[b]=Array(b+1).join(" ");return eV[a]}var eX=c(97210);class eY{constructor(a){this._model=a}_validPosition(a){return this._model.validatePosition(a)}_validRange(a){return this._model.validateRange(a)}convertViewPositionToModelPosition(a){return this._validPosition(a)}convertViewRangeToModelRange(a){return this._validRange(a)}validateViewPosition(a,b){return this._validPosition(b)}validateViewRange(a,b){return this._validRange(b)}convertModelPositionToViewPosition(a){return this._validPosition(a)}convertModelRangeToViewRange(a){return this._validRange(a)}modelPositionIsVisible(a){let b=this._model.getLineCount();return!(a.lineNumber<1)&&!(a.lineNumber>b)}getModelLineViewLineCount(a){return 1}getViewLineNumberOfModelPosition(a,b){return a}}class eZ{constructor(a,b,c,d,e,f,g,h,i,j,k){this._editorId=a,this.model=b,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=c,this._monospaceLineBreaksComputerFactory=d,this.fontInfo=e,this.tabSize=f,this.wrappingStrategy=g,this.wrappingColumn=h,this.wrappingIndent=i,this.wordBreak=j,this.wrapOnEscapedLineFeeds=k,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new e0(this)}_constructLines(a,b){this.modelLineProjections=[],a&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));let c=this.model.getLinesContent(),d=this.model.getInjectedTextDecorations(this._editorId),e=c.length,f=this.createLineBreaksComputer(),g=new A.j3(du.uK.fromDecorations(d));for(let a=0;a<e;a++){let d=g.takeWhile(b=>b.lineNumber===a+1);f.addRequest(c[a],d,b?b[a]:null)}let h=f.finalize(),i=[],j=this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a)).sort(ab.Q.compareRangesUsingStarts),k=1,l=0,m=-1,n=0<j.length?l+1:e+2;for(let a=0;a<e;a++){let b=a+1;b===n&&(k=j[++m].startLineNumber,l=j[m].endLineNumber,n=m+1<j.length?l+1:e+2);let c=b>=k&&b<=l,d=eR(h[a],!c);i[a]=d.getViewLineCount(),this.modelLineProjections[a]=d}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new eX.c2(i)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a))}setHiddenAreas(a){let b=function(a){if(0===a.length)return[];let b=a.slice();b.sort(ab.Q.compareRangesUsingStarts);let c=[],d=b[0].startLineNumber,e=b[0].endLineNumber;for(let a=1,f=b.length;a<f;a++){let f=b[a];f.startLineNumber>e+1?(c.push(new ab.Q(d,1,e,1)),d=f.startLineNumber,e=f.endLineNumber):f.endLineNumber>e&&(e=f.endLineNumber)}return c.push(new ab.Q(d,1,e,1)),c}(a.map(a=>this.model.validateRange(a))),c=this.hiddenAreasDecorationIds.map(a=>this.model.getDecorationRange(a)).sort(ab.Q.compareRangesUsingStarts);if(b.length===c.length){let a=!1;for(let d=0;d<b.length;d++)if(!b[d].equalsRange(c[d])){a=!0;break}if(!a)return!1}let d=b.map(a=>({range:a,options:dE.kI.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,d);let e=1,f=0,g=-1,h=0<b.length?f+1:this.modelLineProjections.length+2,i=!1;for(let a=0;a<this.modelLineProjections.length;a++){let c=a+1;c===h&&(e=b[++g].startLineNumber,f=b[g].endLineNumber,h=g+1<b.length?f+1:this.modelLineProjections.length+2);let d=!1;if(c>=e&&c<=f?this.modelLineProjections[a].isVisible()&&(this.modelLineProjections[a]=this.modelLineProjections[a].setVisible(!1),d=!0):(i=!0,this.modelLineProjections[a].isVisible()||(this.modelLineProjections[a]=this.modelLineProjections[a].setVisible(!0),d=!0)),d){let b=this.modelLineProjections[a].getViewLineCount();this.projectedModelLineLineCounts.setValue(a,b)}}return i||this.setHiddenAreas([]),!0}modelPositionIsVisible(a,b){return!(a<1)&&!(a>this.modelLineProjections.length)&&this.modelLineProjections[a-1].isVisible()}getModelLineViewLineCount(a){return a<1||a>this.modelLineProjections.length?1:this.modelLineProjections[a-1].getViewLineCount()}setTabSize(a){return this.tabSize!==a&&(this.tabSize=a,this._constructLines(!1,null),!0)}setWrappingSettings(a,b,c,d,e){let f=this.fontInfo.equals(a),g=this.wrappingStrategy===b,h=this.wrappingColumn===c,i=this.wrappingIndent===d,j=this.wordBreak===e;if(f&&g&&h&&i&&j)return!1;this.fontInfo=a,this.wrappingStrategy=b,this.wrappingColumn=c,this.wrappingIndent=d,this.wordBreak=e;let k=null;if(f&&g&&!h&&i&&j){k=[];for(let a=0,b=this.modelLineProjections.length;a<b;a++)k[a]=this.modelLineProjections[a].getProjectionData()}return this._constructLines(!1,k),!0}createLineBreaksComputer(){return("advanced"===this.wrappingStrategy?this._domLineBreaksComputerFactory:this._monospaceLineBreaksComputerFactory).createLineBreaksComputer(this.fontInfo,this.tabSize,this.wrappingColumn,this.wrappingIndent,this.wordBreak,this.wrapOnEscapedLineFeeds)}onModelFlushed(){this._constructLines(!0,null)}onModelLinesDeleted(a,b,c){if(!a||a<=this._validModelVersionId)return null;let d=1===b?1:this.projectedModelLineLineCounts.getPrefixSum(b-1)+1,e=this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections.splice(b-1,c-b+1),this.projectedModelLineLineCounts.removeValues(b-1,c-b+1),new d4(d,e)}onModelLinesInserted(a,b,c,d){if(!a||a<=this._validModelVersionId)return null;let e=b>2&&!this.modelLineProjections[b-2].isVisible(),f=1===b?1:this.projectedModelLineLineCounts.getPrefixSum(b-1)+1,g=0,h=[],i=[];for(let a=0,b=d.length;a<b;a++){let b=eR(d[a],!e);h.push(b);let c=b.getViewLineCount();g+=c,i[a]=c}return this.modelLineProjections=this.modelLineProjections.slice(0,b-1).concat(h).concat(this.modelLineProjections.slice(b-1)),this.projectedModelLineLineCounts.insertValues(b-1,i),new d5(f,f+g-1)}onModelLineChanged(a,b,c){if(null!==a&&a<=this._validModelVersionId)return[!1,null,null,null];let d=b-1,e=this.modelLineProjections[d].getViewLineCount(),f=eR(c,this.modelLineProjections[d].isVisible());this.modelLineProjections[d]=f;let g=this.modelLineProjections[d].getViewLineCount(),h=!1,i=0,j=-1,k=0,l=-1,m=0,n=-1;e>g?(n=(m=(j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+g-1)+1)+(e-g)-1,h=!0):e<g?(l=(k=(j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+e-1)+1)+(g-e)-1,h=!0):j=(i=this.projectedModelLineLineCounts.getPrefixSum(b-1)+1)+g-1,this.projectedModelLineLineCounts.setValue(d,g);let o=i<=j?new d3(i,j-i+1):null;return[h,o,k<=l?new d5(k,l):null,m<=n?new d4(m,n):null]}acceptVersionId(a){this._validModelVersionId=a,1!==this.modelLineProjections.length||this.modelLineProjections[0].isVisible()||this.setHiddenAreas([])}getViewLineCount(){return this.projectedModelLineLineCounts.getTotalSum()}_toValidViewLineNumber(a){if(a<1)return 1;let b=this.getViewLineCount();return a>b?b:0|a}getActiveIndentGuide(a,b,c){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b),c=this._toValidViewLineNumber(c);let d=this.convertViewPositionToModelPosition(a,this.getViewLineMinColumn(a)),e=this.convertViewPositionToModelPosition(b,this.getViewLineMinColumn(b)),f=this.convertViewPositionToModelPosition(c,this.getViewLineMinColumn(c)),g=this.model.guides.getActiveIndentGuide(d.lineNumber,e.lineNumber,f.lineNumber),h=this.convertModelPositionToViewPosition(g.startLineNumber,1),i=this.convertModelPositionToViewPosition(g.endLineNumber,this.model.getLineMaxColumn(g.endLineNumber));return{startLineNumber:h.lineNumber,endLineNumber:i.lineNumber,indent:g.indent}}getViewLineInfo(a){a=this._toValidViewLineNumber(a);let b=this.projectedModelLineLineCounts.getIndexOf(a-1);return new e$(b.index+1,b.remainder)}getMinColumnOfViewLine(a){return this.modelLineProjections[a.modelLineNumber-1].getViewLineMinColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(a){return this.modelLineProjections[a.modelLineNumber-1].getViewLineMaxColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(a){let b=this.modelLineProjections[a.modelLineNumber-1],c=b.getViewLineMinColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx),d=b.getModelColumnOfViewPosition(a.modelLineWrappedLineIdx,c);return new aa.y(a.modelLineNumber,d)}getModelEndPositionOfViewLine(a){let b=this.modelLineProjections[a.modelLineNumber-1],c=b.getViewLineMaxColumn(this.model,a.modelLineNumber,a.modelLineWrappedLineIdx),d=b.getModelColumnOfViewPosition(a.modelLineWrappedLineIdx,c);return new aa.y(a.modelLineNumber,d)}getViewLineInfosGroupedByModelRanges(a,b){let c=this.getViewLineInfo(a),d=this.getViewLineInfo(b),e=[],f=this.getModelStartPositionOfViewLine(c),g=[];for(let a=c.modelLineNumber;a<=d.modelLineNumber;a++){let b=this.modelLineProjections[a-1];if(b.isVisible()){let e=a===c.modelLineNumber?c.modelLineWrappedLineIdx:0,f=a===d.modelLineNumber?d.modelLineWrappedLineIdx+1:b.getViewLineCount();for(let b=e;b<f;b++)g.push(new e$(a,b))}if(!b.isVisible()&&f){let b=new aa.y(a-1,this.model.getLineMaxColumn(a-1)+1),c=ab.Q.fromPositions(f,b);e.push(new e_(c,g)),g=[],f=null}else b.isVisible()&&!f&&(f=new aa.y(a,1))}if(f){let a=ab.Q.fromPositions(f,this.getModelEndPositionOfViewLine(d));e.push(new e_(a,g))}return e}getViewLinesBracketGuides(a,b,c,d){let e=c?this.convertViewPositionToModelPosition(c.lineNumber,c.column):null,f=[];for(let c of this.getViewLineInfosGroupedByModelRanges(a,b)){let a=c.modelRange.startLineNumber,b=this.model.guides.getLinesBracketGuides(a,c.modelRange.endLineNumber,e,d);for(let d of c.viewLines){let c=b[d.modelLineNumber-a].map(a=>{if(-1!==a.forWrappedLinesAfterColumn&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||-1!==a.forWrappedLinesBeforeOrAtColumn&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.forWrappedLinesBeforeOrAtColumn).lineNumber<d.modelLineWrappedLineIdx)return;if(!a.horizontalLine)return a;let b=-1;if(-1!==a.column){let c=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.column);if(c.lineNumber===d.modelLineWrappedLineIdx)b=c.column;else if(c.lineNumber<d.modelLineWrappedLineIdx)b=this.getMinColumnOfViewLine(d);else if(c.lineNumber>d.modelLineWrappedLineIdx)return}let c=this.convertModelPositionToViewPosition(d.modelLineNumber,a.horizontalLine.endColumn),e=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,a.horizontalLine.endColumn);return e.lineNumber===d.modelLineWrappedLineIdx?new bx.TH(a.visibleColumn,b,a.className,new bx.pv(a.horizontalLine.top,c.column),-1,-1):e.lineNumber<d.modelLineWrappedLineIdx||-1!==a.visibleColumn?void 0:new bx.TH(a.visibleColumn,b,a.className,new bx.pv(a.horizontalLine.top,this.getMaxColumnOfViewLine(d)),-1,-1)});f.push(c.filter(a=>!!a))}}return f}getViewLinesIndentGuides(a,b){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b);let c=this.convertViewPositionToModelPosition(a,this.getViewLineMinColumn(a)),d=this.convertViewPositionToModelPosition(b,this.getViewLineMaxColumn(b)),e=[],f=[],g=[],h=c.lineNumber-1,i=d.lineNumber-1,j=null;for(let a=h;a<=i;a++){let b=this.modelLineProjections[a];if(b.isVisible()){let d=b.getViewLineNumberOfModelPosition(0,a===h?c.column:1),e=b.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(a+1)),i=e-d+1,k=0;i>1&&1===b.getViewLineMinColumn(this.model,a+1,e)&&(k=0===d?1:2),f.push(i),g.push(k),null===j&&(j=new aa.y(a+1,0))}else null!==j&&(e=e.concat(this.model.guides.getLinesIndentGuides(j.lineNumber,a)),j=null)}null!==j&&(e=e.concat(this.model.guides.getLinesIndentGuides(j.lineNumber,d.lineNumber)),j=null);let k=b-a+1,l=Array(k),m=0;for(let a=0,b=e.length;a<b;a++){let b,c=e[a],d=Math.min(k-m,f[a]),h=g[a];b=2===h?0:1===h?1:d;for(let a=0;a<d;a++)a===b&&(c=0),l[m++]=c}return l}getViewLineContent(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineContent(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineLength(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineLength(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineMinColumn(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineMinColumn(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineMaxColumn(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineMaxColumn(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLineData(a){let b=this.getViewLineInfo(a);return this.modelLineProjections[b.modelLineNumber-1].getViewLineData(this.model,b.modelLineNumber,b.modelLineWrappedLineIdx)}getViewLinesData(a,b,c){a=this._toValidViewLineNumber(a),b=this._toValidViewLineNumber(b);let d=this.projectedModelLineLineCounts.getIndexOf(a-1),e=a,f=d.index,g=d.remainder,h=[];for(let d=f,i=this.model.getLineCount();d<i;d++){let i=this.modelLineProjections[d];if(!i.isVisible())continue;let j=d===f?g:0,k=i.getViewLineCount()-j,l=!1;if(e+k>b&&(l=!0,k=b-e+1),i.getViewLinesData(this.model,d+1,j,k,e-a,c,h),e+=k,l)break}return h}validateViewPosition(a,b,c){a=this._toValidViewLineNumber(a);let d=this.projectedModelLineLineCounts.getIndexOf(a-1),e=d.index,f=d.remainder,g=this.modelLineProjections[e],h=g.getViewLineMinColumn(this.model,e+1,f),i=g.getViewLineMaxColumn(this.model,e+1,f);b<h&&(b=h),b>i&&(b=i);let j=g.getModelColumnOfViewPosition(f,b);return this.model.validatePosition(new aa.y(e+1,j)).equals(c)?new aa.y(a,b):this.convertModelPositionToViewPosition(c.lineNumber,c.column)}validateViewRange(a,b){let c=this.validateViewPosition(a.startLineNumber,a.startColumn,b.getStartPosition()),d=this.validateViewPosition(a.endLineNumber,a.endColumn,b.getEndPosition());return new ab.Q(c.lineNumber,c.column,d.lineNumber,d.column)}convertViewPositionToModelPosition(a,b){let c=this.getViewLineInfo(a),d=this.modelLineProjections[c.modelLineNumber-1].getModelColumnOfViewPosition(c.modelLineWrappedLineIdx,b);return this.model.validatePosition(new aa.y(c.modelLineNumber,d))}convertViewRangeToModelRange(a){let b=this.convertViewPositionToModelPosition(a.startLineNumber,a.startColumn),c=this.convertViewPositionToModelPosition(a.endLineNumber,a.endColumn);return new ab.Q(b.lineNumber,b.column,c.lineNumber,c.column)}convertModelPositionToViewPosition(a,b,c=2,d=!1,e=!1){let f=this.model.validatePosition(new aa.y(a,b)),g=f.lineNumber,h=f.column,i=g-1,j=!1;if(e)for(;i<this.modelLineProjections.length&&!this.modelLineProjections[i].isVisible();)i++,j=!0;else for(;i>0&&!this.modelLineProjections[i].isVisible();)i--,j=!0;if(0===i&&!this.modelLineProjections[i].isVisible())return new aa.y(+!d,1);let k=1+this.projectedModelLineLineCounts.getPrefixSum(i);return j?e?this.modelLineProjections[i].getViewPositionOfModelPosition(k,1,c):this.modelLineProjections[i].getViewPositionOfModelPosition(k,this.model.getLineMaxColumn(i+1),c):this.modelLineProjections[g-1].getViewPositionOfModelPosition(k,h,c)}convertModelRangeToViewRange(a,b=0){if(a.isEmpty()){let c=this.convertModelPositionToViewPosition(a.startLineNumber,a.startColumn,b);return ab.Q.fromPositions(c)}{let b=this.convertModelPositionToViewPosition(a.startLineNumber,a.startColumn,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,a.endColumn,0);return new ab.Q(b.lineNumber,b.column,c.lineNumber,c.column)}}getViewLineNumberOfModelPosition(a,b){let c=a-1;if(this.modelLineProjections[c].isVisible()){let a=1+this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections[c].getViewLineNumberOfModelPosition(a,b)}for(;c>0&&!this.modelLineProjections[c].isVisible();)c--;if(0===c&&!this.modelLineProjections[c].isVisible())return 1;let d=1+this.projectedModelLineLineCounts.getPrefixSum(c);return this.modelLineProjections[c].getViewLineNumberOfModelPosition(d,this.model.getLineMaxColumn(c+1))}getDecorationsInRange(a,b,c,d,e,f){let g=this.convertViewPositionToModelPosition(a.startLineNumber,a.startColumn),h=this.convertViewPositionToModelPosition(a.endLineNumber,a.endColumn);if(h.lineNumber-g.lineNumber<=a.endLineNumber-a.startLineNumber)return this.model.getDecorationsInRange(new ab.Q(g.lineNumber,1,h.lineNumber,h.column),b,c,d,e,f);let i=[],j=g.lineNumber-1,k=h.lineNumber-1,l=null;for(let a=j;a<=k;a++)if(this.modelLineProjections[a].isVisible())null===l&&(l=new aa.y(a+1,a===j?g.column:1));else if(null!==l){let f=this.model.getLineMaxColumn(a);i=i.concat(this.model.getDecorationsInRange(new ab.Q(l.lineNumber,l.column,a,f),b,c,d,e)),l=null}null!==l&&(i=i.concat(this.model.getDecorationsInRange(new ab.Q(l.lineNumber,l.column,h.lineNumber,h.column),b,c,d,e)),l=null),i.sort((a,b)=>{let c=ab.Q.compareRangesUsingStarts(a.range,b.range);return 0===c?a.id<b.id?-1:+(a.id>b.id):c});let m=[],n=0,o=null;for(let a of i){let b=a.id;o!==b&&(o=b,m[n++]=a)}return m}getInjectedTextAt(a){let b=this.getViewLineInfo(a.lineNumber);return this.modelLineProjections[b.modelLineNumber-1].getInjectedTextAt(b.modelLineWrappedLineIdx,a.column)}normalizePosition(a,b){let c=this.getViewLineInfo(a.lineNumber);return this.modelLineProjections[c.modelLineNumber-1].normalizePosition(c.modelLineWrappedLineIdx,a,b)}getLineIndentColumn(a){let b=this.getViewLineInfo(a);return 0===b.modelLineWrappedLineIdx?this.model.getLineIndentColumn(b.modelLineNumber):0}}class e${constructor(a,b){this.modelLineNumber=a,this.modelLineWrappedLineIdx=b}}class e_{constructor(a,b){this.modelRange=a,this.viewLines=b}}class e0{constructor(a){this._lines=a}convertViewPositionToModelPosition(a){return this._lines.convertViewPositionToModelPosition(a.lineNumber,a.column)}convertViewRangeToModelRange(a){return this._lines.convertViewRangeToModelRange(a)}validateViewPosition(a,b){return this._lines.validateViewPosition(a.lineNumber,a.column,b)}validateViewRange(a,b){return this._lines.validateViewRange(a,b)}convertModelPositionToViewPosition(a,b,c,d){return this._lines.convertModelPositionToViewPosition(a.lineNumber,a.column,b,c,d)}convertModelRangeToViewRange(a,b){return this._lines.convertModelRangeToViewRange(a,b)}modelPositionIsVisible(a){return this._lines.modelPositionIsVisible(a.lineNumber,a.column)}getModelLineViewLineCount(a){return this._lines.getModelLineViewLineCount(a)}getViewLineNumberOfModelPosition(a,b){return this._lines.getViewLineNumberOfModelPosition(a,b)}}class e1{constructor(a){this.model=a}dispose(){}createCoordinatesConverter(){return new eY(this.model)}getHiddenAreas(){return[]}setHiddenAreas(a){return!1}setTabSize(a){return!1}setWrappingSettings(a,b,c,d){return!1}createLineBreaksComputer(){let a=[];return{addRequest:(b,c,d)=>{a.push(null)},finalize:()=>a}}onModelFlushed(){}onModelLinesDeleted(a,b,c){return new d4(b,c)}onModelLinesInserted(a,b,c,d){return new d5(b,c)}onModelLineChanged(a,b,c){return[!1,new d3(b,1),null,null]}acceptVersionId(a){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(a,b,c){return{startLineNumber:a,endLineNumber:a,indent:0}}getViewLinesBracketGuides(a,b,c){return Array(b-a+1).fill([])}getViewLinesIndentGuides(a,b){let c=b-a+1,d=Array(c);for(let a=0;a<c;a++)d[a]=0;return d}getViewLineContent(a){return this.model.getLineContent(a)}getViewLineLength(a){return this.model.getLineLength(a)}getViewLineMinColumn(a){return this.model.getLineMinColumn(a)}getViewLineMaxColumn(a){return this.model.getLineMaxColumn(a)}getViewLineData(a){let b=this.model.tokenization.getLineTokens(a),c=b.getLineContent();return new ca.GP(c,!1,1,c.length+1,0,b.inflate(),null)}getViewLinesData(a,b,c){let d=this.model.getLineCount();a=Math.min(Math.max(1,a),d),b=Math.min(Math.max(1,b),d);let e=[];for(let d=a;d<=b;d++){let b=d-a;e[b]=c[b]?this.getViewLineData(d):null}return e}getDecorationsInRange(a,b,c,d,e,f){return this.model.getDecorationsInRange(a,b,c,d,e,f)}normalizePosition(a,b){return this.model.normalizePosition(a,b)}getLineIndentColumn(a){return this.model.getLineIndentColumn(a)}getInjectedTextAt(a){return null}}let e2=ae.ZS.Right;class e3{constructor(a){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((a+1)*e2/8))}reset(a){let b=Math.ceil((a+1)*e2/8);this.lanes.length<b?this.lanes=new Uint8Array(b):this.lanes.fill(0),this._requiredLanes=1}get requiredLanes(){return this._requiredLanes}push(a,b,c){c&&(this.persist|=1<<a-1);for(let c=b.startLineNumber;c<=b.endLineNumber;c++){let b=e2*c+(a-1);this.lanes[b>>>3]|=1<<b%8,this._requiredLanes=Math.max(this._requiredLanes,this.countAtLine(c))}}getLanesAtLine(a){let b=[],c=e2*a;for(let a=0;a<e2;a++)(this.persist&1<<a||this.lanes[c>>>3]&1<<c%8)&&b.push(a+1),c++;return b.length?b:[ae.ZS.Center]}countAtLine(a){let b=e2*a,c=0;for(let a=0;a<e2;a++)(this.persist&1<<a||this.lanes[b>>>3]&1<<b%8)&&c++,b++;return c}}class e4 extends w.jG{constructor(a,b,c,d,e,f,g,h,i,j){if(super(),this.languageConfigurationService=g,this._themeService=h,this._attachedView=i,this._transactionalTarget=j,this.hiddenAreasModel=new e7,this.previousHiddenAreas=[],this._editorId=a,this._configuration=b,this.model=c,this._eventDispatcher=new ec,this.onEvent=this._eventDispatcher.onEvent,this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._updateConfigurationViewLineCount=this._register(new aJ.uC(()=>this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=e5.create(this.model),this.glyphLanes=new e3(0),this.model.isTooLargeForTokenization())this._lines=new e1(this.model);else{let a=this._configuration.options,b=a.get(59),c=a.get(156),f=a.get(166),g=a.get(155),h=a.get(146),i=a.get(160);this._lines=new eZ(this._editorId,this.model,d,e,b,this.model.getOptions().tabSize,c,f.wrappingColumn,g,h,i)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new ev(c,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new eN(this._configuration,this.getLineCount(),this._getCustomLineHeights(),f)),this._register(this.viewLayout.onDidScroll(a=>{a.scrollTopChanged&&this._handleVisibleLinesChanged(),a.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new d7(a)),this._eventDispatcher.emitOutgoingEvent(new eh(a.oldScrollWidth,a.oldScrollLeft,a.oldScrollHeight,a.oldScrollTop,a.scrollWidth,a.scrollLeft,a.scrollHeight,a.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(a=>{this._eventDispatcher.emitOutgoingEvent(a)})),this._decorations=new eP(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(a=>{try{let b=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(b,a)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(bO.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new ea)})),this._register(this._themeService.onDidColorThemeChange(a=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new d8(a))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(a){this._eventDispatcher.addViewEventHandler(a)}removeViewEventHandler(a){this._eventDispatcher.removeViewEventHandler(a)}_getCustomLineHeights(){return this._configuration.options.get(5)?this.model.getCustomLineHeightsDecorations(this._editorId).map(a=>{let b=a.range.startLineNumber,c=this.coordinatesConverter.convertModelRangeToViewRange(new ab.Q(b,1,b,this.model.getLineMaxColumn(b)));return{decorationId:a.id,startLineNumber:c.startLineNumber,endLineNumber:c.endLineNumber,lineHeight:a.options.lineHeight||0}}):[]}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){let a=this.viewLayout.getLinesViewportData(),b=new ab.Q(a.startLineNumber,this.getLineMinColumn(a.startLineNumber),a.endLineNumber,this.getLineMaxColumn(a.endLineNumber));return this._toModelVisibleRanges(b)}visibleLinesStabilized(){let a=this.getModelVisibleRanges();this._attachedView.setVisibleLines(a,!0)}_handleVisibleLinesChanged(){let a=this.getModelVisibleRanges();this._attachedView.setVisibleLines(a,!1)}setHasFocus(a){this._hasFocus=a,this._cursor.setHasFocus(a),this._eventDispatcher.emitSingleViewEvent(new d0(a)),this._eventDispatcher.emitOutgoingEvent(new ef(!a,a))}setHasWidgetFocus(a){this._eventDispatcher.emitOutgoingEvent(new eg(!a,a))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new dW)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new dX)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){let a=new aa.y(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber));return new e9(this.coordinatesConverter.convertViewPositionToModelPosition(a),this._viewportStart.startLineDelta)}return new e9(null,0)}_onConfigurationChanged(a,b){let c=this._captureStableViewport(),d=this._configuration.options,e=d.get(59),f=d.get(156),g=d.get(166),h=d.get(155),i=d.get(146);this._lines.setWrappingSettings(e,f,g.wrappingColumn,h,i)&&(a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),this._updateConfigurationViewLineCount.schedule()),b.hasChanged(104)&&(this._decorations.reset(),a.emitViewEvent(new d$(null))),b.hasChanged(112)&&(this._decorations.reset(),a.emitViewEvent(new d$(null))),a.emitViewEvent(new dY(b)),this.viewLayout.onConfigurationChanged(b),c.recoverViewportStart(this.coordinatesConverter,this.viewLayout),dP.d$.shouldRecreate(b)&&(this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(a=>{try{let b=this._eventDispatcher.beginEmitViewEvents(),c=!1,d=!1,e=a instanceof du.Ic?a.rawContentChangedEvent.changes:a.changes,f=a instanceof du.Ic?a.rawContentChangedEvent.versionId:null,g=this._lines.createLineBreaksComputer();for(let a of e)switch(a.changeType){case 4:for(let b=0;b<a.detail.length;b++){let c=a.detail[b],d=a.injectedTexts[b];d&&(d=d.filter(a=>!a.ownerId||a.ownerId===this._editorId)),g.addRequest(c,d,null)}break;case 2:{let b=null;a.injectedText&&(b=a.injectedText.filter(a=>!a.ownerId||a.ownerId===this._editorId)),g.addRequest(a.detail,b,null)}}let h=g.finalize(),i=new A.j3(h);for(let a of e)switch(a.changeType){case 1:this._lines.onModelFlushed(),b.emitViewEvent(new d_),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),c=!0;break;case 3:{let d=this._lines.onModelLinesDeleted(f,a.fromLineNumber,a.toLineNumber);null!==d&&(b.emitViewEvent(d),this.viewLayout.onLinesDeleted(d.fromLineNumber,d.toLineNumber)),c=!0;break}case 4:{let d=i.takeCount(a.detail.length),e=this._lines.onModelLinesInserted(f,a.fromLineNumber,a.toLineNumber,d);null!==e&&(b.emitViewEvent(e),this.viewLayout.onLinesInserted(e.fromLineNumber,e.toLineNumber)),c=!0;break}case 2:{let c=i.dequeue(),[e,g,h,j]=this._lines.onModelLineChanged(f,a.lineNumber,c);d=e,g&&b.emitViewEvent(g),h&&(b.emitViewEvent(h),this.viewLayout.onLinesInserted(h.fromLineNumber,h.toLineNumber)),j&&(b.emitViewEvent(j),this.viewLayout.onLinesDeleted(j.fromLineNumber,j.toLineNumber))}}null!==f&&this._lines.acceptVersionId(f),this.viewLayout.onHeightMaybeChanged(),!c&&d&&(b.emitViewEvent(new d2),b.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(b),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}let b=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&b){let a=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(a){let b=this.coordinatesConverter.convertModelPositionToViewPosition(a.getStartPosition()),c=this.viewLayout.getVerticalOffsetForLineNumber(b.lineNumber);this.viewLayout.setScrollPosition({scrollTop:c+this._viewportStart.startLineDelta},1)}}try{let b=this._eventDispatcher.beginEmitViewEvents();a instanceof du.Ic&&b.emitOutgoingEvent(new ep(a.contentChangedEvent)),this._cursor.onModelContentChanged(b,a)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._configuration.options.get(5)&&this._register(this.model.onDidChangeLineHeight(a=>{let b=a.changes.filter(a=>a.ownerId===this._editorId||0===a.ownerId);if(this.viewLayout.changeSpecialLineHeights(a=>{for(let c of b){let{decorationId:b,lineNumber:d,lineHeight:e}=c,f=this.coordinatesConverter.convertModelRangeToViewRange(new ab.Q(d,1,d,this.model.getLineMaxColumn(d)));null!==e?a.insertOrChangeCustomLineHeight(b,f.startLineNumber,f.endLineNumber,e):a.removeCustomLineHeight(b)}}),b.length>0){let a=new du.zq(b);this._eventDispatcher.emitOutgoingEvent(new es(a))}})),this._configuration.options.get(172)&&this._register(this.model.onDidChangeFont(a=>{let b=a.changes.filter(a=>a.ownerId===this._editorId||0===a.ownerId);if(b.length>0){let a=new du.dT(b);this._eventDispatcher.emitOutgoingEvent(new et(a))}})),this._register(this.model.onDidChangeTokens(a=>{let b=[];for(let c=0,d=a.ranges.length;c<d;c++){let d=a.ranges[c],e=this.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(d.fromLineNumber,1)).lineNumber,f=this.coordinatesConverter.convertModelPositionToViewPosition(new aa.y(d.toLineNumber,this.model.getLineMaxColumn(d.toLineNumber))).lineNumber;b[c]={fromLineNumber:e,toLineNumber:f}}this._eventDispatcher.emitSingleViewEvent(new d9(b)),this._eventDispatcher.emitOutgoingEvent(new er(a))})),this._register(this.model.onDidChangeLanguageConfiguration(a=>{this._eventDispatcher.emitSingleViewEvent(new d1),this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new eo(a))})),this._register(this.model.onDidChangeLanguage(a=>{this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new en(a))})),this._register(this.model.onDidChangeOptions(a=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{let a=this._eventDispatcher.beginEmitViewEvents();a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new dP.d$(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new eq(a))})),this._register(this.model.onDidChangeDecorations(a=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new d$(a)),this._eventDispatcher.emitOutgoingEvent(new em(a))}))}getFontSizeAtPosition(a){if(!this._configuration.options.get(172))return null;let b=this.model.getFontDecorationsInRange(ab.Q.fromPositions(a),this._editorId),c=this._configuration.options.get(59).fontSize+"px";for(let a of b)if(a.options.fontSize){c=a.options.fontSize;break}return c}setHiddenAreas(a,b,c){this.hiddenAreasModel.setHiddenAreas(b,a);let d=this.hiddenAreasModel.getMergedRanges();if(d===this.previousHiddenAreas&&!c)return;this.previousHiddenAreas=d;let e=this._captureStableViewport(),f=!1;try{let a=this._eventDispatcher.beginEmitViewEvents();(f=this._lines.setHiddenAreas(d))&&(a.emitViewEvent(new d_),a.emitViewEvent(new d2),a.emitViewEvent(new d$(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount(),this._getCustomLineHeights()),this.viewLayout.onHeightMaybeChanged());let b=e.viewportStartModelPosition?.lineNumber;b&&d.some(a=>a.startLineNumber<=b&&b<=a.endLineNumber)||e.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),f&&this._eventDispatcher.emitOutgoingEvent(new ej)}getVisibleRangesPlusViewportAboveBelow(){let a=this._configuration.options.get(165),b=this._configuration.options.get(75),c=Math.max(20,Math.round(a.height/b)),d=this.viewLayout.getLinesViewportData(),e=Math.max(1,d.completelyVisibleStartLineNumber-c),f=Math.min(this.getLineCount(),d.completelyVisibleEndLineNumber+c);return this._toModelVisibleRanges(new ab.Q(e,this.getLineMinColumn(e),f,this.getLineMaxColumn(f)))}getVisibleRanges(){let a=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(a)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(a){let b=this.coordinatesConverter.convertViewRangeToModelRange(a),c=this._lines.getHiddenAreas();if(0===c.length)return[b];let d=[],e=0,f=b.startLineNumber,g=b.startColumn,h=b.endLineNumber,i=b.endColumn;for(let a=0,b=c.length;a<b;a++){let b=c[a].startLineNumber,i=c[a].endLineNumber;!(i<f)&&(b>h||(f<b&&(d[e++]=new ab.Q(f,g,b-1,this.model.getLineMaxColumn(b-1))),f=i+1,g=1))}return(f<h||f===h&&g<i)&&(d[e++]=new ab.Q(f,g,h,i)),d}getCompletelyVisibleViewRange(){let a=this.viewLayout.getLinesViewportData(),b=a.completelyVisibleStartLineNumber,c=a.completelyVisibleEndLineNumber;return new ab.Q(b,this.getLineMinColumn(b),c,this.getLineMaxColumn(c))}getCompletelyVisibleViewRangeAtScrollTop(a){let b=this.viewLayout.getLinesViewportDataAtScrollTop(a),c=b.completelyVisibleStartLineNumber,d=b.completelyVisibleEndLineNumber;return new ab.Q(c,this.getLineMinColumn(c),d,this.getLineMaxColumn(d))}saveState(){let a=this.viewLayout.saveState(),b=a.scrollTop,c=this.viewLayout.getLineNumberAtVerticalOffset(b),d=this.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(c,this.getLineMinColumn(c))),e=this.viewLayout.getVerticalOffsetForLineNumber(c)-b;return{scrollLeft:a.scrollLeft,firstPosition:d,firstPositionDeltaTop:e}}reduceRestoreState(a){if(void 0===a.firstPosition)return this._reduceRestoreStateCompatibility(a);let b=this.model.validatePosition(a.firstPosition),c=this.coordinatesConverter.convertModelPositionToViewPosition(b),d=this.viewLayout.getVerticalOffsetForLineNumber(c.lineNumber)-a.firstPositionDeltaTop;return{scrollLeft:a.scrollLeft,scrollTop:d}}_reduceRestoreStateCompatibility(a){return{scrollLeft:a.scrollLeft,scrollTop:a.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(a,b,c){this._viewportStart.update(this,a)}getActiveIndentGuide(a,b,c){return this._lines.getActiveIndentGuide(a,b,c)}getLinesIndentGuides(a,b){return this._lines.getViewLinesIndentGuides(a,b)}getBracketGuidesInRangeByLine(a,b,c,d){return this._lines.getViewLinesBracketGuides(a,b,c,d)}getLineContent(a){return this._lines.getViewLineContent(a)}getLineLength(a){return this._lines.getViewLineLength(a)}getLineMinColumn(a){return this._lines.getViewLineMinColumn(a)}getLineMaxColumn(a){return this._lines.getViewLineMaxColumn(a)}getLineFirstNonWhitespaceColumn(a){let b=aK.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=aK.lT(this.getLineContent(a));return -1===b?0:b+2}getMinimapDecorationsInRange(a){return this._decorations.getMinimapDecorationsInRange(a)}getDecorationsInViewport(a){return this._decorations.getDecorationsViewportData(a).decorations}getInjectedTextAt(a){return this._lines.getInjectedTextAt(a)}_getTextDirection(a,b){let c=0;for(let d of b){let b=d.range;if(b.startLineNumber>a||b.endLineNumber<a)continue;let e=d.options.textDirection;e===ae.z4.RTL?c++:e===ae.z4.LTR&&c--}return c>0?ae.z4.RTL:ae.z4.LTR}getTextDirection(a){let b=this._decorations.getDecorationsOnLine(a);return this._getTextDirection(a,b.decorations)}getViewportViewLineRenderingData(a,b){let c=this._decorations.getDecorationsViewportData(a),d=c.inlineDecorations[b-a.startLineNumber];return this._getViewLineRenderingData(b,d,c.hasVariableFonts,c.decorations)}getViewLineRenderingData(a){let b=this._decorations.getDecorationsOnLine(a);return this._getViewLineRenderingData(a,b.inlineDecorations[0],b.hasVariableFonts,b.decorations)}_getViewLineRenderingData(a,b,c,d){let e=this.model.mightContainRTL(),f=this.model.mightContainNonBasicASCII(),g=this.getTabSize(),h=this._lines.getViewLineData(a);return h.inlineDecorations&&(b=[...b,...h.inlineDecorations.map(b=>b.toInlineDecoration(a))]),new ca.qL(h.minColumn,h.maxColumn,h.content,h.continuesWithWrappedLine,e,f,h.tokens,b,g,h.startVisibleColumn,this._getTextDirection(a,d),c)}getViewLineData(a){return this._lines.getViewLineData(a)}getMinimapLinesRenderingData(a,b,c){let d=this._lines.getViewLinesData(a,b,c);return new ca.nt(this.getTabSize(),d)}getAllOverviewRulerDecorations(a){let b=this.model.getOverviewRulerDecorations(this._editorId,(0,K.$C)(this._configuration.options),(0,K.Vs)(this._configuration.options)),c=new e6;for(let d of b){let b=d.options,e=b.overviewRuler;if(!e)continue;let f=e.position;if(0===f)continue;let g=e.getColor(a.value),h=this.coordinatesConverter.getViewLineNumberOfModelPosition(d.range.startLineNumber,d.range.startColumn),i=this.coordinatesConverter.getViewLineNumberOfModelPosition(d.range.endLineNumber,d.range.endColumn);c.accept(g,b.zIndex,h,i,f)}return c.asArray}_invalidateDecorationsColorCache(){for(let a of this.model.getOverviewRulerDecorations()){let b=a.options.overviewRuler;b?.invalidateCachedColor();let c=a.options.minimap;c?.invalidateCachedColor()}}getValueInRange(a,b){let c=this.coordinatesConverter.convertViewRangeToModelRange(a);return this.model.getValueInRange(c,b)}getValueLengthInRange(a,b){let c=this.coordinatesConverter.convertViewRangeToModelRange(a);return this.model.getValueLengthInRange(c,b)}modifyPosition(a,b){let c=this.coordinatesConverter.convertViewPositionToModelPosition(a),d=this.model.modifyPosition(c,b);return this.coordinatesConverter.convertModelPositionToViewPosition(d)}deduceModelPositionRelativeToViewPosition(a,b,c){let d=this.coordinatesConverter.convertViewPositionToModelPosition(a);2===this.model.getEOL().length&&(b<0?b-=c:b+=c);let e=this.model.getOffsetAt(d)+b;return this.model.getPositionAt(e)}getPlainTextToCopy(a,b,c){let d=c?"\r\n":this.model.getEOL();(a=a.slice(0)).sort(ab.Q.compareRangesUsingStarts);let e=!1,f=!1;for(let b of a)b.isEmpty()?e=!0:f=!0;if(!f){if(!b)return"";let c=a.map(a=>a.startLineNumber),e="";for(let a=0;a<c.length;a++)a>0&&c[a-1]===c[a]||(e+=this.model.getLineContent(c[a])+d);return e}if(e&&b){let b=[],d=0;for(let e of a){let a=e.startLineNumber;e.isEmpty()?a!==d&&b.push(this.model.getLineContent(a)):b.push(this.model.getValueInRange(e,2*!!c)),d=a}return 1===b.length?b[0]:b}let g=[];for(let b of a)b.isEmpty()||g.push(this.model.getValueInRange(b,2*!!c));return 1===g.length?g[0]:g}getRichTextToCopy(a,b){let c,d=this.model.getLanguageId();if(d===eB.vH||1!==a.length)return null;let e=a[0];if(e.isEmpty()){if(!b)return null;let a=e.startLineNumber;e=new ab.Q(a,this.model.getLineMinColumn(a),a,this.model.getLineMaxColumn(a))}let f=this._configuration.options.get(59),g=this._getColorMap();return/[:;\\\/<>]/.test(f.fontFamily)||f.fontFamily===K.jU.fontFamily?c=K.jU.fontFamily:(c=(c=f.fontFamily).replace(/"/g,"'"),!/[,']/.test(c)&&/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${K.jU.fontFamily}`),{mode:d,html:`<div style="color: ${g[1]};background-color: ${g[2]};font-family: ${c};font-weight: ${f.fontWeight};font-size: ${f.fontSize}px;line-height: ${f.lineHeight}px;white-space: pre;">`+this._getHTMLToCopy(e,g)+"</div>"}}_getHTMLToCopy(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn,g=this.getTabSize(),h="";for(let a=c;a<=e;a++){let i=this.model.tokenization.getLineTokens(a),j=i.getLineContent(),k=a===c?d-1:0,l=a===e?f-1:j.length;""===j?h+="<br>":h+=(0,eC.s0)(j,i.inflate(),b,k,l,g,C.uF)}return h}_getColorMap(){let a=bN.dG.getColorMap(),b=["#000000"];if(a)for(let c=1,d=a.length;c<d;c++)b[c]=b9.Q1.Format.CSS.formatHex(a[c]);return b}getPrimaryCursorState(){return this._cursor.getPrimaryCursorState()}getLastAddedCursorIndex(){return this._cursor.getLastAddedCursorIndex()}getCursorStates(){return this._cursor.getCursorStates()}setCursorStates(a,b,c){return this._withViewEventsCollector(d=>this._cursor.setStates(d,a,b,c))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(a){this._cursor.setCursorColumnSelectData(a)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(a){this._cursor.setPrevEditOperationType(a)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(a,b,c=0){this._withViewEventsCollector(d=>this._cursor.setSelections(d,a,b,c))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(a){this._withViewEventsCollector(b=>this._cursor.restoreState(b,a))}_executeCursorEdit(a){if(this._cursor.context.cursorConfig.readOnly)return void this._eventDispatcher.emitOutgoingEvent(new el);this._withViewEventsCollector(a)}executeEdits(a,b,c,d){this._executeCursorEdit(e=>this._cursor.executeEdits(e,a,b,c,d))}startComposition(){this._executeCursorEdit(a=>this._cursor.startComposition(a))}endComposition(a){this._executeCursorEdit(b=>this._cursor.endComposition(b,a))}type(a,b){this._executeCursorEdit(c=>this._cursor.type(c,a,b))}compositionType(a,b,c,d,e){this._executeCursorEdit(f=>this._cursor.compositionType(f,a,b,c,d,e))}paste(a,b,c,d){this._executeCursorEdit(e=>this._cursor.paste(e,a,b,c,d))}cut(a){this._executeCursorEdit(b=>this._cursor.cut(b,a))}executeCommand(a,b){this._executeCursorEdit(c=>this._cursor.executeCommand(c,a,b))}executeCommands(a,b){this._executeCursorEdit(c=>this._cursor.executeCommands(c,a,b))}revealAllCursors(a,b,c=!1){this._withViewEventsCollector(d=>this._cursor.revealAll(d,a,c,0,b,0))}revealPrimaryCursor(a,b,c=!1){this._withViewEventsCollector(d=>this._cursor.revealPrimary(d,a,c,0,b,0))}revealTopMostCursor(a){let b=this._cursor.getTopMostViewPosition(),c=new ab.Q(b.lineNumber,b.column,b.lineNumber,b.column);this._withViewEventsCollector(b=>b.emitViewEvent(new d6(a,!1,c,null,0,!0,0)))}revealBottomMostCursor(a){let b=this._cursor.getBottomMostViewPosition(),c=new ab.Q(b.lineNumber,b.column,b.lineNumber,b.column);this._withViewEventsCollector(b=>b.emitViewEvent(new d6(a,!1,c,null,0,!0,0)))}revealRange(a,b,c,d,e){this._withViewEventsCollector(f=>f.emitViewEvent(new d6(a,!1,c,null,d,b,e)))}changeWhitespace(a){this.viewLayout.changeWhitespace(a)&&(this._eventDispatcher.emitSingleViewEvent(new eb),this._eventDispatcher.emitOutgoingEvent(new ei))}_withViewEventsCollector(a){return this._transactionalTarget.batchChanges(()=>{try{let b=this._eventDispatcher.beginEmitViewEvents();return a(b)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(a){this._withViewEventsCollector(()=>{a()})}normalizePosition(a,b){return this._lines.normalizePosition(a,b)}getLineIndentColumn(a){return this._lines.getLineIndentColumn(a)}}class e5{static create(a){let b=a._setTrackedRange(null,new ab.Q(1,1,1,1),1);return new e5(a,1,!1,b,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(a,b,c,d,e){this._model=a,this._viewLineNumber=b,this._isValid=c,this._modelTrackedRange=d,this._startLineDelta=e}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(a,b){let c=a.coordinatesConverter.convertViewPositionToModelPosition(new aa.y(b,a.getLineMinColumn(b))),d=a.model._setTrackedRange(this._modelTrackedRange,new ab.Q(c.lineNumber,c.column,c.lineNumber,c.column),1),e=a.viewLayout.getVerticalOffsetForLineNumber(b),f=a.viewLayout.getCurrentScrollTop();this._viewLineNumber=b,this._isValid=!0,this._modelTrackedRange=d,this._startLineDelta=f-e}invalidate(){this._isValid=!1}}class e6{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(a,b,c,d,e){let f=this._asMap[a];if(f){let a=f.data,b=a[a.length-3],g=a[a.length-1];if(b===e&&g+1>=c){d>g&&(a[a.length-1]=d);return}a.push(e,c,d)}else{let f=new ca.Uv(a,b,[e,c,d]);this._asMap[a]=f,this.asArray.push(f)}}}class e7{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(a,b){let c=this.hiddenAreas.get(a);c&&e8(c,b)||(this.hiddenAreas.set(a,b),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;let a=Array.from(this.hiddenAreas.values()).reduce((a,b)=>(function(a,b){let c=[],d=0,e=0;for(;d<a.length&&e<b.length;){let f=a[d],g=b[e];if(f.endLineNumber<g.startLineNumber-1)c.push(a[d++]);else if(g.endLineNumber<f.startLineNumber-1)c.push(b[e++]);else{let a=Math.min(f.startLineNumber,g.startLineNumber),b=Math.max(f.endLineNumber,g.endLineNumber);c.push(new ab.Q(a,1,b,1)),d++,e++}}for(;d<a.length;)c.push(a[d++]);for(;e<b.length;)c.push(b[e++]);return c})(a,b),[]);return e8(this.ranges,a)||(this.ranges=a),this.ranges}}function e8(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(!a[c].equalsRange(b[c]))return!1;return!0}class e9{constructor(a,b){this.viewportStartModelPosition=a,this.startLineDelta=b}recoverViewportStart(a,b){if(!this.viewportStartModelPosition)return;let c=a.convertModelPositionToViewPosition(this.viewportStartModelPosition),d=b.getVerticalOffsetForLineNumber(c.lineNumber);b.setScrollPosition({scrollTop:d+this.startLineDelta},1)}}var fa=c(70511),fb=c(45367),fc=c(52913),fd=c(22395),fe=c(79487),ff=function(a,b){return function(c,d){b(c,d,a)}};let fg=class extends w.jG{static{p=this}static{this.dropIntoEditorDecorationOptions=dE.kI.register({description:"workbench-dnd-target",className:"dnd-target"})}get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}get contextKeyService(){return this._contextKeyService}constructor(a,b,c,d,e,f,g,h,i,j,k,l){let m;super(),this.languageConfigurationService=k,this._deliveryQueue=(0,v.Qy)(),this._contributions=this._register(new dy),this._onDidDispose=this._register(new v.vl),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeLineHeight=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeLineHeight=this._onDidChangeLineHeight.event,this._onDidChangeFont=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeFont=this._onDidChangeFont.event,this._onDidChangeModelTokens=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new fj({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new fj({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new fk(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new fk(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new fk(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new fk(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new fk(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new fk(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new v.vl({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onWillTriggerEditorOperationEvent=this._register(new v.vl),this._onBeginUpdate=this._register(new v.vl),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new v.vl),this.onEndUpdate=this._onEndUpdate.event,this._onBeforeExecuteEdit=this._register(new v.vl),this.onBeforeExecuteEdit=this._onBeforeExecuteEdit.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),this.inComposition=!1,e.willCreateCodeEditor();let n={...b};if(this._domElement=a,this._overflowWidgetsDomNode=n.overflowWidgetsDomNode,delete n.overflowWidgetsDomNode,this._id=++fh,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=c.telemetryData,this._configuration=this._register(this._createConfiguration(c.isSimpleWidget||!1,c.contextMenuId??(c.isSimpleWidget?fe.D8.SimpleEditorContext:fe.D8.EditorContext),n,j)),this._register(this._configuration.onDidChange(a=>{this._onDidChangeConfiguration.fire(a);let b=this._configuration.options;if(a.hasChanged(165)){let a=b.get(165);this._onDidLayoutChange.fire(a)}})),this._contextKeyService=this._register(g.createScoped(this._domElement)),c.contextKeyValues)for(let[a,b]of Object.entries(c.contextKeyValues))this._contextKeyService.createKey(a,b);for(let a of(this._notificationService=i,this._codeEditorService=e,this._commandService=f,this._themeService=h,this._register(new fl(this,this._contextKeyService)),this._register(new fm(this,this._contextKeyService,l)),this._instantiationService=this._register(d.createChild(new fc.a([fb.fN,this._contextKeyService]))),this._modelData=null,this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={},m=Array.isArray(c.contributions)?c.contributions:r.dS.getEditorContributions(),this._contributions.initialize(this,m,this._instantiationService),r.dS.getEditorActions())){if(this._actions.has(a.id)){(0,u.dz)(Error(`Cannot have two actions with the same id ${a.id}`));continue}let b=new dA.f(a.id,a.label,a.alias,a.metadata,a.precondition??void 0,b=>this._instantiationService.invokeFunction(c=>Promise.resolve(a.runEditorCommand(c,this,b))),this._contextKeyService);this._actions.set(b.id,b)}let o=()=>!this._configuration.options.get(104)&&this._configuration.options.get(43).enabled;this._register(new t.pN(this._domElement,{onDragOver:a=>{if(!o())return;let b=this.getTargetAtClientPoint(a.clientX,a.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async a=>{if(!o()||(this.removeDropIndicator(),!a.dataTransfer))return;let b=this.getTargetAtClientPoint(a.clientX,a.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:a})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(a){this._modelData?.view.writeScreenReaderContent(a)}_createConfiguration(a,b,c,d){return new Q(a,b,c,this._domElement,d)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return dB._.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(a){return this._instantiationService.invokeFunction(a)}updateOptions(a){this._configuration.updateOptions(a||{})}getOptions(){return this._configuration.options}getOption(a){return this._configuration.options.get(a)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(a){return this._modelData?dz.z.getWordAtPosition(this._modelData.model,this._configuration.options.get(148),this._configuration.options.get(147),a):null}getValue(a=null){if(!this._modelData)return"";let b=!!a&&!!a.preserveBOM,c=0;return a&&a.lineEnding&&"\n"===a.lineEnding?c=1:a&&a.lineEnding&&"\r\n"===a.lineEnding&&(c=2),this._modelData.model.getValue(c,b)}setValue(a){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(a)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(a=null){try{if(this._beginUpdate(),null===this._modelData&&null===a||this._modelData&&this._modelData.model===a)return;let b={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:a?.uri||null};this._onWillChangeModel.fire(b);let c=this.hasTextFocus(),d=this._detachModel();this._attachModel(a),this.hasModel()?c&&this.focus():(this._editorTextFocus.setValue(!1),this._editorWidgetFocus.setValue(!1)),this._removeDecorationTypes(),this._onDidChangeModel.fire(b),this._postDetachModelCleanup(d),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(let a in this._decorationTypeSubtypes){let b=this._decorationTypeSubtypes[a];for(let c in b)this._removeDecorationType(a+"-"+c)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(a,b,c,d){let e=a.model.validatePosition({lineNumber:b,column:c}),f=a.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e);return a.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(f.lineNumber,d)}getTopForLineNumber(a,b=!1){return this._modelData?p._getVerticalOffsetForPosition(this._modelData,a,1,b):-1}getTopForPosition(a,b){return this._modelData?p._getVerticalOffsetForPosition(this._modelData,a,b,!1):-1}static _getVerticalOffsetForPosition(a,b,c,d=!1){let e=a.model.validatePosition({lineNumber:b,column:c}),f=a.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e);return a.viewModel.viewLayout.getVerticalOffsetForLineNumber(f.lineNumber,d)}getBottomForLineNumber(a,b=!1){if(!this._modelData)return -1;let c=this._modelData.model.getLineMaxColumn(a);return p._getVerticalOffsetAfterPosition(this._modelData,a,c,b)}getLineHeightForPosition(a){if(!this._modelData)return -1;let b=this._modelData.viewModel,c=b.coordinatesConverter,d=aa.y.lift(a);if(c.modelPositionIsVisible(d)){let a=c.convertModelPositionToViewPosition(d);return b.viewLayout.getLineHeightForLineNumber(a.lineNumber)}return 0}setHiddenAreas(a,b,c){this._modelData?.viewModel.setHiddenAreas(a.map(a=>ab.Q.lift(a)),b,c)}getVisibleColumnFromPosition(a){if(!this._modelData)return a.column;let b=this._modelData.model.validatePosition(a),c=this._modelData.model.getOptions().tabSize;return ac.A.visibleColumnFromColumn(this._modelData.model.getLineContent(b.lineNumber),b.column,c)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(a,b="api"){if(this._modelData){if(!aa.y.isIPosition(a))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(b,[{selectionStartLineNumber:a.lineNumber,selectionStartColumn:a.column,positionLineNumber:a.lineNumber,positionColumn:a.column}])}}_sendRevealRange(a,b,c,d){if(!this._modelData)return;if(!ab.Q.isIRange(a))throw Error("Invalid arguments");let e=this._modelData.model.validateRange(a),f=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(e);this._modelData.viewModel.revealRange("api",c,f,b,d)}revealLine(a,b=0){this._revealLine(a,0,b)}revealLineInCenter(a,b=0){this._revealLine(a,1,b)}revealLineInCenterIfOutsideViewport(a,b=0){this._revealLine(a,2,b)}revealLineNearTop(a,b=0){this._revealLine(a,5,b)}_revealLine(a,b,c){if("number"!=typeof a)throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a,1,a,1),b,!1,c)}revealPosition(a,b=0){this._revealPosition(a,0,!0,b)}revealPositionInCenter(a,b=0){this._revealPosition(a,1,!0,b)}revealPositionInCenterIfOutsideViewport(a,b=0){this._revealPosition(a,2,!0,b)}revealPositionNearTop(a,b=0){this._revealPosition(a,5,!0,b)}_revealPosition(a,b,c,d){if(!aa.y.isIPosition(a))throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a.lineNumber,a.column,a.lineNumber,a.column),b,c,d)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(a,b="api"){let c=aw.L.isISelection(a),d=ab.Q.isIRange(a);if(!c&&!d)throw Error("Invalid arguments");if(c)this._setSelectionImpl(a,b);else if(d){let c={selectionStartLineNumber:a.startLineNumber,selectionStartColumn:a.startColumn,positionLineNumber:a.endLineNumber,positionColumn:a.endColumn};this._setSelectionImpl(c,b)}}_setSelectionImpl(a,b){if(!this._modelData)return;let c=new aw.L(a.selectionStartLineNumber,a.selectionStartColumn,a.positionLineNumber,a.positionColumn);this._modelData.viewModel.setSelections(b,[c])}revealLines(a,b,c=0){this._revealLines(a,b,0,c)}revealLinesInCenter(a,b,c=0){this._revealLines(a,b,1,c)}revealLinesInCenterIfOutsideViewport(a,b,c=0){this._revealLines(a,b,2,c)}revealLinesNearTop(a,b,c=0){this._revealLines(a,b,5,c)}_revealLines(a,b,c,d){if("number"!=typeof a||"number"!=typeof b)throw Error("Invalid arguments");this._sendRevealRange(new ab.Q(a,1,b,1),c,!1,d)}revealRange(a,b=0,c=!1,d=!0){this._revealRange(a,+!!c,d,b)}revealRangeInCenter(a,b=0){this._revealRange(a,1,!0,b)}revealRangeInCenterIfOutsideViewport(a,b=0){this._revealRange(a,2,!0,b)}revealRangeNearTop(a,b=0){this._revealRange(a,5,!0,b)}revealRangeNearTopIfOutsideViewport(a,b=0){this._revealRange(a,6,!0,b)}revealRangeAtTop(a,b=0){this._revealRange(a,3,!0,b)}_revealRange(a,b,c,d){if(!ab.Q.isIRange(a))throw Error("Invalid arguments");this._sendRevealRange(ab.Q.lift(a),b,c,d)}setSelections(a,b="api",c=0){if(this._modelData){if(!a||0===a.length)throw Error("Invalid arguments");for(let b=0,c=a.length;b<c;b++)if(!aw.L.isISelection(a[b]))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(b,a,c)}}getContentWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1}getScrollWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1}getScrollLeft(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1}getContentHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1}getScrollHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1}getScrollTop(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1}setScrollLeft(a,b=1){if(this._modelData){if("number"!=typeof a)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollLeft:a},b)}}setScrollTop(a,b=1){if(this._modelData){if("number"!=typeof a)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollTop:a},b)}}setScrollPosition(a,b=1){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPosition(a,b)}hasPendingScrollAnimation(){return!!this._modelData&&this._modelData.viewModel.viewLayout.hasPendingScrollAnimation()}saveViewState(){if(!this._modelData)return null;let a=this._contributions.saveViewState();return{cursorState:this._modelData.viewModel.saveCursorState(),viewState:this._modelData.viewModel.saveState(),contributionsState:a}}restoreViewState(a){if(this._modelData&&this._modelData.hasRealView&&a&&a.cursorState&&a.viewState){let b=a.cursorState;Array.isArray(b)?b.length>0&&this._modelData.viewModel.restoreCursorState(b):this._modelData.viewModel.restoreCursorState([b]),this._contributions.restoreViewState(a.contributionsState||{});let c=this._modelData.viewModel.reduceRestoreState(a.viewState);this._modelData.view.restoreState(c)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(a){return this._contributions.get(a)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let a=this.getActions();return a.filter(a=>a.isSupported())}getAction(a){return this._actions.get(a)||null}trigger(a,b,c){c=c||{};try{switch(this._onWillTriggerEditorOperationEvent.fire({source:a,handlerId:b,payload:c}),this._beginUpdate(),b){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(a);return;case"type":{let b=c;this._type(a,b.text||"");return}case"replacePreviousChar":{let b=c;this._compositionType(a,b.text||"",b.replaceCharCnt||0,0,0);return}case"compositionType":{let b=c;this._compositionType(a,b.text||"",b.replacePrevCharCnt||0,b.replaceNextCharCnt||0,b.positionDelta||0);return}case"paste":{let b=c;this._paste(a,b.text||"",b.pasteOnNewLine||!1,b.multicursorText||null,b.mode||null,b.clipboardEvent);return}case"cut":this._cut(a);return}let d=this.getAction(b);if(d)return void Promise.resolve(d.run(c)).then(void 0,u.dz);if(!this._modelData||this._triggerEditorCommand(a,b,c))return;this._triggerCommand(b,c)}finally{this._endUpdate()}}_triggerCommand(a,b){this._commandService.executeCommand(a,b)}_startComposition(){this._modelData&&(this.inComposition=!0,this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(a){this._modelData&&(this.inComposition=!1,this._modelData.viewModel.endComposition(a),this._onDidCompositionEnd.fire())}_type(a,b){this._modelData&&0!==b.length&&("keyboard"===a&&this._onWillType.fire(b),this._modelData.viewModel.type(b,a),"keyboard"===a&&this._onDidType.fire(b))}_compositionType(a,b,c,d,e){this._modelData&&this._modelData.viewModel.compositionType(b,c,d,e,a)}_paste(a,b,c,d,e,f){if(!this._modelData)return;let g=this._modelData.viewModel,h=g.getSelection().getStartPosition();g.paste(b,c,d,a);let i=g.getSelection().getStartPosition();"keyboard"===a&&this._onDidPaste.fire({clipboardEvent:f,range:new ab.Q(h.lineNumber,h.column,i.lineNumber,i.column),languageId:e})}_cut(a){this._modelData&&this._modelData.viewModel.cut(a)}_triggerEditorCommand(a,b,c){let d=r.dS.getEditorCommand(b);return!!d&&((c=c||{}).source=a,this._instantiationService.invokeFunction(a=>{Promise.resolve(d.runEditorCommand(a,this,c)).then(void 0,u.dz)}),!0)}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!(!this._modelData||this._configuration.options.get(104))&&(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!(!this._modelData||this._configuration.options.get(104))&&(this._modelData.model.popStackElement(),!0)}edit(a,b){return this.executeEdits(b,a.replacements.map(a=>({range:a.range,text:a.text})),void 0)}executeEdits(a,b,c){let d,e,f;return!(!this._modelData||this._configuration.options.get(104))&&(d=c?Array.isArray(c)?()=>c:c:()=>null,a instanceof eu.OL?(f=a,e=a.metadata.source):(f=eu.dg.unknown({name:e}),e=a),this._onBeforeExecuteEdit.fire({source:e??void 0}),this._modelData.viewModel.executeEdits(e,b,d,f),!0)}executeCommand(a,b){this._modelData&&this._modelData.viewModel.executeCommand(b,a)}executeCommands(a,b){this._modelData&&this._modelData.viewModel.executeCommands(b,a)}createDecorationsCollection(a){return new fn(this,a)}changeDecorations(a){return this._modelData?this._modelData.model.changeDecorations(a,this._id):null}getLineDecorations(a){if(!this._modelData)return null;let b=this._configuration.options;return this._modelData.model.getLineDecorations(a,this._id,(0,K.$C)(b),(0,K.Vs)(b))}getDecorationsInRange(a){if(!this._modelData)return null;let b=this._configuration.options;return this._modelData.model.getDecorationsInRange(a,this._id,(0,K.$C)(b),(0,K.Vs)(b))}getFontSizeAtPosition(a){return this._modelData?this._modelData.viewModel.getFontSizeAtPosition(a):null}deltaDecorations(a,b){return this._modelData?0===a.length&&0===b.length?a:this._modelData.model.deltaDecorations(a,b,this._id):[]}removeDecorations(a){this._modelData&&0!==a.length&&this._modelData.model.changeDecorations(b=>{b.deltaDecorations(a,[])})}removeDecorationsByType(a){let b=this._decorationTypeKeysToIds[a];b&&this.changeDecorations(a=>a.deltaDecorations(b,[])),this._decorationTypeKeysToIds.hasOwnProperty(a)&&delete this._decorationTypeKeysToIds[a],this._decorationTypeSubtypes.hasOwnProperty(a)&&delete this._decorationTypeSubtypes[a]}getLayoutInfo(){return this._configuration.options.get(165)}createOverviewRuler(a){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(a):null}getContainerDomNode(){return this._domElement}getDomNode(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null}delegateVerticalScrollbarPointerDown(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateScrollFromMouseWheelEvent(a)}layout(a,b=!1){this._configuration.observeContainer(a),b||this.render()}focus(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()}hasTextFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isFocused()}hasWidgetFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isWidgetFocused()}addContentWidget(a){let b={widget:a,position:a.getPosition()};this._contentWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting a content widget with the same id:"+a.getId()),this._contentWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(b)}layoutContentWidget(a){let b=a.getId();if(this._contentWidgets.hasOwnProperty(b)){let c=this._contentWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(c)}}removeContentWidget(a){let b=a.getId();if(this._contentWidgets.hasOwnProperty(b)){let a=this._contentWidgets[b];delete this._contentWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(a)}}addOverlayWidget(a){let b={widget:a,position:a.getPosition()};this._overlayWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(b)}layoutOverlayWidget(a){let b=a.getId();if(this._overlayWidgets.hasOwnProperty(b)){let c=this._overlayWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(c)}}removeOverlayWidget(a){let b=a.getId();if(this._overlayWidgets.hasOwnProperty(b)){let a=this._overlayWidgets[b];delete this._overlayWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(a)}}addGlyphMarginWidget(a){let b={widget:a,position:a.getPosition()};this._glyphMarginWidgets.hasOwnProperty(a.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[a.getId()]=b,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(b)}layoutGlyphMarginWidget(a){let b=a.getId();if(this._glyphMarginWidgets.hasOwnProperty(b)){let c=this._glyphMarginWidgets[b];c.position=a.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(c)}}removeGlyphMarginWidget(a){let b=a.getId();if(this._glyphMarginWidgets.hasOwnProperty(b)){let a=this._glyphMarginWidgets[b];delete this._glyphMarginWidgets[b],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(a)}}changeViewZones(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.change(a)}getTargetAtClientPoint(a,b){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(a,b):null}getScrolledVisiblePosition(a){if(!this._modelData||!this._modelData.hasRealView)return null;let b=this._modelData.model.validatePosition(a),c=this._configuration.options.get(165),d=p._getVerticalOffsetForPosition(this._modelData,b.lineNumber,b.column)-this.getScrollTop();return{top:d,left:this._modelData.view.getOffsetForColumn(b.lineNumber,b.column)+c.glyphMarginWidth+c.lineNumbersWidth+c.decorationsWidth-this.getScrollLeft(),height:this.getLineHeightForPosition(b)}}getOffsetForColumn(a,b){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(a,b):-1}render(a=!1){this._modelData&&this._modelData.hasRealView&&this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,a)})}setAriaOptions(a){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(a)}applyFontInfo(a){(0,y.M)(a,this._configuration.options.get(59))}setBanner(a,b){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=a,this._configuration.setReservedHeight(a?b:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(a){if(!a){this._modelData=null;return}let b=[];this._domElement.setAttribute("data-mode-id",a.getLanguageId()),this._configuration.setIsDominatedByLongLines(a.isDominatedByLongLines()),this._configuration.setModelLineCount(a.getLineCount());let c=a.onBeforeAttached(),d=new e4(this._id,this._configuration,a,dw.create(t.zk(this._domElement)),dH.create(this._configuration.options),a=>t.PG(t.zk(this._domElement),a),this.languageConfigurationService,this._themeService,c,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});b.push(a.onWillDispose(()=>this.setModel(null))),b.push(d.onEvent(b=>{switch(b.kind){case 0:this._onDidContentSizeChange.fire(b);break;case 1:this._editorTextFocus.setValue(b.hasFocus);break;case 2:this._editorWidgetFocus.setValue(b.hasFocus);break;case 3:this._onDidScrollChange.fire(b);break;case 4:this._onDidChangeViewZones.fire();break;case 5:this._onDidChangeHiddenAreas.fire();break;case 6:this._onDidAttemptReadOnlyEdit.fire();break;case 7:{if(b.reachedMaxCursorCount){let a=this.getOption(89),b=cQ.kg(80,"The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",a);this._notificationService.prompt(fd.AI.Warning,b,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:cQ.kg(81,"Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}let a=[];for(let c=0,d=b.selections.length;c<d;c++)a[c]=b.selections[c].getPosition();let c={position:a[0],secondaryPositions:a.slice(1),reason:b.reason,source:b.source};this._onDidChangeCursorPosition.fire(c);let d={selection:b.selections[0],secondarySelections:b.selections.slice(1),modelVersionId:b.modelVersionId,oldSelections:b.oldSelections,oldModelVersionId:b.oldModelVersionId,source:b.source,reason:b.reason};this._onDidChangeCursorSelection.fire(d);break}case 8:this._onDidChangeModelDecorations.fire(b.event);break;case 9:this._domElement.setAttribute("data-mode-id",a.getLanguageId()),this._onDidChangeModelLanguage.fire(b.event);break;case 10:this._onDidChangeModelLanguageConfiguration.fire(b.event);break;case 11:this._onDidChangeModelContent.fire(b.event);break;case 12:this._onDidChangeModelOptions.fire(b.event);break;case 13:this._onDidChangeModelTokens.fire(b.event);break;case 14:this._onDidChangeLineHeight.fire(b.event);break;case 15:this._onDidChangeFont.fire(b.event)}}));let[e,f]=this._createView(d);if(f){this._domElement.appendChild(e.domNode.domNode);let b=Object.keys(this._contentWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addContentWidget(this._contentWidgets[c])}b=Object.keys(this._overlayWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addOverlayWidget(this._overlayWidgets[c])}b=Object.keys(this._glyphMarginWidgets);for(let a=0,c=b.length;a<c;a++){let c=b[a];e.addGlyphMarginWidget(this._glyphMarginWidgets[c])}e.render(!1,!0),e.domNode.domNode.setAttribute("data-uri",a.uri.toString())}this._modelData=new fi(a,d,e,f,b,c)}_createView(a){let b;b=this.isSimpleWidget?{paste:(a,b,c,d)=>{this._paste("keyboard",a,b,c,d)},type:a=>{this._type("keyboard",a)},compositionType:(a,b,c,d)=>{this._compositionType("keyboard",a,b,c,d)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:{paste:(a,b,c,d)=>{this._commandService.executeCommand("paste",{text:a,pasteOnNewLine:b,multicursorText:c,mode:d})},type:a=>{this._commandService.executeCommand("type",{text:a})},compositionType:(a,b,c,d)=>{c||d?this._commandService.executeCommand("compositionType",{text:a,replacePrevCharCnt:b,replaceNextCharCnt:c,positionDelta:d}):this._commandService.executeCommand("replacePreviousChar",{text:a,replaceCharCnt:b})},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};let c=new a6(a.coordinatesConverter);return c.onKeyDown=a=>this._onKeyDown.fire(a),c.onKeyUp=a=>this._onKeyUp.fire(a),c.onContextMenu=a=>this._onContextMenu.fire(a),c.onMouseMove=a=>this._onMouseMove.fire(a),c.onMouseLeave=a=>this._onMouseLeave.fire(a),c.onMouseDown=a=>this._onMouseDown.fire(a),c.onMouseUp=a=>this._onMouseUp.fire(a),c.onMouseDrag=a=>this._onMouseDrag.fire(a),c.onMouseDrop=a=>this._onMouseDrop.fire(a),c.onMouseDropCanceled=a=>this._onMouseDropCanceled.fire(a),c.onMouseWheel=a=>this._onMouseWheel.fire(a),[new dk(this._domElement,this.getId(),b,this._configuration,this._themeService.getColorTheme(),a,c,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(a){a?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;let a=this._modelData.model,b=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),b&&this._domElement.contains(b)&&b.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),a}_removeDecorationType(a){this._codeEditorService.removeDecorationType(a)}hasModel(){return null!==this._modelData}showDropIndicatorAt(a){let b=[{range:new ab.Q(a.lineNumber,a.column,a.lineNumber,a.column),options:p.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(b),this.revealPosition(a,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}_beginUpdate(){this._updateCounter++,1===this._updateCounter&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,0===this._updateCounter&&this._onEndUpdate.fire()}};fg=p=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([ff(3,cy._Y),ff(4,V.T),ff(5,fa.d),ff(6,fb.fN),ff(7,bg.Gy),ff(8,fd.Ot),ff(9,N.j),ff(10,dD.JZ),ff(11,dF.u)],fg);let fh=0;class fi{constructor(a,b,c,d,e,f){this.model=a,this.viewModel=b,this.view=c,this.hasRealView=d,this.listenersToRemove=e,this.attachedView=f}dispose(){(0,w.AS)(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class fj extends w.jG{constructor(a){super(),this._emitterOptions=a,this._onDidChangeToTrue=this._register(new v.vl(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new v.vl(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(a){let b=a?2:1;this._value!==b&&(this._value=b,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())}}class fk extends v.vl{constructor(a,b){super({deliveryQueue:b}),this._contributions=a}fire(a){this._contributions.onBeforeInteractionEvent(),super.fire(a)}}class fl extends w.jG{constructor(a,b){super(),this._editor=a,b.createKey("editorId",a.getId()),this._editorSimpleInput=dC.R.editorSimpleInput.bindTo(b),this._editorFocus=dC.R.focus.bindTo(b),this._textInputFocus=dC.R.textInputFocus.bindTo(b),this._editorTextFocus=dC.R.editorTextFocus.bindTo(b),this._tabMovesFocus=dC.R.tabMovesFocus.bindTo(b),this._editorReadonly=dC.R.readOnly.bindTo(b),this._inDiffEditor=dC.R.inDiffEditor.bindTo(b),this._editorColumnSelection=dC.R.columnSelection.bindTo(b),this._hasMultipleSelections=dC.R.hasMultipleSelections.bindTo(b),this._hasNonEmptySelection=dC.R.hasNonEmptySelection.bindTo(b),this._canUndo=dC.R.canUndo.bindTo(b),this._canRedo=dC.R.canRedo.bindTo(b),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(J.M.onDidChangeTabFocus(a=>this._tabMovesFocus.set(a))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){let a=this._editor.getOptions();this._tabMovesFocus.set(a.get(164)||J.M.getTabFocusMode()),this._editorReadonly.set(a.get(104)),this._inDiffEditor.set(a.get(70)),this._editorColumnSelection.set(a.get(28))}_updateFromSelection(){let a=this._editor.getSelections();a?(this._hasMultipleSelections.set(a.length>1),this._hasNonEmptySelection.set(a.some(a=>!a.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){let a=this._editor.getModel();this._canUndo.set(!!(a&&a.canUndo())),this._canRedo.set(!!(a&&a.canRedo()))}}class fm extends w.jG{constructor(a,b,c){super(),this._editor=a,this._contextKeyService=b,this._languageFeaturesService=c,this._langId=dC.R.languageId.bindTo(b),this._hasCompletionItemProvider=dC.R.hasCompletionItemProvider.bindTo(b),this._hasCodeActionsProvider=dC.R.hasCodeActionsProvider.bindTo(b),this._hasCodeLensProvider=dC.R.hasCodeLensProvider.bindTo(b),this._hasDefinitionProvider=dC.R.hasDefinitionProvider.bindTo(b),this._hasDeclarationProvider=dC.R.hasDeclarationProvider.bindTo(b),this._hasImplementationProvider=dC.R.hasImplementationProvider.bindTo(b),this._hasTypeDefinitionProvider=dC.R.hasTypeDefinitionProvider.bindTo(b),this._hasHoverProvider=dC.R.hasHoverProvider.bindTo(b),this._hasDocumentHighlightProvider=dC.R.hasDocumentHighlightProvider.bindTo(b),this._hasDocumentSymbolProvider=dC.R.hasDocumentSymbolProvider.bindTo(b),this._hasReferenceProvider=dC.R.hasReferenceProvider.bindTo(b),this._hasRenameProvider=dC.R.hasRenameProvider.bindTo(b),this._hasSignatureHelpProvider=dC.R.hasSignatureHelpProvider.bindTo(b),this._hasInlayHintsProvider=dC.R.hasInlayHintsProvider.bindTo(b),this._hasDocumentFormattingProvider=dC.R.hasDocumentFormattingProvider.bindTo(b),this._hasDocumentSelectionFormattingProvider=dC.R.hasDocumentSelectionFormattingProvider.bindTo(b),this._hasMultipleDocumentFormattingProvider=dC.R.hasMultipleDocumentFormattingProvider.bindTo(b),this._hasMultipleDocumentSelectionFormattingProvider=dC.R.hasMultipleDocumentSelectionFormattingProvider.bindTo(b),this._isInEmbeddedEditor=dC.R.isInEmbeddedEditor.bindTo(b);let d=()=>this._update();this._register(a.onDidChangeModel(d)),this._register(a.onDidChangeModelLanguage(d)),this._register(c.completionProvider.onDidChange(d)),this._register(c.codeActionProvider.onDidChange(d)),this._register(c.codeLensProvider.onDidChange(d)),this._register(c.definitionProvider.onDidChange(d)),this._register(c.declarationProvider.onDidChange(d)),this._register(c.implementationProvider.onDidChange(d)),this._register(c.typeDefinitionProvider.onDidChange(d)),this._register(c.hoverProvider.onDidChange(d)),this._register(c.documentHighlightProvider.onDidChange(d)),this._register(c.documentSymbolProvider.onDidChange(d)),this._register(c.referenceProvider.onDidChange(d)),this._register(c.renameProvider.onDidChange(d)),this._register(c.documentFormattingEditProvider.onDidChange(d)),this._register(c.documentRangeFormattingEditProvider.onDidChange(d)),this._register(c.signatureHelpProvider.onDidChange(d)),this._register(c.inlayHintsProvider.onDidChange(d)),d()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){let a=this._editor.getModel();if(!a)return void this.reset();this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(a.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(a)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(a)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(a)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(a)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(a)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(a)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(a)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(a)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(a)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(a)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(a)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(a)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(a)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(a)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(a)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(a)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(a)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(a).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(a).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(a).length>1),this._isInEmbeddedEditor.set(a.uri.scheme===x.ny.walkThroughSnippet||a.uri.scheme===x.ny.vscodeChatCodeBlock)})}}class fn{get length(){return this._decorationIds.length}constructor(a,b){this._editor=a,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(b)&&b.length>0&&this.set(b)}onDidChange(a,b,c){return this._editor.onDidChangeModelDecorations(c=>{this._isChangingDecorations||a.call(b,c)},c)}getRange(a){return!this._editor.hasModel()||a>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[a])}getRanges(){if(!this._editor.hasModel())return[];let a=this._editor.getModel(),b=[];for(let c of this._decorationIds){let d=a.getDecorationRange(c);d&&b.push(d)}return b}has(a){return this._decorationIds.includes(a.id)}clear(){0!==this._decorationIds.length&&this.set([])}set(a){try{this._isChangingDecorations=!0,this._editor.changeDecorations(b=>{this._decorationIds=b.deltaDecorations(this._decorationIds,a)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(a){let b=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(c=>{b=c.deltaDecorations([],a),this._decorationIds=this._decorationIds.concat(b)})}finally{this._isChangingDecorations=!1}return b}}let fo=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),fp=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function fq(a){return fo+encodeURIComponent(a.toString())+fp}let fr=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),fs=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');function ft(a){return fr+encodeURIComponent(a.toString())+fs}(0,bg.zy)((a,b)=>{let c=a.getColor(bP.Rbi);c&&(b.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${fq(c)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-error-decoration: url("data:image/svg+xml,${fq(c)}"); }`));let d=a.getColor(bP.Hng);d&&(b.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${fq(d)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-warning-decoration: url("data:image/svg+xml,${fq(d)}"); }`));let e=a.getColor(bP.pOz);e&&(b.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${fq(e)}") repeat-x bottom left; }`),b.addRule(`:root { --monaco-editor-info-decoration: url("data:image/svg+xml,${fq(e)}"); }`));let f=a.getColor(bP.i61);f&&(b.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${ft(f)}") no-repeat bottom left; }`),b.addRule(`:root { --monaco-editor-hint-decoration: url("data:image/svg+xml,${ft(f)}"); }`));let g=a.getColor(bf.yw);g&&(b.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${g.rgba.a}; }`),b.addRule(`:root { --monaco-editor-unnecessary-decoration-opacity: ${g.rgba.a}; }`))})},68703:(a,b,c)=>{"use strict";c.d(b,{c:()=>m});var d=c(32677),e=c(71510),f=c(36120),g=c(62274),h=c(60734);c(85531);var i=c(25536),j=c(11314),k=c(75096);let l=i.kg(1,"input");class m extends g.x{get onDidOptionChange(){return this._onDidOptionChange.event}get onKeyDown(){return this._onKeyDown.event}get onMouseDown(){return this._onMouseDown.event}get onCaseSensitiveKeyDown(){return this._onCaseSensitiveKeyDown.event}get onRegexKeyDown(){return this._onRegexKeyDown.event}constructor(a,b,c){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new j.HE),this.additionalToggles=[],this._onDidOptionChange=this._register(new h.vl),this._onKeyDown=this._register(new h.vl),this._onMouseDown=this._register(new h.vl),this._onInput=this._register(new h.vl),this._onKeyUp=this._register(new h.vl),this._onCaseSensitiveKeyDown=this._register(new h.vl),this._onRegexKeyDown=this._register(new h.vl),this._lastHighlightFindOptions=0,this.placeholder=c.placeholder||"",this.validation=c.validation,this.label=c.label||l,this.showCommonFindToggles=!!c.showCommonFindToggles;let g=c.appendCaseSensitiveLabel||"",i=c.appendWholeWordsLabel||"",m=c.appendRegexLabel||"",n=!!c.flexibleHeight,o=!!c.flexibleWidth,p=c.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new f.mJ(this.domNode,b,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},showHistoryHint:c.showHistoryHint,flexibleHeight:n,flexibleWidth:o,flexibleMaxHeight:p,inputBoxStyles:c.inputBoxStyles,history:c.history}));let q=this._register((0,k.bW)());if(this.showCommonFindToggles){this.regex=this._register(new e.Ix({appendTitle:m,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.regex.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(a=>{this._onRegexKeyDown.fire(a)})),this.wholeWords=this._register(new e.nV({appendTitle:i,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.wholeWords.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new e.bc({appendTitle:g,isChecked:!1,hoverDelegate:q,...c.toggleStyles})),this._register(this.caseSensitive.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(a=>{this._onCaseSensitiveKeyDown.fire(a)}));let a=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,b=>{if(b.equals(15)||b.equals(17)||b.equals(9)){let c=a.indexOf(this.domNode.ownerDocument.activeElement);if(c>=0){let e=-1;b.equals(17)?e=(c+1)%a.length:b.equals(15)&&(e=0===c?a.length-1:c-1),b.equals(9)?(a[c].blur(),this.inputBox.focus()):e>=0&&a[e].focus(),d.fs.stop(b,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(c?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),a?.appendChild(this.domNode),this._register(d.ko(this.inputBox.inputElement,"compositionstart",a=>{this.imeSessionInProgress=!0})),this._register(d.ko(this.inputBox.inputElement,"compositionend",a=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,a=>this._onKeyDown.fire(a)),this.onkeyup(this.inputBox.inputElement,a=>this._onKeyUp.fire(a)),this.oninput(this.inputBox.inputElement,a=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,a=>this._onMouseDown.fire(a))}get onDidChange(){return this.inputBox.onDidChange}layout(a){this.inputBox.layout(),this.updateInputBoxPadding(a.collapsedFindWidget)}enable(){for(let a of(this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable(),this.additionalToggles))a.enable()}disable(){for(let a of(this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable(),this.additionalToggles))a.disable()}setFocusInputOnOptionClick(a){this.fixFocusOnOptionClickEnabled=a}setEnabled(a){a?this.enable():this.disable()}setAdditionalToggles(a){for(let a of this.additionalToggles)a.domNode.remove();for(let b of(this.additionalToggles=[],this.additionalTogglesDisposables.value=new j.Cm,a??[]))this.additionalTogglesDisposables.value.add(b),this.controls.appendChild(b.domNode),this.additionalTogglesDisposables.value.add(b.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(b);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(a=!1){a?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((a,b)=>a+b.width(),0)}getValue(){return this.inputBox.value}setValue(a){this.inputBox.value!==a&&(this.inputBox.value=a)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(a){this.caseSensitive&&(this.caseSensitive.checked=a)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(a){this.wholeWords&&(this.wholeWords.checked=a)}getRegex(){return this.regex?.checked??!1}setRegex(a){this.regex&&(this.regex.checked=a,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(a){this.inputBox.showMessage(a)}clearMessage(){this.inputBox.hideMessage()}}},69034:()=>{},69262:(a,b,c)=>{"use strict";c.d(b,{R:()=>d});var d,e=c(25536),f=c(45367);!function(a){a.editorSimpleInput=new f.N1("editorSimpleInput",!1,!0),a.editorTextFocus=new f.N1("editorTextFocus",!1,e.kg(678,"Whether the editor text has focus (cursor is blinking)")),a.focus=new f.N1("editorFocus",!1,e.kg(679,"Whether the editor or an editor widget has focus (e.g. focus is in the find widget)")),a.textInputFocus=new f.N1("textInputFocus",!1,e.kg(680,"Whether an editor or a rich text input has focus (cursor is blinking)")),a.readOnly=new f.N1("editorReadonly",!1,e.kg(681,"Whether the editor is read-only")),a.inDiffEditor=new f.N1("inDiffEditor",!1,e.kg(682,"Whether the context is a diff editor")),a.isEmbeddedDiffEditor=new f.N1("isEmbeddedDiffEditor",!1,e.kg(683,"Whether the context is an embedded diff editor")),a.multiDiffEditorAllCollapsed=new f.N1("multiDiffEditorAllCollapsed",void 0,e.kg(684,"Whether all files in multi diff editor are collapsed")),a.hasChanges=new f.N1("diffEditorHasChanges",!1,e.kg(685,"Whether the diff editor has changes")),a.comparingMovedCode=new f.N1("comparingMovedCode",!1,e.kg(686,"Whether a moved code block is selected for comparison")),a.accessibleDiffViewerVisible=new f.N1("accessibleDiffViewerVisible",!1,e.kg(687,"Whether the accessible diff viewer is visible")),a.diffEditorRenderSideBySideInlineBreakpointReached=new f.N1("diffEditorRenderSideBySideInlineBreakpointReached",!1,e.kg(688,"Whether the diff editor render side by side inline breakpoint is reached")),a.diffEditorInlineMode=new f.N1("diffEditorInlineMode",!1,e.kg(689,"Whether inline mode is active")),a.diffEditorOriginalWritable=new f.N1("diffEditorOriginalWritable",!1,e.kg(690,"Whether modified is writable in the diff editor")),a.diffEditorModifiedWritable=new f.N1("diffEditorModifiedWritable",!1,e.kg(691,"Whether modified is writable in the diff editor")),a.diffEditorOriginalUri=new f.N1("diffEditorOriginalUri","",e.kg(692,"The uri of the original document")),a.diffEditorModifiedUri=new f.N1("diffEditorModifiedUri","",e.kg(693,"The uri of the modified document")),a.columnSelection=new f.N1("editorColumnSelection",!1,e.kg(694,"Whether `editor.columnSelection` is enabled")),a.writable=a.readOnly.toNegated(),a.hasNonEmptySelection=new f.N1("editorHasSelection",!1,e.kg(695,"Whether the editor has text selected")),a.hasOnlyEmptySelection=a.hasNonEmptySelection.toNegated(),a.hasMultipleSelections=new f.N1("editorHasMultipleSelections",!1,e.kg(696,"Whether the editor has multiple selections")),a.hasSingleSelection=a.hasMultipleSelections.toNegated(),a.tabMovesFocus=new f.N1("editorTabMovesFocus",!1,e.kg(697,"Whether `Tab` will move focus out of the editor")),a.tabDoesNotMoveFocus=a.tabMovesFocus.toNegated(),a.isInEmbeddedEditor=new f.N1("isInEmbeddedEditor",!1,!0),a.canUndo=new f.N1("canUndo",!1,!0),a.canRedo=new f.N1("canRedo",!1,!0),a.hoverVisible=new f.N1("editorHoverVisible",!1,e.kg(698,"Whether the editor hover is visible")),a.hoverFocused=new f.N1("editorHoverFocused",!1,e.kg(699,"Whether the editor hover is focused")),a.stickyScrollFocused=new f.N1("stickyScrollFocused",!1,e.kg(700,"Whether the sticky scroll is focused")),a.stickyScrollVisible=new f.N1("stickyScrollVisible",!1,e.kg(701,"Whether the sticky scroll is visible")),a.standaloneColorPickerVisible=new f.N1("standaloneColorPickerVisible",!1,e.kg(702,"Whether the standalone color picker is visible")),a.standaloneColorPickerFocused=new f.N1("standaloneColorPickerFocused",!1,e.kg(703,"Whether the standalone color picker is focused")),a.inCompositeEditor=new f.N1("inCompositeEditor",void 0,e.kg(704,"Whether the editor is part of a larger editor (e.g. notebooks)")),a.notInCompositeEditor=a.inCompositeEditor.toNegated(),a.languageId=new f.N1("editorLangId","",e.kg(705,"The language identifier of the editor")),a.hasCompletionItemProvider=new f.N1("editorHasCompletionItemProvider",!1,e.kg(706,"Whether the editor has a completion item provider")),a.hasCodeActionsProvider=new f.N1("editorHasCodeActionsProvider",!1,e.kg(707,"Whether the editor has a code actions provider")),a.hasCodeLensProvider=new f.N1("editorHasCodeLensProvider",!1,e.kg(708,"Whether the editor has a code lens provider")),a.hasDefinitionProvider=new f.N1("editorHasDefinitionProvider",!1,e.kg(709,"Whether the editor has a definition provider")),a.hasDeclarationProvider=new f.N1("editorHasDeclarationProvider",!1,e.kg(710,"Whether the editor has a declaration provider")),a.hasImplementationProvider=new f.N1("editorHasImplementationProvider",!1,e.kg(711,"Whether the editor has an implementation provider")),a.hasTypeDefinitionProvider=new f.N1("editorHasTypeDefinitionProvider",!1,e.kg(712,"Whether the editor has a type definition provider")),a.hasHoverProvider=new f.N1("editorHasHoverProvider",!1,e.kg(713,"Whether the editor has a hover provider")),a.hasDocumentHighlightProvider=new f.N1("editorHasDocumentHighlightProvider",!1,e.kg(714,"Whether the editor has a document highlight provider")),a.hasDocumentSymbolProvider=new f.N1("editorHasDocumentSymbolProvider",!1,e.kg(715,"Whether the editor has a document symbol provider")),a.hasReferenceProvider=new f.N1("editorHasReferenceProvider",!1,e.kg(716,"Whether the editor has a reference provider")),a.hasRenameProvider=new f.N1("editorHasRenameProvider",!1,e.kg(717,"Whether the editor has a rename provider")),a.hasSignatureHelpProvider=new f.N1("editorHasSignatureHelpProvider",!1,e.kg(718,"Whether the editor has a signature help provider")),a.hasInlayHintsProvider=new f.N1("editorHasInlayHintsProvider",!1,e.kg(719,"Whether the editor has an inline hints provider")),a.hasDocumentFormattingProvider=new f.N1("editorHasDocumentFormattingProvider",!1,e.kg(720,"Whether the editor has a document formatting provider")),a.hasDocumentSelectionFormattingProvider=new f.N1("editorHasDocumentSelectionFormattingProvider",!1,e.kg(721,"Whether the editor has a document selection formatting provider")),a.hasMultipleDocumentFormattingProvider=new f.N1("editorHasMultipleDocumentFormattingProvider",!1,e.kg(722,"Whether the editor has multiple document formatting providers")),a.hasMultipleDocumentSelectionFormattingProvider=new f.N1("editorHasMultipleDocumentSelectionFormattingProvider",!1,e.kg(723,"Whether the editor has multiple document selection formatting providers"))}(d||(d={}))},69467:(a,b,c)=>{"use strict";c.d(b,{MF:()=>o,d$:()=>n,mG:()=>r,vG:()=>t,vY:()=>s});var d=c(79677),e=c(59317),f=c(32146),g=c(65576),h=c(29949),i=c(25146),j=c(75393);let k=()=>!0,l=()=>!1,m=a=>" "===a||" "===a;class n{static shouldRecreate(a){return a.hasChanged(165)||a.hasChanged(148)||a.hasChanged(45)||a.hasChanged(85)||a.hasChanged(88)||a.hasChanged(89)||a.hasChanged(10)||a.hasChanged(11)||a.hasChanged(15)||a.hasChanged(13)||a.hasChanged(14)||a.hasChanged(20)||a.hasChanged(145)||a.hasChanged(141)||a.hasChanged(59)||a.hasChanged(104)||a.hasChanged(147)||a.hasChanged(93)}constructor(a,b,c,d){this.languageConfigurationService=d,this._cursorMoveConfigurationBrand=void 0,this._languageId=a;let e=c.options,f=e.get(165),g=e.get(59);this.readOnly=e.get(104),this.tabSize=b.tabSize,this.indentSize=b.indentSize,this.insertSpaces=b.insertSpaces,this.stickyTabStops=e.get(132),this.lineHeight=g.lineHeight,this.typicalHalfwidthCharacterWidth=g.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(f.height/this.lineHeight)-2),this.useTabStops=e.get(145),this.trimWhitespaceOnDelete=e.get(141),this.wordSeparators=e.get(148),this.emptySelectionClipboard=e.get(45),this.copyWithSyntaxHighlighting=e.get(31),this.multiCursorMergeOverlapping=e.get(85),this.multiCursorPaste=e.get(88),this.multiCursorLimit=e.get(89),this.autoClosingBrackets=e.get(10),this.autoClosingComments=e.get(11),this.autoClosingQuotes=e.get(15),this.autoClosingDelete=e.get(13),this.autoClosingOvertype=e.get(14),this.autoSurround=e.get(20),this.autoIndent=e.get(16),this.wordSegmenterLocales=e.get(147),this.overtypeOnPaste=e.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(a,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(a,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(a,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(a).getAutoClosingPairs();let h=this.languageConfigurationService.getLanguageConfiguration(a).getSurroundingPairs();if(h)for(let a of h)this.surroundingPairs[a.open]=a.close;let i=this.languageConfigurationService.getLanguageConfiguration(a).comments;this.blockCommentStartToken=i?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};let a=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(a)for(let b of a)this._electricChars[b]=!0}return this._electricChars}get inputMode(){return j.U.getInputMode()}onElectricCharacter(a,b,c){let d=(0,g.BQ)(b,c-1),e=this.languageConfigurationService.getLanguageConfiguration(d.languageId).electricCharacter;return e?e.onElectricCharacter(a,d,c-d.firstCharOffset):null}normalizeIndentation(a){return(0,i.P)(a,this.indentSize,this.insertSpaces)}_getShouldAutoClose(a,b,c){switch(b){case"beforeWhitespace":return m;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(a,c);case"always":return k;case"never":return l}}_getLanguageDefinedShouldAutoClose(a,b){let c=this.languageConfigurationService.getLanguageConfiguration(a).getAutoCloseBeforeSet(b);return a=>-1!==c.indexOf(a)}visibleColumnFromColumn(a,b){return h.A.visibleColumnFromColumn(a.getLineContent(b.lineNumber),b.column,this.tabSize)}columnFromVisibleColumn(a,b,c){let d=h.A.columnFromVisibleColumn(a.getLineContent(b),c,this.tabSize),e=a.getLineMinColumn(b);if(d<e)return e;let f=a.getLineMaxColumn(b);return d>f?f:d}}class o{static fromModelState(a){return new p(a)}static fromViewState(a){return new q(a)}static fromModelSelection(a){let b=f.L.liftSelection(a),c=new r(e.Q.fromPositions(b.getSelectionStart()),0,0,b.getPosition(),0);return o.fromModelState(c)}static fromModelSelections(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this.fromModelSelection(a[c]);return b}constructor(a,b){this._cursorStateBrand=void 0,this.modelState=a,this.viewState=b}equals(a){return this.viewState.equals(a.viewState)&&this.modelState.equals(a.modelState)}}class p{constructor(a){this.modelState=a,this.viewState=null}}class q{constructor(a){this.modelState=null,this.viewState=a}}class r{constructor(a,b,c,d,e){this.selectionStart=a,this.selectionStartKind=b,this.selectionStartLeftoverVisibleColumns=c,this.position=d,this.leftoverVisibleColumns=e,this._singleCursorStateBrand=void 0,this.selection=r._computeSelection(this.selectionStart,this.position)}equals(a){return this.selectionStartLeftoverVisibleColumns===a.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===a.leftoverVisibleColumns&&this.selectionStartKind===a.selectionStartKind&&this.position.equals(a.position)&&this.selectionStart.equalsRange(a.selectionStart)}hasSelection(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()}move(a,b,c,f){return a?new r(this.selectionStart,this.selectionStartKind,this.selectionStartLeftoverVisibleColumns,new d.y(b,c),f):new r(new e.Q(b,c,b,c),0,f,new d.y(b,c),f)}static _computeSelection(a,b){return a.isEmpty()||!b.isBeforeOrEqual(a.getStartPosition())?f.L.fromPositions(a.getStartPosition(),b):f.L.fromPositions(a.getEndPosition(),b)}}class s{constructor(a,b,c){this._editOperationResultBrand=void 0,this.type=a,this.commands=b,this.shouldPushStackElementBefore=c.shouldPushStackElementBefore,this.shouldPushStackElementAfter=c.shouldPushStackElementAfter}}function t(a){return"'"===a||'"'===a||"`"===a}},69871:(a,b,c)=>{"use strict";c.d(b,{LN:()=>h,aG:()=>k,uO:()=>j});var d=c(95265),e=c(95967),f=c(79677),g=c(59317);class h{getOffsetRange(a){return new e.L(this.getOffset(a.getStartPosition()),this.getOffset(a.getEndPosition()))}getRange(a){return g.Q.fromPositions(this.getPosition(a.start),this.getPosition(a.endExclusive))}getStringReplacement(a){return new i.deps.StringReplacement(this.getOffsetRange(a.range),a.text)}getTextReplacement(a){return new i.deps.TextReplacement(this.getRange(a.replaceRange),a.newText)}getTextEdit(a){let b=a.replacements.map(a=>this.getTextReplacement(a));return new i.deps.TextEdit(b)}}class i{static{this._deps=void 0}static get deps(){if(!this._deps)throw Error("Dependencies not set. Call _setDependencies first.");return this._deps}}function j(a){i._deps=a}class k extends h{constructor(a){super(),this.text=a,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let b=0;b<a.length;b++)"\n"===a.charAt(b)&&(this.lineStartOffsetByLineIdx.push(b+1),b>0&&"\r"===a.charAt(b-1)?this.lineEndOffsetByLineIdx.push(b-1):this.lineEndOffsetByLineIdx.push(b));this.lineEndOffsetByLineIdx.push(a.length)}getOffset(a){let b=this._validatePosition(a);return this.lineStartOffsetByLineIdx[b.lineNumber-1]+b.column-1}_validatePosition(a){if(a.lineNumber<1)return new f.y(1,1);let b=this.textLength.lineCount+1;if(a.lineNumber>b){let a=this.getLineLength(b);return new f.y(b,a+1)}if(a.column<1)return new f.y(a.lineNumber,1);let c=this.getLineLength(a.lineNumber);return a.column-1>c?new f.y(a.lineNumber,c+1):a}getPosition(a){let b=(0,d.iM)(this.lineStartOffsetByLineIdx,b=>b<=a),c=a-this.lineStartOffsetByLineIdx[b]+1;return new f.y(b+1,c)}get textLength(){let a=this.lineStartOffsetByLineIdx.length-1;return new i.deps.TextLength(a,this.text.length-this.lineStartOffsetByLineIdx[a])}getLineLength(a){return this.lineEndOffsetByLineIdx[a-1]-this.lineStartOffsetByLineIdx[a-1]}}},70511:(a,b,c)=>{"use strict";c.d(b,{d:()=>i,w:()=>j});var d=c(60734),e=c(16374),f=c(11314),g=c(71373),h=c(46339);let i=(0,c(29715).u1)("commandService"),j=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new d.vl,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(a,b){if(!a)throw Error("invalid command");if("string"==typeof a){if(!b)throw Error("invalid command");return this.registerCommand({id:a,handler:b})}if(a.metadata&&Array.isArray(a.metadata.args)){let b=[];for(let c of a.metadata.args)b.push(c.constraint);let c=a.handler;a.handler=function(a,...d){return(0,h.jx)(d,b),c(a,...d)}}let{id:c}=a,d=this._commands.get(c);d||(d=new g.w,this._commands.set(c,d));let e=d.unshift(a),i=(0,f.s)(()=>{e();let a=this._commands.get(c);a?.isEmpty()&&this._commands.delete(c)});return this._onDidRegisterCommand.fire(c),(0,f.lC)(i)}registerCommandAlias(a,b){return j.registerCommand(a,(a,...c)=>a.get(i).executeCommand(b,...c))}getCommand(a){let b=this._commands.get(a);if(!(!b||b.isEmpty()))return e.f.first(b)}getCommands(){let a=new Map;for(let b of this._commands.keys()){let c=this.getCommand(b);c&&a.set(b,c)}return a}};j.registerCommand("noop",()=>{})},70544:(a,b,c)=>{"use strict";c.d(b,{W5:()=>o,dr:()=>k,eV:()=>j,hB:()=>m,lt:()=>i,wC:()=>n});var d=c(98447),e=c(91834),f=c(79677),g=c(59317),h=c(34747);class i{constructor(a,b,c,d){this.searchString=a,this.isRegex=b,this.matchCase=c,this.wordSeparators=d}parseSearchRequest(){let a;if(""===this.searchString)return null;a=this.isRegex?j(this.searchString):this.searchString.indexOf("\n")>=0;let b=null;try{b=d.OS(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:a,global:!0,unicode:!0})}catch(a){return null}if(!b)return null;let c=!this.isRegex&&!a;return c&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(c=this.matchCase),new h.L5(b,this.wordSeparators?(0,e.i)(this.wordSeparators,[]):null,c?this.searchString:null)}}function j(a){if(!a||0===a.length)return!1;for(let b=0,c=a.length;b<c;b++){let d=a.charCodeAt(b);if(10===d)return!0;if(92===d){if(++b>=c)break;let d=a.charCodeAt(b);if(110===d||114===d||87===d)return!0}}return!1}function k(a,b,c){if(!c)return new h.Dg(a,null);let d=[];for(let a=0,c=b.length;a<c;a++)d[a]=b[a];return new h.Dg(a,d)}class l{constructor(a){let b=[],c=0;for(let d=0,e=a.length;d<e;d++)10===a.charCodeAt(d)&&(b[c++]=d);this._lineFeedsOffsets=b}findLineFeedCountBeforeOffset(a){let b=this._lineFeedsOffsets,c=0,d=b.length-1;if(-1===d||a<=b[0])return 0;for(;c<d;){let e=c+((d-c)/2|0);b[e]>=a?d=e-1:b[e+1]>=a?(c=e,d=e):c=e+1}return c+1}}class m{static findMatches(a,b,c,d,e){let f=b.parseSearchRequest();return f?f.regex.multiline?this._doFindMatchesMultiline(a,c,new o(f.wordSeparators,f.regex),d,e):this._doFindMatchesLineByLine(a,c,f,d,e):[]}static _getMultilineMatchRange(a,b,c,d,e,f){let h,i,j=0;if(d?(j=d.findLineFeedCountBeforeOffset(e),h=b+e+j):h=b+e,d){let a=d.findLineFeedCountBeforeOffset(e+f.length)-j;i=h+f.length+a}else i=h+f.length;let k=a.getPositionAt(h),l=a.getPositionAt(i);return new g.Q(k.lineNumber,k.column,l.lineNumber,l.column)}static _doFindMatchesMultiline(a,b,c,d,e){let f,g=a.getOffsetAt(b.getStartPosition()),h=a.getValueInRange(b,1),i="\r\n"===a.getEOL()?new l(h):null,j=[],m=0;for(c.reset(0);(f=c.next(h))&&(j[m++]=k(this._getMultilineMatchRange(a,g,h,i,f.index,f[0]),f,d),!(m>=e)););return j}static _doFindMatchesLineByLine(a,b,c,d,e){let f=[],g=0;if(b.startLineNumber===b.endLineNumber){let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1,b.endColumn-1);return g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e),f}let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1);g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e);for(let h=b.startLineNumber+1;h<b.endLineNumber&&g<e;h++)g=this._findMatchesInLine(c,a.getLineContent(h),h,0,g,f,d,e);if(g<e){let h=a.getLineContent(b.endLineNumber).substring(0,b.endColumn-1);g=this._findMatchesInLine(c,h,b.endLineNumber,0,g,f,d,e)}return f}static _findMatchesInLine(a,b,c,d,e,f,i,j){let l,m=a.wordSeparators;if(!i&&a.simpleSearch){let i=a.simpleSearch,k=i.length,l=b.length,o=-k;for(;-1!==(o=b.indexOf(i,o+k))&&(!(!m||n(m,b,l,o,k))||(f[e++]=new h.Dg(new g.Q(c,o+1+d,c,o+1+k+d),null),!(e>=j))););return e}let p=new o(a.wordSeparators,a.regex);p.reset(0);do if((l=p.next(b))&&(f[e++]=k(new g.Q(c,l.index+1+d,c,l.index+1+l[0].length+d),l,i),e>=j))break;while(l);return e}static findNextMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindNextMatchMultiline(a,c,f,d):this._doFindNextMatchLineByLine(a,c,f,d)}static _doFindNextMatchMultiline(a,b,c,d){let e=new f.y(b.lineNumber,1),h=a.getOffsetAt(e),i=a.getLineCount(),j=a.getValueInRange(new g.Q(e.lineNumber,e.column,i,a.getLineMaxColumn(i)),1),m="\r\n"===a.getEOL()?new l(j):null;c.reset(b.column-1);let n=c.next(j);return n?k(this._getMultilineMatchRange(a,h,j,m,n.index,n[0]),n,d):1!==b.lineNumber||1!==b.column?this._doFindNextMatchMultiline(a,new f.y(1,1),c,d):null}static _doFindNextMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f),h=this._findFirstMatchInLine(c,g,f,b.column,d);if(h)return h;for(let b=1;b<=e;b++){let g=(f+b-1)%e,h=a.getLineContent(g+1),i=this._findFirstMatchInLine(c,h,g+1,1,d);if(i)return i}return null}static _findFirstMatchInLine(a,b,c,d,e){a.reset(d-1);let f=a.next(b);return f?k(new g.Q(c,f.index+1,c,f.index+1+f[0].length),f,e):null}static findPreviousMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindPreviousMatchMultiline(a,c,f,d):this._doFindPreviousMatchLineByLine(a,c,f,d)}static _doFindPreviousMatchMultiline(a,b,c,d){let e=this._doFindMatchesMultiline(a,new g.Q(1,1,b.lineNumber,b.column),c,d,9990);if(e.length>0)return e[e.length-1];let h=a.getLineCount();return b.lineNumber!==h||b.column!==a.getLineMaxColumn(h)?this._doFindPreviousMatchMultiline(a,new f.y(h,a.getLineMaxColumn(h)),c,d):null}static _doFindPreviousMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f).substring(0,b.column-1),h=this._findLastMatchInLine(c,g,f,d);if(h)return h;for(let b=1;b<=e;b++){let g=(e+f-b-1)%e,h=a.getLineContent(g+1),i=this._findLastMatchInLine(c,h,g+1,d);if(i)return i}return null}static _findLastMatchInLine(a,b,c,d){let e,f=null;for(a.reset(0);e=a.next(b);)f=k(new g.Q(c,e.index+1,c,e.index+1+e[0].length),e,d);return f}}function n(a,b,c,d,e){return function(a,b,c,d,e){if(0===d)return!0;let f=b.charCodeAt(d-1);if(0!==a.get(f)||13===f||10===f)return!0;if(e>0){let c=b.charCodeAt(d);if(0!==a.get(c))return!0}return!1}(a,b,0,d,e)&&function(a,b,c,d,e){if(d+e===c)return!0;let f=b.charCodeAt(d+e);if(0!==a.get(f)||13===f||10===f)return!0;if(e>0){let c=b.charCodeAt(d+e-1);if(0!==a.get(c))return!0}return!1}(a,b,c,d,e)}class o{constructor(a,b){this._wordSeparators=a,this._searchRegex=b,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(a){this._searchRegex.lastIndex=a,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(a){let b,c=a.length;do{if(this._prevMatchStartIndex+this._prevMatchLength===c||!(b=this._searchRegex.exec(a)))break;let e=b.index,f=b[0].length;if(e===this._prevMatchStartIndex&&f===this._prevMatchLength){if(0===f){d.Z5(a,c,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}break}if(this._prevMatchStartIndex=e,this._prevMatchLength=f,!this._wordSeparators||n(this._wordSeparators,a,c,e,f))return b}while(b);return null}}},70588:(a,b,c)=>{"use strict";c.d(b,{AS:()=>h,gr:()=>l,iP:()=>k,iu:()=>g,q2:()=>j,tA:()=>i,ui:()=>m});var d=c(79677),e=c(59317),f=c(32146);class g{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class h{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){let c=this._range.getStartPosition(),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,this._text.length+(this._range.isEmpty()?0:-1));h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(c,h);b.addTrackedEditOperation(i,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class i{constructor(a,b){this._range=a,this._text=b}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromRange(c,0)}}class j{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getStartPosition())}}class k{constructor(a,b,c,d,e=!1){this._range=a,this._text=b,this._columnDeltaOffset=d,this._lineNumberDeltaOffset=c,this.insertsAutoWhitespace=e}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class l{constructor(a){this._range=a}getEditOperations(a,b){let c=a.getValueInRange(this._range),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,c.length);h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(f,h);b.addTrackedEditOperation(i,"")}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class m{constructor(a,b,c,d=!1){this._range=a,this._text=b,this._initialSelection=c,this._forceMoveMarkers=d,this._selectionId=null}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=b.trackSelection(this._initialSelection)}computeCursorState(a,b){return b.getTrackedSelection(this._selectionId)}}function n(a,b,c){if(c<0)throw Error("Unexpected negative delta");let e=a.getLineCount(),f=new d.y(e,a.getLineMaxColumn(e));for(let g=b.lineNumber;g<=e;g++)if(g===b.lineNumber){let e=c-a.getLineMaxColumn(b.lineNumber)+b.column;if(e<=0){f=new d.y(b.lineNumber,b.column+c);break}c=e}else{let b=c-a.getLineMaxColumn(g);if(b<=0){f=new d.y(g,c);break}c=b}return f}},70745:(a,b,c)=>{"use strict";function d(a,b){let c=0,d=0,e=a.length;for(;d<e;){let e=a.charCodeAt(d);if(32===e)c++;else if(9===e)c=c-c%b+b;else break;d++}return d===e?-1:c}c.d(b,{G:()=>d})},70970:()=>{},71373:(a,b,c)=>{"use strict";c.d(b,{w:()=>e});class d{static{this.Undefined=new d(void 0)}constructor(a){this.element=a,this.next=d.Undefined,this.prev=d.Undefined}}class e{constructor(){this._first=d.Undefined,this._last=d.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===d.Undefined}clear(){let a=this._first;for(;a!==d.Undefined;){let b=a.next;a.prev=d.Undefined,a.next=d.Undefined,a=b}this._first=d.Undefined,this._last=d.Undefined,this._size=0}unshift(a){return this._insert(a,!1)}push(a){return this._insert(a,!0)}_insert(a,b){let c=new d(a);if(this._first===d.Undefined)this._first=c,this._last=c;else if(b){let a=this._last;this._last=c,c.prev=a,a.next=c}else{let a=this._first;this._first=c,c.next=a,a.prev=c}this._size+=1;let e=!1;return()=>{e||(e=!0,this._remove(c))}}shift(){if(this._first!==d.Undefined){let a=this._first.element;return this._remove(this._first),a}}pop(){if(this._last!==d.Undefined){let a=this._last.element;return this._remove(this._last),a}}_remove(a){if(a.prev!==d.Undefined&&a.next!==d.Undefined){let b=a.prev;b.next=a.next,a.next.prev=b}else a.prev===d.Undefined&&a.next===d.Undefined?(this._first=d.Undefined,this._last=d.Undefined):a.next===d.Undefined?(this._last=this._last.prev,this._last.next=d.Undefined):a.prev===d.Undefined&&(this._first=this._first.next,this._first.prev=d.Undefined);this._size-=1}*[Symbol.iterator](){let a=this._first;for(;a!==d.Undefined;)yield a.element,a=a.next}}},71510:(a,b,c)=>{"use strict";c.d(b,{Ix:()=>m,bc:()=>k,nV:()=>l});var d=c(75096),e=c(94505),f=c(90399),g=c(25536);let h=g.kg(2,"Match Case"),i=g.kg(3,"Match Whole Word"),j=g.kg(4,"Use Regular Expression");class k extends e.lM{constructor(a){super({icon:f.W.caseSensitive,title:h+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class l extends e.lM{constructor(a){super({icon:f.W.wholeWord,title:i+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class m extends e.lM{constructor(a){super({icon:f.W.regex,title:j+a.appendTitle,isChecked:a.isChecked,hoverDelegate:a.hoverDelegate??(0,d.nZ)("element"),inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}},71760:(a,b,c)=>{"use strict";c.d(b,{E$:()=>i,HP:()=>l,Ic:()=>p,Nw:()=>g,U0:()=>f,Wn:()=>d,bg:()=>j,dT:()=>o,mS:()=>k,uK:()=>e,vD:()=>h,vn:()=>m,zq:()=>n});class d{constructor(){this.changeType=1}}class e{static applyInjectedText(a,b){if(!b||0===b.length)return a;let c="",d=0;for(let e of b)c+=a.substring(d,e.column-1),d=e.column-1,c+=e.options.content;return c+a.substring(d)}static fromDecorations(a){let b=[];for(let c of a)c.options.before&&c.options.before.content.length>0&&b.push(new e(c.ownerId,c.range.startLineNumber,c.range.startColumn,c.options.before,0)),c.options.after&&c.options.after.content.length>0&&b.push(new e(c.ownerId,c.range.endLineNumber,c.range.endColumn,c.options.after,1));return b.sort((a,b)=>a.lineNumber===b.lineNumber?a.column===b.column?a.order-b.order:a.column-b.column:a.lineNumber-b.lineNumber),b}constructor(a,b,c,d,e){this.ownerId=a,this.lineNumber=b,this.column=c,this.options=d,this.order=e}}class f{constructor(a,b,c){this.changeType=2,this.lineNumber=a,this.detail=b,this.injectedText=c}}class g{constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class h{constructor(a,b){this.ownerId=a,this.lineNumber=b}}class i{constructor(a,b){this.changeType=3,this.fromLineNumber=a,this.toLineNumber=b}}class j{constructor(a,b,c,d){this.changeType=4,this.injectedTexts=d,this.fromLineNumber=a,this.toLineNumber=b,this.detail=c}}class k{constructor(){this.changeType=5}}class l{constructor(a,b,c,d){this.changes=a,this.versionId=b,this.isUndoing=c,this.isRedoing=d,this.resultingSelection=null}containsEvent(a){for(let b=0,c=this.changes.length;b<c;b++)if(this.changes[b].changeType===a)return!0;return!1}static merge(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.versionId;return new l(c,d,a.isUndoing||b.isUndoing,a.isRedoing||b.isRedoing)}}class m{constructor(a){this.changes=a}}class n{constructor(a){this.changes=a}}class o{constructor(a){this.changes=a}}class p{constructor(a,b){this.rawContentChangedEvent=a,this.contentChangedEvent=b}merge(a){let b=l.merge(this.rawContentChangedEvent,a.rawContentChangedEvent),c=p._mergeChangeEvents(this.contentChangedEvent,a.contentChangedEvent);return new p(b,c)}static _mergeChangeEvents(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.eol,e=b.versionId,f=a.isUndoing||b.isUndoing,g=a.isRedoing||b.isRedoing,h=a.isFlush||b.isFlush;return{changes:c,eol:d,isEolChange:a.isEolChange&&b.isEolChange,versionId:e,isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:a.detailedReasons.concat(b.detailedReasons),detailedReasonsChangeLengths:a.detailedReasonsChangeLengths.concat(b.detailedReasonsChangeLengths)}}}},72070:(a,b,c)=>{"use strict";c.d(b,{P:()=>l,k:()=>m});var d=c(95265),e=c(98447),f=c(29949),g=c(59317),h=c(28161),i=c(70745),j=c(95159),k=c(88347);class l extends h._{constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b}getLanguageConfiguration(a){return this.languageConfigurationService.getLanguageConfiguration(a)}_computeIndentLevel(a){return(0,i.G)(this.textModel.getLineContent(a+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(a,b,c){this.assertNotDisposed();let d=this.textModel.getLineCount();if(a<1||a>d)throw new k.D7("Illegal value for lineNumber");let e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=-2,h=-1,i=-2,j=-1,l=a=>{if(-1!==g&&(-2===g||g>a-1)){g=-1,h=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){g=b,h=a;break}}}if(-2===i){i=-1,j=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){i=b,j=a;break}}}},m=-2,n=-1,o=-2,p=-1,q=a=>{if(-2===m){m=-1,n=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){m=b,n=a;break}}}if(-1!==o&&(-2===o||o<a-1)){o=-1,p=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){o=b,p=a;break}}}},r=0,s=!0,t=0,u=!0,v=0,w=0;for(let e=0;s||u;e++){let g=a-e,k=a+e;e>1&&(g<1||g<b)&&(s=!1),e>1&&(k>d||k>c)&&(u=!1),e>5e4&&(s=!1,u=!1);let o=-1;if(s&&g>=1){let a=this._computeIndentLevel(g-1);a>=0?(i=g-1,j=a,o=Math.ceil(a/this.textModel.getOptions().indentSize)):(l(g),o=this._getIndentLevelForWhitespaceLine(f,h,j))}let x=-1;if(u&&k<=d){let a=this._computeIndentLevel(k-1);a>=0?(m=k-1,n=a,x=Math.ceil(a/this.textModel.getOptions().indentSize)):(q(k),x=this._getIndentLevelForWhitespaceLine(f,n,p))}if(0===e){w=o;continue}if(1===e){if(k<=d&&x>=0&&w+1===x){s=!1,r=k,t=k,v=x;continue}if(g>=1&&o>=0&&o-1===w){u=!1,r=g,t=g,v=o;continue}if(r=a,t=a,0===(v=w))break}s&&(o>=v?r=g:s=!1),u&&(x>=v?t=k:u=!1)}return{startLineNumber:r,endLineNumber:t,indent:v}}getLinesBracketGuides(a,b,c,f){let h,i=[];for(let c=a;c<=b;c++)i.push([]);let k=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new g.Q(a,1,b,this.textModel.getLineMaxColumn(b))).toArray();if(c&&k.length>0){let e=(a<=c.lineNumber&&c.lineNumber<=b?k:this.textModel.bracketPairs.getBracketPairsInRange(g.Q.fromPositions(c)).toArray()).filter(a=>g.Q.strictContainsPosition(a.range,c));h=(0,d.Uk)(e,a=>!0)?.range}let l=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,n=new m;for(let c of k){if(!c.closingBracketRange)continue;let d=h&&c.range.equalsRange(h);if(!d&&!f.includeInactive)continue;let g=n.getInlineClassName(c.nestingLevel,c.nestingLevelOfEqualBracketType,l)+(f.highlightActive&&d?" "+n.activeClassName:""),k=c.openingBracketRange.getStartPosition(),m=c.closingBracketRange.getStartPosition(),o=f.horizontalGuides===j.N6.Enabled||f.horizontalGuides===j.N6.EnabledForActive&&d;if(c.range.startLineNumber===c.range.endLineNumber){o&&i[c.range.startLineNumber-a].push(new j.TH(-1,c.openingBracketRange.getEndPosition().column,g,new j.pv(!1,m.column),-1,-1));continue}let p=this.getVisibleColumnFromPosition(m),q=this.getVisibleColumnFromPosition(c.openingBracketRange.getStartPosition()),r=Math.min(q,p,c.minVisibleColumnIndentation+1),s=!1;e.HG(this.textModel.getLineContent(c.closingBracketRange.startLineNumber))<c.closingBracketRange.startColumn-1&&(s=!0);let t=Math.max(k.lineNumber,a),u=Math.min(m.lineNumber,b),v=+!!s;for(let b=t;b<u+v;b++)i[b-a].push(new j.TH(r,-1,g,null,b===k.lineNumber?k.column:-1,b===m.lineNumber?m.column:-1));o&&(k.lineNumber>=a&&q>r&&i[k.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!1,k.column),-1,-1)),m.lineNumber<=b&&p>r&&i[m.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!s,m.column),-1,-1)))}for(let a of i)a.sort((a,b)=>a.visibleColumn-b.visibleColumn);return i}getVisibleColumnFromPosition(a){return f.A.visibleColumnFromColumn(this.textModel.getLineContent(a.lineNumber),a.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(a,b){this.assertNotDisposed();let c=this.textModel.getLineCount();if(a<1||a>c)throw Error("Illegal value for startLineNumber");if(b<1||b>c)throw Error("Illegal value for endLineNumber");let d=this.textModel.getOptions(),e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=Array(b-a+1),h=-2,i=-1,j=-2,k=-1;for(let e=a;e<=b;e++){let b=e-a,l=this._computeIndentLevel(e-1);if(l>=0){h=e-1,i=l,g[b]=Math.ceil(l/d.indentSize);continue}if(-2===h){h=-1,i=-1;for(let a=e-2;a>=0;a--){let b=this._computeIndentLevel(a);if(b>=0){h=a,i=b;break}}}if(-1!==j&&(-2===j||j<e-1)){j=-1,k=-1;for(let a=e;a<c;a++){let b=this._computeIndentLevel(a);if(b>=0){j=a,k=b;break}}}g[b]=this._getIndentLevelForWhitespaceLine(f,i,k)}return g}_getIndentLevelForWhitespaceLine(a,b,c){let d=this.textModel.getOptions();return -1===b||-1===c?0:b<c?1+Math.floor(b/d.indentSize):b===c?Math.ceil(c/d.indentSize):a?Math.ceil(c/d.indentSize):1+Math.floor(c/d.indentSize)}}class m{constructor(){this.activeClassName="indent-active"}getInlineClassName(a,b,c){return this.getInlineClassNameOfLevel(c?b:a)}getInlineClassNameOfLevel(a){return`bracket-indent-guide lvl-${a%30}`}}},72192:(a,b,c)=>{"use strict";c.d(b,{V:()=>h,WR:()=>j,no:()=>g});var d=c(98447),e=c(65576),f=c(21005);class g{constructor(a,b,c){this._indentRulesSupport=b,this._indentationLineProcessor=new i(a,c)}shouldIncrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIncrease(c)}shouldDecrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldDecrease(c)}shouldIgnore(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIgnore(c)}shouldIndentNextLine(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIndentNextLine(c)}}class h{constructor(a,b){this.model=a,this.indentationLineProcessor=new i(a,b)}getProcessedTokenContextAroundRange(a){let b=this._getProcessedTokensBeforeRange(a);return{beforeRangeProcessedTokens:b,afterRangeProcessedTokens:this._getProcessedTokensAfterRange(a),previousLineProcessedTokens:this._getProcessedPreviousLineTokens(a)}}_getProcessedTokensBeforeRange(a){let b;this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1);if(j(this.model,a.getStartPosition())){let e=a.startColumn-1-d.firstCharOffset,f=d.firstCharOffset;b=c.sliceAndInflate(f,f+e,0)}else{let d=a.startColumn-1;b=c.sliceAndInflate(0,d,0)}return this.indentationLineProcessor.getProcessedTokens(b)}_getProcessedTokensAfterRange(a){let b=a.isEmpty()?a.getStartPosition():a.getEndPosition();this.model.tokenization.forceTokenization(b.lineNumber);let c=this.model.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=b.column-1-d.firstCharOffset,g=d.firstCharOffset+f,h=d.firstCharOffset+d.getLineLength(),i=c.sliceAndInflate(g,h,0);return this.indentationLineProcessor.getProcessedTokens(i)}_getProcessedPreviousLineTokens(a){let b=a=>{this.model.tokenization.forceTokenization(a);let b=this.model.tokenization.getLineTokens(a),c=this.model.getLineMaxColumn(a)-1;return(0,e.BQ)(b,c)};this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1),g=f.f7.createEmpty("",d.languageIdCodec),h=a.startLineNumber-1;if(0===h||0!==d.firstCharOffset)return g;let i=b(h);if(d.languageId!==i.languageId)return g;let j=i.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(j)}}class i{constructor(a,b){this.model=a,this.languageConfigurationService=b}getProcessedLine(a,b){this.model.tokenization.forceTokenization?.(a);let c=this.model.tokenization.getLineTokens(a),e=this.getProcessedTokens(c).getLineContent();return void 0!==b&&(e=((a,b)=>{let c=d.UU(a);return b+a.substring(c.length)})(e,b)),e}getProcessedTokens(a){let b=a.getLanguageId(0),c=this.languageConfigurationService.getLanguageConfiguration(b).bracketsNew.getBracketRegExp({global:!0}),d=[];return a.forEach(b=>{let e=a.getStandardTokenType(b),f=a.getTokenText(b);(2===e||3===e||1===e)&&(f=f.replace(c,""));let g=a.getMetadata(b);d.push({text:f,metadata:g})}),f.f7.createFromTextAndMetadata(d,a.languageIdCodec)}}function j(a,b){a.tokenization.forceTokenization(b.lineNumber);let c=a.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=0===d.firstCharOffset,g=c.getLanguageId(0)===d.languageId;return!f&&!g}},72744:()=>{},72950:(a,b,c)=>{"use strict";c.d(b,{DX:()=>x,E_:()=>C,Fl:()=>D,HW:()=>G,PF:()=>z,aU:()=>J,dS:()=>d,fE:()=>v,gW:()=>E,ih:()=>K,ke:()=>B,ks:()=>y,qO:()=>A,tc:()=>L,uB:()=>u,xX:()=>F});var d,e=c(25536),f=c(45640),g=c(11053),h=c(79677),i=c(39914),j=c(55830),k=c(79487),l=c(70511),m=c(45367),n=c(29715),o=c(32765),p=c(61059),q=c(91295),r=c(46339),s=c(66153),t=c(32677);class u{constructor(a){this.id=a.id,this.precondition=a.precondition,this._kbOpts=a.kbOpts,this._menuOpts=a.menuOpts,this.metadata=a.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts)for(let a of Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts]){let b=a.kbExpr;this.precondition&&(b=b?m.M$.and(b,this.precondition):this.precondition);let c={id:this.id,weight:a.weight,args:a.args,when:b,primary:a.primary,secondary:a.secondary,win:a.win,linux:a.linux,mac:a.mac};o.f.registerKeybindingRule(c)}l.w.registerCommand({id:this.id,handler:(a,b)=>this.runCommand(a,b),metadata:this.metadata})}_registerMenuItem(a){k.ZG.appendMenuItem(a.menuId,{group:a.group,command:{id:this.id,title:a.title,icon:a.icon,precondition:this.precondition},when:a.when,order:a.order})}}class v extends u{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b,c,d){return this._implementations.push({priority:a,name:b,implementation:c,when:d}),this._implementations.sort((a,b)=>b.priority-a.priority),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a].implementation===c)return void this._implementations.splice(a,1)}}}runCommand(a,b){let c=a.get(s.rr),d=a.get(m.fN);for(let e of(c.trace(`Executing Command '${this.id}' which has ${this._implementations.length} bound.`),this._implementations)){if(e.when){let a=d.getContext((0,t.bq)());if(!e.when.evaluate(a))continue}let f=e.implementation(a,b);if(f){if(c.trace(`Command '${this.id}' was handled by '${e.name}'.`),"boolean"==typeof f)return;return f}}c.trace(`The Command '${this.id}' was not handled by any implementation.`)}}class w extends u{constructor(a,b){super(b),this.command=a}runCommand(a,b){return this.command.runCommand(a,b)}}class x extends u{static bindToContribution(a){return class extends x{constructor(a){super(a),this._callback=a.handler}runEditorCommand(b,c,d){let e=a(c);e&&this._callback(e,d)}}}static runEditorCommand(a,b,c,d){let e=a.get(g.T),f=e.getFocusedCodeEditor()||e.getActiveCodeEditor();if(f)return f.invokeWithinContext(a=>{if(a.get(m.fN).contextMatchesRules(c??void 0))return d(a,f,b)})}runCommand(a,b){return x.runEditorCommand(a,b,this.precondition,(a,b,c)=>this.runEditorCommand(a,b,c))}}class y extends x{static convertOptions(a){let b;function c(b){return b.menuId||(b.menuId=k.D8.EditorContext),b.title||(b.title="string"==typeof a.label?a.label:a.label.value),b.when=m.M$.and(a.precondition,b.when),b}return b=Array.isArray(a.menuOpts)?a.menuOpts:a.menuOpts?[a.menuOpts]:[],Array.isArray(a.contextMenuOpts)?b.push(...a.contextMenuOpts.map(c)):a.contextMenuOpts&&b.push(c(a.contextMenuOpts)),a.menuOpts=b,a}constructor(a){super(y.convertOptions(a)),"string"==typeof a.label?(this.label=a.label,this.alias=a.alias??a.label):(this.label=a.label.value,this.alias=a.alias??a.label.original)}runEditorCommand(a,b,c){return this.reportTelemetry(a,b),this.run(a,b,c||{})}reportTelemetry(a,b){a.get(q.k).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class z extends y{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b){return this._implementations.push([a,b]),this._implementations.sort((a,b)=>b[0]-a[0]),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a][1]===b)return void this._implementations.splice(a,1)}}}run(a,b,c){for(let d of this._implementations){let e=d[1](a,b,c);if(e){if("boolean"==typeof e)return;return e}}}}class A extends k.L{run(a,...b){let c=a.get(g.T),d=c.getFocusedCodeEditor()||c.getActiveCodeEditor();if(d)return d.invokeWithinContext(a=>{let c=a.get(m.fN),e=a.get(s.rr);return c.contextMatchesRules(this.desc.precondition??void 0)?this.runEditorCommand(a,d,...b):void e.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize())})}}function B(a,b){l.w.registerCommand(a,function(a,...c){let d=a.get(n._Y),[e,g]=c;(0,r.j)(f.r.isUri(e)),(0,r.j)(h.y.isIPosition(g));let k=a.get(i.S).getModel(e);if(k){let a=h.y.lift(g);return d.invokeFunction(b,k,a,...c.slice(2))}return a.get(j.b).createModelReference(e).then(a=>new Promise((e,f)=>{try{let f=d.invokeFunction(b,a.object.textEditorModel,h.y.lift(g),c.slice(2));e(f)}catch(a){f(a)}}).finally(()=>{a.dispose()}))})}function C(a){return H.INSTANCE.registerEditorCommand(a),a}function D(a){let b=new a;return H.INSTANCE.registerEditorAction(b),b}function E(a){return H.INSTANCE.registerEditorAction(a),a}function F(a){H.INSTANCE.registerEditorAction(a)}function G(a,b,c){H.INSTANCE.registerEditorContribution(a,b,c)}!function(a){a.getEditorCommand=function(a){return H.INSTANCE.getEditorCommand(a)},a.getEditorActions=function(){return H.INSTANCE.getEditorActions()},a.getEditorContributions=function(){return H.INSTANCE.getEditorContributions()},a.getSomeEditorContributions=function(a){return H.INSTANCE.getEditorContributions().filter(b=>a.indexOf(b.id)>=0)},a.getDiffEditorContributions=function(){return H.INSTANCE.getDiffEditorContributions()}}(d||(d={}));class H{static{this.INSTANCE=new H}constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(a,b,c){this.editorContributions.push({id:a,ctor:b,instantiation:c})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(a){a.register(),this.editorActions.push(a)}getEditorActions(){return this.editorActions}registerEditorCommand(a){a.register(),this.editorCommands[a.id]=a}getEditorCommand(a){return this.editorCommands[a]||null}}function I(a){return a.register(),a}p.O.add("editor.contributions",H.INSTANCE);let J=I(new v({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:k.D8.MenubarEditMenu,group:"1_do",title:e.kg(64,"&&Undo"),order:1},{menuId:k.D8.CommandPalette,group:"",title:e.kg(65,"Undo"),order:1},{menuId:k.D8.SimpleEditorContext,group:"1_do",title:e.kg(66,"Undo"),order:1}]}));I(new w(J,{id:"default:undo",precondition:void 0}));let K=I(new v({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:k.D8.MenubarEditMenu,group:"1_do",title:e.kg(67,"&&Redo"),order:2},{menuId:k.D8.CommandPalette,group:"",title:e.kg(68,"Redo"),order:1},{menuId:k.D8.SimpleEditorContext,group:"1_do",title:e.kg(69,"Redo"),order:2}]}));I(new w(K,{id:"default:redo",precondition:void 0}));let L=I(new v({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:k.D8.MenubarSelectionMenu,group:"1_basic",title:e.kg(70,"&&Select All"),order:1},{menuId:k.D8.CommandPalette,group:"",title:e.kg(71,"Select All"),order:1},{menuId:k.D8.SimpleEditorContext,group:"9_select",title:e.kg(72,"Select All"),order:1}]}))},72991:(a,b,c)=>{"use strict";c.d(b,{k:()=>e,o:()=>f});var d=c(59317);class e{constructor(a,b,c){this.range=a,this.inlineClassName=b,this.type=c}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.inlineClassName=c,this.inlineClassNameAffectsLetterSpacing=d}toInlineDecoration(a){return new e(new d.Q(a,this.startOffset+1,a,this.endOffset+1),this.inlineClassName,3*!!this.inlineClassNameAffectsLetterSpacing)}}},73043:()=>{},73518:()=>{},74098:()=>{},74134:(a,b,c)=>{"use strict";c.d(b,{$:()=>s,D:()=>x});var d,e,f=c(40565),g=c(60734),h=c(11314),i=c(79487),j=c(70511),k=c(45367),l=c(18401),m=c(21899),n=c(54734),o=c(25536),p=c(79851),q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},r=function(a,b){return function(c,d){b(c,d,a)}};let s=class{constructor(a,b,c){this._commandService=a,this._keybindingService=b,this._hiddenStates=new t(c)}createMenu(a,b,c){return new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b)}getMenuActions(a,b,c){let d=new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b),e=d.getActions(c);return d.dispose(),e}resetHiddenStates(a){this._hiddenStates.reset(a)}};s=q([r(0,j.d),r(1,p.b),r(2,m.CS)],s);let t=class{static{d=this}static{this._key="menu.hiddenCommands"}constructor(a){this._storageService=a,this._disposables=new h.Cm,this._onDidChange=new g.vl,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{let b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){this._data=Object.create(null)}this._disposables.add(a.onDidChangeValue(0,d._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{let b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){console.log("FAILED to read storage after UPDATE",a)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(a,b){return this._hiddenByDefaultCache.get(`${a.id}/${b}`)??!1}setDefaultState(a,b,c){this._hiddenByDefaultCache.set(`${a.id}/${b}`,c)}isHidden(a,b){let c=this._isHiddenByDefault(a,b),d=this._data[a.id]?.includes(b)??!1;return c?!d:d}updateHidden(a,b,c){this._isHiddenByDefault(a,b)&&(c=!c);let d=this._data[a.id];if(c)d?0>d.indexOf(b)&&d.push(b):this._data[a.id]=[b];else if(d){let c=d.indexOf(b);c>=0&&(0,n.UH)(d,c),0===d.length&&delete this._data[a.id]}this._persist()}reset(a){if(void 0===a)this._data=Object.create(null),this._persist();else{for(let{id:b}of a)this._data[b]&&delete this._data[b];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;let a=JSON.stringify(this._data);this._storageService.store(d._key,a,0,0)}finally{this._ignoreChangeEvent=!1}}};t=d=q([r(0,m.CS)],t);class u{constructor(a,b){this._id=a,this._collectContextKeysForSubmenus=b,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){let a;for(let b of(this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear(),this._sort(i.ZG.getMenuItems(this._id)))){let c=b.group||"";a&&a[0]===c||(a=[c,[]],this._menuGroups.push(a)),a[1].push(b),this._collectContextKeysAndSubmenuIds(b)}this._allMenuIds.add(this._id)}_sort(a){return a}_collectContextKeysAndSubmenuIds(a){if(u._fillInKbExprKeys(a.when,this._structureContextKeys),(0,i.is)(a)){if(a.command.precondition&&u._fillInKbExprKeys(a.command.precondition,this._preconditionContextKeys),a.command.toggled){let b=a.command.toggled.condition||a.command.toggled;u._fillInKbExprKeys(b,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(i.ZG.getMenuItems(a.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(a.submenu))}static _fillInKbExprKeys(a,b){if(a)for(let c of a.keys())b.add(c)}}let v=e=class extends u{constructor(a,b,c,d,e,f){super(a,c),this._hiddenStates=b,this._commandService=d,this._keybindingService=e,this._contextKeyService=f,this.refresh()}createActionGroups(a){let b=[];for(let c of this._menuGroups){let d,[f,g]=c;for(let b of g)if(this._contextKeyService.contextMatchesRules(b.when)){let c=(0,i.is)(b);c&&this._hiddenStates.setDefaultState(this._id,b.command.id,!!b.isHiddenByDefault);let f=function(a,b,c){let d=(0,i.i1)(b)?b.submenu.id:b.id,e="string"==typeof b.title?b.title:b.title.value,f=(0,l.ih)({id:`hide/${a.id}/${d}`,label:(0,o.kg)(1636,"Hide '{0}'",e),run(){c.updateHidden(a,d,!0)}}),g=(0,l.ih)({id:`toggle/${a.id}/${d}`,label:e,get checked(){return!c.isHidden(a,d)},run(){c.updateHidden(a,d,!!this.checked)}});return{hide:f,toggle:g,get isHidden(){return!g.checked}}}(this._id,c?b.command:b,this._hiddenStates);if(c){let c=x(this._commandService,this._keybindingService,b.command.id,b.when);(d??=[]).push(new i.Xe(b.command,b.alt,a,f,c,this._contextKeyService,this._commandService))}else{let c=new e(b.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(a),g=l.wv.join(...c.map(a=>a[1]));g.length>0&&(d??=[]).push(new i.nI(b,f,g))}}d&&d.length>0&&b.push([f,d])}return b}_sort(a){return a.sort(e._compareMenuItems)}static _compareMenuItems(a,b){let c=a.group,d=b.group;if(c!==d){if(!c)return 1;if(!d||"navigation"===c)return -1;if("navigation"===d)return 1;let a=c.localeCompare(d);if(0!==a)return a}let f=a.order||0,g=b.order||0;return f<g?-1:f>g?1:e._compareTitles((0,i.is)(a)?a.command.title:a.title,(0,i.is)(b)?b.command.title:b.title)}static _compareTitles(a,b){let c="string"==typeof a?a:a.original,d="string"==typeof b?b:b.original;return c.localeCompare(d)}};v=e=q([r(3,j.d),r(4,p.b),r(5,k.fN)],v);let w=class{constructor(a,b,c,d,e,j){this._disposables=new h.Cm,this._menuInfo=new v(a,b,c.emitEventsForSubmenuChanges,d,e,j);let k=new f.uC(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},c.eventDebounceDelay);this._disposables.add(k),this._disposables.add(i.ZG.onDidChangeMenu(a=>{for(let b of this._menuInfo.allMenuIds)if(a.has(b)){k.schedule();break}}));let l=this._disposables.add(new h.Cm),m=a=>{let b=!1,c=!1,d=!1;for(let e of a)if(b=b||e.isStructuralChange,c=c||e.isEnablementChange,d=d||e.isToggleChange,b&&c&&d)break;return{menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d}},n=()=>{l.add(j.onDidChangeContext(a=>{let b=a.affectsSome(this._menuInfo.structureContextKeys),c=a.affectsSome(this._menuInfo.preconditionContextKeys),d=a.affectsSome(this._menuInfo.toggledContextKeys);(b||c||d)&&this._onDidChange.fire({menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d})})),l.add(b.onDidChange(a=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new g.uI({onWillAddFirstListener:n,onDidRemoveLastListener:l.clear.bind(l),delay:c.eventDebounceDelay,merge:m}),this.onDidChange=this._onDidChange.event}getActions(a){return this._menuInfo.createActionGroups(a)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};function x(a,b,c,d,e=!0){return(0,l.ih)({id:`configureKeybinding/${c}`,label:(0,o.kg)(1637,"Configure Keybinding"),enabled:e,run(){let e=!b.lookupKeybinding(c)&&d?d.serialize():void 0;a.executeCommand("workbench.action.openGlobalKeybindings",`@command:${c}`+(e?` +when:${e}`:""))}})}w=q([r(3,j.d),r(4,p.b),r(5,k.fN)],w)},74786:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(29715).u1)("markerDecorationsService")},74864:()=>{},75096:(a,b,c)=>{"use strict";c.d(b,{MW:()=>h,bW:()=>j,nZ:()=>i});var d=c(49982);let e=()=>({get delay(){return -1},dispose:()=>{},showHover:()=>{}}),f=new d.d(()=>e("mouse",!1)),g=new d.d(()=>e("element",!1));function h(a){e=a}function i(a){return"element"===a?g.value:f.value}function j(){return e("element",!0)}},75286:()=>{},75322:()=>{},75341:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>h,aJ:()=>d});var d,e=c(54734),f=c(11314),g=c(61059);!function(a){a[a.PRESERVE=0]="PRESERVE",a[a.LAST=1]="LAST"}(d||(d={}));let h={Quickaccess:"workbench.contributions.quickaccess"};class i{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(a){return 0===a.prefix.length?this.defaultProvider=a:this.providers.push(a),this.providers.sort((a,b)=>b.prefix.length-a.prefix.length),(0,f.s)(()=>{this.providers.splice(this.providers.indexOf(a),1),this.defaultProvider===a&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return(0,e.Yc)([this.defaultProvider,...this.providers])}getQuickAccessProvider(a){return a&&this.providers.find(b=>a.startsWith(b.prefix))||this.defaultProvider}}g.O.add(h.Quickaccess,new i)},75393:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(60734);class e{constructor(){this._inputMode="insert",this._onDidChangeInputMode=new d.vl,this.onDidChangeInputMode=this._onDidChangeInputMode.event}getInputMode(){return this._inputMode}}let f=new e},75495:(a,b,c)=>{"use strict";c.d(b,{B:()=>d,m:()=>u});var d,e=c(32677),f=c(76136),g=c(67397),h=c(98350),i=c(40565),j=c(53578),k=c(60734),l=c(11314),m=c(56167);c(15267);var n=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};!function(a){a.North="north",a.South="south",a.East="east",a.West="west"}(d||(d={}));let o=new k.vl,p=new k.vl;class q{constructor(a){this.el=a,this.disposables=new l.Cm}get onPointerMove(){return this.disposables.add(new g.f((0,e.zk)(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new g.f((0,e.zk)(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}n([j.B],q.prototype,"onPointerMove",null),n([j.B],q.prototype,"onPointerUp",null);class r{get onPointerMove(){return this.disposables.add(new g.f(this.el,h.B.Change)).event}get onPointerUp(){return this.disposables.add(new g.f(this.el,h.B.End)).event}constructor(a){this.el=a,this.disposables=new l.Cm}dispose(){this.disposables.dispose()}}n([j.B],r.prototype,"onPointerMove",null),n([j.B],r.prototype,"onPointerUp",null);class s{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(a){this.factory=a}dispose(){}}n([j.B],s.prototype,"onPointerMove",null),n([j.B],s.prototype,"onPointerUp",null);let t="pointer-events-disabled";class u extends l.jG{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(a){this._state!==a&&(this.el.classList.toggle("disabled",0===a),this.el.classList.toggle("minimum",1===a),this.el.classList.toggle("maximum",2===a),this._state=a,this.onDidEnablementChange.fire(a))}get onDidStart(){return this._onDidStart.event}get onDidChange(){return this._onDidChange.event}get onDidReset(){return this._onDidReset.event}get onDidEnd(){return this._onDidEnd.event}set orthogonalStartSash(a){if(this._orthogonalStartSash!==a){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),a){let b=b=>{this.orthogonalStartDragHandleDisposables.clear(),0!==b&&(this._orthogonalStartDragHandle=(0,e.BC)(this.el,(0,e.$)(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add((0,l.s)(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add((0,e.ko)(this._orthogonalStartDragHandle,"mouseenter",()=>u.onMouseEnter(a))),this.orthogonalStartDragHandleDisposables.add((0,e.ko)(this._orthogonalStartDragHandle,"mouseleave",()=>u.onMouseLeave(a))))};this.orthogonalStartSashDisposables.add(a.onDidEnablementChange.event(b,this)),b(a.state)}this._orthogonalStartSash=a}}set orthogonalEndSash(a){if(this._orthogonalEndSash!==a){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),a){let b=b=>{this.orthogonalEndDragHandleDisposables.clear(),0!==b&&(this._orthogonalEndDragHandle=(0,e.BC)(this.el,(0,e.$)(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add((0,l.s)(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add((0,e.ko)(this._orthogonalEndDragHandle,"mouseenter",()=>u.onMouseEnter(a))),this.orthogonalEndDragHandleDisposables.add((0,e.ko)(this._orthogonalEndDragHandle,"mouseleave",()=>u.onMouseLeave(a))))};this.orthogonalEndSashDisposables.add(a.onDidEnablementChange.event(b,this)),b(a.state)}this._orthogonalEndSash=a}}constructor(a,b,c){let d;super(),this.hoverDelay=300,this.hoverDelayer=this._register(new i.ve(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new k.vl),this._onDidStart=this._register(new k.vl),this._onDidChange=this._register(new k.vl),this._onDidReset=this._register(new k.vl),this._onDidEnd=this._register(new k.vl),this.orthogonalStartSashDisposables=this._register(new l.Cm),this.orthogonalStartDragHandleDisposables=this._register(new l.Cm),this.orthogonalEndSashDisposables=this._register(new l.Cm),this.orthogonalEndDragHandleDisposables=this._register(new l.Cm),this.linkedSash=void 0,this.el=(0,e.BC)(a,(0,e.$)(".monaco-sash")),c.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${c.orthogonalEdge}`),m.zx&&this.el.classList.add("mac"),this._register((0,e.ko)(this.el,"mousedown",b=>this.onPointerStart(b,new q(a)))),this._register((0,e.ko)(this.el,"dblclick",a=>this.onPointerDoublePress(a))),this._register((0,e.ko)(this.el,"mouseenter",()=>u.onMouseEnter(this))),this._register((0,e.ko)(this.el,"mouseleave",()=>u.onMouseLeave(this))),this._register(h.q.addTarget(this.el)),this._register((0,e.ko)(this.el,h.B.Start,a=>this.onPointerStart(a,new r(this.el)))),this._register((0,e.ko)(this.el,h.B.Tap,a=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(a);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)})),"number"==typeof c.size?(this.size=c.size,0===c.orientation?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=4,this._register(o.event(a=>{this.size=a,this.layout()}))),this._register(p.event(a=>this.hoverDelay=a)),this.layoutProvider=b,this.orthogonalStartSash=c.orthogonalStartSash,this.orthogonalEndSash=c.orthogonalEndSash,this.orientation=c.orientation||0,1===this.orientation?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",!1),this.layout()}onPointerStart(a,b){e.fs.stop(a);let c=!1;if(!a.__orthogonalSashEvent){let d=this.getOrthogonalSash(a);d&&(c=!0,a.__orthogonalSashEvent=!0,d.onPointerStart(a,new s(b)))}if(this.linkedSash&&!a.__linkedSashEvent&&(a.__linkedSashEvent=!0,this.linkedSash.onPointerStart(a,new s(b))),!this.state)return;let d=this.el.ownerDocument.getElementsByTagName("iframe");for(let a of d)a.classList.add(t);let g=a.pageX,h=a.pageY,i=a.altKey;this.el.classList.add("active"),this._onDidStart.fire({startX:g,currentX:g,startY:h,currentY:h,altKey:i});let j=(0,f.li)(this.el),k=()=>{let a="";a=c?"all-scroll":1===this.orientation?1===this.state?"s-resize":2===this.state?"n-resize":m.zx?"row-resize":"ns-resize":1===this.state?"e-resize":2===this.state?"w-resize":m.zx?"col-resize":"ew-resize",j.textContent=`* { cursor: ${a} !important; }`},n=new l.Cm;k(),c||this.onDidEnablementChange.event(k,null,n);let o=a=>{e.fs.stop(a,!1);let b={startX:g,currentX:a.pageX,startY:h,currentY:a.pageY,altKey:i};this._onDidChange.fire(b)},p=a=>{for(let b of(e.fs.stop(a,!1),j.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),n.dispose(),d))b.classList.remove(t)};b.onPointerMove(o,null,n),b.onPointerUp(p,null,n),n.add(b)}onPointerDoublePress(a){let b=this.getOrthogonalSash(a);b&&b._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(a,b=!1){a.el.classList.contains("active")?(a.hoverDelayer.cancel(),a.el.classList.add("hover")):a.hoverDelayer.trigger(()=>a.el.classList.add("hover"),a.hoverDelay).then(void 0,()=>{}),!b&&a.linkedSash&&u.onMouseEnter(a.linkedSash,!0)}static onMouseLeave(a,b=!1){a.hoverDelayer.cancel(),a.el.classList.remove("hover"),!b&&a.linkedSash&&u.onMouseLeave(a.linkedSash,!0)}clearSashHoverState(){u.onMouseLeave(this)}layout(){if(0===this.orientation){let a=this.layoutProvider;this.el.style.left=a.getVerticalSashLeft(this)-this.size/2+"px",a.getVerticalSashTop&&(this.el.style.top=a.getVerticalSashTop(this)+"px"),a.getVerticalSashHeight&&(this.el.style.height=a.getVerticalSashHeight(this)+"px")}else{let a=this.layoutProvider;this.el.style.top=a.getHorizontalSashTop(this)-this.size/2+"px",a.getHorizontalSashLeft&&(this.el.style.left=a.getHorizontalSashLeft(this)+"px"),a.getHorizontalSashWidth&&(this.el.style.width=a.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(a){let b=a.initialTarget??a.target;if(b&&(0,e.sb)(b)&&b.classList.contains("orthogonal-drag-handle"))return b.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}},75507:()=>{},76136:(a,b,c)=>{"use strict";c.d(b,{U2:()=>function a(b,c=m()){if(!c)return;let d=n(c),e=[];for(let a=0;a<d.length;a++){let c=d[a];"string"==typeof c.selectorText&&-1!==c.selectorText.indexOf(b)&&e.push(a)}for(let a=e.length-1;a>=0;a--)c.sheet?.deleteRule(e[a]);for(let d of i.get(c)??[])a(b,d)},Wt:()=>function a(b,c,d=m()){if(d&&c)for(let e of(d.sheet?.insertRule(`${b} {${c}}`,0),i.get(d)??[]))a(b,c,e)},_:()=>o,li:()=>k});var d=c(11314),e=c(43589),f=c(88637),g=c(32677),h=c(29813);let i=new Map;class j{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(a){a!==this._currentCssStyle&&(this._currentCssStyle=a,this._styleSheet?this._styleSheet.textContent=a:this._styleSheet=k(h.G.document.head,b=>b.textContent=a))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function k(a=h.G.document.head,b,c){let e=document.createElement("style");if(e.type="text/css",e.media="screen",b?.(e),a.appendChild(e),c&&c.add((0,d.s)(()=>e.remove())),a===h.G.document.head){let a=new Set;for(let{window:b,disposables:j}of(i.set(e,a),c&&c.add((0,d.s)(()=>i.delete(e))),(0,g.sl)())){if(b===h.G)continue;let i=j.add(function(a,b,c){let e=new d.Cm,h=a.cloneNode(!0);for(let b of(c.document.head.appendChild(h),e.add((0,d.s)(()=>h.remove())),n(a)))h.sheet?.insertRule(b.cssText,h.sheet?.cssRules.length);return e.add(g.FK.observe(a,e,{childList:!0,subtree:f.gm,characterData:f.gm})(()=>{h.textContent=a.textContent})),b.add(h),e.add((0,d.s)(()=>b.delete(h))),e}(e,a,b));c?.add(i)}}return e}let l=null;function m(){return l||(l=k()),l}function n(a){return a?.sheet?.rules?a.sheet.rules:a?.sheet?.cssRules?a.sheet.cssRules:[]}function o(a){let b=new d.Cm,c=b.add(new j);return b.add((0,e.fm)(b=>{c.setStyle(a.read(b))})),b}},76419:()=>{},76519:()=>{},76558:(a,b,c)=>{"use strict";c.d(b,{m:()=>d});class d{constructor(a,b,c,d,e,f){this._scrollbarSize=Math.round(b),this._oppositeScrollbarSize=Math.round(c),this._arrowSize=Math.round(a),this._visibleSize=d,this._scrollSize=e,this._scrollPosition=f,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new d(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(a){let b=Math.round(a);return this._visibleSize!==b&&(this._visibleSize=b,this._refreshComputedValues(),!0)}setScrollSize(a){let b=Math.round(a);return this._scrollSize!==b&&(this._scrollSize=b,this._refreshComputedValues(),!0)}setScrollPosition(a){let b=Math.round(a);return this._scrollPosition!==b&&(this._scrollPosition=b,this._refreshComputedValues(),!0)}setScrollbarSize(a){this._scrollbarSize=Math.round(a)}setOppositeScrollbarSize(a){this._oppositeScrollbarSize=Math.round(a)}static _computeValues(a,b,c,d,e){let f=Math.max(0,c-a),g=Math.max(0,f-2*b),h=d>0&&d>c;if(!h)return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(g),computedSliderRatio:0,computedSliderPosition:0};let i=Math.round(Math.max(20,Math.floor(c*g/d))),j=(g-i)/(d-c);return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(i),computedSliderRatio:j,computedSliderPosition:Math.round(e*j)}}_refreshComputedValues(){let a=d._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=a.computedAvailableSize,this._computedIsNeeded=a.computedIsNeeded,this._computedSliderSize=a.computedSliderSize,this._computedSliderRatio=a.computedSliderRatio,this._computedSliderPosition=a.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(a){return this._computedIsNeeded?Math.round((a-this._arrowSize-this._computedSliderSize/2)/this._computedSliderRatio):0}getDesiredScrollPositionFromOffsetPaged(a){if(!this._computedIsNeeded)return 0;let b=a-this._arrowSize,c=this._scrollPosition;return b<this._computedSliderPosition?c-=this._visibleSize:c+=this._visibleSize,c}getDesiredScrollPositionFromDelta(a){return this._computedIsNeeded?Math.round((this._computedSliderPosition+a)/this._computedSliderRatio):0}}},76560:(a,b,c)=>{"use strict";c.d(b,{n:()=>d,r:()=>e});class d{constructor(a){this._prefix=a,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}let e=new d("id#")},76687:(a,b,c)=>{"use strict";c.d(b,{IN:()=>m,LC:()=>u,P8:()=>t,S8:()=>p,SA:()=>o,V8:()=>r,Vn:()=>v,hd:()=>q,pD:()=>s});var d=c(97619);class e extends Error{constructor(a,b,c){let d;"string"==typeof b&&0===b.indexOf("not ")?(d="must not be",b=b.replace(/^not /,"")):d="must be";let e=-1!==a.indexOf(".")?"property":"argument",f=`The "${a}" ${e} ${d} of type ${b}`;super(f+=`. Received type ${typeof c}`),this.code="ERR_INVALID_ARG_TYPE"}}function f(a,b){if("string"!=typeof a)throw new e(b,"string",a)}let g="win32"===d.iD;function h(a){return 47===a||92===a}function i(a){return 47===a}function j(a){return a>=65&&a<=90||a>=97&&a<=122}function k(a,b,c,d){let e="",f=0,g=-1,h=0,i=0;for(let j=0;j<=a.length;++j){if(j<a.length)i=a.charCodeAt(j);else if(d(i))break;else i=47;if(d(i)){if(g===j-1||1===h);else if(2===h){if(e.length<2||2!==f||46!==e.charCodeAt(e.length-1)||46!==e.charCodeAt(e.length-2)){if(e.length>2){let a=e.lastIndexOf(c);-1===a?(e="",f=0):f=(e=e.slice(0,a)).length-1-e.lastIndexOf(c),g=j,h=0;continue}else if(0!==e.length){e="",f=0,g=j,h=0;continue}}b&&(e+=e.length>0?`${c}..`:"..",f=2)}else e.length>0?e+=`${c}${a.slice(g+1,j)}`:e=a.slice(g+1,j),f=j-g-1;g=j,h=0}else 46===i&&-1!==h?++h:h=-1}return e}function l(a,b){var c;if(null===b||"object"!=typeof b)throw new e("pathObject","Object",b);let d=b.dir||b.root,f=b.base||`${b.name||""}${(c=b.ext)?`${"."===c[0]?"":"."}${c}`:""}`;return d?d===b.root?`${d}${f}`:`${d}${a}${f}`:f}let m={resolve(...a){let b="",c="",e=!1;for(let g=a.length-1;g>=-1;g--){let i;if(g>=0){if(f(i=a[g],`paths[${g}]`),0===i.length)continue}else 0===b.length?i=d.bJ():(void 0===(i=d._K[`=${b}`]||d.bJ())||i.slice(0,2).toLowerCase()!==b.toLowerCase()&&92===i.charCodeAt(2))&&(i=`${b}\\`);let k=i.length,l=0,m="",n=!1,o=i.charCodeAt(0);if(1===k)h(o)&&(l=1,n=!0);else if(h(o))if(n=!0,h(i.charCodeAt(1))){let a=2,b=2;for(;a<k&&!h(i.charCodeAt(a));)a++;if(a<k&&a!==b){let c=i.slice(b,a);for(b=a;a<k&&h(i.charCodeAt(a));)a++;if(a<k&&a!==b){for(b=a;a<k&&!h(i.charCodeAt(a));)a++;(a===k||a!==b)&&(m=`\\\\${c}\\${i.slice(b,a)}`,l=a)}}}else l=1;else j(o)&&58===i.charCodeAt(1)&&(m=i.slice(0,2),l=2,k>2&&h(i.charCodeAt(2))&&(n=!0,l=3));if(m.length>0)if(b.length>0){if(m.toLowerCase()!==b.toLowerCase())continue}else b=m;if(e){if(b.length>0)break}else if(c=`${i.slice(l)}\\${c}`,e=n,n&&b.length>0)break}return c=k(c,!e,"\\",h),e?`${b}\\${c}`:`${b}${c}`||"."},normalize(a){let b;f(a,"path");let c=a.length;if(0===c)return".";let d=0,e=!1,g=a.charCodeAt(0);if(1===c)return i(g)?"\\":a;if(h(g))if(e=!0,h(a.charCodeAt(1))){let e=2,f=2;for(;e<c&&!h(a.charCodeAt(e));)e++;if(e<c&&e!==f){let g=a.slice(f,e);for(f=e;e<c&&h(a.charCodeAt(e));)e++;if(e<c&&e!==f){for(f=e;e<c&&!h(a.charCodeAt(e));)e++;if(e===c)return`\\\\${g}\\${a.slice(f)}\\`;e!==f&&(b=`\\\\${g}\\${a.slice(f,e)}`,d=e)}}}else d=1;else j(g)&&58===a.charCodeAt(1)&&(b=a.slice(0,2),d=2,c>2&&h(a.charCodeAt(2))&&(e=!0,d=3));let l=d<c?k(a.slice(d),!e,"\\",h):"";if(0!==l.length||e||(l="."),l.length>0&&h(a.charCodeAt(c-1))&&(l+="\\"),!e&&void 0===b&&a.includes(":")){if(l.length>=2&&j(l.charCodeAt(0))&&58===l.charCodeAt(1))return`.\\${l}`;let b=a.indexOf(":");do if(b===c-1||h(a.charCodeAt(b+1)))return`.\\${l}`;while(-1!==(b=a.indexOf(":",b+1)))}return void 0===b?e?`\\${l}`:l:e?`${b}\\${l}`:`${b}${l}`},isAbsolute(a){f(a,"path");let b=a.length;if(0===b)return!1;let c=a.charCodeAt(0);return h(c)||b>2&&j(c)&&58===a.charCodeAt(1)&&h(a.charCodeAt(2))},join(...a){let b,c;if(0===a.length)return".";for(let d=0;d<a.length;++d){let e=a[d];f(e,"path"),e.length>0&&(void 0===b?b=c=e:b+=`\\${e}`)}if(void 0===b)return".";let d=!0,e=0;if("string"==typeof c&&h(c.charCodeAt(0))){++e;let a=c.length;a>1&&h(c.charCodeAt(1))&&(++e,a>2&&(h(c.charCodeAt(2))?++e:d=!1))}if(d){for(;e<b.length&&h(b.charCodeAt(e));)e++;e>=2&&(b=`\\${b.slice(e)}`)}return m.normalize(b)},relative(a,b){if(f(a,"from"),f(b,"to"),a===b)return"";let c=m.resolve(a),d=m.resolve(b);if(c===d||(a=c.toLowerCase(),b=d.toLowerCase(),a===b))return"";if(c.length!==a.length||d.length!==b.length){let a,b=c.split("\\"),e=d.split("\\");""===b[b.length-1]&&b.pop(),""===e[e.length-1]&&e.pop();let f=b.length,g=e.length,h=f<g?f:g;for(a=0;a<h&&b[a].toLowerCase()===e[a].toLowerCase();a++);return 0===a?d:a===h?g>h?e.slice(a).join("\\"):f>h?"..\\".repeat(f-1-a)+"..":"":"..\\".repeat(f-a)+e.slice(a).join("\\")}let e=0;for(;e<a.length&&92===a.charCodeAt(e);)e++;let g=a.length;for(;g-1>e&&92===a.charCodeAt(g-1);)g--;let h=g-e,i=0;for(;i<b.length&&92===b.charCodeAt(i);)i++;let j=b.length;for(;j-1>i&&92===b.charCodeAt(j-1);)j--;let k=j-i,l=h<k?h:k,n=-1,o=0;for(;o<l;o++){let c=a.charCodeAt(e+o);if(c!==b.charCodeAt(i+o))break;92===c&&(n=o)}if(o!==l){if(-1===n)return d}else{if(k>l){if(92===b.charCodeAt(i+o))return d.slice(i+o+1);if(2===o)return d.slice(i+o)}h>l&&(92===a.charCodeAt(e+o)?n=o:2===o&&(n=3)),-1===n&&(n=0)}let p="";for(o=e+n+1;o<=g;++o)(o===g||92===a.charCodeAt(o))&&(p+=0===p.length?"..":"\\..");return(i+=n,p.length>0)?`${p}${d.slice(i,j)}`:(92===d.charCodeAt(i)&&++i,d.slice(i,j))},toNamespacedPath(a){if("string"!=typeof a||0===a.length)return a;let b=m.resolve(a);if(b.length<=2)return a;if(92===b.charCodeAt(0)){if(92===b.charCodeAt(1)){let a=b.charCodeAt(2);if(63!==a&&46!==a)return`\\\\?\\UNC\\${b.slice(2)}`}}else if(j(b.charCodeAt(0))&&58===b.charCodeAt(1)&&92===b.charCodeAt(2))return`\\\\?\\${b}`;return b},dirname(a){f(a,"path");let b=a.length;if(0===b)return".";let c=-1,d=0,e=a.charCodeAt(0);if(1===b)return h(e)?a:".";if(h(e)){if(c=d=1,h(a.charCodeAt(1))){let e=2,f=2;for(;e<b&&!h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&!h(a.charCodeAt(e));)e++;if(e===b)return a;e!==f&&(c=d=e+1)}}}}else j(e)&&58===a.charCodeAt(1)&&(d=c=b>2&&h(a.charCodeAt(2))?3:2);let g=-1,i=!0;for(let c=b-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!i){g=c;break}}else i=!1;if(-1===g){if(-1===c)return".";g=c}return a.slice(0,g)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(a.length>=2&&j(a.charCodeAt(0))&&58===a.charCodeAt(1)&&(d=2),void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,i=-1;for(c=a.length-1;c>=d;--c){let j=a.charCodeAt(c);if(h(j)){if(!g){d=c+1;break}}else -1===i&&(g=!1,i=c+1),f>=0&&(j===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=i))}return d===e?e=i:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=0,c=-1,d=0,e=-1,g=!0,i=0;a.length>=2&&58===a.charCodeAt(1)&&j(a.charCodeAt(0))&&(b=d=2);for(let f=a.length-1;f>=b;--f){let b=a.charCodeAt(f);if(h(b)){if(!g){d=f+1;break}continue}-1===e&&(g=!1,e=f+1),46===b?-1===c?c=f:1!==i&&(i=1):-1!==c&&(i=-1)}return -1===c||-1===e||0===i||1===i&&c===e-1&&c===d+1?"":a.slice(c,e)},format:l.bind(null,"\\"),parse(a){f(a,"path");let b={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return b;let c=a.length,d=0,e=a.charCodeAt(0);if(1===c)return h(e)?b.root=b.dir=a:b.base=b.name=a,b;if(h(e)){if(d=1,h(a.charCodeAt(1))){let b=2,e=2;for(;b<c&&!h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&!h(a.charCodeAt(b));)b++;b===c?d=b:b!==e&&(d=b+1)}}}}else if(j(e)&&58===a.charCodeAt(1)){if(c<=2)return b.root=b.dir=a,b;if(d=2,h(a.charCodeAt(2))){if(3===c)return b.root=b.dir=a,b;d=3}}d>0&&(b.root=a.slice(0,d));let g=-1,i=d,k=-1,l=!0,m=a.length-1,n=0;for(;m>=d;--m){if(h(e=a.charCodeAt(m))){if(!l){i=m+1;break}continue}-1===k&&(l=!1,k=m+1),46===e?-1===g?g=m:1!==n&&(n=1):-1!==g&&(n=-1)}return -1!==k&&(-1===g||0===n||1===n&&g===k-1&&g===i+1?b.base=b.name=a.slice(i,k):(b.name=a.slice(i,g),b.base=a.slice(i,k),b.ext=a.slice(g,k))),i>0&&i!==d?b.dir=a.slice(0,i-1):b.dir=b.root,b},sep:"\\",delimiter:";",win32:null,posix:null},n=(()=>{if(g){let a=/\\/g;return()=>{let b=d.bJ().replace(a,"/");return b.slice(b.indexOf("/"))}}return()=>d.bJ()})(),o={resolve(...a){let b="",c=!1;for(let d=a.length-1;d>=0&&!c;d--){let e=a[d];f(e,`paths[${d}]`),0!==e.length&&(b=`${e}/${b}`,c=47===e.charCodeAt(0))}if(!c){let a=n();b=`${a}/${b}`,c=47===a.charCodeAt(0)}return(b=k(b,!c,"/",i),c)?`/${b}`:b.length>0?b:"."},normalize(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=47===a.charCodeAt(a.length-1);return 0===(a=k(a,!b,"/",i)).length?b?"/":c?"./":".":(c&&(a+="/"),b?`/${a}`:a)},isAbsolute:a=>(f(a,"path"),a.length>0&&47===a.charCodeAt(0)),join(...a){if(0===a.length)return".";let b=[];for(let c=0;c<a.length;++c){let d=a[c];f(d,"path"),d.length>0&&b.push(d)}return 0===b.length?".":o.normalize(b.join("/"))},relative(a,b){if(f(a,"from"),f(b,"to"),a===b||(a=o.resolve(a),b=o.resolve(b),a===b))return"";let c=a.length,d=c-1,e=b.length-1,g=d<e?d:e,h=-1,i=0;for(;i<g;i++){let c=a.charCodeAt(1+i);if(c!==b.charCodeAt(1+i))break;47===c&&(h=i)}if(i===g)if(e>g){if(47===b.charCodeAt(1+i))return b.slice(1+i+1);if(0===i)return b.slice(1+i)}else d>g&&(47===a.charCodeAt(1+i)?h=i:0===i&&(h=0));let j="";for(i=1+h+1;i<=c;++i)(i===c||47===a.charCodeAt(i))&&(j+=0===j.length?"..":"/..");return`${j}${b.slice(1+h)}`},toNamespacedPath:a=>a,dirname(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=-1,d=!0;for(let b=a.length-1;b>=1;--b)if(47===a.charCodeAt(b)){if(!d){c=b;break}}else d=!1;return -1===c?b?"/":".":b&&1===c?"//":a.slice(0,c)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,h=-1;for(c=a.length-1;c>=0;--c){let i=a.charCodeAt(c);if(47===i){if(!g){d=c+1;break}}else -1===h&&(g=!1,h=c+1),f>=0&&(i===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=h))}return d===e?e=h:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=0;--c)if(47===a.charCodeAt(c)){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=-1,c=0,d=-1,e=!0,g=0;for(let f=a.length-1;f>=0;--f){let h=a[f];if("/"===h){if(!e){c=f+1;break}continue}-1===d&&(e=!1,d=f+1),"."===h?-1===b?b=f:1!==g&&(g=1):-1!==b&&(g=-1)}return -1===b||-1===d||0===g||1===g&&b===d-1&&b===c+1?"":a.slice(b,d)},format:l.bind(null,"/"),parse(a){let b;f(a,"path");let c={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return c;let d=47===a.charCodeAt(0);d?(c.root="/",b=1):b=0;let e=-1,g=0,h=-1,i=!0,j=a.length-1,k=0;for(;j>=b;--j){let b=a.charCodeAt(j);if(47===b){if(!i){g=j+1;break}continue}-1===h&&(i=!1,h=j+1),46===b?-1===e?e=j:1!==k&&(k=1):-1!==e&&(k=-1)}if(-1!==h){let b=0===g&&d?1:g;-1===e||0===k||1===k&&e===h-1&&e===g+1?c.base=c.name=a.slice(b,h):(c.name=a.slice(b,e),c.base=a.slice(b,h),c.ext=a.slice(e,h))}return g>0?c.dir=a.slice(0,g-1):d&&(c.dir="/"),c},sep:"/",delimiter:":",win32:null,posix:null};o.win32=m.win32=m,o.posix=m.posix=o;let p=g?m.normalize:o.normalize,q=g?m.resolve:o.resolve,r=g?m.relative:o.relative,s=g?m.dirname:o.dirname,t=g?m.basename:o.basename,u=g?m.extname:o.extname,v=g?m.sep:o.sep},76847:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(25917),e=c(48363);class f extends d.CO{constructor(a){super(),this._textModel=a}getValueOfRange(a){return this._textModel.getValueInRange(a)}getLineLength(a){return this._textModel.getLineLength(a)}get length(){let a=this._textModel.getLineCount(),b=this._textModel.getLineLength(a);return new e.W(a-1,b)}}},77705:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(28272),e=c(43188),f=c(69467),g=c(91389);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},78040:(a,b,c)=>{"use strict";c.d(b,{ET:()=>l,On:()=>m,bX:()=>n});var d=c(93349),e=c(90389),f=c(32908),g=c(29892),h=c(22889),i=c(16749),j=c(41392);let k=(0,d.H)("diffEditorWidget",{createHTML:a=>a});function l(a,b,c,d,f=!1){(0,e.M)(d,b.fontInfo);let i=c.length>0,j=new g.fe(1e4),m=0,n=0,p=[];for(let d=0;d<a.lineTokens.length;d++){let e=d+1,g=a.lineTokens[d],k=a.lineBreakData[d],l=h.d.filter(c,e,1,Number.MAX_SAFE_INTEGER);if(k){let c=0;for(let d of k.breakOffsets)m=Math.max(m,o(n,g.sliceAndInflate(c,d,0),h.d.extractWrapped(l,c,d),i,a.mightContainNonBasicASCII,a.mightContainRTL,b,j,f)),n++,c=d;p.push(k.breakOffsets.length)}else p.push(1),m=Math.max(m,o(n,g,l,i,a.mightContainNonBasicASCII,a.mightContainRTL,b,j,f)),n++}m+=b.scrollBeyondLastColumn;let q=j.build();return d.innerHTML=k?k.createHTML(q):q,{heightInLines:n,minWidthInPx:m*b.typicalHalfwidthCharacterWidth,viewLineCounts:p}}class m{constructor(a,b=a.map(a=>null),c=!0,d=!0){this.lineTokens=a,this.lineBreakData=b,this.mightContainNonBasicASCII=c,this.mightContainRTL=d}}class n{static fromEditor(a){let b=a.getOptions(),c=b.get(59),d=b.get(165);return new n(a.getModel()?.getOptions().tabSize||0,c,b.get(40),c.typicalHalfwidthCharacterWidth,b.get(118),b.get(75),d.decorationsWidth,b.get(133),b.get(113),b.get(108),b.get(60),b.get(117).verticalScrollbarSize)}constructor(a,b,c,d,e,f,g,h,i,j,k,l,m=!0){this.tabSize=a,this.fontInfo=b,this.disableMonospaceOptimizations=c,this.typicalHalfwidthCharacterWidth=d,this.scrollBeyondLastColumn=e,this.lineHeight=f,this.lineDecorationsWidth=g,this.stopRenderingLineAfter=h,this.renderWhitespace=i,this.renderControlCharacters=j,this.fontLigatures=k,this.verticalScrollbarSize=l,this.setWidth=m}withSetWidth(a){return new n(this.tabSize,this.fontInfo,this.disableMonospaceOptimizations,this.typicalHalfwidthCharacterWidth,this.scrollBeyondLastColumn,this.lineHeight,this.lineDecorationsWidth,this.stopRenderingLineAfter,this.renderWhitespace,this.renderControlCharacters,this.fontLigatures,this.verticalScrollbarSize,a)}withScrollBeyondLastColumn(a){return new n(this.tabSize,this.fontInfo,this.disableMonospaceOptimizations,this.typicalHalfwidthCharacterWidth,a,this.lineHeight,this.lineDecorationsWidth,this.stopRenderingLineAfter,this.renderWhitespace,this.renderControlCharacters,this.fontLigatures,this.verticalScrollbarSize,this.setWidth)}}function o(a,b,c,d,e,g,h,k,l){k.appendString('<div class="view-line'),l||d||k.appendString(" char-delete"),k.appendString('" style="top:'),k.appendString(String(a*h.lineHeight)),h.setWidth?k.appendString('px;width:1000000px;">'):k.appendString('px;">');let m=b.getLineContent(),n=j.qL.isBasicASCII(m,e),o=j.qL.containsRTL(m,n,g),p=(0,i.UW)(new i.zL(h.fontInfo.isMonospace&&!h.disableMonospaceOptimizations,h.fontInfo.canUseHalfwidthRightwardsArrow,m,!1,n,o,0,b,c,h.tabSize,0,h.fontInfo.spaceWidth,h.fontInfo.middotWidth,h.fontInfo.wsmiddotWidth,h.stopRenderingLineAfter,h.renderWhitespace,h.renderControlCharacters,h.fontLigatures!==f.Bc.OFF,null,null,h.verticalScrollbarSize),k);return k.appendString("</div>"),p.characterMapping.getHorizontalOffset(p.characterMapping.length)}},78323:(a,b,c)=>{"use strict";c.d(b,{FdG:()=>d.Fd,buw:()=>l,GuP:()=>d.Gu,Bbc:()=>d.Bb,HP_:()=>d.HP,WMx:()=>n,zRE:()=>o,sAS:()=>am,vV$:()=>ak,etE:()=>al,mc0:()=>aj,XJc:()=>a1,raQ:()=>a3,G_h:()=>a_,T9h:()=>a2,xOA:()=>a5,Inn:()=>a4,nZG:()=>a6,Q1$:()=>a0,OcU:()=>be,C5U:()=>bg,Uv:()=>bh,hsb:()=>bi,t0B:()=>bf,b1q:()=>k,EY1:()=>_,ZEf:()=>aa,yUe:()=>h,Gj6:()=>ab,w3w:()=>ad,ld8:()=>ae,$BZ:()=>af,GNm:()=>ac,TUz:()=>bN,Ztu:()=>H,YtV:()=>u,AN$:()=>A,Rbi:()=>z,f3U:()=>M,Ubg:()=>N,ECk:()=>P,p8Y:()=>O,S5J:()=>Q,By2:()=>v,i61:()=>G,WfR:()=>R,oZ8:()=>T,Xo2:()=>S,tan:()=>K,IIb:()=>F,pOz:()=>E,WL6:()=>V,P6i:()=>U,B2L:()=>Z,sjA:()=>Y,_pU:()=>X,HwT:()=>W,seu:()=>I,rm4:()=>J,QwA:()=>L,whs:()=>B,Stt:()=>D,Hng:()=>C,CgL:()=>w,sIe:()=>y,FiB:()=>x,tAP:()=>j,CU6:()=>g,t4B:()=>i,c1f:()=>aM,uNK:()=>aK,$$0:()=>aN,L4c:()=>aH,Zgs:()=>aJ,cws:()=>aI,_$n:()=>aU,eYZ:()=>aW,h9z:()=>aV,I$A:()=>aO,YSW:()=>aQ,L9Z:()=>aP,ULt:()=>aR,C1n:()=>aT,T5N:()=>aS,HDX:()=>bj,zUX:()=>bl,Qfh:()=>bm,eUu:()=>bk,Rjz:()=>br,GVV:()=>bs,fED:()=>bt,yIp:()=>bC,Yoe:()=>bB,pnl:()=>bF,P9Z:()=>bH,fiM:()=>bG,H8q:()=>bI,gtq:()=>bq,VFX:()=>bn,efJ:()=>bo,eMz:()=>bE,p7Y:()=>bp,QI5:()=>bD,lO1:()=>bz,QRv:()=>bA,CQ3:()=>bx,ijf:()=>by,uNx:()=>bu,f4y:()=>bv,C9U:()=>bw,c6Y:()=>bQ,g$2:()=>bO,dd_:()=>bP,Ux$:()=>bS,SNb:()=>bT,pmr:()=>bR,D7X:()=>bU,ILr:()=>aF,yLC:()=>aE,AjU:()=>az,K1Z:()=>aG,KoI:()=>aC,yr0:()=>aB,Xp1:()=>aA,uMG:()=>aD,yLr:()=>d.yL,fAP:()=>au,z5H:()=>av,iwL:()=>bZ,NBf:()=>bY,tYX:()=>aw,bNw:()=>ay,JPj:()=>ax,BTi:()=>t,ELA:()=>bV,HJZ:()=>bW,AlL:()=>b1,nH:()=>b_,c7i:()=>b0,er1:()=>bX,Ukx:()=>a8,Ips:()=>a9,jOE:()=>a7,xWN:()=>bb,ZBU:()=>bc,kPT:()=>ba,jr9:()=>bd,x1A:()=>d.x1,bXl:()=>p,mhZ:()=>s,gnV:()=>q,cI_:()=>r,rvE:()=>aX,HcB:()=>a$,yqq:()=>aZ,lWP:()=>aY,k5u:()=>bL,sbQ:()=>bM,vwp:()=>m,JO0:()=>d.JO,pft:()=>bK,U4U:()=>bJ,DSL:()=>ah,f9l:()=>ag});var d=c(895),e=c(25536),f=c(23949);let g=(0,d.x1)("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1756,"Overall foreground color. This color is only used if not overridden by a component."));(0,d.x1)("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},e.kg(1757,"Overall foreground for disabled elements. This color is only used if not overridden by a component.")),(0,d.x1)("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1758,"Overall foreground color for error messages. This color is only used if not overridden by a component."));let h=(0,d.x1)("descriptionForeground",{light:"#717171",dark:(0,d.JO)(g,.7),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1759,"Foreground color for description text providing additional information, for example for a label.")),i=(0,d.x1)("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1760,"The default color for icons in the workbench.")),j=(0,d.x1)("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},e.kg(1761,"Overall border color for focused elements. This color is only used if not overridden by a component.")),k=(0,d.x1)("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},e.kg(1762,"An extra border around elements to separate them from others for greater contrast.")),l=(0,d.x1)("contrastActiveBorder",{light:null,dark:null,hcDark:j,hcLight:j},e.kg(1763,"An extra border around active elements to separate them from others for greater contrast."));(0,d.x1)("selection.background",null,e.kg(1764,"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));let m=(0,d.x1)("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1765,"Foreground color for links in text."));(0,d.x1)("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1766,"Foreground color for links in text when clicked on and on mouse hover.")),(0,d.x1)("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:f.Q1.black,hcLight:"#292929"},e.kg(1767,"Color for text separators.")),(0,d.x1)("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},e.kg(1768,"Foreground color for preformatted text segments.")),(0,d.x1)("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},e.kg(1769,"Background color for preformatted text segments.")),(0,d.x1)("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},e.kg(1770,"Background color for block quotes in text.")),(0,d.x1)("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:f.Q1.white,hcLight:"#292929"},e.kg(1771,"Border color for block quotes in text.")),(0,d.x1)("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:f.Q1.black,hcLight:"#F2F2F2"},e.kg(1772,"Background color for code blocks in text.")),(0,d.x1)("sash.hoverBorder",j,e.kg(1977,"Border color of active sashes."));let n=(0,d.x1)("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:f.Q1.black,hcLight:"#0F4A85"},e.kg(1978,"Badge background color. Badges are small information labels, e.g. for search results count.")),o=(0,d.x1)("badge.foreground",{dark:f.Q1.white,light:"#333",hcDark:f.Q1.white,hcLight:f.Q1.white},e.kg(1979,"Badge foreground color. Badges are small information labels, e.g. for search results count."));(0,d.x1)("activityWarningBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1980,"Foreground color of the warning activity badge")),(0,d.x1)("activityWarningBadge.background",{dark:"#CCA700",light:"#BF8803",hcDark:null,hcLight:"#CCA700"},e.kg(1981,"Background color of the warning activity badge")),(0,d.x1)("activityErrorBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1982,"Foreground color of the error activity badge")),(0,d.x1)("activityErrorBadge.background",{dark:"#F14C4C",light:"#E51400",hcDark:null,hcLight:"#F14C4C"},e.kg(1983,"Background color of the error activity badge"));let p=(0,d.x1)("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},e.kg(1984,"Scrollbar shadow to indicate that the view is scrolled.")),q=(0,d.x1)("scrollbarSlider.background",{dark:f.Q1.fromHex("#797979").transparent(.4),light:f.Q1.fromHex("#646464").transparent(.4),hcDark:(0,d.JO)(k,.6),hcLight:(0,d.JO)(k,.4)},e.kg(1985,"Scrollbar slider background color.")),r=(0,d.x1)("scrollbarSlider.hoverBackground",{dark:f.Q1.fromHex("#646464").transparent(.7),light:f.Q1.fromHex("#646464").transparent(.7),hcDark:(0,d.JO)(k,.8),hcLight:(0,d.JO)(k,.8)},e.kg(1986,"Scrollbar slider background color when hovering.")),s=(0,d.x1)("scrollbarSlider.activeBackground",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1987,"Scrollbar slider background color when clicked on.")),t=(0,d.x1)("progressBar.background",{dark:f.Q1.fromHex("#0E70C0"),light:f.Q1.fromHex("#0E70C0"),hcDark:k,hcLight:k},e.kg(1988,"Background color of the progress bar that can show for long running operations."));(0,d.x1)("chart.line",{dark:"#236B8E",light:"#236B8E",hcDark:"#236B8E",hcLight:"#236B8E"},e.kg(1989,"Line color for the chart.")),(0,d.x1)("chart.axis",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1990,"Axis color for the chart.")),(0,d.x1)("chart.guide",{dark:f.Q1.fromHex("#BFBFBF").transparent(.2),light:f.Q1.fromHex("#000000").transparent(.2),hcDark:k,hcLight:k},e.kg(1991,"Guide line for the chart."));let u=(0,d.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1781,"Editor background color.")),v=(0,d.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:f.Q1.white,hcLight:g},e.kg(1782,"Editor default foreground color."));(0,d.x1)("editorStickyScroll.background",u,e.kg(1783,"Background color of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollGutter.background",u,e.kg(1784,"Background color of the gutter part of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1785,"Background color of sticky scroll on hover in the editor")),(0,d.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1786,"Border color of sticky scroll in the editor")),(0,d.x1)("editorStickyScroll.shadow",p,e.kg(1787," Shadow color of sticky scroll in the editor"));let w=(0,d.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:f.Q1.white},e.kg(1788,"Background color of editor widgets, such as find/replace.")),x=(0,d.x1)("editorWidget.foreground",g,e.kg(1789,"Foreground color of editor widgets, such as find/replace.")),y=(0,d.x1)("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:k,hcLight:k},e.kg(1790,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,d.x1)("editorWidget.resizeBorder",null,e.kg(1791,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,d.x1)("editorError.background",null,e.kg(1792,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let z=(0,d.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1793,"Foreground color of error squigglies in the editor.")),A=(0,d.x1)("editorError.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},e.kg(1794,"If set, color of double underlines for errors in the editor.")),B=(0,d.x1)("editorWarning.background",null,e.kg(1795,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),C=(0,d.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},e.kg(1796,"Foreground color of warning squigglies in the editor.")),D=(0,d.x1)("editorWarning.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#FFCC00").transparent(.8),hcLight:f.Q1.fromHex("#FFCC00").transparent(.8)},e.kg(1797,"If set, color of double underlines for warnings in the editor."));(0,d.x1)("editorInfo.background",null,e.kg(1798,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let E=(0,d.x1)("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},e.kg(1799,"Foreground color of info squigglies in the editor.")),F=(0,d.x1)("editorInfo.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},e.kg(1800,"If set, color of double underlines for infos in the editor.")),G=(0,d.x1)("editorHint.foreground",{dark:f.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},e.kg(1801,"Foreground color of hint squigglies in the editor."));(0,d.x1)("editorHint.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},e.kg(1802,"If set, color of double underlines for hints in the editor."));let H=(0,d.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:f.Q1.blue,hcDark:f.Q1.cyan,hcLight:"#292929"},e.kg(1803,"Color of active links.")),I=(0,d.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},e.kg(1804,"Color of the editor selection.")),J=(0,d.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:f.Q1.white},e.kg(1805,"Color of the selected text for high contrast.")),K=(0,d.x1)("editor.inactiveSelectionBackground",{light:(0,d.JO)(I,.5),dark:(0,d.JO)(I,.5),hcDark:(0,d.JO)(I,.7),hcLight:(0,d.JO)(I,.5)},e.kg(1806,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,d.x1)("editor.selectionHighlightBackground",{light:(0,d.oG)(I,u,.3,.6),dark:(0,d.oG)(I,u,.3,.6),hcDark:null,hcLight:null},e.kg(1807,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1808,"Border color for regions with the same content as the selection.")),(0,d.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},e.kg(1809,"The border color for an IME composition.")),(0,d.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},e.kg(1810,"Color of the current search match."));let M=(0,d.x1)("editor.findMatchForeground",null,e.kg(1811,"Text color of the current search match.")),N=(0,d.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},e.kg(1812,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),O=(0,d.x1)("editor.findMatchHighlightForeground",null,e.kg(1813,"Foreground color of the other search matches."),!0);(0,d.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},e.kg(1814,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1815,"Border color of the current search match."));let P=(0,d.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1816,"Border color of the other search matches.")),Q=(0,d.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,d.JO)(l,.4),hcLight:(0,d.JO)(l,.4)},e.kg(1817,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},e.kg(1818,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let R=(0,d.x1)("editorHoverWidget.background",w,e.kg(1819,"Background color of the editor hover.")),S=(0,d.x1)("editorHoverWidget.foreground",x,e.kg(1820,"Foreground color of the editor hover.")),T=(0,d.x1)("editorHoverWidget.border",y,e.kg(1821,"Border color of the editor hover."));(0,d.x1)("editorHoverWidget.statusBarBackground",{dark:(0,d.a)(R,.2),light:(0,d.e$)(R,.05),hcDark:w,hcLight:w},e.kg(1822,"Background color of the editor hover status bar."));let U=(0,d.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:f.Q1.white,hcLight:f.Q1.black},e.kg(1823,"Foreground color of inline hints")),V=(0,d.x1)("editorInlayHint.background",{dark:(0,d.JO)(n,.1),light:(0,d.JO)(n,.1),hcDark:(0,d.JO)(f.Q1.white,.1),hcLight:(0,d.JO)(n,.1)},e.kg(1824,"Background color of inline hints")),W=(0,d.x1)("editorInlayHint.typeForeground",U,e.kg(1825,"Foreground color of inline hints for types")),X=(0,d.x1)("editorInlayHint.typeBackground",V,e.kg(1826,"Background color of inline hints for types")),Y=(0,d.x1)("editorInlayHint.parameterForeground",U,e.kg(1827,"Foreground color of inline hints for parameters")),Z=(0,d.x1)("editorInlayHint.parameterBackground",V,e.kg(1828,"Background color of inline hints for parameters")),$=(0,d.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},e.kg(1829,"The color used for the lightbulb actions icon."));(0,d.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},e.kg(1830,"The color used for the lightbulb auto fix actions icon.")),(0,d.x1)("editorLightBulbAi.foreground",$,e.kg(1831,"The color used for the lightbulb AI icon.")),(0,d.x1)("editor.snippetTabstopHighlightBackground",{dark:new f.Q1(new f.bU(124,124,124,.3)),light:new f.Q1(new f.bU(10,50,100,.2)),hcDark:new f.Q1(new f.bU(124,124,124,.3)),hcLight:new f.Q1(new f.bU(10,50,100,.2))},e.kg(1832,"Highlight background color of a snippet tabstop.")),(0,d.x1)("editor.snippetTabstopHighlightBorder",null,e.kg(1833,"Highlight border color of a snippet tabstop.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBackground",null,e.kg(1834,"Highlight background color of the final tabstop of a snippet.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new f.Q1(new f.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},e.kg(1835,"Highlight border color of the final tabstop of a snippet."));let _=new f.Q1(new f.bU(155,185,85,.2)),aa=new f.Q1(new f.bU(255,0,0,.2)),ab=(0,d.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},e.kg(1836,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,d.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},e.kg(1837,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),ad=(0,d.x1)("diffEditor.insertedLineBackground",{dark:_,light:_,hcDark:null,hcLight:null},e.kg(1838,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("diffEditor.removedLineBackground",{dark:aa,light:aa,hcDark:null,hcLight:null},e.kg(1839,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("diffEditorGutter.insertedLineBackground",null,e.kg(1840,"Background color for the margin where lines got inserted.")),(0,d.x1)("diffEditorGutter.removedLineBackground",null,e.kg(1841,"Background color for the margin where lines got removed."));let ae=(0,d.x1)("diffEditorOverview.insertedForeground",null,e.kg(1842,"Diff overview ruler foreground for inserted content.")),af=(0,d.x1)("diffEditorOverview.removedForeground",null,e.kg(1843,"Diff overview ruler foreground for removed content."));(0,d.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},e.kg(1844,"Outline color for the text that got inserted.")),(0,d.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},e.kg(1845,"Outline color for text that got removed.")),(0,d.x1)("diffEditor.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1846,"Border color between the two text editors.")),(0,d.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},e.kg(1847,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,d.x1)("diffEditor.unchangedRegionBackground","sideBar.background",e.kg(1848,"The background color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedRegionForeground","foreground",e.kg(1849,"The foreground color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},e.kg(1850,"The background color of unchanged code in the diff editor."));let ag=(0,d.x1)("widget.shadow",{dark:(0,d.JO)(f.Q1.black,.36),light:(0,d.JO)(f.Q1.black,.16),hcDark:null,hcLight:null},e.kg(1851,"Shadow color of widgets such as find/replace inside the editor.")),ah=(0,d.x1)("widget.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1852,"Border color of widgets such as find/replace inside the editor.")),ai=(0,d.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1853,"Toolbar background when hovering over actions using the mouse"));(0,d.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1854,"Toolbar outline when hovering over actions using the mouse")),(0,d.x1)("toolbar.activeBackground",{dark:(0,d.a)(ai,.1),light:(0,d.e$)(ai,.1),hcDark:null,hcLight:null},e.kg(1855,"Toolbar background when holding the mouse over actions"));let aj=(0,d.x1)("breadcrumb.foreground",(0,d.JO)(g,.8),e.kg(1856,"Color of focused breadcrumb items.")),ak=(0,d.x1)("breadcrumb.background",u,e.kg(1857,"Background color of breadcrumb items.")),al=(0,d.x1)("breadcrumb.focusForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1858,"Color of focused breadcrumb items.")),am=(0,d.x1)("breadcrumb.activeSelectionForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1859,"Color of selected breadcrumb items."));(0,d.x1)("breadcrumbPicker.background",w,e.kg(1860,"Background color of breadcrumb item picker."));let an=f.Q1.fromHex("#40C8AE").transparent(.5),ao=f.Q1.fromHex("#40A6FF").transparent(.5),ap=f.Q1.fromHex("#606060").transparent(.4),aq=(0,d.x1)("merge.currentHeaderBackground",{dark:an,light:an,hcDark:null,hcLight:null},e.kg(1861,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.currentContentBackground",(0,d.JO)(aq,.4),e.kg(1862,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let ar=(0,d.x1)("merge.incomingHeaderBackground",{dark:ao,light:ao,hcDark:null,hcLight:null},e.kg(1863,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.incomingContentBackground",(0,d.JO)(ar,.4),e.kg(1864,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let as=(0,d.x1)("merge.commonHeaderBackground",{dark:ap,light:ap,hcDark:null,hcLight:null},e.kg(1865,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.commonContentBackground",(0,d.JO)(as,.4),e.kg(1866,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let at=(0,d.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},e.kg(1867,"Border color on headers and the splitter in inline merge-conflicts."));(0,d.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,d.JO)(aq,1),light:(0,d.JO)(aq,1),hcDark:at,hcLight:at},e.kg(1868,"Current overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,d.JO)(ar,1),light:(0,d.JO)(ar,1),hcDark:at,hcLight:at},e.kg(1869,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,d.JO)(as,1),light:(0,d.JO)(as,1),hcDark:at,hcLight:at},e.kg(1870,"Common ancestor overview ruler foreground for inline merge-conflicts."));let au=(0,d.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},e.kg(1871,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),av=(0,d.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",e.kg(1872,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),aw=(0,d.x1)("problemsErrorIcon.foreground",z,e.kg(1873,"The color used for the problems error icon.")),ax=(0,d.x1)("problemsWarningIcon.foreground",C,e.kg(1874,"The color used for the problems warning icon.")),ay=(0,d.x1)("problemsInfoIcon.foreground",E,e.kg(1875,"The color used for the problems info icon.")),az=(0,d.x1)("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},e.kg(1966,"Minimap marker color for find matches."),!0),aA=(0,d.x1)("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1967,"Minimap marker color for repeating editor selections."),!0),aB=(0,d.x1)("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1968,"Minimap marker color for the editor selection."),!0),aC=(0,d.x1)("minimap.infoHighlight",{dark:E,light:E,hcDark:F,hcLight:F},e.kg(1969,"Minimap marker color for infos.")),aD=(0,d.x1)("minimap.warningHighlight",{dark:C,light:C,hcDark:D,hcLight:D},e.kg(1970,"Minimap marker color for warnings.")),aE=(0,d.x1)("minimap.errorHighlight",{dark:new f.Q1(new f.bU(255,18,18,.7)),light:new f.Q1(new f.bU(255,18,18,.7)),hcDark:new f.Q1(new f.bU(255,50,50,1)),hcLight:"#B5200D"},e.kg(1971,"Minimap marker color for errors.")),aF=(0,d.x1)("minimap.background",null,e.kg(1972,"Minimap background color.")),aG=(0,d.x1)("minimap.foregroundOpacity",f.Q1.fromHex("#000f"),e.kg(1973,'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));(0,d.x1)("minimapSlider.background",(0,d.JO)(q,.5),e.kg(1974,"Minimap slider background color.")),(0,d.x1)("minimapSlider.hoverBackground",(0,d.JO)(r,.5),e.kg(1975,"Minimap slider background color when hovering.")),(0,d.x1)("minimapSlider.activeBackground",(0,d.JO)(s,.5),e.kg(1976,"Minimap slider background color when clicked on.")),(0,d.x1)("charts.foreground",g,e.kg(1773,"The foreground color used in charts.")),(0,d.x1)("charts.lines",(0,d.JO)(g,.5),e.kg(1774,"The color used for horizontal lines in charts.")),(0,d.x1)("charts.red",z,e.kg(1775,"The red color used in chart visualizations.")),(0,d.x1)("charts.blue",E,e.kg(1776,"The blue color used in chart visualizations.")),(0,d.x1)("charts.yellow",C,e.kg(1777,"The yellow color used in chart visualizations.")),(0,d.x1)("charts.orange",az,e.kg(1778,"The orange color used in chart visualizations.")),(0,d.x1)("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},e.kg(1779,"The green color used in chart visualizations.")),(0,d.x1)("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},e.kg(1780,"The purple color used in chart visualizations."));let aH=(0,d.x1)("input.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1876,"Input box background.")),aI=(0,d.x1)("input.foreground",g,e.kg(1877,"Input box foreground.")),aJ=(0,d.x1)("input.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1878,"Input box border.")),aK=(0,d.x1)("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:k,hcLight:k},e.kg(1879,"Border color of activated options in input fields.")),aL=(0,d.x1)("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1880,"Background color of activated options in input fields.")),aM=(0,d.x1)("inputOption.activeBackground",{dark:(0,d.JO)(j,.4),light:(0,d.JO)(j,.2),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1881,"Background hover color of options in input fields.")),aN=(0,d.x1)("inputOption.activeForeground",{dark:f.Q1.white,light:f.Q1.black,hcDark:g,hcLight:g},e.kg(1882,"Foreground color of activated options in input fields."));(0,d.x1)("input.placeholderForeground",{light:(0,d.JO)(g,.5),dark:(0,d.JO)(g,.5),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1883,"Input box foreground color for placeholder text."));let aO=(0,d.x1)("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1884,"Input validation background color for information severity.")),aP=(0,d.x1)("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1885,"Input validation foreground color for information severity.")),aQ=(0,d.x1)("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:k,hcLight:k},e.kg(1886,"Input validation border color for information severity.")),aR=(0,d.x1)("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1887,"Input validation background color for warning severity.")),aS=(0,d.x1)("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1888,"Input validation foreground color for warning severity.")),aT=(0,d.x1)("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:k,hcLight:k},e.kg(1889,"Input validation border color for warning severity.")),aU=(0,d.x1)("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1890,"Input validation background color for error severity.")),aV=(0,d.x1)("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1891,"Input validation foreground color for error severity.")),aW=(0,d.x1)("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1892,"Input validation border color for error severity.")),aX=(0,d.x1)("dropdown.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1893,"Dropdown background.")),aY=(0,d.x1)("dropdown.listBackground",{dark:null,light:null,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1894,"Dropdown list background.")),aZ=(0,d.x1)("dropdown.foreground",{dark:"#F0F0F0",light:g,hcDark:f.Q1.white,hcLight:g},e.kg(1895,"Dropdown foreground.")),a$=(0,d.x1)("dropdown.border",{dark:aX,light:"#CECECE",hcDark:k,hcLight:k},e.kg(1896,"Dropdown border.")),a_=(0,d.x1)("button.foreground",f.Q1.white,e.kg(1897,"Button foreground color.")),a0=(0,d.x1)("button.separator",(0,d.JO)(a_,.4),e.kg(1898,"Button separator color.")),a1=(0,d.x1)("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},e.kg(1899,"Button background color.")),a2=(0,d.x1)("button.hoverBackground",{dark:(0,d.a)(a1,.2),light:(0,d.e$)(a1,.2),hcDark:a1,hcLight:a1},e.kg(1900,"Button background color when hovering.")),a3=(0,d.x1)("button.border",k,e.kg(1901,"Button border color.")),a4=(0,d.x1)("button.secondaryForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:f.Q1.white,hcLight:g},e.kg(1902,"Secondary button foreground color.")),a5=(0,d.x1)("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:f.Q1.white},e.kg(1903,"Secondary button background color.")),a6=(0,d.x1)("button.secondaryHoverBackground",{dark:(0,d.a)(a5,.2),light:(0,d.e$)(a5,.2),hcDark:null,hcLight:null},e.kg(1904,"Secondary button background color when hovering.")),a7=(0,d.x1)("radio.activeForeground",aN,e.kg(1905,"Foreground color of active radio option.")),a8=(0,d.x1)("radio.activeBackground",aM,e.kg(1906,"Background color of active radio option.")),a9=(0,d.x1)("radio.activeBorder",aK,e.kg(1907,"Border color of the active radio option.")),ba=(0,d.x1)("radio.inactiveForeground",null,e.kg(1908,"Foreground color of inactive radio option.")),bb=(0,d.x1)("radio.inactiveBackground",null,e.kg(1909,"Background color of inactive radio option.")),bc=(0,d.x1)("radio.inactiveBorder",{light:(0,d.JO)(a7,.2),dark:(0,d.JO)(a7,.2),hcDark:(0,d.JO)(a7,.4),hcLight:(0,d.JO)(a7,.2)},e.kg(1910,"Border color of the inactive radio option.")),bd=(0,d.x1)("radio.inactiveHoverBackground",aL,e.kg(1911,"Background color of inactive active radio option when hovering.")),be=(0,d.x1)("checkbox.background",aX,e.kg(1912,"Background color of checkbox widget."));(0,d.x1)("checkbox.selectBackground",w,e.kg(1913,"Background color of checkbox widget when the element it's in is selected."));let bf=(0,d.x1)("checkbox.foreground",aZ,e.kg(1914,"Foreground color of checkbox widget.")),bg=(0,d.x1)("checkbox.border",a$,e.kg(1915,"Border color of checkbox widget."));(0,d.x1)("checkbox.selectBorder",i,e.kg(1916,"Border color of checkbox widget when the element it's in is selected."));let bh=(0,d.x1)("checkbox.disabled.background",{op:7,color:be,with:bf,ratio:.33},e.kg(1917,"Background of a disabled checkbox.")),bi=(0,d.x1)("checkbox.disabled.foreground",{op:7,color:bf,with:be,ratio:.33},e.kg(1918,"Foreground of a disabled checkbox.")),bj=(0,d.x1)("keybindingLabel.background",{dark:new f.Q1(new f.bU(128,128,128,.17)),light:new f.Q1(new f.bU(221,221,221,.4)),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1919,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),bk=(0,d.x1)("keybindingLabel.foreground",{dark:f.Q1.fromHex("#CCCCCC"),light:f.Q1.fromHex("#555555"),hcDark:f.Q1.white,hcLight:g},e.kg(1920,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),bl=(0,d.x1)("keybindingLabel.border",{dark:new f.Q1(new f.bU(51,51,51,.6)),light:new f.Q1(new f.bU(204,204,204,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:k},e.kg(1921,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),bm=(0,d.x1)("keybindingLabel.bottomBorder",{dark:new f.Q1(new f.bU(68,68,68,.6)),light:new f.Q1(new f.bU(187,187,187,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:g},e.kg(1922,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),bn=(0,d.x1)("list.focusBackground",null,e.kg(1923,"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bo=(0,d.x1)("list.focusForeground",null,e.kg(1924,"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bp=(0,d.x1)("list.focusOutline",{dark:j,light:j,hcDark:l,hcLight:l},e.kg(1925,"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bq=(0,d.x1)("list.focusAndSelectionOutline",null,e.kg(1926,"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),br=(0,d.x1)("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1927,"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bs=(0,d.x1)("list.activeSelectionForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:null,hcLight:null},e.kg(1928,"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bt=(0,d.x1)("list.activeSelectionIconForeground",null,e.kg(1929,"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bu=(0,d.x1)("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1930,"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bv=(0,d.x1)("list.inactiveSelectionForeground",null,e.kg(1931,"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bw=(0,d.x1)("list.inactiveSelectionIconForeground",null,e.kg(1932,"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bx=(0,d.x1)("list.inactiveFocusBackground",null,e.kg(1933,"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),by=(0,d.x1)("list.inactiveFocusOutline",null,e.kg(1934,"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bz=(0,d.x1)("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:f.Q1.white.transparent(.1),hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1935,"List/Tree background when hovering over items using the mouse.")),bA=(0,d.x1)("list.hoverForeground",null,e.kg(1936,"List/Tree foreground when hovering over items using the mouse.")),bB=(0,d.x1)("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},e.kg(1937,"List/Tree drag and drop background when moving items over other items when using the mouse.")),bC=(0,d.x1)("list.dropBetweenBackground",{dark:i,light:i,hcDark:null,hcLight:null},e.kg(1938,"List/Tree drag and drop border color when moving items between items when using the mouse.")),bD=(0,d.x1)("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:j,hcLight:j},e.kg(1939,"List/Tree foreground color of the match highlights when searching inside the list/tree.")),bE=(0,d.x1)("list.focusHighlightForeground",{dark:bD,light:(0,d.Hz)(br,bD,"#BBE7FF"),hcDark:bD,hcLight:bD},e.kg(1940,"List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));(0,d.x1)("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},e.kg(1941,"List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),(0,d.x1)("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},e.kg(1942,"Foreground color of list items containing errors.")),(0,d.x1)("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},e.kg(1943,"Foreground color of list items containing warnings."));let bF=(0,d.x1)("listFilterWidget.background",{light:(0,d.e$)(w,0),dark:(0,d.a)(w,0),hcDark:w,hcLight:w},e.kg(1944,"Background color of the type filter widget in lists and trees.")),bG=(0,d.x1)("listFilterWidget.outline",{dark:f.Q1.transparent,light:f.Q1.transparent,hcDark:"#f38518",hcLight:"#007ACC"},e.kg(1945,"Outline color of the type filter widget in lists and trees.")),bH=(0,d.x1)("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1946,"Outline color of the type filter widget in lists and trees, when there are no matches.")),bI=(0,d.x1)("listFilterWidget.shadow",ag,e.kg(1947,"Shadow color of the type filter widget in lists and trees."));(0,d.x1)("list.filterMatchBackground",{dark:N,light:N,hcDark:null,hcLight:null},e.kg(1948,"Background color of the filtered match.")),(0,d.x1)("list.filterMatchBorder",{dark:P,light:P,hcDark:k,hcLight:l},e.kg(1949,"Border color of the filtered match.")),(0,d.x1)("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},e.kg(1950,"List/Tree foreground color for items that are deemphasized."));let bJ=(0,d.x1)("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},e.kg(1951,"Tree stroke color for the indentation guides.")),bK=(0,d.x1)("tree.inactiveIndentGuidesStroke",(0,d.JO)(bJ,.4),e.kg(1952,"Tree stroke color for the indentation guides that are not active.")),bL=(0,d.x1)("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},e.kg(1953,"Table border color between columns.")),bM=(0,d.x1)("tree.tableOddRowsBackground",{dark:(0,d.JO)(g,.04),light:(0,d.JO)(g,.04),hcDark:null,hcLight:null},e.kg(1954,"Background color for odd table rows."));(0,d.x1)("editorActionList.background",w,e.kg(1955,"Action List background color."));let bN=(0,d.x1)("editorActionList.foreground",x,e.kg(1956,"Action List foreground color."));(0,d.x1)("editorActionList.focusForeground",bs,e.kg(1957,"Action List foreground color for the focused item.")),(0,d.x1)("editorActionList.focusBackground",br,e.kg(1958,"Action List background color for the focused item."));let bO=(0,d.x1)("menu.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1959,"Border color of menus.")),bP=(0,d.x1)("menu.foreground",aZ,e.kg(1960,"Foreground color of menu items.")),bQ=(0,d.x1)("menu.background",aX,e.kg(1961,"Background color of menu items.")),bR=(0,d.x1)("menu.selectionForeground",bs,e.kg(1962,"Foreground color of the selected menu item in menus.")),bS=(0,d.x1)("menu.selectionBackground",br,e.kg(1963,"Background color of the selected menu item in menus.")),bT=(0,d.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1964,"Border color of the selected menu item in menus.")),bU=(0,d.x1)("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:k,hcLight:k},e.kg(1965,"Color of a separator menu item in menus.")),bV=(0,d.x1)("quickInput.background",w,e.kg(1992,"Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),bW=(0,d.x1)("quickInput.foreground",x,e.kg(1993,"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),bX=(0,d.x1)("quickInputTitle.background",{dark:new f.Q1(new f.bU(255,255,255,.105)),light:new f.Q1(new f.bU(0,0,0,.06)),hcDark:"#000000",hcLight:f.Q1.white},e.kg(1994,"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),bY=(0,d.x1)("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1995,"Quick picker color for grouping labels.")),bZ=(0,d.x1)("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1996,"Quick picker color for grouping borders.")),b$=(0,d.x1)("quickInput.list.focusBackground",null,"",void 0,e.kg(1997,"Please use quickInputList.focusBackground instead")),b_=(0,d.x1)("quickInputList.focusForeground",bs,e.kg(1998,"Quick picker foreground color for the focused item.")),b0=(0,d.x1)("quickInputList.focusIconForeground",bt,e.kg(1999,"Quick picker icon foreground color for the focused item.")),b1=(0,d.x1)("quickInputList.focusBackground",{dark:(0,d.yL)(b$,br),light:(0,d.yL)(b$,br),hcDark:null,hcLight:null},e.kg(2e3,"Quick picker background color for the focused item."));(0,d.x1)("search.resultsInfoForeground",{light:g,dark:(0,d.JO)(g,.65),hcDark:g,hcLight:g},e.kg(2001,"Color of the text in the search viewlet's completion message.")),(0,d.x1)("searchEditor.findMatchBackground",{light:(0,d.JO)(N,.66),dark:(0,d.JO)(N,.66),hcDark:N,hcLight:N},e.kg(2002,"Color of the Search Editor query matches.")),(0,d.x1)("searchEditor.findMatchBorder",{light:(0,d.JO)(P,.66),dark:(0,d.JO)(P,.66),hcDark:P,hcLight:P},e.kg(2003,"Border color of the Search Editor query matches."))},78387:(a,b,c)=>{"use strict";c.d(b,{P:()=>i});var d=c(59317),e=c(70544),f=c(98447),g=c(22450),h=c(55866);class i{static computeUnicodeHighlights(a,b,c){var i;let k,l,m=c?c.startLineNumber:1,n=c?c.endLineNumber:a.getLineCount(),o=new j(b),p=o.getCandidateCodePoints();k="allNonBasicAscii"===p?RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):RegExp(`${(i=Array.from(p),`[${f.bm(i.map(a=>String.fromCodePoint(a)).join(""))}]`)}`,"g");let q=new e.W5(null,k),r=[],s=!1,t=0,u=0,v=0;d:for(let b=m;b<=n;b++){let c=a.getLineContent(b),e=c.length;q.reset(0);do if(l=q.next(c)){let a=l.index,i=l.index+l[0].length;if(a>0){let b=c.charCodeAt(a-1);f.pc(b)&&a--}if(i+1<e){let a=c.charCodeAt(i-1);f.pc(a)&&i++}let j=c.substring(a,i),k=(0,h.Th)(a+1,h.Ld,c,0);k&&k.endColumn<=a+1&&(k=null);let m=o.shouldHighlightNonBasicASCII(j,k?k.word:null);if(0!==m){if(3===m?t++:2===m?u++:1===m?v++:(0,g.xb)(m),r.length>=1e3){s=!0;break d}r.push(new d.Q(b,a+1,b,i+1))}}while(l)}return{ranges:r,hasMore:s,ambiguousCharacterCount:t,invisibleCharacterCount:u,nonBasicAsciiCharacterCount:v}}static computeUnicodeHighlightReason(a,b){let c=new j(b);switch(c.shouldHighlightNonBasicASCII(a,null)){case 0:return null;case 2:return{kind:1};case 3:{let d=a.codePointAt(0),e=c.ambiguousCharacters.getPrimaryConfusable(d),g=f.tl.getLocales().filter(a=>!f.tl.getInstance(new Set([...b.allowedLocales,a])).isAmbiguous(d));return{kind:0,confusableWith:String.fromCodePoint(e),notAmbiguousInLocales:g}}case 1:return{kind:2}}}}class j{constructor(a){this.options=a,this.allowedCodePoints=new Set(a.allowedCodePoints),this.ambiguousCharacters=f.tl.getInstance(new Set(a.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";let a=new Set;if(this.options.invisibleCharacters)for(let b of f.y_.codePoints)k(String.fromCodePoint(b))||a.add(b);if(this.options.ambiguousCharacters)for(let b of this.ambiguousCharacters.getConfusableCodePoints())a.add(b);for(let b of this.allowedCodePoints)a.delete(b);return a}shouldHighlightNonBasicASCII(a,b){let c=a.codePointAt(0);if(this.allowedCodePoints.has(c))return 0;if(this.options.nonBasicASCII)return 1;let d=!1,e=!1;if(b)for(let a of b){let b=a.codePointAt(0),c=f.aC(a);d=d||c,c||this.ambiguousCharacters.isAmbiguous(b)||f.y_.isInvisibleCharacter(b)||(e=!0)}return!d&&e?0:this.options.invisibleCharacters&&!k(a)&&f.y_.isInvisibleCharacter(c)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(c)?3:0}}function k(a){return" "===a||"\n"===a||" "===a}},78508:(a,b,c)=>{"use strict";c.d(b,{I:()=>k});var d=c(98447),e=c(29949),f=c(79677),g=c(59317),h=c(16817),i=c(69467);class j{constructor(a,b,c){this._cursorPositionBrand=void 0,this.lineNumber=a,this.column=b,this.leftoverVisibleColumns=c}}class k{static leftPosition(a,b){if(b.column>a.getLineMinColumn(b.lineNumber))return b.delta(void 0,-d.MV(a.getLineContent(b.lineNumber),b.column-1));if(!(b.lineNumber>1))return b;{let c=b.lineNumber-1;return new f.y(c,a.getLineMaxColumn(c))}}static leftPositionAtomicSoftTabs(a,b,c){if(b.column<=a.getLineIndentColumn(b.lineNumber)){let d=a.getLineMinColumn(b.lineNumber),e=a.getLineContent(b.lineNumber),g=h.s.atomicPosition(e,b.column-1,c,0);if(-1!==g&&g+1>=d)return new f.y(b.lineNumber,g+1)}return this.leftPosition(a,b)}static left(a,b,c){let d=a.stickyTabStops?k.leftPositionAtomicSoftTabs(b,c,a.tabSize):k.leftPosition(b,c);return new j(d.lineNumber,d.column,0)}static moveLeft(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.startLineNumber,g=c.selection.startColumn;else{let d=c.position.delta(void 0,-(e-1)),h=b.normalizePosition(k.clipPositionColumn(d,b),0),i=k.left(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static clipPositionColumn(a,b){return new f.y(a.lineNumber,k.clipRange(a.column,b.getLineMinColumn(a.lineNumber),b.getLineMaxColumn(a.lineNumber)))}static clipRange(a,b,c){return a<b?b:a>c?c:a}static rightPosition(a,b,c){return c<a.getLineMaxColumn(b)?c+=d.iy(a.getLineContent(b),c-1):b<a.getLineCount()&&(b+=1,c=a.getLineMinColumn(b)),new f.y(b,c)}static rightPositionAtomicSoftTabs(a,b,c,d,e){if(c<a.getLineIndentColumn(b)){let e=a.getLineContent(b),g=h.s.atomicPosition(e,c-1,d,1);if(-1!==g)return new f.y(b,g+1)}return this.rightPosition(a,b,c)}static right(a,b,c){let d=a.stickyTabStops?k.rightPositionAtomicSoftTabs(b,c.lineNumber,c.column,a.tabSize,a.indentSize):k.rightPosition(b,c.lineNumber,c.column);return new j(d.lineNumber,d.column,0)}static moveRight(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.endLineNumber,g=c.selection.endColumn;else{let d=c.position.delta(void 0,e-1),h=b.normalizePosition(k.clipPositionColumn(d,b),1),i=k.right(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static vertical(a,b,c,d,g,h,i,k){let l=e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize)+g,m=b.getLineCount(),n=1===c&&1===d,o=c===m&&d===b.getLineMaxColumn(c),p=h<c?n:o;if((c=h)<1?(c=1,d=i?b.getLineMinColumn(c):Math.min(b.getLineMaxColumn(c),d)):c>m?(c=m,d=i?b.getLineMaxColumn(c):Math.min(b.getLineMaxColumn(c),d)):d=a.columnFromVisibleColumn(b,c,l),g=p?0:l-e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize),void 0!==k){let a=new f.y(c,d),e=b.normalizePosition(a,k);g+=d-e.column,c=e.lineNumber,d=e.column}return new j(c,d,g)}static down(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c+f,g,4)}static moveDown(a,b,c,d,e){let g,h,i;c.hasSelection()&&!d?(g=c.selection.endLineNumber,h=c.selection.endColumn):(g=c.position.lineNumber,h=c.position.column);let j=0;do if(i=k.down(a,b,g+j,h,c.leftoverVisibleColumns,e,!0),b.normalizePosition(new f.y(i.lineNumber,i.column),2).lineNumber>g)break;while(j++<10&&g+j<b.getLineCount());return c.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns)}static translateDown(a,b,c){let d=c.selection,e=k.down(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.down(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static up(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c-f,g,3)}static moveUp(a,b,c,d,e){let f,g;c.hasSelection()&&!d?(f=c.selection.startLineNumber,g=c.selection.startColumn):(f=c.position.lineNumber,g=c.position.column);let h=k.up(a,b,f,g,c.leftoverVisibleColumns,e,!0);return c.move(d,h.lineNumber,h.column,h.leftoverVisibleColumns)}static translateUp(a,b,c){let d=c.selection,e=k.up(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.up(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static _isBlankLine(a,b){return 0===a.getLineFirstNonWhitespaceColumn(b)}static moveToPrevBlankLine(a,b,c,d){let e=c.position.lineNumber;for(;e>1&&this._isBlankLine(b,e);)e--;for(;e>1&&!this._isBlankLine(b,e);)e--;return c.move(d,e,b.getLineMinColumn(e),0)}static moveToNextBlankLine(a,b,c,d){let e=b.getLineCount(),f=c.position.lineNumber;for(;f<e&&this._isBlankLine(b,f);)f++;for(;f<e&&!this._isBlankLine(b,f);)f++;return c.move(d,f,b.getLineMinColumn(f),0)}static moveToBeginningOfLine(a,b,c,d){let e,f=c.position.lineNumber,g=b.getLineMinColumn(f),h=b.getLineFirstNonWhitespaceColumn(f)||g;return e=c.position.column===h?g:h,c.move(d,f,e,0)}static moveToEndOfLine(a,b,c,d,e){let f=c.position.lineNumber,g=b.getLineMaxColumn(f);return c.move(d,f,g,e?0x40000000-g:0)}static moveToBeginningOfBuffer(a,b,c,d){return c.move(d,1,1,0)}static moveToEndOfBuffer(a,b,c,d){let e=b.getLineCount(),f=b.getLineMaxColumn(e);return c.move(d,e,f,0)}}},78595:()=>{},79487:(a,b,c)=>{"use strict";c.d(b,{D8:()=>q,L:()=>w,Xe:()=>v,ZG:()=>t,ez:()=>r,i1:()=>p,is:()=>o,nI:()=>u,ug:()=>x});var d,e=c(18401),f=c(60734),g=c(11314),h=c(71373),i=c(81633),j=c(70511),k=c(45367),l=c(29715),m=c(32765),n=function(a,b){return function(c,d){b(c,d,a)}};function o(a){return void 0!==a.command}function p(a){return void 0!==a.submenu}class q{static{this._instances=new Map}static{this.CommandPalette=new q("CommandPalette")}static{this.DebugBreakpointsContext=new q("DebugBreakpointsContext")}static{this.DebugCallStackContext=new q("DebugCallStackContext")}static{this.DebugConsoleContext=new q("DebugConsoleContext")}static{this.DebugVariablesContext=new q("DebugVariablesContext")}static{this.NotebookVariablesContext=new q("NotebookVariablesContext")}static{this.DebugHoverContext=new q("DebugHoverContext")}static{this.DebugWatchContext=new q("DebugWatchContext")}static{this.DebugToolBar=new q("DebugToolBar")}static{this.DebugToolBarStop=new q("DebugToolBarStop")}static{this.DebugDisassemblyContext=new q("DebugDisassemblyContext")}static{this.DebugCallStackToolbar=new q("DebugCallStackToolbar")}static{this.DebugCreateConfiguration=new q("DebugCreateConfiguration")}static{this.EditorContext=new q("EditorContext")}static{this.SimpleEditorContext=new q("SimpleEditorContext")}static{this.EditorContent=new q("EditorContent")}static{this.EditorLineNumberContext=new q("EditorLineNumberContext")}static{this.EditorContextCopy=new q("EditorContextCopy")}static{this.EditorContextPeek=new q("EditorContextPeek")}static{this.EditorContextShare=new q("EditorContextShare")}static{this.EditorTitle=new q("EditorTitle")}static{this.CompactWindowEditorTitle=new q("CompactWindowEditorTitle")}static{this.EditorTitleRun=new q("EditorTitleRun")}static{this.EditorTitleContext=new q("EditorTitleContext")}static{this.EditorTitleContextShare=new q("EditorTitleContextShare")}static{this.EmptyEditorGroup=new q("EmptyEditorGroup")}static{this.EmptyEditorGroupContext=new q("EmptyEditorGroupContext")}static{this.EditorTabsBarContext=new q("EditorTabsBarContext")}static{this.EditorTabsBarShowTabsSubmenu=new q("EditorTabsBarShowTabsSubmenu")}static{this.EditorTabsBarShowTabsZenModeSubmenu=new q("EditorTabsBarShowTabsZenModeSubmenu")}static{this.EditorActionsPositionSubmenu=new q("EditorActionsPositionSubmenu")}static{this.EditorSplitMoveSubmenu=new q("EditorSplitMoveSubmenu")}static{this.ExplorerContext=new q("ExplorerContext")}static{this.ExplorerContextShare=new q("ExplorerContextShare")}static{this.ExtensionContext=new q("ExtensionContext")}static{this.ExtensionEditorContextMenu=new q("ExtensionEditorContextMenu")}static{this.GlobalActivity=new q("GlobalActivity")}static{this.CommandCenter=new q("CommandCenter")}static{this.CommandCenterCenter=new q("CommandCenterCenter")}static{this.LayoutControlMenuSubmenu=new q("LayoutControlMenuSubmenu")}static{this.LayoutControlMenu=new q("LayoutControlMenu")}static{this.MenubarMainMenu=new q("MenubarMainMenu")}static{this.MenubarAppearanceMenu=new q("MenubarAppearanceMenu")}static{this.MenubarDebugMenu=new q("MenubarDebugMenu")}static{this.MenubarEditMenu=new q("MenubarEditMenu")}static{this.MenubarCopy=new q("MenubarCopy")}static{this.MenubarFileMenu=new q("MenubarFileMenu")}static{this.MenubarGoMenu=new q("MenubarGoMenu")}static{this.MenubarHelpMenu=new q("MenubarHelpMenu")}static{this.MenubarLayoutMenu=new q("MenubarLayoutMenu")}static{this.MenubarNewBreakpointMenu=new q("MenubarNewBreakpointMenu")}static{this.PanelAlignmentMenu=new q("PanelAlignmentMenu")}static{this.PanelPositionMenu=new q("PanelPositionMenu")}static{this.ActivityBarPositionMenu=new q("ActivityBarPositionMenu")}static{this.MenubarPreferencesMenu=new q("MenubarPreferencesMenu")}static{this.MenubarRecentMenu=new q("MenubarRecentMenu")}static{this.MenubarSelectionMenu=new q("MenubarSelectionMenu")}static{this.MenubarShare=new q("MenubarShare")}static{this.MenubarSwitchEditorMenu=new q("MenubarSwitchEditorMenu")}static{this.MenubarSwitchGroupMenu=new q("MenubarSwitchGroupMenu")}static{this.MenubarTerminalMenu=new q("MenubarTerminalMenu")}static{this.MenubarTerminalSuggestStatusMenu=new q("MenubarTerminalSuggestStatusMenu")}static{this.MenubarViewMenu=new q("MenubarViewMenu")}static{this.MenubarHomeMenu=new q("MenubarHomeMenu")}static{this.OpenEditorsContext=new q("OpenEditorsContext")}static{this.OpenEditorsContextShare=new q("OpenEditorsContextShare")}static{this.ProblemsPanelContext=new q("ProblemsPanelContext")}static{this.SCMInputBox=new q("SCMInputBox")}static{this.SCMChangeContext=new q("SCMChangeContext")}static{this.SCMResourceContext=new q("SCMResourceContext")}static{this.SCMResourceContextShare=new q("SCMResourceContextShare")}static{this.SCMResourceFolderContext=new q("SCMResourceFolderContext")}static{this.SCMResourceGroupContext=new q("SCMResourceGroupContext")}static{this.SCMSourceControl=new q("SCMSourceControl")}static{this.SCMSourceControlInline=new q("SCMSourceControlInline")}static{this.SCMSourceControlTitle=new q("SCMSourceControlTitle")}static{this.SCMHistoryTitle=new q("SCMHistoryTitle")}static{this.SCMHistoryItemContext=new q("SCMHistoryItemContext")}static{this.SCMHistoryItemChangeContext=new q("SCMHistoryItemChangeContext")}static{this.SCMHistoryItemHover=new q("SCMHistoryItemHover")}static{this.SCMHistoryItemRefContext=new q("SCMHistoryItemRefContext")}static{this.SCMQuickDiffDecorations=new q("SCMQuickDiffDecorations")}static{this.SCMTitle=new q("SCMTitle")}static{this.SearchContext=new q("SearchContext")}static{this.SearchActionMenu=new q("SearchActionContext")}static{this.StatusBarWindowIndicatorMenu=new q("StatusBarWindowIndicatorMenu")}static{this.StatusBarRemoteIndicatorMenu=new q("StatusBarRemoteIndicatorMenu")}static{this.StickyScrollContext=new q("StickyScrollContext")}static{this.TestItem=new q("TestItem")}static{this.TestItemGutter=new q("TestItemGutter")}static{this.TestProfilesContext=new q("TestProfilesContext")}static{this.TestMessageContext=new q("TestMessageContext")}static{this.TestMessageContent=new q("TestMessageContent")}static{this.TestPeekElement=new q("TestPeekElement")}static{this.TestPeekTitle=new q("TestPeekTitle")}static{this.TestCallStack=new q("TestCallStack")}static{this.TestCoverageFilterItem=new q("TestCoverageFilterItem")}static{this.TouchBarContext=new q("TouchBarContext")}static{this.TitleBar=new q("TitleBar")}static{this.TitleBarContext=new q("TitleBarContext")}static{this.TitleBarTitleContext=new q("TitleBarTitleContext")}static{this.TunnelContext=new q("TunnelContext")}static{this.TunnelPrivacy=new q("TunnelPrivacy")}static{this.TunnelProtocol=new q("TunnelProtocol")}static{this.TunnelPortInline=new q("TunnelInline")}static{this.TunnelTitle=new q("TunnelTitle")}static{this.TunnelLocalAddressInline=new q("TunnelLocalAddressInline")}static{this.TunnelOriginInline=new q("TunnelOriginInline")}static{this.ViewItemContext=new q("ViewItemContext")}static{this.ViewContainerTitle=new q("ViewContainerTitle")}static{this.ViewContainerTitleContext=new q("ViewContainerTitleContext")}static{this.ViewTitle=new q("ViewTitle")}static{this.ViewTitleContext=new q("ViewTitleContext")}static{this.CommentEditorActions=new q("CommentEditorActions")}static{this.CommentThreadTitle=new q("CommentThreadTitle")}static{this.CommentThreadActions=new q("CommentThreadActions")}static{this.CommentThreadAdditionalActions=new q("CommentThreadAdditionalActions")}static{this.CommentThreadTitleContext=new q("CommentThreadTitleContext")}static{this.CommentThreadCommentContext=new q("CommentThreadCommentContext")}static{this.CommentTitle=new q("CommentTitle")}static{this.CommentActions=new q("CommentActions")}static{this.CommentsViewThreadActions=new q("CommentsViewThreadActions")}static{this.InteractiveToolbar=new q("InteractiveToolbar")}static{this.InteractiveCellTitle=new q("InteractiveCellTitle")}static{this.InteractiveCellDelete=new q("InteractiveCellDelete")}static{this.InteractiveCellExecute=new q("InteractiveCellExecute")}static{this.InteractiveInputExecute=new q("InteractiveInputExecute")}static{this.InteractiveInputConfig=new q("InteractiveInputConfig")}static{this.ReplInputExecute=new q("ReplInputExecute")}static{this.IssueReporter=new q("IssueReporter")}static{this.NotebookToolbar=new q("NotebookToolbar")}static{this.NotebookToolbarContext=new q("NotebookToolbarContext")}static{this.NotebookStickyScrollContext=new q("NotebookStickyScrollContext")}static{this.NotebookCellTitle=new q("NotebookCellTitle")}static{this.NotebookCellDelete=new q("NotebookCellDelete")}static{this.NotebookCellInsert=new q("NotebookCellInsert")}static{this.NotebookCellBetween=new q("NotebookCellBetween")}static{this.NotebookCellListTop=new q("NotebookCellTop")}static{this.NotebookCellExecute=new q("NotebookCellExecute")}static{this.NotebookCellExecuteGoTo=new q("NotebookCellExecuteGoTo")}static{this.NotebookCellExecutePrimary=new q("NotebookCellExecutePrimary")}static{this.NotebookDiffCellInputTitle=new q("NotebookDiffCellInputTitle")}static{this.NotebookDiffDocumentMetadata=new q("NotebookDiffDocumentMetadata")}static{this.NotebookDiffCellMetadataTitle=new q("NotebookDiffCellMetadataTitle")}static{this.NotebookDiffCellOutputsTitle=new q("NotebookDiffCellOutputsTitle")}static{this.NotebookOutputToolbar=new q("NotebookOutputToolbar")}static{this.NotebookOutlineFilter=new q("NotebookOutlineFilter")}static{this.NotebookOutlineActionMenu=new q("NotebookOutlineActionMenu")}static{this.NotebookEditorLayoutConfigure=new q("NotebookEditorLayoutConfigure")}static{this.NotebookKernelSource=new q("NotebookKernelSource")}static{this.BulkEditTitle=new q("BulkEditTitle")}static{this.BulkEditContext=new q("BulkEditContext")}static{this.TimelineItemContext=new q("TimelineItemContext")}static{this.TimelineTitle=new q("TimelineTitle")}static{this.TimelineTitleContext=new q("TimelineTitleContext")}static{this.TimelineFilterSubMenu=new q("TimelineFilterSubMenu")}static{this.AccountsContext=new q("AccountsContext")}static{this.SidebarTitle=new q("SidebarTitle")}static{this.PanelTitle=new q("PanelTitle")}static{this.AuxiliaryBarTitle=new q("AuxiliaryBarTitle")}static{this.TerminalInstanceContext=new q("TerminalInstanceContext")}static{this.TerminalEditorInstanceContext=new q("TerminalEditorInstanceContext")}static{this.TerminalNewDropdownContext=new q("TerminalNewDropdownContext")}static{this.TerminalTabContext=new q("TerminalTabContext")}static{this.TerminalTabEmptyAreaContext=new q("TerminalTabEmptyAreaContext")}static{this.TerminalStickyScrollContext=new q("TerminalStickyScrollContext")}static{this.WebviewContext=new q("WebviewContext")}static{this.InlineCompletionsActions=new q("InlineCompletionsActions")}static{this.InlineEditsActions=new q("InlineEditsActions")}static{this.NewFile=new q("NewFile")}static{this.MergeInput1Toolbar=new q("MergeToolbar1Toolbar")}static{this.MergeInput2Toolbar=new q("MergeToolbar2Toolbar")}static{this.MergeBaseToolbar=new q("MergeBaseToolbar")}static{this.MergeInputResultToolbar=new q("MergeToolbarResultToolbar")}static{this.InlineSuggestionToolbar=new q("InlineSuggestionToolbar")}static{this.InlineEditToolbar=new q("InlineEditToolbar")}static{this.ChatContext=new q("ChatContext")}static{this.ChatCodeBlock=new q("ChatCodeblock")}static{this.ChatCompareBlock=new q("ChatCompareBlock")}static{this.ChatMessageTitle=new q("ChatMessageTitle")}static{this.ChatHistory=new q("ChatHistory")}static{this.ChatWelcomeHistoryContext=new q("ChatWelcomeHistoryContext")}static{this.ChatMessageFooter=new q("ChatMessageFooter")}static{this.ChatExecute=new q("ChatExecute")}static{this.ChatExecuteSecondary=new q("ChatExecuteSecondary")}static{this.ChatInput=new q("ChatInput")}static{this.ChatInputSide=new q("ChatInputSide")}static{this.ChatModePicker=new q("ChatModePicker")}static{this.ChatEditingWidgetToolbar=new q("ChatEditingWidgetToolbar")}static{this.ChatEditingEditorContent=new q("ChatEditingEditorContent")}static{this.ChatEditingEditorHunk=new q("ChatEditingEditorHunk")}static{this.ChatEditingDeletedNotebookCell=new q("ChatEditingDeletedNotebookCell")}static{this.ChatInputAttachmentToolbar=new q("ChatInputAttachmentToolbar")}static{this.ChatEditingWidgetModifiedFilesToolbar=new q("ChatEditingWidgetModifiedFilesToolbar")}static{this.ChatInputResourceAttachmentContext=new q("ChatInputResourceAttachmentContext")}static{this.ChatInputSymbolAttachmentContext=new q("ChatInputSymbolAttachmentContext")}static{this.ChatInlineResourceAnchorContext=new q("ChatInlineResourceAnchorContext")}static{this.ChatInlineSymbolAnchorContext=new q("ChatInlineSymbolAnchorContext")}static{this.ChatMessageCheckpoint=new q("ChatMessageCheckpoint")}static{this.ChatMessageRestoreCheckpoint=new q("ChatMessageRestoreCheckpoint")}static{this.ChatEditingCodeBlockContext=new q("ChatEditingCodeBlockContext")}static{this.ChatTitleBarMenu=new q("ChatTitleBarMenu")}static{this.ChatAttachmentsContext=new q("ChatAttachmentsContext")}static{this.ChatToolOutputResourceToolbar=new q("ChatToolOutputResourceToolbar")}static{this.ChatTextEditorMenu=new q("ChatTextEditorMenu")}static{this.ChatToolOutputResourceContext=new q("ChatToolOutputResourceContext")}static{this.ChatMultiDiffContext=new q("ChatMultiDiffContext")}static{this.ChatSessionsMenu=new q("ChatSessionsMenu")}static{this.ChatConfirmationMenu=new q("ChatConfirmationMenu")}static{this.AccessibleView=new q("AccessibleView")}static{this.MultiDiffEditorFileToolbar=new q("MultiDiffEditorFileToolbar")}static{this.DiffEditorHunkToolbar=new q("DiffEditorHunkToolbar")}static{this.DiffEditorSelectionToolbar=new q("DiffEditorSelectionToolbar")}constructor(a){if(q._instances.has(a))throw TypeError(`MenuId with identifier '${a}' already exists. Use MenuId.for(ident) or a unique identifier`);q._instances.set(a,this),this.id=a}}let r=(0,l.u1)("menuService");class s{static{this._all=new Map}static for(a){let b=this._all.get(a);return b||(b=new s(a),this._all.set(a,b)),b}static merge(a){let b=new Set;for(let c of a)c instanceof s&&b.add(c.id);return b}constructor(a){this.id=a,this.has=b=>b===a}}let t=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new f.QT({merge:s.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(a){return this._commands.set(a.id,a),this._onDidChangeMenu.fire(s.for(q.CommandPalette)),(0,g.lC)((0,g.s)(()=>{this._commands.delete(a.id)&&this._onDidChangeMenu.fire(s.for(q.CommandPalette))}))}getCommand(a){return this._commands.get(a)}getCommands(){let a=new Map;return this._commands.forEach((b,c)=>a.set(c,b)),a}appendMenuItem(a,b){let c=this._menuItems.get(a);c||(c=new h.w,this._menuItems.set(a,c));let d=c.push(b);return this._onDidChangeMenu.fire(s.for(a)),(0,g.lC)((0,g.s)(()=>{d(),this._onDidChangeMenu.fire(s.for(a))}))}appendMenuItems(a){let b=new g.Cm;for(let{id:c,item:d}of a)b.add(this.appendMenuItem(c,d));return b}getMenuItems(a){let b;return b=this._menuItems.has(a)?[...this._menuItems.get(a)]:[],a===q.CommandPalette&&this._appendImplicitItems(b),b}_appendImplicitItems(a){let b=new Set;for(let c of a)o(c)&&(b.add(c.command.id),c.alt&&b.add(c.alt.id));this._commands.forEach((c,d)=>{b.has(d)||a.push({command:c})})}};class u extends e.YH{constructor(a,b,c){super(`submenuitem.${a.submenu.id}`,"string"==typeof a.title?a.title:a.title.value,c,"submenu"),this.item=a,this.hideActions=b}}let v=d=class{static label(a,b){return b?.renderShortTitle&&a.shortTitle?"string"==typeof a.shortTitle?a.shortTitle:a.shortTitle.value:"string"==typeof a.title?a.title:a.title.value}constructor(a,b,c,e,f,g,h){let j;if(this.hideActions=e,this.menuKeybinding=f,this._commandService=h,this.id=a.id,this.label=d.label(a,c),this.tooltip=("string"==typeof a.tooltip?a.tooltip:a.tooltip?.value)??"",this.enabled=!a.precondition||g.contextMatchesRules(a.precondition),this.checked=void 0,a.toggled){let b=a.toggled.condition?a.toggled:{condition:a.toggled};this.checked=g.contextMatchesRules(b.condition),this.checked&&b.tooltip&&(this.tooltip="string"==typeof b.tooltip?b.tooltip:b.tooltip.value),this.checked&&i.L.isThemeIcon(b.icon)&&(j=b.icon),this.checked&&b.title&&(this.label="string"==typeof b.title?b.title:b.title.value)}j||(j=i.L.isThemeIcon(a.icon)?a.icon:void 0),this.item=a,this.alt=b?new d(b,void 0,c,e,void 0,g,h):void 0,this._options=c,this.class=j&&i.L.asClassName(j)}run(...a){let b=[];return this._options?.arg&&(b=[...b,this._options.arg]),this._options?.shouldForwardArgs&&(b=[...b,...a]),this._commandService.executeCommand(this.id,...b)}};v=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([n(5,k.fN),n(6,j.d)],v);class w{constructor(a){this.desc=a}}function x(a){let b=[],c=new a,{f1:d,menu:e,keybinding:f,...h}=c.desc;if(j.w.getCommand(h.id))throw Error(`Cannot register two commands with the same id: ${h.id}`);if(b.push(j.w.registerCommand({id:h.id,handler:(a,...b)=>c.run(a,...b),metadata:h.metadata??{description:c.desc.title}})),Array.isArray(e))for(let a of e)b.push(t.appendMenuItem(a.id,{command:{...h,precondition:null===a.precondition?void 0:h.precondition},...a}));else e&&b.push(t.appendMenuItem(e.id,{command:{...h,precondition:null===e.precondition?void 0:h.precondition},...e}));if(d&&(b.push(t.appendMenuItem(q.CommandPalette,{command:h,when:h.precondition})),b.push(t.addCommand(h))),Array.isArray(f))for(let a of f)b.push(m.f.registerKeybindingRule({...a,id:h.id,when:h.precondition?k.M$.and(h.precondition,a.when):a.when}));else f&&b.push(m.f.registerKeybindingRule({...f,id:h.id,when:h.precondition?k.M$.and(h.precondition,f.when):f.when}));return{dispose(){(0,g.AS)(b)}}}},79677:(a,b,c)=>{"use strict";c.d(b,{y:()=>d});class d{constructor(a,b){this.lineNumber=a,this.column=b}with(a=this.lineNumber,b=this.column){return a===this.lineNumber&&b===this.column?this:new d(a,b)}delta(a=0,b=0){return this.with(Math.max(1,this.lineNumber+a),Math.max(1,this.column+b))}equals(a){return d.equals(this,a)}static equals(a,b){return!a&&!b||!!a&&!!b&&a.lineNumber===b.lineNumber&&a.column===b.column}isBefore(a){return d.isBefore(this,a)}static isBefore(a,b){return a.lineNumber<b.lineNumber||!(b.lineNumber<a.lineNumber)&&a.column<b.column}isBeforeOrEqual(a){return d.isBeforeOrEqual(this,a)}static isBeforeOrEqual(a,b){return a.lineNumber<b.lineNumber||!(b.lineNumber<a.lineNumber)&&a.column<=b.column}static compare(a,b){let c=0|a.lineNumber,d=0|b.lineNumber;return c===d?(0|a.column)-(0|b.column):c-d}clone(){return new d(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(a){return new d(a.lineNumber,a.column)}static isIPosition(a){return a&&"number"==typeof a.lineNumber&&"number"==typeof a.column}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}}},79851:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});let d=(0,c(29715).u1)("keybindingService")},79854:(a,b,c)=>{"use strict";c.d(b,{J7:()=>j,W0:()=>h,aV:()=>i,nd:()=>g});var d=c(56167),e=c(25536),f=c(45367);new f.N1("isMac",d.zx,(0,e.kg)(1669,"Whether the operating system is macOS")),new f.N1("isLinux",d.j9,(0,e.kg)(1670,"Whether the operating system is Linux"));let g=new f.N1("isWindows",d.uF,(0,e.kg)(1671,"Whether the operating system is Windows")),h=new f.N1("isWeb",d.HZ,(0,e.kg)(1672,"Whether the platform is a web browser"));new f.N1("isMacNative",d.zx&&!d.HZ,(0,e.kg)(1673,"Whether the operating system is macOS on a non-browser platform")),new f.N1("isIOS",d.un,(0,e.kg)(1674,"Whether the operating system is iOS")),new f.N1("isMobile",d.Fr,(0,e.kg)(1675,"Whether the platform is a mobile web browser")),new f.N1("isDevelopment",!1,!0),new f.N1("productQualityType","",(0,e.kg)(1676,"Quality type of VS Code"));let i="inputFocus",j=new f.N1(i,!1,(0,e.kg)(1677,"Whether keyboard focus is inside an input box"))},80058:()=>{},80095:(a,b,c)=>{"use strict";var d;c.d(b,{j:()=>d}),function(a){let b=!1;a.enable=function(){b=!0},a.ofCaller=function(){if(!b)return;let a=Error,c=a.stackTraceLimit;a.stackTraceLimit=3;let d=Error().stack;return a.stackTraceLimit=c,e.fromStack(d,2)}}(d||(d={}));class e{static fromStack(a,b){let c=function(a){let b=a.match(/\((.*):(\d+):(\d+)\)/);if(b)return{fileName:b[1],line:parseInt(b[2]),column:parseInt(b[3]),id:a};let c=a.match(/at ([^\(\)]*):(\d+):(\d+)/);if(c)return{fileName:c[1],line:parseInt(c[2]),column:parseInt(c[3]),id:a}}(a.split("\n")[b+1]);return c?new e(c.fileName,c.line,c.column,c.id):void 0}constructor(a,b,c,d){this.fileName=a,this.line=b,this.column=c,this.id=d}}},80569:()=>{},80815:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},80820:()=>{},81040:(a,b,c)=>{"use strict";c.d(b,{e2:()=>i,sN:()=>g,tW:()=>f,v7:()=>l});var d=c(5030),e=c(98447);function f(a){return g(a,0)}function g(a,b){switch(typeof a){case"object":var c,d,e,f;if(null===a)return h(349,b);if(Array.isArray(a)){return c=a,d=h(104579,d=b),c.reduce((a,b)=>g(b,a),d)}return e=a,f=h(181387,f=b),Object.keys(e).sort().reduce((a,b)=>(a=i(b,a),g(e[b],a)),f);case"string":return i(a,b);case"boolean":return h(a?433:863,b);case"number":return h(a,b);case"undefined":return h(937,b);default:return h(617,b)}}function h(a,b){return(b<<5)-b+a|0}function i(a,b){b=h(149417,b);for(let c=0,d=a.length;c<d;c++)b=h(a.charCodeAt(c),b);return b}function j(a,b,c=32){let d=c-b;return(a<<b|(~((1<<d)-1)&a)>>>d)>>>0}function k(a,b=32){return a instanceof ArrayBuffer?(0,d.mU)(d.MB.wrap(new Uint8Array(a))):(a>>>0).toString(16).padStart(b/4,"0")}class l{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=0x67452301,this._h1=0xefcdab89,this._h2=0x98badcfe,this._h3=0x10325476,this._h4=0xc3d2e1f0,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(a){let b,c,d=a.length;if(0===d)return;let f=this._buff,g=this._buffLen,h=this._leftoverHighSurrogate;for(0!==h?(b=h,c=-1,h=0):(b=a.charCodeAt(0),c=0);;){let i=b;if(e.pc(b))if(c+1<d){let d=a.charCodeAt(c+1);e.LJ(d)?(c++,i=e.z_(b,d)):i=65533}else{h=b;break}else e.LJ(b)&&(i=65533);if(g=this._push(f,g,i),++c<d)b=a.charCodeAt(c);else break}this._buffLen=g,this._leftoverHighSurrogate=h}_push(a,b,c){return c<128?a[b++]=c:(c<2048?a[b++]=192|(1984&c)>>>6:(c<65536?a[b++]=224|(61440&c)>>>12:(a[b++]=240|(1835008&c)>>>18,a[b++]=128|(258048&c)>>>12),a[b++]=128|(4032&c)>>>6),a[b++]=128|(63&c)>>>0),b>=64&&(this._step(),b-=64,this._totalLen+=64,a[0]=a[64],a[1]=a[65],a[2]=a[66]),b}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),k(this._h0)+k(this._h1)+k(this._h2)+k(this._h3)+k(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let a=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(a/0x100000000),!1),this._buffDV.setUint32(60,a%0x100000000,!1),this._step()}_step(){let a,b,c,d=l._bigBlock32,e=this._buffDV;for(let a=0;a<64;a+=4)d.setUint32(a,e.getUint32(a,!1),!1);for(let a=64;a<320;a+=4)d.setUint32(a,j(d.getUint32(a-12,!1)^d.getUint32(a-32,!1)^d.getUint32(a-56,!1)^d.getUint32(a-64,!1),1),!1);let f=this._h0,g=this._h1,h=this._h2,i=this._h3,k=this._h4;for(let e=0;e<80;e++)e<20?(a=g&h|~g&i,b=0x5a827999):e<40?(a=g^h^i,b=0x6ed9eba1):e<60?(a=g&h|g&i|h&i,b=0x8f1bbcdc):(a=g^h^i,b=0xca62c1d6),c=j(f,5)+a+k+b+d.getUint32(4*e,!1)|0,k=i,i=h,h=j(g,30),g=f,f=c;this._h0=this._h0+f|0,this._h1=this._h1+g|0,this._h2=this._h2+h|0,this._h3=this._h3+i|0,this._h4=this._h4+k|0}}},81125:(a,b,c)=>{"use strict";c.d(b,{Ay:()=>g.Ay,Cm:()=>g.Cm,D7:()=>f.D7,Ft:()=>d.Ft,VD:()=>g.VD,dz:()=>f.dz,nx:()=>e.nx,s:()=>g.s,y4:()=>f.y4});var d=c(22450),e=c(37457),f=c(88347);c(60734);var g=c(11314)},81190:(a,b,c)=>{"use strict";c.d(b,{L:()=>d});let d=(0,c(29715).u1)("languageService")},81633:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(90399);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id}}(e||(e={}))},81820:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof h?d.loggers.push(a):d=new h([d,a]):d=a}function f(){return d}function g(a){}c.d(b,{EJ:()=>e,YQ:()=>g,tZ:()=>f});class h{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},82135:(a,b,c)=>{"use strict";c.d(b,{GM:()=>r,KL:()=>t,Kl:()=>l,Ob:()=>m,Ou:()=>q,XT:()=>o,Zb:()=>s,Zw:()=>n,bk:()=>p,dv:()=>k,wp:()=>u});var d=c(90399),e=c(81633),f=c(14088),g=c(25536),h=c(78323),i=c(54942);(0,h.x1A)("diffEditor.move.border","#8b8b8b9c",(0,g.kg)(134,"The border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.moveActive.border","#FFA500",(0,g.kg)(135,"The active border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},(0,g.kg)(136,"The color of the shadow around unchanged region widgets."));let j=(0,i.pU)("diff-insert",d.W.add,(0,g.kg)(137,"Line decoration for inserts in the diff editor.")),k=(0,i.pU)("diff-remove",d.W.remove,(0,g.kg)(138,"Line decoration for removals in the diff editor.")),l=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+e.L.asClassName(j),marginClassName:"gutter-insert"}),m=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+e.L.asClassName(k),marginClassName:"gutter-delete"}),n=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),o=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),p=f.kI.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),q=f.kI.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),r=f.kI.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),s=f.kI.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),t=f.kI.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),u=f.kI.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"})},82687:(a,b,c)=>{"use strict";c.d(b,{a:()=>d,w:()=>e});let d=(0,c(29715).u1)("dataChannelService");class e{getDataChannel(a){return{sendData:()=>{}}}}},82693:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(22450),e=c(98447);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},82962:(a,b,c)=>{"use strict";c.d(b,{Z4:()=>F,EH:()=>E,XF:()=>G});var d=c(88637),e=c(3055),f=c(32677),g=c(98350),h=c(75096),i=c(56167),j=c(62274);c(85999);var k=c(25536),l=c(54734),m=c(60734),n=c(61551),o=c(11314),p=c(88077),q=c(76136),r=c(67397),s=c(31662),t=c(43585),u=c(21036),v=c(18732);c(45442);let w=f.$,x="selectOption.entry.template";class y{get templateId(){return x}renderTemplate(a){let b=Object.create(null);return b.root=a,b.text=f.BC(a,w(".option-text")),b.detail=f.BC(a,w(".option-detail")),b.decoratorRight=f.BC(a,w(".option-decorator-right")),b}renderElement(a,b,c){let d=a.text,e=a.detail,f=a.decoratorRight,g=a.isDisabled;c.text.textContent=d,c.detail.textContent=e||"",c.decoratorRight.textContent=f||"",g?c.root.classList.add("option-disabled"):c.root.classList.remove("option-disabled")}disposeTemplate(a){}}class z extends o.jG{static{this.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN=32}static{this.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN=2}static{this.DEFAULT_MINIMUM_VISIBLE_OPTIONS=3}constructor(a,b,c,d,e){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=d,this.selectBoxOptions=e||Object.create(null),"number"!=typeof this.selectBoxOptions.minBottomMargin?this.selectBoxOptions.minBottomMargin=z.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new m.vl,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(c),this.selected=b||0,a&&this.setOptions(a,b),this.initStyleSheet()}setTitle(a){!this._hover&&a?this._hover=this._register((0,u.i)().setupManagedHover((0,h.nZ)("mouse"),this.selectElement,a)):this._hover&&this._hover.update(a)}getHeight(){return 22}getTemplateId(){return x}constructSelectDropDown(a){this.contextViewProvider=a,this.selectDropDownContainer=f.$(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=f.BC(this.selectDropDownContainer,w(".select-box-details-pane"));let b=f.BC(this.selectDropDownContainer,w(".select-box-dropdown-container-width-control")),c=f.BC(b,w(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",f.BC(c,this.widthControlElement),this._dropDownPosition=0,this.styleElement=q.li(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(f.ko(this.selectDropDownContainer,f.Bx.DRAG_START,a=>{f.fs.stop(a,!0)}))}registerListeners(){let a;this._register(f.un(this.selectElement,"change",a=>{this.selected=a.target.selectedIndex,this._onDidSelect.fire({index:a.target.selectedIndex,selected:a.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(f.ko(this.selectElement,f.Bx.CLICK,a=>{f.fs.stop(a),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(f.ko(this.selectElement,f.Bx.MOUSE_DOWN,a=>{f.fs.stop(a)})),this._register(f.ko(this.selectElement,"touchstart",b=>{a=this._isVisible})),this._register(f.ko(this.selectElement,"touchend",b=>{f.fs.stop(b),a?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(f.ko(this.selectElement,f.Bx.KEY_DOWN,a=>{let b=new s.Z(a),c=!1;i.zx?(18===b.keyCode||16===b.keyCode||10===b.keyCode||3===b.keyCode)&&(c=!0):(18===b.keyCode&&b.altKey||16===b.keyCode&&b.altKey||10===b.keyCode||3===b.keyCode)&&(c=!0),c&&(this.showSelectDropDown(),f.fs.stop(a,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(a,b){l.aI(this.options,a)||(this.options=a,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((a,b)=>{this.selectElement.add(this.createOption(a.text,b,a.isDisabled)),"string"==typeof a.description&&(this._hasDetails=!0)})),void 0!==b&&(this.select(b),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(a){a>=0&&a<this.options.length?this.selected=a:a>this.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(a){this.selectElement.tabIndex=a?0:-1}render(a){this.container=a,a.classList.add("select-container"),a.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){let a=[];this.styles.listFocusBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(a.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=a.join("\n")}styleSelectElement(){let a=this.styles.selectBackground??"",b=this.styles.selectForeground??"",c=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=a,this.selectElement.style.color=b,this.selectElement.style.borderColor=c}styleList(){let a=this.styles.selectBackground??"",b=p.gI(this.styles.selectListBackground,a);this.selectDropDownListContainer.style.backgroundColor=b,this.selectionDetailsPane.style.backgroundColor=b;let c=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=c,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(a,b,c){let d=document.createElement("option");return d.value=a,d.text=a,d.disabled=!!c,d}showSelectDropDown(){this.selectionDetailsPane.textContent="",this.contextViewProvider&&!this._isVisible&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(a){this.contextViewProvider&&this._isVisible&&(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),a&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(a,b){return a.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(b),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let a=0;return this.options.forEach((b,c)=>{this.updateDetail(c),this.selectionDetailsPane.offsetHeight>a&&(a=this.selectionDetailsPane.offsetHeight)}),a}layoutSelectDropDown(a){if(this._skipLayout||!this.selectList)return!1;{this.selectDropDownContainer.classList.add("visible");let b=f.zk(this.selectElement),c=f.BK(this.selectElement),d=f.zk(this.selectElement).getComputedStyle(this.selectElement),e=parseFloat(d.getPropertyValue("--dropdown-padding-top"))+parseFloat(d.getPropertyValue("--dropdown-padding-bottom")),g=b.innerHeight-c.top-c.height-(this.selectBoxOptions.minBottomMargin||0),h=c.top-z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,i=this.selectElement.offsetWidth,j=Math.max(this.setWidthControlElement(this.widthControlElement),Math.round(i)).toString()+"px";this.selectDropDownContainer.style.width=j,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let k=this.selectList.contentHeight;this._hasDetails&&void 0===this._cachedMaxDetailsHeight&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());let l=this._hasDetails?this._cachedMaxDetailsHeight:0,m=k+e+l,n=Math.floor((g-e-l)/this.getHeight()),o=Math.floor((h-e-l)/this.getHeight());if(a)return!(c.top+c.height>b.innerHeight-22)&&!(c.top<z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN)&&(!(n<1)||!(o<1))&&(n<z.DEFAULT_MINIMUM_VISIBLE_OPTIONS&&o>n&&this.options.length>n?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(c.top+c.height>b.innerHeight-22||c.top<z.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN||0===this._dropDownPosition&&n<1||1===this._dropDownPosition&&o<1)return this.hideSelectDropDown(!0),!1;if(0===this._dropDownPosition){if(this._isVisible&&n+o<1)return this.hideSelectDropDown(!0),!1;m>g&&(k=n*this.getHeight())}else m>h&&(k=o*this.getHeight());return this.selectList.layout(k),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=k+e+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=k+e+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=j,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}}setWidthControlElement(a){let b=0;if(a){let c=0,d=0;this.options.forEach((a,b)=>{let e=a.detail?a.detail.length:0,f=a.decoratorRight?a.decoratorRight.length:0,g=a.text.length+e+f;g>d&&(c=b,d=g)}),a.textContent=this.options[c].text+(this.options[c].decoratorRight?this.options[c].decoratorRight+" ":""),b=f.Tr(a)}return b}createSelectList(a){if(this.selectList)return;this.selectDropDownListContainer=f.BC(a,w(".select-box-dropdown-list-container")),this.listRenderer=new y,this.selectList=this._register(new v.B8("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:a=>{let b=a.text;return a.detail&&(b+=`. ${a.detail}`),a.decoratorRight&&(b+=`. ${a.decoratorRight}`),a.description&&(b+=`. ${a.description}`),b},getWidgetAriaLabel:()=>(0,k.kg)(16,"Select Box"),getRole:()=>i.zx?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);let b=this._register(new r.f(this.selectDropDownListContainer,"keydown")),c=m.Jh.chain(b.event,a=>a.filter(()=>this.selectList.length>0).map(a=>new s.Z(a)));this._register(m.Jh.chain(c,a=>a.filter(a=>3===a.keyCode))(this.onEnter,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>2===a.keyCode))(this.onEnter,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>9===a.keyCode))(this.onEscape,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>16===a.keyCode))(this.onUpArrow,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>18===a.keyCode))(this.onDownArrow,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>12===a.keyCode))(this.onPageDown,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>11===a.keyCode))(this.onPageUp,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>14===a.keyCode))(this.onHome,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>13===a.keyCode))(this.onEnd,this)),this._register(m.Jh.chain(c,a=>a.filter(a=>a.keyCode>=21&&a.keyCode<=56||a.keyCode>=85&&a.keyCode<=113))(this.onCharacter,this)),this._register(f.ko(this.selectList.getHTMLElement(),f.Bx.POINTER_UP,a=>this.onPointerUp(a))),this._register(this.selectList.onMouseOver(a=>void 0!==a.index&&this.selectList.setFocus([a.index]))),this._register(this.selectList.onDidChangeFocus(a=>this.onListFocus(a))),this._register(f.ko(this.selectDropDownContainer,f.Bx.FOCUS_OUT,a=>{!this._isVisible||f.QX(a.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(a){if(!this.selectList.length)return;f.fs.stop(a);let b=a.target;if(!b||b.classList.contains("slider"))return;let c=b.closest(".monaco-list-row");if(!c)return;let d=Number(c.getAttribute("data-index")),e=c.classList.contains("option-disabled");d>=0&&d<this.options.length&&!e&&(this.selected=d,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]),this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0))}onListBlur(){this._sticky||(this.selected!==this._currentSelection&&this.select(this._currentSelection),this.hideSelectDropDown(!1))}renderDescriptionMarkdown(a,b){let c=a=>{for(let b=0;b<a.childNodes.length;b++){let d=a.childNodes.item(b);"img"===(d.tagName&&d.tagName.toLowerCase())?d.remove():c(d)}},d=(0,t.Gc)({value:a,supportThemeIcons:!0},{actionHandler:b});return d.element.classList.add("select-box-description-markdown"),c(d.element),d.element}onListFocus(a){this._isVisible&&this._hasDetails&&this.updateDetail(a.indexes[0])}updateDetail(a){this.selectionDetailsPane.textContent="";let b=this.options[a],c=b?.description??"",d=b?.descriptionIsMarkdown??!1;if(c){if(d){let a=b.descriptionMarkdownActionHandler;this.selectionDetailsPane.appendChild(this.renderDescriptionMarkdown(c,a))}else this.selectionDetailsPane.textContent=c;this.selectionDetailsPane.style.display="block"}else this.selectionDetailsPane.style.display="none";this._skipLayout=!0,this.contextViewProvider.layout(),this._skipLayout=!1}onEscape(a){f.fs.stop(a),this.select(this._currentSelection),this.hideSelectDropDown(!0)}onEnter(a){f.fs.stop(a),this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0)}onDownArrow(a){if(this.selected<this.options.length-1){f.fs.stop(a,!0);let b=this.options[this.selected+1].isDisabled;if(b&&this.options.length>this.selected+2)this.selected+=2;else{if(b)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(a){this.selected>0&&(f.fs.stop(a,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(a){f.fs.stop(a),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected<this.options.length-1&&(this.selected++,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onPageDown(a){f.fs.stop(a),this.selectList.focusNextPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(a){f.fs.stop(a),this.options.length<2||(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(a){f.fs.stop(a),this.options.length<2||(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(a){let b=n.YM.toString(a.keyCode),c=-1;for(let d=0;d<this.options.length-1;d++)if(c=(d+this.selected+1)%this.options.length,this.options[c].text.charAt(0).toUpperCase()===b&&!this.options[c].isDisabled){this.select(c),this.selectList.setFocus([c]),this.selectList.reveal(this.selectList.getFocus()[0]),f.fs.stop(a);break}}dispose(){this.hideSelectDropDown(!1),super.dispose()}}class A extends o.jG{constructor(a,b,c,d){super(),this.selected=0,this.selectBoxOptions=d||Object.create(null),this.options=[],this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=this._register(new m.vl),this.styles=c,this.registerListeners(),this.setOptions(a,b)}registerListeners(){this._register(g.q.addTarget(this.selectElement)),[g.B.Tap].forEach(a=>{this._register(f.ko(this.selectElement,a,a=>{this.selectElement.focus()}))}),this._register(f.un(this.selectElement,"click",a=>{f.fs.stop(a,!0)})),this._register(f.un(this.selectElement,"change",a=>{this.selectElement.title=a.target.value,this._onDidSelect.fire({index:a.target.selectedIndex,selected:a.target.value})})),this._register(f.un(this.selectElement,"keydown",a=>{let b=!1;i.zx?(18===a.keyCode||16===a.keyCode||10===a.keyCode)&&(b=!0):(18===a.keyCode&&a.altKey||10===a.keyCode||3===a.keyCode)&&(b=!0),b&&a.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(a,b){this.options&&l.aI(this.options,a)||(this.options=a,this.selectElement.options.length=0,this.options.forEach((a,b)=>{this.selectElement.add(this.createOption(a.text,b,a.isDisabled))})),void 0!==b&&this.select(b)}select(a){0===this.options.length?this.selected=0:a>=0&&a<this.options.length?this.selected=a:a>this.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected<this.options.length&&"string"==typeof this.options[this.selected].text?this.selectElement.title=this.options[this.selected].text:this.selectElement.title=""}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(a){this.selectElement.tabIndex=a?0:-1}render(a){a.classList.add("select-container"),a.appendChild(this.selectElement),this.setOptions(this.options,this.selected),this.applyStyles()}applyStyles(){this.selectElement&&(this.selectElement.style.backgroundColor=this.styles.selectBackground??"",this.selectElement.style.color=this.styles.selectForeground??"",this.selectElement.style.borderColor=this.styles.selectBorder??"")}createOption(a,b,c){let d=document.createElement("option");return d.value=a,d.text=a,d.disabled=!!c,d}}class B extends j.x{constructor(a,b,c,d,e){super(),i.zx&&!e?.useCustomDrawn?this.selectBoxDelegate=new A(a,b,d,e):this.selectBoxDelegate=new z(a,b,c,d,e),this._register(this.selectBoxDelegate)}get onDidSelect(){return this.selectBoxDelegate.onDidSelect}setOptions(a,b){this.selectBoxDelegate.setOptions(a,b)}select(a){this.selectBoxDelegate.select(a)}focus(){this.selectBoxDelegate.focus()}blur(){this.selectBoxDelegate.blur()}setFocusable(a){this.selectBoxDelegate.setFocusable(a)}render(a){this.selectBoxDelegate.render(a)}}var C=c(18401),D=c(46339);c(76519);class E extends o.jG{get action(){return this._action}constructor(a,b,c={}){super(),this.options=c,this._context=a||this,this._action=b,b instanceof C.rc&&this._register(b.onDidChange(a=>{this.element&&this.handleActionChangeEvent(a)}))}handleActionChangeEvent(a){void 0!==a.enabled&&this.updateEnabled(),void 0!==a.checked&&this.updateChecked(),void 0!==a.class&&this.updateClass(),void 0!==a.label&&(this.updateLabel(),this.updateTooltip()),void 0!==a.tooltip&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new C.LN)),this._actionRunner}set actionRunner(a){this._actionRunner=a}isEnabled(){return this._action.enabled}setActionContext(a){this._context=a}render(a){let b=this.element=a;this._register(g.q.addTarget(a));let c=this.options&&this.options.draggable;c&&(a.draggable=!0,d.gm&&this._register((0,f.ko)(a,f.Bx.DRAG_START,a=>a.dataTransfer?.setData(e.t.TEXT,this._action.label)))),this._register((0,f.ko)(b,g.B.Tap,a=>this.onClick(a,!0))),this._register((0,f.ko)(b,f.Bx.MOUSE_DOWN,a=>{c||f.fs.stop(a,!0),this._action.enabled&&0===a.button&&b.classList.add("active")})),i.zx&&this._register((0,f.ko)(b,f.Bx.CONTEXT_MENU,a=>{0===a.button&&!0===a.ctrlKey&&this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.CLICK,a=>{f.fs.stop(a,!0),this.options&&this.options.isMenu||this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.DBLCLICK,a=>{f.fs.stop(a,!0)})),[f.Bx.MOUSE_UP,f.Bx.MOUSE_OUT].forEach(a=>{this._register((0,f.ko)(b,a,a=>{f.fs.stop(a),b.classList.remove("active")}))})}onClick(a,b=!1){f.fs.stop(a,!0);let c=D.z(this._context)?this.options?.useEventAsContext?a:{preserveFocus:b}:this._context;this.actionRunner.run(this._action,c)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(a){this.element&&(this.element.tabIndex=a?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}getHoverContents(){return this.getTooltip()}updateTooltip(){if(!this.element)return;let a=this.getHoverContents()??"";if(this.updateAriaLabel(),this.customHover||""===a)this.customHover&&this.customHover.update(a);else{let b=this.options.hoverDelegate??(0,h.nZ)("element");this.customHover=this._store.add((0,u.i)().setupManagedHover(b,this.element,a))}}updateAriaLabel(){if(this.element){let a=this.getTooltip()??"";this.element.setAttribute("aria-label",a)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class F extends E{constructor(a,b,c){super(a,b,c={...c,icon:void 0!==c.icon&&c.icon,label:void 0===c.label||c.label}),this.options=c,this.cssClass=""}render(a){super.render(a),D.j(this.element);let b=document.createElement("a");if(b.classList.add("action-label"),b.setAttribute("role",this.getDefaultAriaRole()),this.label=b,this.element.appendChild(b),this.options.label&&this.options.keybinding&&!this.options.keybindingNotRenderedWithLabel){let a=document.createElement("span");a.classList.add("keybinding"),a.textContent=this.options.keybinding,this.element.appendChild(a)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===C.wv.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(a){this.label&&(this.label.tabIndex=a?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let a=null;return this.action.tooltip?a=this.action.tooltip:this.action.label&&(a=this.action.label,this.options.keybinding&&(a=k.kg(0,"{0} ({1})",a,this.options.keybinding))),a??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){let a=this.getTooltip()??"";this.label.setAttribute("aria-label",a)}}updateChecked(){this.label&&(void 0!==this.action.checked?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class G extends E{constructor(a,b,c,d,e,f,g){super(a,b),this.selectBox=new B(c,d,e,f,g),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(a){this.selectBox.select(a)}registerListeners(){this._register(this.selectBox.onDidSelect(a=>this.runAction(a.selected,a.index)))}runAction(a,b){this.actionRunner.run(this._action,this.getActionContext(a,b))}getActionContext(a,b){return a}setFocusable(a){this.selectBox.setFocusable(a)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(a){this.selectBox.render(a)}}},83081:(a,b,c)=>{"use strict";c.d(b,{c:()=>k,z:()=>j});var d=c(98447),e=c(69467),f=c(29734),g=c(91834),h=c(79677),i=c(59317);class j{static _createWord(a,b,c,d,e){return{start:d,end:e,wordType:b,nextCharClass:c}}static _createIntlWord(a,b){return{start:a.index,end:a.index+a.segment.length,wordType:1,nextCharClass:b}}static _findPreviousWordOnLine(a,b,c){let d=b.getLineContent(c.lineNumber);return this._doFindPreviousWordOnLine(d,a,c)}static _doFindPreviousWordOnLine(a,b,c){let d=0,e=b.findPrevIntlWordBeforeOrAtOffset(a,c.column-2);for(let f=c.column-2;f>=0;f--){let c=a.charCodeAt(f),g=b.get(c);if(e&&f===e.index)return this._createIntlWord(e,g);if(0===g){if(2===d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1));d=1}else if(2===g){if(1===d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1));d=2}else if(1===g&&0!==d)return this._createWord(a,d,g,f+1,this._findEndOfWord(a,b,d,f+1))}return 0!==d?this._createWord(a,d,1,0,this._findEndOfWord(a,b,d,0)):null}static _findEndOfWord(a,b,c,d){let e=b.findNextIntlWordAtOrAfterOffset(a,d),f=a.length;for(let g=d;g<f;g++){let d=a.charCodeAt(g),f=b.get(d);if(e&&g===e.index+e.segment.length||1===f||1===c&&2===f||2===c&&0===f)return g}return f}static _findNextWordOnLine(a,b,c){let d=b.getLineContent(c.lineNumber);return this._doFindNextWordOnLine(d,a,c)}static _doFindNextWordOnLine(a,b,c){let d=0,e=a.length,f=b.findNextIntlWordAtOrAfterOffset(a,c.column-1);for(let g=c.column-1;g<e;g++){let c=a.charCodeAt(g),e=b.get(c);if(f&&g===f.index)return this._createIntlWord(f,e);if(0===e){if(2===d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g);d=1}else if(2===e){if(1===d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g);d=2}else if(1===e&&0!==d)return this._createWord(a,d,e,this._findStartOfWord(a,b,d,g-1),g)}return 0!==d?this._createWord(a,d,1,this._findStartOfWord(a,b,d,e-1),e):null}static _findStartOfWord(a,b,c,d){let e=b.findPrevIntlWordBeforeOrAtOffset(a,d);for(let f=d;f>=0;f--){let d=a.charCodeAt(f),g=b.get(d);if(e&&f===e.index)return f;if(1===g||1===c&&2===g||2===c&&0===g)return f+1}return 0}static moveWordLeft(a,b,c,d,e){let f=c.lineNumber,g=c.column;1===g&&f>1&&(f-=1,g=b.getLineMaxColumn(f));let i=j._findPreviousWordOnLine(a,b,new h.y(f,g));if(0===d)return new h.y(f,i?i.start+1:1);if(1===d)return!e&&i&&2===i.wordType&&i.end-i.start==1&&0===i.nextCharClass&&(i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1))),new h.y(f,i?i.start+1:1);if(3===d){for(;i&&2===i.wordType;)i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1));return new h.y(f,i?i.start+1:1)}return i&&g<=i.end+1&&(i=j._findPreviousWordOnLine(a,b,new h.y(f,i.start+1))),new h.y(f,i?i.end+1:1)}static _moveWordPartLeft(a,b){let c=b.lineNumber,e=a.getLineMaxColumn(c);if(1===b.column)return c>1?new h.y(c-1,a.getLineMaxColumn(c-1)):b;let f=a.getLineContent(c);for(let a=b.column-1;a>1;a--){let b=f.charCodeAt(a-2),g=f.charCodeAt(a-1);if(95===b&&95!==g||45===b&&45!==g||(d.Lv(b)||d.DB(b))&&d.Wv(g))return new h.y(c,a);if(d.Wv(b)&&d.Wv(g)&&a+1<e){let b=f.charCodeAt(a);if(d.Lv(b)||d.DB(b))return new h.y(c,a)}}return new h.y(c,1)}static moveWordRight(a,b,c,d){let e=c.lineNumber,f=c.column,g=!1;f===b.getLineMaxColumn(e)&&e<b.getLineCount()&&(g=!0,e+=1,f=1);let i=j._findNextWordOnLine(a,b,new h.y(e,f));if(2===d)i&&2===i.wordType&&i.end-i.start==1&&0===i.nextCharClass&&(i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1))),f=i?i.end+1:b.getLineMaxColumn(e);else if(3===d){for(g&&(f=0);i&&(2===i.wordType||i.start+1<=f);)i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1));f=i?i.start+1:b.getLineMaxColumn(e)}else i&&!g&&f>=i.start+1&&(i=j._findNextWordOnLine(a,b,new h.y(e,i.end+1))),f=i?i.start+1:b.getLineMaxColumn(e);return new h.y(e,f)}static _moveWordPartRight(a,b){let c=b.lineNumber,e=a.getLineMaxColumn(c);if(b.column===e)return c<a.getLineCount()?new h.y(c+1,1):b;let f=a.getLineContent(c);for(let a=b.column+1;a<e;a++){let b=f.charCodeAt(a-2),g=f.charCodeAt(a-1);if(95!==b&&95===g||45!==b&&45===g||(d.Lv(b)||d.DB(b))&&d.Wv(g))return new h.y(c,a);if(d.Wv(b)&&d.Wv(g)&&a+1<e){let b=f.charCodeAt(a);if(d.Lv(b)||d.DB(b))return new h.y(c,a)}}return new h.y(c,e)}static _deleteWordLeftWhitespace(a,b){let c=a.getLineContent(b.lineNumber),e=b.column-2,f=d.lT(c,e);return f+1<e?new i.Q(b.lineNumber,f+2,b.lineNumber,b.column):null}static deleteWordLeft(a,b){let c=a.wordSeparators,d=a.model,e=a.selection,g=a.whitespaceHeuristics;if(!e.isEmpty())return e;if(f.g.isAutoClosingPairDelete(a.autoClosingDelete,a.autoClosingBrackets,a.autoClosingQuotes,a.autoClosingPairs.autoClosingPairsOpenByEnd,a.model,[a.selection],a.autoClosedCharacters)){let b=a.selection.getPosition();return new i.Q(b.lineNumber,b.column-1,b.lineNumber,b.column+1)}let k=new h.y(e.positionLineNumber,e.positionColumn),l=k.lineNumber,m=k.column;if(1===l&&1===m)return null;if(g){let a=this._deleteWordLeftWhitespace(d,k);if(a)return a}let n=j._findPreviousWordOnLine(c,d,k);return 0===b?n?m=n.start+1:m>1?m=1:(l--,m=d.getLineMaxColumn(l)):(n&&m<=n.end+1&&(n=j._findPreviousWordOnLine(c,d,new h.y(l,n.start+1))),n?m=n.end+1:m>1?m=1:(l--,m=d.getLineMaxColumn(l))),new i.Q(l,m,k.lineNumber,k.column)}static deleteInsideWord(a,b,c){if(!c.isEmpty())return c;let d=new h.y(c.positionLineNumber,c.positionColumn),e=this._deleteInsideWordWhitespace(b,d);return e||this._deleteInsideWordDetermineDeleteRange(a,b,d)}static _charAtIsWhitespace(a,b){let c=a.charCodeAt(b);return 32===c||9===c}static _deleteInsideWordWhitespace(a,b){let c=a.getLineContent(b.lineNumber),d=c.length;if(0===d)return null;let e=Math.max(b.column-2,0);if(!this._charAtIsWhitespace(c,e))return null;let f=Math.min(b.column-1,d-1);if(!this._charAtIsWhitespace(c,f))return null;for(;e>0&&this._charAtIsWhitespace(c,e-1);)e--;for(;f+1<d&&this._charAtIsWhitespace(c,f+1);)f++;return new i.Q(b.lineNumber,e+1,b.lineNumber,f+2)}static _deleteInsideWordDetermineDeleteRange(a,b,c){let d=b.getLineContent(c.lineNumber),e=d.length;if(0===e)if(c.lineNumber>1)return new i.Q(c.lineNumber-1,b.getLineMaxColumn(c.lineNumber-1),c.lineNumber,1);else if(c.lineNumber<b.getLineCount())return new i.Q(c.lineNumber,1,c.lineNumber+1,1);else return new i.Q(c.lineNumber,1,c.lineNumber,1);let f=a=>a.start+1<=c.column&&c.column<=a.end+1,g=(a,b)=>(a=Math.min(a,c.column),b=Math.max(b,c.column),new i.Q(c.lineNumber,a,c.lineNumber,b)),h=a=>{let b=a.start+1,c=a.end+1,f=!1;for(;c-1<e&&this._charAtIsWhitespace(d,c-1);)f=!0,c++;if(!f)for(;b>1&&this._charAtIsWhitespace(d,b-2);)b--;return g(b,c)},k=j._findPreviousWordOnLine(a,b,c);if(k&&f(k))return h(k);let l=j._findNextWordOnLine(a,b,c);return l&&f(l)?h(l):k&&l?g(k.end+1,l.start+1):k?g(k.start+1,k.end+1):l?g(l.start+1,l.end+1):g(1,e+1)}static _deleteWordPartLeft(a,b){if(!b.isEmpty())return b;let c=b.getPosition(),d=j._moveWordPartLeft(a,c);return new i.Q(c.lineNumber,c.column,d.lineNumber,d.column)}static _findFirstNonWhitespaceChar(a,b){let c=a.length;for(let d=b;d<c;d++){let b=a.charAt(d);if(" "!==b&&" "!==b)return d}return c}static _deleteWordRightWhitespace(a,b){let c=a.getLineContent(b.lineNumber),d=b.column-1,e=this._findFirstNonWhitespaceChar(c,d);return d+1<e?new i.Q(b.lineNumber,b.column,b.lineNumber,e+1):null}static deleteWordRight(a,b){let c=a.wordSeparators,d=a.model,e=a.selection,f=a.whitespaceHeuristics;if(!e.isEmpty())return e;let g=new h.y(e.positionLineNumber,e.positionColumn),k=g.lineNumber,l=g.column,m=d.getLineCount(),n=d.getLineMaxColumn(k);if(k===m&&l===n)return null;if(f){let a=this._deleteWordRightWhitespace(d,g);if(a)return a}let o=j._findNextWordOnLine(c,d,g);return 2===b?o?l=o.end+1:l<n||k===m?l=n:(k++,l=(o=j._findNextWordOnLine(c,d,new h.y(k,1)))?o.start+1:d.getLineMaxColumn(k)):(o&&l>=o.start+1&&(o=j._findNextWordOnLine(c,d,new h.y(k,o.end+1))),o?l=o.start+1:l<n||k===m?l=n:(k++,l=(o=j._findNextWordOnLine(c,d,new h.y(k,1)))?o.start+1:d.getLineMaxColumn(k))),new i.Q(k,l,g.lineNumber,g.column)}static _deleteWordPartRight(a,b){if(!b.isEmpty())return b;let c=b.getPosition(),d=j._moveWordPartRight(a,c);return new i.Q(c.lineNumber,c.column,d.lineNumber,d.column)}static _createWordAtPosition(a,b,c){let d=new i.Q(b,c.start+1,b,c.end+1);return{word:a.getValueInRange(d),startColumn:d.startColumn,endColumn:d.endColumn}}static getWordAtPosition(a,b,c,d){let e=(0,g.i)(b,c),f=j._findPreviousWordOnLine(e,a,d);if(f&&1===f.wordType&&f.start<=d.column-1&&d.column-1<=f.end)return j._createWordAtPosition(a,d.lineNumber,f);let h=j._findNextWordOnLine(e,a,d);return h&&1===h.wordType&&h.start<=d.column-1&&d.column-1<=h.end?j._createWordAtPosition(a,d.lineNumber,h):null}static word(a,b,c,d,f){let k,l,m,n=(0,g.i)(a.wordSeparators,a.wordSegmenterLocales),o=j._findPreviousWordOnLine(n,b,f),p=j._findNextWordOnLine(n,b,f);if(!d){let a,c;return o&&1===o.wordType&&o.start<=f.column-1&&f.column-1<=o.end?(a=o.start+1,c=o.end+1):p&&1===p.wordType&&p.start<=f.column-1&&f.column-1<=p.end?(a=p.start+1,c=p.end+1):(a=o?o.end+1:1,c=p?p.start+1:b.getLineMaxColumn(f.lineNumber)),new e.mG(new i.Q(f.lineNumber,a,f.lineNumber,c),1,0,new h.y(f.lineNumber,c),0)}o&&1===o.wordType&&o.start<f.column-1&&f.column-1<o.end?(k=o.start+1,l=o.end+1):p&&1===p.wordType&&p.start<f.column-1&&f.column-1<p.end?(k=p.start+1,l=p.end+1):(k=f.column,l=f.column);let q=f.lineNumber;if(c.selectionStart.containsPosition(f))m=c.selectionStart.endColumn;else if(f.isBeforeOrEqual(c.selectionStart.getStartPosition())){m=k;let a=new h.y(q,m);c.selectionStart.containsPosition(a)&&(m=c.selectionStart.endColumn)}else{m=l;let a=new h.y(q,m);c.selectionStart.containsPosition(a)&&(m=c.selectionStart.startColumn)}return c.move(!0,q,m,0)}}class k extends j{static deleteWordPartLeft(a){let b=l([j.deleteWordLeft(a,0),j.deleteWordLeft(a,2),j._deleteWordPartLeft(a.model,a.selection)]);return b.sort(i.Q.compareRangesUsingEnds),b[2]}static deleteWordPartRight(a){let b=l([j.deleteWordRight(a,0),j.deleteWordRight(a,2),j._deleteWordPartRight(a.model,a.selection)]);return b.sort(i.Q.compareRangesUsingStarts),b[0]}static moveWordPartLeft(a,b,c,d){let e=l([j.moveWordLeft(a,b,c,0,d),j.moveWordLeft(a,b,c,2,d),j._moveWordPartLeft(b,c)]);return e.sort(h.y.compare),e[2]}static moveWordPartRight(a,b,c){let d=l([j.moveWordRight(a,b,c,0),j.moveWordRight(a,b,c,2),j._moveWordPartRight(b,c)]);return d.sort(h.y.compare),d[0]}}function l(a){return a.filter(a=>!!a)}},83191:()=>{},83594:(a,b,c)=>{"use strict";var d;c.d(b,{GB:()=>f,i3:()=>e,l:()=>d}),function(a){a[a.None=0]="None",a[a.Indent=1]="Indent",a[a.IndentOutdent=2]="IndentOutdent",a[a.Outdent=3]="Outdent"}(d||(d={}));class e{constructor(a){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=a.open,this.close=a.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(a.notIn))for(let b=0,c=a.notIn.length;b<c;b++)switch(a.notIn[b]){case"string":this._inString=!1;break;case"comment":this._inComment=!1;break;case"regex":this._inRegEx=!1}}isOK(a){switch(a){case 0:return!0;case 1:return this._inComment;case 2:return this._inString;case 3:return this._inRegEx}}shouldAutoClose(a,b){if(0===a.getTokenCount())return!0;let c=a.findTokenIndexAtOffset(b-2),d=a.getStandardTokenType(c);return this.isOK(d)}_findNeutralCharacterInRange(a,b){for(let c=a;c<=b;c++){let a=String.fromCharCode(c);if(!this.open.includes(a)&&!this.close.includes(a))return a}return null}findNeutralCharacter(){return!this._neutralCharacterSearched&&(this._neutralCharacterSearched=!0,this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(48,57)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(97,122)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(65,90))),this._neutralCharacter}}class f{constructor(a){for(let b of(this.autoClosingPairsOpenByStart=new Map,this.autoClosingPairsOpenByEnd=new Map,this.autoClosingPairsCloseByStart=new Map,this.autoClosingPairsCloseByEnd=new Map,this.autoClosingPairsCloseSingleChar=new Map,a))g(this.autoClosingPairsOpenByStart,b.open.charAt(0),b),g(this.autoClosingPairsOpenByEnd,b.open.charAt(b.open.length-1),b),g(this.autoClosingPairsCloseByStart,b.close.charAt(0),b),g(this.autoClosingPairsCloseByEnd,b.close.charAt(b.close.length-1),b),1===b.close.length&&1===b.open.length&&g(this.autoClosingPairsCloseSingleChar,b.close,b)}}function g(a,b,c){a.has(b)?a.get(b).push(c):a.set(b,[c])}},84774:()=>{},84815:()=>{},85157:(a,b,c)=>{"use strict";c.d(b,{ur:()=>y,uO:()=>C});var d=c(3055),e=c(32677),f=c(67397),g=c(98350),h=c(87229),i=c(54734),j=c(40565),k=c(53578),l=c(60734),m=c(11314),n=c(58699),o=c(21777);function p(a,b){let c=[];for(let d of b){if(a.start>=d.range.end)continue;if(a.end<d.range.start)break;let b=n.Q.intersect(a,d.range);n.Q.isEmpty(b)||c.push({range:b,size:d.size})}return c}function q({start:a,end:b},c){return{start:a+c,end:b+c}}class r{get paddingTop(){return this._paddingTop}set paddingTop(a){this._size=this._size+a-this._paddingTop,this._paddingTop=a}constructor(a){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=a??0,this._size=this._paddingTop}splice(a,b,c=[]){let d=c.length-b,e=p({start:0,end:a},this.groups),f=p({start:a+b,end:1/0},this.groups).map(a=>({range:q(a.range,d),size:a.size})),g=c.map((b,c)=>({range:{start:a+c,end:a+c+1},size:b.size}));this.groups=function(...a){return function(a){let b=[],c=null;for(let d of a){let a=d.range.start,e=d.range.end,f=d.size;if(c&&f===c.size){c.range.end=e;continue}c={range:{start:a,end:e},size:f},b.push(c)}return b}(a.reduce((a,b)=>a.concat(b),[]))}(e,g,f),this._size=this._paddingTop+this.groups.reduce((a,b)=>a+b.size*(b.range.end-b.range.start),0)}get count(){let a=this.groups.length;return a?this.groups[a-1].range.end:0}get size(){return this._size}indexAt(a){if(a<0)return -1;if(a<this._paddingTop)return 0;let b=0,c=this._paddingTop;for(let d of this.groups){let e=d.range.end-d.range.start,f=c+e*d.size;if(a<f)return b+Math.floor((a-c)/d.size);b+=e,c=f}return b}indexAfter(a){return Math.min(this.indexAt(a)+1,this.count)}positionAt(a){if(a<0)return -1;let b=0,c=0;for(let d of this.groups){let e=d.range.end-d.range.start,f=c+e;if(a<f)return this._paddingTop+b+(a-c)*d.size;b+=e*d.size,c=f}return -1}}class s{constructor(a){this.renderers=a,this.cache=new Map,this.transactionNodesPendingRemoval=new Set,this.inTransaction=!1}alloc(a){let b=this.getTemplateCache(a).pop(),c=!1;if(b)(c=this.transactionNodesPendingRemoval.has(b.domNode))&&this.transactionNodesPendingRemoval.delete(b.domNode);else{let c=(0,e.$)(".monaco-list-row"),d=this.getRenderer(a).renderTemplate(c);b={domNode:c,templateId:a,templateData:d}}return{row:b,isReusingConnectedDomNode:c}}release(a){a&&this.releaseRow(a)}transact(a){if(this.inTransaction)throw Error("Already in transaction");this.inTransaction=!0;try{a()}finally{for(let a of this.transactionNodesPendingRemoval)this.doRemoveNode(a);this.transactionNodesPendingRemoval.clear(),this.inTransaction=!1}}releaseRow(a){let{domNode:b,templateId:c}=a;b&&(this.inTransaction?this.transactionNodesPendingRemoval.add(b):this.doRemoveNode(b)),this.getTemplateCache(c).push(a)}doRemoveNode(a){a.classList.remove("scrolling"),a.remove()}getTemplateCache(a){let b=this.cache.get(a);return b||(b=[],this.cache.set(a,b)),b}dispose(){this.cache.forEach((a,b)=>{for(let c of a)this.getRenderer(b).disposeTemplate(c.templateData),c.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(a){let b=this.renderers.get(a);if(!b)throw Error(`No renderer found for ${a}`);return b}}var t=c(88347),u=c(61496);c(31503);var v=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g};let w={CurrentDragAndDropData:void 0},x={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements:a=>[a],getDragURI:()=>null,onDragStart(){},onDragOver:()=>!1,drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class y{constructor(a){this.elements=a}update(){}getData(){return this.elements}}class z{constructor(a){this.elements=a}update(){}getData(){return this.elements}}class A{constructor(){this.types=[],this.files=[]}update(a){if(a.types&&this.types.splice(0,this.types.length,...a.types),a.files){this.files.splice(0,this.files.length);for(let b=0;b<a.files.length;b++){let c=a.files.item(b);c&&(c.size||c.type)&&this.files.push(c)}}}getData(){return{types:this.types,files:this.files}}}class B{constructor(a){a?.getSetSize?this.getSetSize=a.getSetSize.bind(a):this.getSetSize=(a,b,c)=>c,a?.getPosInSet?this.getPosInSet=a.getPosInSet.bind(a):this.getPosInSet=(a,b)=>b+1,a?.getRole?this.getRole=a.getRole.bind(a):this.getRole=a=>"listitem",a?.isChecked?this.isChecked=a.isChecked.bind(a):this.isChecked=a=>void 0}}class C{static{this.InstanceCount=0}get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(a){if(a!==this._horizontalScrolling){if(a&&this.supportDynamicHeights)throw Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=a,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(let a of this.items)this.measureItemWidth(a);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:(0,e.y6)(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(a,b,c,d=x){if(this.virtualDelegate=b,this.domId=`list_id_${++C.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new j.ve(50),this.splicing=!1,this.dragOverAnimationStopDisposable=m.jG.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=m.jG.None,this.onDragLeaveTimeout=m.jG.None,this.currentSelectionDisposable=m.jG.None,this.disposables=new m.Cm,this._onDidChangeContentHeight=new l.vl,this._onDidChangeContentWidth=new l.vl,this.onDidChangeContentHeight=l.Jh.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,d.horizontalScrolling&&d.supportDynamicHeights)throw Error("Horizontal scrolling and dynamic heights not supported simultaneously");for(let a of(this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(d.paddingTop??0),c))this.renderers.set(a.templateId,a);if(this.cache=this.disposables.add(new s(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support","boolean"!=typeof d.mouseSupport||d.mouseSupport),this._horizontalScrolling=d.horizontalScrolling??x.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=void 0===d.paddingBottom?0:d.paddingBottom,this.accessibilityProvider=new B(d.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(d.transformOptimization??x.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(g.q.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new o.yE({forceIntegerValues:!0,smoothScrollDuration:125*!!d.smoothScrolling,scheduleAtNextAnimationFrame:a=>(0,e.PG)((0,e.zk)(this.domNode),a)})),this.scrollableElement=this.disposables.add(new h.oO(this.rowsContainer,{alwaysConsumeMouseWheel:d.alwaysConsumeMouseWheel??x.alwaysConsumeMouseWheel,horizontal:1,vertical:d.verticalScrollMode??x.verticalScrollMode,useShadows:d.useShadows??x.useShadows,mouseWheelScrollSensitivity:d.mouseWheelScrollSensitivity,fastScrollSensitivity:d.fastScrollSensitivity,scrollByPage:d.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),a.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add((0,e.ko)(this.rowsContainer,g.B.Change,a=>this.onTouchChange(a))),this.disposables.add((0,e.ko)(this.scrollableElement.getDomNode(),"scroll",a=>{let b=a.target,c=b.scrollTop;b.scrollTop=0,d.scrollToActiveElement&&this.setScrollTop(this.scrollTop+c)})),this.disposables.add((0,e.ko)(this.domNode,"dragover",a=>this.onDragOver(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"drop",a=>this.onDrop(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"dragleave",a=>this.onDragLeave(this.toDragEvent(a)))),this.disposables.add((0,e.ko)(this.domNode,"dragend",a=>this.onDragEnd(a))),d.userSelection){if(d.dnd)throw Error("DND and user selection cannot be used simultaneously");this.disposables.add((0,e.ko)(this.domNode,"mousedown",a=>this.onPotentialSelectionStart(a)))}this.setRowLineHeight=d.setRowLineHeight??x.setRowLineHeight,this.setRowHeight=d.setRowHeight??x.setRowHeight,this.supportDynamicHeights=d.supportDynamicHeights??x.supportDynamicHeights,this.dnd=d.dnd??this.disposables.add(x.dnd),this.layout(d.initialSize?.height,d.initialSize?.width),d.scrollToActiveElement&&this._setupFocusObserver(a)}_setupFocusObserver(a){this.disposables.add((0,e.ko)(a,"focus",()=>{let b=(0,e.bq)();this.activeElement!==b&&null!==b&&(this.activeElement=b,this._scrollToActiveElement(this.activeElement,a))},!0))}_scrollToActiveElement(a,b){let c=b.getBoundingClientRect(),d=a.getBoundingClientRect().top-c.top;d<0&&this.setScrollTop(this.scrollTop+d)}updateOptions(a){let b;if(void 0!==a.paddingBottom&&(this.paddingBottom=a.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),void 0!==a.smoothScrolling&&this.scrollable.setSmoothScrollDuration(125*!!a.smoothScrolling),void 0!==a.horizontalScrolling&&(this.horizontalScrolling=a.horizontalScrolling),void 0!==a.scrollByPage&&(b={...b??{},scrollByPage:a.scrollByPage}),void 0!==a.mouseWheelScrollSensitivity&&(b={...b??{},mouseWheelScrollSensitivity:a.mouseWheelScrollSensitivity}),void 0!==a.fastScrollSensitivity&&(b={...b??{},fastScrollSensitivity:a.fastScrollSensitivity}),b&&this.scrollableElement.updateOptions(b),void 0!==a.paddingTop&&a.paddingTop!==this.rangeMap.paddingTop){let b=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),c=a.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=a.paddingTop,this.render(b,Math.max(0,this.lastRenderTop+c),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(a){return new r(a)}splice(a,b,c=[]){if(this.splicing)throw Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(a,b,c)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(a,b,c=[]){let d,e=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),f=n.Q.intersect(e,{start:a,end:a+b}),g=new Map;for(let a=f.end-1;a>=f.start;a--){let b=this.items[a];if(b.dragStartDisposable.dispose(),b.checkedDisposable.dispose(),b.row){let c=g.get(b.templateId);c||(c=[],g.set(b.templateId,c));let d=this.renderers.get(b.templateId);d&&d.disposeElement&&d.disposeElement(b.element,a,b.row.templateData,{height:b.size}),c.unshift(b.row)}b.row=null,b.stale=!0}let h={start:a+b,end:this.items.length},j=n.Q.intersect(h,e),k=n.Q.relativeComplement(h,e),l=c.map(a=>({id:String(this.itemId++),element:a,templateId:this.virtualDelegate.getTemplateId(a),size:this.virtualDelegate.getHeight(a),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(a),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:m.jG.None,checkedDisposable:m.jG.None,stale:!1}));0===a&&b>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,l),d=this.items,this.items=l):(this.rangeMap.splice(a,b,l),d=(0,i.V4)(this.items,a,b,l));let o=c.length-b,p=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),r=q(j,o),s=n.Q.intersect(p,r);for(let a=s.start;a<s.end;a++)this.updateItemInDOM(this.items[a],a);for(let a of n.Q.relativeComplement(r,p))for(let b=a.start;b<a.end;b++)this.removeItemFromDOM(b);let t=k.map(a=>q(a,o));for(let b of[{start:a,end:a+c.length},...t].map(a=>n.Q.intersect(p,a)).reverse())for(let a=b.end-1;a>=b.start;a--){let b=this.items[a],c=g.get(b.templateId),d=c?.pop();this.insertItemInDOM(a,d)}for(let a of g.values())for(let b of a)this.cache.release(b);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),d.map(a=>a.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=(0,e.PG)((0,e.zk)(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling)return void this.scrollableElementWidthDelayer.cancel();this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let a=0;for(let b of this.items)void 0!==b.width&&(a=Math.max(a,b.width));this.scrollWidth=a,this.scrollableElement.setScrollDimensions({scrollWidth:0===a?0:a+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(let a of this.items)a.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getVisibleRange(this.lastRenderTop,this.lastRenderHeight).start}element(a){return this.items[a].element}indexOf(a){return this.items.findIndex(b=>b.element===a)}domElement(a){let b=this.items[a].row;return b&&b.domNode}elementHeight(a){return this.items[a].size}elementTop(a){return this.rangeMap.positionAt(a)}indexAt(a){return this.rangeMap.indexAt(a)}indexAfter(a){return this.rangeMap.indexAfter(a)}layout(a,b){let c={height:"number"==typeof a?a:(0,e.H4)(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,c.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(c),void 0!==b&&(this.renderWidth=b,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:"number"==typeof b?b:(0,e.y6)(this.domNode)})}render(a,b,c,d,e,f=!1,g=!1){let h=this.getRenderRange(b,c),i=n.Q.relativeComplement(h,a).reverse(),j=n.Q.relativeComplement(a,h);if(f){let b=n.Q.intersect(a,h);for(let a=b.start;a<b.end;a++)this.updateItemInDOM(this.items[a],a)}this.cache.transact(()=>{for(let a of j)for(let b=a.start;b<a.end;b++)this.removeItemFromDOM(b,g);for(let a of i)for(let b=a.end-1;b>=a.start;b--)this.insertItemInDOM(b)}),void 0!==d&&(this.rowsContainer.style.left=`-${d}px`),this.rowsContainer.style.top=`-${b}px`,this.horizontalScrolling&&void 0!==e&&(this.rowsContainer.style.width=`${Math.max(e,this.renderWidth)}px`),this.lastRenderTop=b,this.lastRenderHeight=c}insertItemInDOM(a,b){let c=this.items[a];if(!c.row)if(b)c.row=b,c.stale=!0;else{let a=this.cache.alloc(c.templateId);c.row=a.row,c.stale||=a.isReusingConnectedDomNode}let d=this.accessibilityProvider.getRole(c.element)||"listitem";c.row.domNode.setAttribute("role",d);let f=this.accessibilityProvider.isChecked(c.element);if("boolean"==typeof f)c.row.domNode.setAttribute("aria-checked",String(!!f));else if(f){let a=a=>c.row.domNode.setAttribute("aria-checked",String(!!a));a(f.value),c.checkedDisposable=f.onDidChange(()=>a(f.value))}if(c.stale||!c.row.domNode.parentElement){let b=this.items.at(a+1)?.row?.domNode??null;(c.row.domNode.parentElement!==this.rowsContainer||c.row.domNode.nextElementSibling!==b)&&this.rowsContainer.insertBefore(c.row.domNode,b),c.stale=!1}this.updateItemInDOM(c,a);let g=this.renderers.get(c.templateId);if(!g)throw Error(`No renderer found for template id ${c.templateId}`);g?.renderElement(c.element,a,c.row.templateData,{height:c.size});let h=this.dnd.getDragURI(c.element);c.dragStartDisposable.dispose(),c.row.domNode.draggable=!!h,h&&(c.dragStartDisposable=(0,e.ko)(c.row.domNode,"dragstart",a=>this.onDragStart(c.element,h,a))),this.horizontalScrolling&&(this.measureItemWidth(c),this.eventuallyUpdateScrollWidth())}measureItemWidth(a){if(!a.row||!a.row.domNode)return;a.row.domNode.style.width="fit-content",a.width=(0,e.y6)(a.row.domNode);let b=(0,e.zk)(a.row.domNode).getComputedStyle(a.row.domNode);b.paddingLeft&&(a.width+=parseFloat(b.paddingLeft)),b.paddingRight&&(a.width+=parseFloat(b.paddingRight)),a.row.domNode.style.width=""}updateItemInDOM(a,b){a.row.domNode.style.top=`${this.elementTop(b)}px`,this.setRowHeight&&(a.row.domNode.style.height=`${a.size}px`),this.setRowLineHeight&&(a.row.domNode.style.lineHeight=`${a.size}px`),a.row.domNode.setAttribute("data-index",`${b}`),a.row.domNode.setAttribute("data-last-element",b===this.length-1?"true":"false"),a.row.domNode.setAttribute("data-parity",b%2==0?"even":"odd"),a.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(a.element,b,this.length))),a.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(a.element,b))),a.row.domNode.setAttribute("id",this.getElementDomId(b)),a.row.domNode.classList.toggle("drop-target",a.dropTarget)}removeItemFromDOM(a,b){let c=this.items[a];if(c.dragStartDisposable.dispose(),c.checkedDisposable.dispose(),c.row){let d=this.renderers.get(c.templateId);d&&d.disposeElement&&d.disposeElement(c.element,a,c.row.templateData,{height:c.size,onScroll:b}),this.cache.release(c.row),c.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(a,b){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:a,reuseAnimation:b})}get scrollTop(){return this.getScrollTop()}set scrollTop(a){this.setScrollTop(a)}get scrollHeight(){return this._scrollHeight+10*!!this.horizontalScrolling+this.paddingBottom}get onMouseClick(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"click")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseDblClick(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"dblclick")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseMiddleClick(){return l.Jh.filter(l.Jh.map(this.disposables.add(new f.f(this.domNode,"auxclick")).event,a=>this.toMouseEvent(a),this.disposables),a=>1===a.browserEvent.button,this.disposables)}get onMouseDown(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mousedown")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseOver(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mouseover")).event,a=>this.toMouseEvent(a),this.disposables)}get onMouseOut(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"mouseout")).event,a=>this.toMouseEvent(a),this.disposables)}get onContextMenu(){return l.Jh.any(l.Jh.map(this.disposables.add(new f.f(this.domNode,"contextmenu")).event,a=>this.toMouseEvent(a),this.disposables),l.Jh.map(this.disposables.add(new f.f(this.domNode,g.B.Contextmenu)).event,a=>this.toGestureEvent(a),this.disposables))}get onTouchStart(){return l.Jh.map(this.disposables.add(new f.f(this.domNode,"touchstart")).event,a=>this.toTouchEvent(a),this.disposables)}get onTap(){return l.Jh.map(this.disposables.add(new f.f(this.rowsContainer,g.B.Tap)).event,a=>this.toGestureEvent(a),this.disposables)}toMouseEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toTouchEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toGestureEvent(a){let b=this.getItemIndexFromEventTarget(a.initialTarget||null),c=void 0===b?void 0:this.items[b];return{browserEvent:a,index:b,element:c&&c.element}}toDragEvent(a){let b=this.getItemIndexFromEventTarget(a.target||null),c=void 0===b?void 0:this.items[b],d=c&&c.element,e=this.getTargetSector(a,b);return{browserEvent:a,index:b,element:d,sector:e}}onScroll(a){try{let b=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(b,a.scrollTop,a.height,a.scrollLeft,a.scrollWidth,void 0,!0),this.supportDynamicHeights&&this._rerender(a.scrollTop,a.height,a.inSmoothScrolling)}catch(b){throw console.error("Got bad scroll event:",a),b}}onTouchChange(a){a.preventDefault(),a.stopPropagation(),this.scrollTop-=a.translationY}onDragStart(a,b,c){let f;if(!c.dataTransfer)return;let g=this.dnd.getDragElements(a);c.dataTransfer.effectAllowed="copyMove",c.dataTransfer.setData(d.t.TEXT,b),this.dnd.getDragLabel&&(f=this.dnd.getDragLabel(g,c)),void 0===f&&(f=String(g.length)),function(a,b,c,d=[]){if(!a.dataTransfer)return;let f=(0,e.$)(".monaco-drag-image");f.textContent=c,f.classList.add(...d),(a=>{for(;a&&!a.classList.contains("monaco-workbench");)a=a.parentElement;return a||b.ownerDocument.body})(b).appendChild(f),a.dataTransfer.setDragImage(f,-10,-10),setTimeout(()=>f.remove(),0)}(c,this.domNode,f,[this.domId]),this.domNode.classList.add("dragging"),this.currentDragData=new y(g),w.CurrentDragAndDropData=new z(g),this.dnd.onDragStart?.(this.currentDragData,c)}onPotentialSelectionStart(a){this.currentSelectionDisposable.dispose();let b=(0,e.YE)(this.domNode),c=this.currentSelectionDisposable=new m.Cm,d=c.add(new m.Cm);d.add((0,e.ko)(this.domNode,"selectstart",()=>{d.add((0,e.ko)(b,"mousemove",a=>{b.getSelection()?.isCollapsed===!1&&this.setupDragAndDropScrollTopAnimation(a)})),c.add((0,m.s)(()=>{let a=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.currentSelectionBounds=void 0,this.render(a,this.lastRenderTop,this.lastRenderHeight,void 0,void 0)})),c.add((0,e.ko)(b,"selectionchange",()=>{let a=b.getSelection();if(!a||a.isCollapsed){d.isDisposed&&c.dispose();return}let e=this.getIndexOfListElement(a.anchorNode),f=this.getIndexOfListElement(a.focusNode);void 0!==e&&void 0!==f&&(f<e&&([e,f]=[f,e]),this.currentSelectionBounds={start:e,end:f})}))})),d.add((0,e.ko)(b,"mouseup",()=>{d.dispose(),this.teardownDragAndDropScrollTopAnimation(),b.getSelection()?.isCollapsed!==!1&&c.dispose()}))}getIndexOfListElement(a){if(a&&this.domNode.contains(a))for(;a&&a!==this.domNode;){if(a.dataset?.index)return Number(a.dataset.index);a=a.parentElement}}onDragOver(a){var b,c;let d;if(a.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),w.CurrentDragAndDropData&&"vscode-ui"===w.CurrentDragAndDropData.getData()||(this.setupDragAndDropScrollTopAnimation(a.browserEvent),!a.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(w.CurrentDragAndDropData)this.currentDragData=w.CurrentDragAndDropData;else{if(!a.browserEvent.dataTransfer.types)return!1;this.currentDragData=new A}let e=this.dnd.onDragOver(this.currentDragData,a.element,a.index,a.sector,a.browserEvent);if(this.canDrop="boolean"==typeof e?e:e.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;a.browserEvent.dataTransfer.dropEffect="boolean"!=typeof e&&e.effect?.type===0?"copy":"move",d="boolean"!=typeof e&&e.feedback?e.feedback:void 0===a.index?[-1]:[a.index],d=-1===(d=(0,i.dM)(d).filter(a=>a>=-1&&a<this.length).sort((a,b)=>a-b))[0]?[-1]:d;let f="boolean"!=typeof e&&e.effect&&e.effect.position?e.effect.position:"drop-target";if(b=this.currentDragFeedback,c=d,(Array.isArray(b)&&Array.isArray(c)?(0,i.aI)(b,c):b===c)&&this.currentDragFeedbackPosition===f)return!0;if(this.currentDragFeedback=d,this.currentDragFeedbackPosition=f,this.currentDragFeedbackDisposable.dispose(),-1===d[0])this.domNode.classList.add(f),this.rowsContainer.classList.add(f),this.currentDragFeedbackDisposable=(0,m.s)(()=>{this.domNode.classList.remove(f),this.rowsContainer.classList.remove(f)});else{if(d.length>1&&"drop-target"!==f)throw Error("Can't use multiple feedbacks with position different than 'over'");for(let a of("drop-target-after"===f&&d[0]<this.length-1&&(d[0]+=1,f="drop-target-before"),d)){let b=this.items[a];b.dropTarget=!0,b.row?.domNode.classList.add(f)}this.currentDragFeedbackDisposable=(0,m.s)(()=>{for(let a of d){let b=this.items[a];b.dropTarget=!1,b.row?.domNode.classList.remove(f)}})}return!0}onDragLeave(a){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=(0,j.EQ)(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,a.element,a.index,a.browserEvent)}onDrop(a){if(!this.canDrop)return;let b=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,w.CurrentDragAndDropData=void 0,b&&a.browserEvent.dataTransfer&&(a.browserEvent.preventDefault(),b.update(a.browserEvent.dataTransfer),this.dnd.drop(b,a.element,a.index,a.sector,a.browserEvent))}onDragEnd(a){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,w.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(a)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=m.jG.None}setupDragAndDropScrollTopAnimation(a){if(!this.dragOverAnimationDisposable){let a=(0,e.cL)(this.domNode).top;this.dragOverAnimationDisposable=(0,e.i0)((0,e.zk)(this.domNode),this.animateDragAndDropScrollTop.bind(this,a))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=(0,j.EQ)(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=a.pageY}animateDragAndDropScrollTop(a){if(void 0===this.dragOverMouseY)return;let b=this.dragOverMouseY-a,c=this.renderHeight-35;b<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(b-35))):b>c&&(this.scrollTop+=Math.min(14,Math.floor(.3*(b-c))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(a,b){if(void 0===b)return;let c=Math.floor(a.offsetY/this.items[b].size/.25);return(0,u.qE)(c,0,3)}getItemIndexFromEventTarget(a){let b=this.scrollableElement.getDomNode(),c=a;for(;((0,e.sb)(c)||(0,e.xZ)(c))&&c!==this.rowsContainer&&b.contains(c);){let a=c.getAttribute("data-index");if(a){let b=Number(a);if(!isNaN(b))return b}c=c.parentElement}}getVisibleRange(a,b){return{start:this.rangeMap.indexAt(a),end:this.rangeMap.indexAfter(a+b-1)}}getRenderRange(a,b){let c=this.getVisibleRange(a,b);if(this.currentSelectionBounds){let a=this.rangeMap.count;c.start=Math.min(c.start,this.currentSelectionBounds.start,a),c.end=Math.min(Math.max(c.end,this.currentSelectionBounds.end+1),a)}return c}_rerender(a,b,c){let d,e,f=this.getRenderRange(a,b);a===this.elementTop(f.start)?(d=f.start,e=0):f.end-f.start>1&&(d=f.start+1,e=this.elementTop(d)-a);let g=0;for(;;){let h=this.getRenderRange(a,b),i=!1;for(let a=h.start;a<h.end;a++){let b=this.probeDynamicHeight(a);0!==b&&this.rangeMap.splice(a,1,[this.items[a]]),g+=b,i=i||0!==b}if(!i){for(let a of(0!==g&&this.eventuallyUpdateScrollDimensions(),n.Q.relativeComplement(f,h)))for(let b=a.start;b<a.end;b++)this.items[b].row&&this.removeItemFromDOM(b);for(let a of n.Q.relativeComplement(h,f).reverse())for(let b=a.end-1;b>=a.start;b--)this.insertItemInDOM(b);for(let a=h.start;a<h.end;a++)this.items[a].row&&this.updateItemInDOM(this.items[a],a);if("number"==typeof d){let b=this.scrollable.getFutureScrollPosition().scrollTop-a,f=this.elementTop(d)-e+b;this.setScrollTop(f,c)}this._onDidChangeContentHeight.fire(this.contentHeight);return}}}probeDynamicHeight(a){let b=this.items[a];if(this.virtualDelegate.getDynamicHeight){let a=this.virtualDelegate.getDynamicHeight(b.element);if(null!==a){let c=b.size;return b.size=a,b.lastDynamicHeightWidth=this.renderWidth,a-c}}if(!b.hasDynamicHeight||b.lastDynamicHeightWidth===this.renderWidth||this.virtualDelegate.hasDynamicHeight&&!this.virtualDelegate.hasDynamicHeight(b.element))return 0;let c=b.size;if(b.row)return b.row.domNode.style.height="",b.size=b.row.domNode.offsetHeight,0!==b.size||(0,e.QX)(b.row.domNode,(0,e.zk)(b.row.domNode).document.body)||console.warn("Measuring item node that is not in DOM! Add ListView to the DOM before measuring row height!",Error().stack),b.lastDynamicHeightWidth=this.renderWidth,b.size-c;let{row:d}=this.cache.alloc(b.templateId);d.domNode.style.height="",this.rowsContainer.appendChild(d.domNode);let f=this.renderers.get(b.templateId);if(!f)throw new t.D7("Missing renderer for templateId: "+b.templateId);return f.renderElement(b.element,a,d.templateData),b.size=d.domNode.offsetHeight,f.disposeElement?.(b.element,a,d.templateData),this.virtualDelegate.setDynamicHeight?.(b.element,b.size),b.lastDynamicHeightWidth=this.renderWidth,d.domNode.remove(),this.cache.release(d),b.size-c}getElementDomId(a){return`${this.domId}_${a}`}dispose(){for(let a of this.items)if(a.dragStartDisposable.dispose(),a.checkedDisposable.dispose(),a.row){let b=this.renderers.get(a.row.templateId);b&&(b.disposeElement?.(a.element,-1,a.row.templateData,void 0),b.disposeTemplate(a.row.templateData))}this.items=[],this.domNode?.remove(),this.dragOverAnimationDisposable?.dispose(),this.disposables.dispose()}}v([k.B],C.prototype,"onMouseClick",null),v([k.B],C.prototype,"onMouseDblClick",null),v([k.B],C.prototype,"onMouseMiddleClick",null),v([k.B],C.prototype,"onMouseDown",null),v([k.B],C.prototype,"onMouseOver",null),v([k.B],C.prototype,"onMouseOut",null),v([k.B],C.prototype,"onContextMenu",null),v([k.B],C.prototype,"onTouchStart",null),v([k.B],C.prototype,"onTap",null)},85531:()=>{},85999:()=>{},86031:(a,b,c)=>{"use strict";c.d(b,{HG:()=>q,KS:()=>u,un:()=>v});var d=c(32677),e=c(88347),f=c(60734),g=c(11314),h=c(25536),i=c(79487),j=c(45367),k=c(63090),l=c(29715),m=c(559),n=c(21899),o=c(91295),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,l.u1)("IInlineCompletionsService"),r=new j.N1("inlineCompletions.snoozed",!1,(0,h.kg)(76,"Whether inline completions are currently snoozed")),s=class extends g.jG{get snoozeTimeLeft(){return void 0===this._snoozeTimeEnd?0:Math.max(0,this._snoozeTimeEnd-Date.now())}constructor(a,b){super(),this._contextKeyService=a,this._telemetryService=b,this._onDidChangeIsSnoozing=this._register(new f.vl),this.onDidChangeIsSnoozing=this._onDidChangeIsSnoozing.event,this._snoozeTimeEnd=void 0,this._recentCompletionIds=[],this._timer=this._register(new d.Be);let c=r.bindTo(this._contextKeyService);this._register(this.onDidChangeIsSnoozing(()=>c.set(this.isSnoozing())))}setSnoozeDuration(a){if(a<0)throw new e.D7(`Invalid snooze duration: ${a}. Duration must be non-negative.`);if(0===a)return void this.cancelSnooze();let b=this.isSnoozing(),c=this.snoozeTimeLeft;this._snoozeTimeEnd=Date.now()+a,b||this._onDidChangeIsSnoozing.fire(!0),this._timer.cancelAndSet(()=>{if(this.isSnoozing())throw new e.D7("Snooze timer did not fire as expected");this._onDidChangeIsSnoozing.fire(!1)},this.snoozeTimeLeft+1),this._reportSnooze(a-c,a)}isSnoozing(){return this.snoozeTimeLeft>0}cancelSnooze(){this.isSnoozing()&&(this._reportSnooze(-this.snoozeTimeLeft,0),this._snoozeTimeEnd=void 0,this._timer.cancel(),this._onDidChangeIsSnoozing.fire(!1))}reportNewCompletion(a){this._lastCompletionId=a,this._recentCompletionIds.unshift(a),this._recentCompletionIds.length>5&&this._recentCompletionIds.pop()}_reportSnooze(a,b){let c=Math.round(a/1e3),d=Math.round(b/1e3);this._telemetryService.publicLog2("inlineCompletions.snooze",{deltaSeconds:c,totalSeconds:d,lastCompletionId:this._lastCompletionId,recentCompletionIds:this._recentCompletionIds})}};s=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,j.fN),p(1,o.k)],s),(0,k.v)(q,s,1);let t="inlineCompletions.lastSnoozeDuration";class u extends i.L{static{this.ID="editor.action.inlineSuggest.snooze"}constructor(){super({id:u.ID,title:(0,h.aS)(78,"Snooze Inline Suggestions"),precondition:j.M$.true(),f1:!0})}async run(a,...b){let c,d=a.get(m.GK),e=a.get(q),f=a.get(n.CS);b.length>0&&"number"==typeof b[0]&&(c=b[0]),c||(c=await this.getDurationFromUser(d,f)),c&&e.setSnoozeDuration(c)}async getDurationFromUser(a,b){let c=b.getNumber(t,0,3e5),d=[{label:"1 minute",id:"1",value:6e4},{label:"5 minutes",id:"5",value:3e5},{label:"10 minutes",id:"10",value:6e5},{label:"15 minutes",id:"15",value:9e5},{label:"30 minutes",id:"30",value:18e5},{label:"60 minutes",id:"60",value:36e5}],e=await a.pick(d,{placeHolder:(0,h.kg)(77,"Select snooze duration for Code completions and NES"),activeItem:d.find(a=>a.value===c)});if(e)return b.store(t,e.value,0,0),e.value}}class v extends i.L{static{this.ID="editor.action.inlineSuggest.cancelSnooze"}constructor(){super({id:v.ID,title:(0,h.aS)(79,"Cancel Snooze Inline Suggestions"),precondition:r,f1:!0})}async run(a){a.get(q).cancelSnooze()}}},86690:()=>{},87229:(a,b,c)=>{"use strict";c.d(b,{MU:()=>B,QC:()=>x,Se:()=>z,oO:()=>A});var d=c(88637),e=c(32677),f=c(27503),g=c(21280),h=c(4120),i=c(62274),j=c(40565),k=c(81633);class l extends i.x{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px",void 0!==a.top&&(this.bgDomNode.style.top="0px"),void 0!==a.left&&(this.bgDomNode.style.left="0px"),void 0!==a.bottom&&(this.bgDomNode.style.bottom="0px"),void 0!==a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.classList.add(...k.L.asClassNameArray(a.icon)),this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px",void 0!==a.top&&(this.domNode.style.top=a.top+"px"),void 0!==a.left&&(this.domNode.style.left=a.left+"px"),void 0!==a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),void 0!==a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new h._),this._register(e.un(this.bgDomNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register(e.un(this.domNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new e.Be),this._pointerdownScheduleRepeatTimer=this._register(new j.pc)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,e.zk(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}}var m=c(11314);class n extends m.jG{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new j.pc)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded)return void this._hide(!1);this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}}var o=c(56167);class p extends i.x{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new n(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new h._),this._shouldRender=!0,this.domNode=(0,f.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(e.ko(this.domNode.domNode,e.Bx.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new l(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=(0,f.Z)(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(e.ko(this.slider.domNode,e.Bx.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{let d=e.BK(this.domNode.domNode);b=a.pageX-d.left,c=a.pageY-d.top}let d="mouse"===a.pointerType,f=0===a.button;if(f||!d){let a=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(a):this._scrollbarState.getDesiredScrollPositionFromOffset(a))}f&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(o.uF&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a);this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f-b))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}var q=c(76558),r=c(90399);class s extends p{constructor(a,b,c){let d=a.getScrollDimensions();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,a.getCurrentScrollPosition().scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows){let a=(b.arrowSize-11)/2,c=(b.horizontalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonLeft,top:c,left:a,bottom:void 0,right:void 0,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,1,0))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonRight,top:c,left:void 0,bottom:void 0,right:a,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,-1,0))})}this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}}class t extends p{constructor(a,b,c){let d=a.getScrollDimensions();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,a.getCurrentScrollPosition().scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows){let a=(b.arrowSize-11)/2,c=(b.verticalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonUp,top:a,left:c,bottom:void 0,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,1))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonDown,top:void 0,left:c,bottom:a,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,-1))})}this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}}var u=c(60734),v=c(21777);c(6411);class w{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}}class x{static{this.INSTANCE=new x}constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(d.H8){let b=e.zk(a.browserEvent),c=(0,d.pR)(b);this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new w(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return Math.abs(Math.round(a)-a)<.01+100*Number.EPSILON}}class y extends i.x{get onScroll(){return this._onScroll.event}get options(){return this._options}constructor(a,b,c){super(),this._inertialTimeout=null,this._inertialSpeed={X:0,Y:0},this._onScroll=this._register(new u.vl),this._onWillScroll=this._register(new u.vl),a.style.overflow="hidden",this._options=function(a){let b={lazyRender:void 0!==a.lazyRender&&a.lazyRender,className:void 0!==a.className?a.className:"",useShadows:void 0===a.useShadows||a.useShadows,handleMouseWheel:void 0===a.handleMouseWheel||a.handleMouseWheel,flipAxes:void 0!==a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:void 0!==a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:void 0!==a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:void 0!==a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:void 0!==a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:void 0===a.scrollPredominantAxis||a.scrollPredominantAxis,mouseWheelSmoothScroll:void 0===a.mouseWheelSmoothScroll||a.mouseWheelSmoothScroll,inertialScroll:void 0!==a.inertialScroll&&a.inertialScroll,arrowSize:void 0!==a.arrowSize?a.arrowSize:11,listenOnDomNode:void 0!==a.listenOnDomNode?a.listenOnDomNode:null,horizontal:void 0!==a.horizontal?a.horizontal:1,horizontalScrollbarSize:void 0!==a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:void 0!==a.horizontalHasArrows&&a.horizontalHasArrows,vertical:void 0!==a.vertical?a.vertical:1,verticalScrollbarSize:void 0!==a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:void 0!==a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:void 0!==a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:void 0!==a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize=void 0!==a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize=void 0!==a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,o.zx&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));let d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new t(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new s(this._scrollable,this._options,d)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=(0,f.Z)(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=(0,f.Z)(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=(0,f.Z)(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new j.pc),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),this._inertialTimeout&&(this._inertialTimeout.dispose(),this._inertialTimeout=null),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,o.zx&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(a){void 0!==a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),void 0!==a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),void 0!==a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),void 0!==a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),void 0!==a.horizontal&&(this._options.horizontal=a.horizontal),void 0!==a.vertical&&(this._options.vertical=a.vertical),void 0!==a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),void 0!==a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),void 0!==a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new g.$(a))}async _periodicSync(){let a=!1;(0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y)&&(this._scrollable.setScrollPositionNow({scrollTop:this._scrollable.getCurrentScrollPosition().scrollTop-100*this._inertialSpeed.Y,scrollLeft:this._scrollable.getCurrentScrollPosition().scrollLeft-100*this._inertialSpeed.X}),this._inertialSpeed.X*=.9,this._inertialSpeed.Y*=.9,.01>Math.abs(this._inertialSpeed.X)&&(this._inertialSpeed.X=0),.01>Math.abs(this._inertialSpeed.Y)&&(this._inertialSpeed.Y=0),a=0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y),a?(this._inertialTimeout||(this._inertialTimeout=new j.pc),this._inertialTimeout.cancelAndSet(()=>this._periodicSync(),1e3/60)):(this._inertialTimeout?.dispose(),this._inertialTimeout=null)}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new g.$(a))};this._mouseWheelToDispose.push(e.ko(this._listenOnDomNode,e.Bx.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=x.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!o.zx&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}if(h=this._scrollable.validateScrollPosition(h),this._options.inertialScroll&&(e||d)){let a=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y&&(a=!0),this._inertialSpeed.Y=(d<0?-1:1)*Math.abs(d)**1.02,this._inertialSpeed.X=(e<0?-1:1)*Math.abs(e)**1.02,a&&this._periodicSync()}(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet(()=>this._hide(),500)}}class z extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;let c=new v.yE({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>e.PG(e.zk(a),b)});super(a,b,c),this._register(c)}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}}class A extends y{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class B extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;let c=new v.yE({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>e.PG(e.zk(a),b)});super(a,b,c),this._register(c),this._element=a,this._register(this.onScroll(a=>{a.scrollTopChanged&&(this._element.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this._element.scrollLeft=a.scrollLeft)})),this.scanDomNode()}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}},88077:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(18920);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},88322:()=>{},88323:()=>{},88347:(a,b,c)=>{"use strict";c.d(b,{AL:()=>k,D7:()=>q,EM:()=>o,MB:()=>j,M_:()=>h,Qg:()=>m,aD:()=>l,cU:()=>function a(b){if(b instanceof Error){let{name:c,message:d,cause:e}=b;return{$isError:!0,name:c,message:d,stack:b.stacktrace||b.stack,noTelemetry:p.isErrorNoTelemetry(b),cause:e?a(e):void 0,code:b.code}}return b},dz:()=>g,iH:()=>n,y4:()=>f});class d{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{if(a.stack){if(p.isErrorNoTelemetry(a))throw new p(a.message+"\n\n"+a.stack);throw Error(a.message+"\n\n"+a.stack)}throw a},0)}}emit(a){this.listeners.forEach(b=>{b(a)})}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}}let e=new d;function f(a){e.onUnexpectedError(a)}function g(a){j(a)||e.onUnexpectedError(a)}function h(a){j(a)||e.onUnexpectedExternalError(a)}let i="Canceled";function j(a){return a instanceof k||a instanceof Error&&a.name===i&&a.message===i}class k extends Error{constructor(){super(i),this.name=this.message}}function l(){let a=Error(i);return a.name=a.message,a}function m(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}function n(a){return a?Error(`Illegal state: ${a}`):Error("Illegal state")}class o extends Error{constructor(a){super("NotSupported"),a&&(this.message=a)}}class p extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(a){if(a instanceof p)return a;let b=new p;return b.message=a.message,b.stack=a.stack,b}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}}class q extends Error{constructor(a){super(a||"An unexpected bug occurred."),Object.setPrototypeOf(this,q.prototype)}}},88482:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(29715).u1)("ILanguageFeaturesService")},88637:(a,b,c)=>{"use strict";c.d(b,{Dy:()=>f,H8:()=>k,Qu:()=>p,Tc:()=>j,c8:()=>m,gm:()=>i,m0:()=>n,nr:()=>l,pR:()=>g});var d=c(29813);class e{constructor(){this.mapWindowIdToZoomFactor=new Map}static{this.INSTANCE=new e}getZoomFactor(a){return this.mapWindowIdToZoomFactor.get(this.getWindowId(a))??1}getWindowId(a){return a.vscodeWindowId}}function f(a,b,c){"string"==typeof b&&(b=a.matchMedia(b)),b.addEventListener("change",c)}function g(a){return e.INSTANCE.getZoomFactor(a)}let h=navigator.userAgent,i=h.indexOf("Firefox")>=0,j=h.indexOf("AppleWebKit")>=0,k=h.indexOf("Chrome")>=0,l=!k&&h.indexOf("Safari")>=0,m=!k&&!l&&j;h.indexOf("Electron/");let n=h.indexOf("Android")>=0,o=!1;if("function"==typeof d.G.matchMedia){let a=d.G.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),b=d.G.matchMedia("(display-mode: fullscreen)");o=a.matches,f(d.G,a,({matches:a})=>{o&&b.matches||(o=a)})}function p(){return o}},88662:(a,b,c)=>{"use strict";c.d(b,{W:()=>g,c:()=>f});var d=c(59317),e=c(25247);class f{static fromModelContentChanges(a){return a.map(a=>{let b=d.Q.lift(a.range);return new f((0,e.VL)(b.getStartPosition()),(0,e.VL)(b.getEndPosition()),(0,e.rR)(a.text))}).reverse()}constructor(a,b,c){this.startOffset=a,this.endOffset=b,this.newLength=c}toString(){return`[${(0,e.l4)(this.startOffset)}...${(0,e.l4)(this.endOffset)}) -> ${(0,e.l4)(this.newLength)}`}}class g{constructor(a){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=a.map(a=>h.from(a))}getOffsetBeforeChange(a){return this.adjustNextEdit(a),this.translateCurToOld(a)}getDistanceToNextChange(a){this.adjustNextEdit(a);let b=this.edits[this.nextEditIdx],c=b?this.translateOldToCur(b.offsetObj):null;return null===c?null:(0,e.MS)(a,c)}translateOldToCur(a){return a.lineCount===this.deltaLineIdxInOld?(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount+this.deltaOldToNewColumnCount):(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount)}translateCurToOld(a){let b=(0,e.l4)(a);return b.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount-this.deltaOldToNewColumnCount):(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount)}adjustNextEdit(a){for(;this.nextEditIdx<this.edits.length;){let b=this.edits[this.nextEditIdx],c=this.translateOldToCur(b.endOffsetAfterObj);if((0,e.vr)(c,a)){this.nextEditIdx++;let a=(0,e.l4)(c),d=(0,e.l4)(this.translateOldToCur(b.endOffsetBeforeObj)),f=a.lineCount-d.lineCount;this.deltaOldToNewLineCount+=f;let g=this.deltaLineIdxInOld===b.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,h=a.columnCount-d.columnCount;this.deltaOldToNewColumnCount=g+h,this.deltaLineIdxInOld=b.endOffsetBeforeObj.lineCount}else break}}}class h{static from(a){return new h(a.startOffset,a.endOffset,a.newLength)}constructor(a,b,c){this.endOffsetBeforeObj=(0,e.l4)(b),this.endOffsetAfterObj=(0,e.l4)((0,e.QB)(a,c)),this.offsetObj=(0,e.l4)(a)}}},89350:(a,b,c)=>{"use strict";c.d(b,{$8:()=>h,SL:()=>g,_3:()=>i,aY:()=>k,uY:()=>j});var d=c(54734),e=c(88347),f=c(95967);class g{static trivial(a,b){return new g([new h(f.L.ofLength(a.length),f.L.ofLength(b.length))],!1)}static trivialTimedOut(a,b){return new g([new h(f.L.ofLength(a.length),f.L.ofLength(b.length))],!0)}constructor(a,b){this.diffs=a,this.hitTimeout=b}}class h{static invert(a,b){let c=[];return(0,d.pN)(a,(a,d)=>{c.push(h.fromOffsetPairs(a?a.getEndExclusives():i.zero,d?d.getStarts():new i(b,(a?a.seq2Range.endExclusive-a.seq1Range.endExclusive:0)+b)))}),c}static fromOffsetPairs(a,b){return new h(new f.L(a.offset1,b.offset1),new f.L(a.offset2,b.offset2))}static assertSorted(a){let b;for(let c of a){if(b&&!(b.seq1Range.endExclusive<=c.seq1Range.start&&b.seq2Range.endExclusive<=c.seq2Range.start))throw new e.D7("Sequence diffs must be sorted");b=c}}constructor(a,b){this.seq1Range=a,this.seq2Range=b}swap(){return new h(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(a){return new h(this.seq1Range.join(a.seq1Range),this.seq2Range.join(a.seq2Range))}delta(a){return 0===a?this:new h(this.seq1Range.delta(a),this.seq2Range.delta(a))}deltaStart(a){return 0===a?this:new h(this.seq1Range.deltaStart(a),this.seq2Range.deltaStart(a))}deltaEnd(a){return 0===a?this:new h(this.seq1Range.deltaEnd(a),this.seq2Range.deltaEnd(a))}intersect(a){let b=this.seq1Range.intersect(a.seq1Range),c=this.seq2Range.intersect(a.seq2Range);if(b&&c)return new h(b,c)}getStarts(){return new i(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new i(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}class i{static{this.zero=new i(0,0)}static{this.max=new i(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER)}constructor(a,b){this.offset1=a,this.offset2=b}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(a){return 0===a?this:new i(this.offset1+a,this.offset2+a)}equals(a){return this.offset1===a.offset1&&this.offset2===a.offset2}}class j{static{this.instance=new j}isValid(){return!0}}class k{constructor(a){if(this.timeout=a,this.startTime=Date.now(),this.valid=!0,a<=0)throw new e.D7("timeout must be positive")}isValid(){return!(Date.now()-this.startTime<this.timeout)&&this.valid&&(this.valid=!1),this.valid}}},89420:()=>{},89535:(a,b,c)=>{"use strict";c.d(b,{$D:()=>d,I_:()=>f,To:()=>e,Ym:()=>g});let d=(0,c(29715).u1)("undoRedoService");class e{constructor(a,b){this.resource=a,this.elements=b}}class f{static{this._ID=0}constructor(){this.id=f._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new f}}class g{static{this._ID=0}constructor(){this.id=g._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new g}}},89754:()=>{},89876:()=>{},90078:()=>{},90389:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(27503);function e(a,b){a instanceof d.D?(a.setFontFamily(b.getMassagedFontFamily()),a.setFontWeight(b.fontWeight),a.setFontSize(b.fontSize),a.setFontFeatureSettings(b.fontFeatureSettings),a.setFontVariationSettings(b.fontVariationSettings),a.setLineHeight(b.lineHeight),a.setLetterSpacing(b.letterSpacing)):(a.style.fontFamily=b.getMassagedFontFamily(),a.style.fontWeight=b.fontWeight,a.style.fontSize=b.fontSize+"px",a.style.fontFeatureSettings=b.fontFeatureSettings,a.style.fontVariationSettings=b.fontVariationSettings,a.style.lineHeight=b.lineHeight+"px",a.style.letterSpacing=b.letterSpacing+"px")}},90399:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23140);let e={add:(0,d.k)("add",6e4),plus:(0,d.k)("plus",6e4),gistNew:(0,d.k)("gist-new",6e4),repoCreate:(0,d.k)("repo-create",6e4),lightbulb:(0,d.k)("lightbulb",60001),lightBulb:(0,d.k)("light-bulb",60001),repo:(0,d.k)("repo",60002),repoDelete:(0,d.k)("repo-delete",60002),gistFork:(0,d.k)("gist-fork",60003),repoForked:(0,d.k)("repo-forked",60003),gitPullRequest:(0,d.k)("git-pull-request",60004),gitPullRequestAbandoned:(0,d.k)("git-pull-request-abandoned",60004),recordKeys:(0,d.k)("record-keys",60005),keyboard:(0,d.k)("keyboard",60005),tag:(0,d.k)("tag",60006),gitPullRequestLabel:(0,d.k)("git-pull-request-label",60006),tagAdd:(0,d.k)("tag-add",60006),tagRemove:(0,d.k)("tag-remove",60006),person:(0,d.k)("person",60007),personFollow:(0,d.k)("person-follow",60007),personOutline:(0,d.k)("person-outline",60007),personFilled:(0,d.k)("person-filled",60007),gitBranch:(0,d.k)("git-branch",60008),gitBranchCreate:(0,d.k)("git-branch-create",60008),gitBranchDelete:(0,d.k)("git-branch-delete",60008),sourceControl:(0,d.k)("source-control",60008),mirror:(0,d.k)("mirror",60009),mirrorPublic:(0,d.k)("mirror-public",60009),star:(0,d.k)("star",60010),starAdd:(0,d.k)("star-add",60010),starDelete:(0,d.k)("star-delete",60010),starEmpty:(0,d.k)("star-empty",60010),comment:(0,d.k)("comment",60011),commentAdd:(0,d.k)("comment-add",60011),alert:(0,d.k)("alert",60012),warning:(0,d.k)("warning",60012),search:(0,d.k)("search",60013),searchSave:(0,d.k)("search-save",60013),logOut:(0,d.k)("log-out",60014),signOut:(0,d.k)("sign-out",60014),logIn:(0,d.k)("log-in",60015),signIn:(0,d.k)("sign-in",60015),eye:(0,d.k)("eye",60016),eyeUnwatch:(0,d.k)("eye-unwatch",60016),eyeWatch:(0,d.k)("eye-watch",60016),circleFilled:(0,d.k)("circle-filled",60017),primitiveDot:(0,d.k)("primitive-dot",60017),closeDirty:(0,d.k)("close-dirty",60017),debugBreakpoint:(0,d.k)("debug-breakpoint",60017),debugBreakpointDisabled:(0,d.k)("debug-breakpoint-disabled",60017),debugHint:(0,d.k)("debug-hint",60017),terminalDecorationSuccess:(0,d.k)("terminal-decoration-success",60017),primitiveSquare:(0,d.k)("primitive-square",60018),edit:(0,d.k)("edit",60019),pencil:(0,d.k)("pencil",60019),info:(0,d.k)("info",60020),issueOpened:(0,d.k)("issue-opened",60020),gistPrivate:(0,d.k)("gist-private",60021),gitForkPrivate:(0,d.k)("git-fork-private",60021),lock:(0,d.k)("lock",60021),mirrorPrivate:(0,d.k)("mirror-private",60021),close:(0,d.k)("close",60022),removeClose:(0,d.k)("remove-close",60022),x:(0,d.k)("x",60022),repoSync:(0,d.k)("repo-sync",60023),sync:(0,d.k)("sync",60023),clone:(0,d.k)("clone",60024),desktopDownload:(0,d.k)("desktop-download",60024),beaker:(0,d.k)("beaker",60025),microscope:(0,d.k)("microscope",60025),vm:(0,d.k)("vm",60026),deviceDesktop:(0,d.k)("device-desktop",60026),file:(0,d.k)("file",60027),fileText:(0,d.k)("file-text",60027),more:(0,d.k)("more",60028),ellipsis:(0,d.k)("ellipsis",60028),kebabHorizontal:(0,d.k)("kebab-horizontal",60028),mailReply:(0,d.k)("mail-reply",60029),reply:(0,d.k)("reply",60029),organization:(0,d.k)("organization",60030),organizationFilled:(0,d.k)("organization-filled",60030),organizationOutline:(0,d.k)("organization-outline",60030),newFile:(0,d.k)("new-file",60031),fileAdd:(0,d.k)("file-add",60031),newFolder:(0,d.k)("new-folder",60032),fileDirectoryCreate:(0,d.k)("file-directory-create",60032),trash:(0,d.k)("trash",60033),trashcan:(0,d.k)("trashcan",60033),history:(0,d.k)("history",60034),clock:(0,d.k)("clock",60034),folder:(0,d.k)("folder",60035),fileDirectory:(0,d.k)("file-directory",60035),symbolFolder:(0,d.k)("symbol-folder",60035),logoGithub:(0,d.k)("logo-github",60036),markGithub:(0,d.k)("mark-github",60036),github:(0,d.k)("github",60036),terminal:(0,d.k)("terminal",60037),console:(0,d.k)("console",60037),repl:(0,d.k)("repl",60037),zap:(0,d.k)("zap",60038),symbolEvent:(0,d.k)("symbol-event",60038),error:(0,d.k)("error",60039),stop:(0,d.k)("stop",60039),variable:(0,d.k)("variable",60040),symbolVariable:(0,d.k)("symbol-variable",60040),array:(0,d.k)("array",60042),symbolArray:(0,d.k)("symbol-array",60042),symbolModule:(0,d.k)("symbol-module",60043),symbolPackage:(0,d.k)("symbol-package",60043),symbolNamespace:(0,d.k)("symbol-namespace",60043),symbolObject:(0,d.k)("symbol-object",60043),symbolMethod:(0,d.k)("symbol-method",60044),symbolFunction:(0,d.k)("symbol-function",60044),symbolConstructor:(0,d.k)("symbol-constructor",60044),symbolBoolean:(0,d.k)("symbol-boolean",60047),symbolNull:(0,d.k)("symbol-null",60047),symbolNumeric:(0,d.k)("symbol-numeric",60048),symbolNumber:(0,d.k)("symbol-number",60048),symbolStructure:(0,d.k)("symbol-structure",60049),symbolStruct:(0,d.k)("symbol-struct",60049),symbolParameter:(0,d.k)("symbol-parameter",60050),symbolTypeParameter:(0,d.k)("symbol-type-parameter",60050),symbolKey:(0,d.k)("symbol-key",60051),symbolText:(0,d.k)("symbol-text",60051),symbolReference:(0,d.k)("symbol-reference",60052),goToFile:(0,d.k)("go-to-file",60052),symbolEnum:(0,d.k)("symbol-enum",60053),symbolValue:(0,d.k)("symbol-value",60053),symbolRuler:(0,d.k)("symbol-ruler",60054),symbolUnit:(0,d.k)("symbol-unit",60054),activateBreakpoints:(0,d.k)("activate-breakpoints",60055),archive:(0,d.k)("archive",60056),arrowBoth:(0,d.k)("arrow-both",60057),arrowDown:(0,d.k)("arrow-down",60058),arrowLeft:(0,d.k)("arrow-left",60059),arrowRight:(0,d.k)("arrow-right",60060),arrowSmallDown:(0,d.k)("arrow-small-down",60061),arrowSmallLeft:(0,d.k)("arrow-small-left",60062),arrowSmallRight:(0,d.k)("arrow-small-right",60063),arrowSmallUp:(0,d.k)("arrow-small-up",60064),arrowUp:(0,d.k)("arrow-up",60065),bell:(0,d.k)("bell",60066),bold:(0,d.k)("bold",60067),book:(0,d.k)("book",60068),bookmark:(0,d.k)("bookmark",60069),debugBreakpointConditionalUnverified:(0,d.k)("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:(0,d.k)("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:(0,d.k)("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:(0,d.k)("debug-breakpoint-data-unverified",60072),debugBreakpointData:(0,d.k)("debug-breakpoint-data",60073),debugBreakpointDataDisabled:(0,d.k)("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:(0,d.k)("debug-breakpoint-log-unverified",60074),debugBreakpointLog:(0,d.k)("debug-breakpoint-log",60075),debugBreakpointLogDisabled:(0,d.k)("debug-breakpoint-log-disabled",60075),briefcase:(0,d.k)("briefcase",60076),broadcast:(0,d.k)("broadcast",60077),browser:(0,d.k)("browser",60078),bug:(0,d.k)("bug",60079),calendar:(0,d.k)("calendar",60080),caseSensitive:(0,d.k)("case-sensitive",60081),check:(0,d.k)("check",60082),checklist:(0,d.k)("checklist",60083),chevronDown:(0,d.k)("chevron-down",60084),chevronLeft:(0,d.k)("chevron-left",60085),chevronRight:(0,d.k)("chevron-right",60086),chevronUp:(0,d.k)("chevron-up",60087),chromeClose:(0,d.k)("chrome-close",60088),chromeMaximize:(0,d.k)("chrome-maximize",60089),chromeMinimize:(0,d.k)("chrome-minimize",60090),chromeRestore:(0,d.k)("chrome-restore",60091),circleOutline:(0,d.k)("circle-outline",60092),circle:(0,d.k)("circle",60092),debugBreakpointUnverified:(0,d.k)("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:(0,d.k)("terminal-decoration-incomplete",60092),circleSlash:(0,d.k)("circle-slash",60093),circuitBoard:(0,d.k)("circuit-board",60094),clearAll:(0,d.k)("clear-all",60095),clippy:(0,d.k)("clippy",60096),closeAll:(0,d.k)("close-all",60097),cloudDownload:(0,d.k)("cloud-download",60098),cloudUpload:(0,d.k)("cloud-upload",60099),code:(0,d.k)("code",60100),collapseAll:(0,d.k)("collapse-all",60101),colorMode:(0,d.k)("color-mode",60102),commentDiscussion:(0,d.k)("comment-discussion",60103),creditCard:(0,d.k)("credit-card",60105),dash:(0,d.k)("dash",60108),dashboard:(0,d.k)("dashboard",60109),database:(0,d.k)("database",60110),debugContinue:(0,d.k)("debug-continue",60111),debugDisconnect:(0,d.k)("debug-disconnect",60112),debugPause:(0,d.k)("debug-pause",60113),debugRestart:(0,d.k)("debug-restart",60114),debugStart:(0,d.k)("debug-start",60115),debugStepInto:(0,d.k)("debug-step-into",60116),debugStepOut:(0,d.k)("debug-step-out",60117),debugStepOver:(0,d.k)("debug-step-over",60118),debugStop:(0,d.k)("debug-stop",60119),debug:(0,d.k)("debug",60120),deviceCameraVideo:(0,d.k)("device-camera-video",60121),deviceCamera:(0,d.k)("device-camera",60122),deviceMobile:(0,d.k)("device-mobile",60123),diffAdded:(0,d.k)("diff-added",60124),diffIgnored:(0,d.k)("diff-ignored",60125),diffModified:(0,d.k)("diff-modified",60126),diffRemoved:(0,d.k)("diff-removed",60127),diffRenamed:(0,d.k)("diff-renamed",60128),diff:(0,d.k)("diff",60129),diffSidebyside:(0,d.k)("diff-sidebyside",60129),discard:(0,d.k)("discard",60130),editorLayout:(0,d.k)("editor-layout",60131),emptyWindow:(0,d.k)("empty-window",60132),exclude:(0,d.k)("exclude",60133),extensions:(0,d.k)("extensions",60134),eyeClosed:(0,d.k)("eye-closed",60135),fileBinary:(0,d.k)("file-binary",60136),fileCode:(0,d.k)("file-code",60137),fileMedia:(0,d.k)("file-media",60138),filePdf:(0,d.k)("file-pdf",60139),fileSubmodule:(0,d.k)("file-submodule",60140),fileSymlinkDirectory:(0,d.k)("file-symlink-directory",60141),fileSymlinkFile:(0,d.k)("file-symlink-file",60142),fileZip:(0,d.k)("file-zip",60143),files:(0,d.k)("files",60144),filter:(0,d.k)("filter",60145),flame:(0,d.k)("flame",60146),foldDown:(0,d.k)("fold-down",60147),foldUp:(0,d.k)("fold-up",60148),fold:(0,d.k)("fold",60149),folderActive:(0,d.k)("folder-active",60150),folderOpened:(0,d.k)("folder-opened",60151),gear:(0,d.k)("gear",60152),gift:(0,d.k)("gift",60153),gistSecret:(0,d.k)("gist-secret",60154),gist:(0,d.k)("gist",60155),gitCommit:(0,d.k)("git-commit",60156),gitCompare:(0,d.k)("git-compare",60157),compareChanges:(0,d.k)("compare-changes",60157),gitMerge:(0,d.k)("git-merge",60158),githubAction:(0,d.k)("github-action",60159),githubAlt:(0,d.k)("github-alt",60160),globe:(0,d.k)("globe",60161),grabber:(0,d.k)("grabber",60162),graph:(0,d.k)("graph",60163),gripper:(0,d.k)("gripper",60164),heart:(0,d.k)("heart",60165),home:(0,d.k)("home",60166),horizontalRule:(0,d.k)("horizontal-rule",60167),hubot:(0,d.k)("hubot",60168),inbox:(0,d.k)("inbox",60169),issueReopened:(0,d.k)("issue-reopened",60171),issues:(0,d.k)("issues",60172),italic:(0,d.k)("italic",60173),jersey:(0,d.k)("jersey",60174),json:(0,d.k)("json",60175),kebabVertical:(0,d.k)("kebab-vertical",60176),key:(0,d.k)("key",60177),law:(0,d.k)("law",60178),lightbulbAutofix:(0,d.k)("lightbulb-autofix",60179),linkExternal:(0,d.k)("link-external",60180),link:(0,d.k)("link",60181),listOrdered:(0,d.k)("list-ordered",60182),listUnordered:(0,d.k)("list-unordered",60183),liveShare:(0,d.k)("live-share",60184),loading:(0,d.k)("loading",60185),location:(0,d.k)("location",60186),mailRead:(0,d.k)("mail-read",60187),mail:(0,d.k)("mail",60188),markdown:(0,d.k)("markdown",60189),megaphone:(0,d.k)("megaphone",60190),mention:(0,d.k)("mention",60191),milestone:(0,d.k)("milestone",60192),gitPullRequestMilestone:(0,d.k)("git-pull-request-milestone",60192),mortarBoard:(0,d.k)("mortar-board",60193),move:(0,d.k)("move",60194),multipleWindows:(0,d.k)("multiple-windows",60195),mute:(0,d.k)("mute",60196),noNewline:(0,d.k)("no-newline",60197),note:(0,d.k)("note",60198),octoface:(0,d.k)("octoface",60199),openPreview:(0,d.k)("open-preview",60200),package:(0,d.k)("package",60201),paintcan:(0,d.k)("paintcan",60202),pin:(0,d.k)("pin",60203),play:(0,d.k)("play",60204),run:(0,d.k)("run",60204),plug:(0,d.k)("plug",60205),preserveCase:(0,d.k)("preserve-case",60206),preview:(0,d.k)("preview",60207),project:(0,d.k)("project",60208),pulse:(0,d.k)("pulse",60209),question:(0,d.k)("question",60210),quote:(0,d.k)("quote",60211),radioTower:(0,d.k)("radio-tower",60212),reactions:(0,d.k)("reactions",60213),references:(0,d.k)("references",60214),refresh:(0,d.k)("refresh",60215),regex:(0,d.k)("regex",60216),remoteExplorer:(0,d.k)("remote-explorer",60217),remote:(0,d.k)("remote",60218),remove:(0,d.k)("remove",60219),replaceAll:(0,d.k)("replace-all",60220),replace:(0,d.k)("replace",60221),repoClone:(0,d.k)("repo-clone",60222),repoForcePush:(0,d.k)("repo-force-push",60223),repoPull:(0,d.k)("repo-pull",60224),repoPush:(0,d.k)("repo-push",60225),report:(0,d.k)("report",60226),requestChanges:(0,d.k)("request-changes",60227),rocket:(0,d.k)("rocket",60228),rootFolderOpened:(0,d.k)("root-folder-opened",60229),rootFolder:(0,d.k)("root-folder",60230),rss:(0,d.k)("rss",60231),ruby:(0,d.k)("ruby",60232),saveAll:(0,d.k)("save-all",60233),saveAs:(0,d.k)("save-as",60234),save:(0,d.k)("save",60235),screenFull:(0,d.k)("screen-full",60236),screenNormal:(0,d.k)("screen-normal",60237),searchStop:(0,d.k)("search-stop",60238),server:(0,d.k)("server",60240),settingsGear:(0,d.k)("settings-gear",60241),settings:(0,d.k)("settings",60242),shield:(0,d.k)("shield",60243),smiley:(0,d.k)("smiley",60244),sortPrecedence:(0,d.k)("sort-precedence",60245),splitHorizontal:(0,d.k)("split-horizontal",60246),splitVertical:(0,d.k)("split-vertical",60247),squirrel:(0,d.k)("squirrel",60248),starFull:(0,d.k)("star-full",60249),starHalf:(0,d.k)("star-half",60250),symbolClass:(0,d.k)("symbol-class",60251),symbolColor:(0,d.k)("symbol-color",60252),symbolConstant:(0,d.k)("symbol-constant",60253),symbolEnumMember:(0,d.k)("symbol-enum-member",60254),symbolField:(0,d.k)("symbol-field",60255),symbolFile:(0,d.k)("symbol-file",60256),symbolInterface:(0,d.k)("symbol-interface",60257),symbolKeyword:(0,d.k)("symbol-keyword",60258),symbolMisc:(0,d.k)("symbol-misc",60259),symbolOperator:(0,d.k)("symbol-operator",60260),symbolProperty:(0,d.k)("symbol-property",60261),wrench:(0,d.k)("wrench",60261),wrenchSubaction:(0,d.k)("wrench-subaction",60261),symbolSnippet:(0,d.k)("symbol-snippet",60262),tasklist:(0,d.k)("tasklist",60263),telescope:(0,d.k)("telescope",60264),textSize:(0,d.k)("text-size",60265),threeBars:(0,d.k)("three-bars",60266),thumbsdown:(0,d.k)("thumbsdown",60267),thumbsup:(0,d.k)("thumbsup",60268),tools:(0,d.k)("tools",60269),triangleDown:(0,d.k)("triangle-down",60270),triangleLeft:(0,d.k)("triangle-left",60271),triangleRight:(0,d.k)("triangle-right",60272),triangleUp:(0,d.k)("triangle-up",60273),twitter:(0,d.k)("twitter",60274),unfold:(0,d.k)("unfold",60275),unlock:(0,d.k)("unlock",60276),unmute:(0,d.k)("unmute",60277),unverified:(0,d.k)("unverified",60278),verified:(0,d.k)("verified",60279),versions:(0,d.k)("versions",60280),vmActive:(0,d.k)("vm-active",60281),vmOutline:(0,d.k)("vm-outline",60282),vmRunning:(0,d.k)("vm-running",60283),watch:(0,d.k)("watch",60284),whitespace:(0,d.k)("whitespace",60285),wholeWord:(0,d.k)("whole-word",60286),window:(0,d.k)("window",60287),wordWrap:(0,d.k)("word-wrap",60288),zoomIn:(0,d.k)("zoom-in",60289),zoomOut:(0,d.k)("zoom-out",60290),listFilter:(0,d.k)("list-filter",60291),listFlat:(0,d.k)("list-flat",60292),listSelection:(0,d.k)("list-selection",60293),selection:(0,d.k)("selection",60293),listTree:(0,d.k)("list-tree",60294),debugBreakpointFunctionUnverified:(0,d.k)("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:(0,d.k)("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:(0,d.k)("debug-breakpoint-function-disabled",60296),debugStackframeActive:(0,d.k)("debug-stackframe-active",60297),circleSmallFilled:(0,d.k)("circle-small-filled",60298),debugStackframeDot:(0,d.k)("debug-stackframe-dot",60298),terminalDecorationMark:(0,d.k)("terminal-decoration-mark",60298),debugStackframe:(0,d.k)("debug-stackframe",60299),debugStackframeFocused:(0,d.k)("debug-stackframe-focused",60299),debugBreakpointUnsupported:(0,d.k)("debug-breakpoint-unsupported",60300),symbolString:(0,d.k)("symbol-string",60301),debugReverseContinue:(0,d.k)("debug-reverse-continue",60302),debugStepBack:(0,d.k)("debug-step-back",60303),debugRestartFrame:(0,d.k)("debug-restart-frame",60304),debugAlt:(0,d.k)("debug-alt",60305),callIncoming:(0,d.k)("call-incoming",60306),callOutgoing:(0,d.k)("call-outgoing",60307),menu:(0,d.k)("menu",60308),expandAll:(0,d.k)("expand-all",60309),feedback:(0,d.k)("feedback",60310),gitPullRequestReviewer:(0,d.k)("git-pull-request-reviewer",60310),groupByRefType:(0,d.k)("group-by-ref-type",60311),ungroupByRefType:(0,d.k)("ungroup-by-ref-type",60312),account:(0,d.k)("account",60313),gitPullRequestAssignee:(0,d.k)("git-pull-request-assignee",60313),bellDot:(0,d.k)("bell-dot",60314),debugConsole:(0,d.k)("debug-console",60315),library:(0,d.k)("library",60316),output:(0,d.k)("output",60317),runAll:(0,d.k)("run-all",60318),syncIgnored:(0,d.k)("sync-ignored",60319),pinned:(0,d.k)("pinned",60320),githubInverted:(0,d.k)("github-inverted",60321),serverProcess:(0,d.k)("server-process",60322),serverEnvironment:(0,d.k)("server-environment",60323),pass:(0,d.k)("pass",60324),issueClosed:(0,d.k)("issue-closed",60324),stopCircle:(0,d.k)("stop-circle",60325),playCircle:(0,d.k)("play-circle",60326),record:(0,d.k)("record",60327),debugAltSmall:(0,d.k)("debug-alt-small",60328),vmConnect:(0,d.k)("vm-connect",60329),cloud:(0,d.k)("cloud",60330),merge:(0,d.k)("merge",60331),export:(0,d.k)("export",60332),graphLeft:(0,d.k)("graph-left",60333),magnet:(0,d.k)("magnet",60334),notebook:(0,d.k)("notebook",60335),redo:(0,d.k)("redo",60336),checkAll:(0,d.k)("check-all",60337),pinnedDirty:(0,d.k)("pinned-dirty",60338),passFilled:(0,d.k)("pass-filled",60339),circleLargeFilled:(0,d.k)("circle-large-filled",60340),circleLarge:(0,d.k)("circle-large",60341),circleLargeOutline:(0,d.k)("circle-large-outline",60341),combine:(0,d.k)("combine",60342),gather:(0,d.k)("gather",60342),table:(0,d.k)("table",60343),variableGroup:(0,d.k)("variable-group",60344),typeHierarchy:(0,d.k)("type-hierarchy",60345),typeHierarchySub:(0,d.k)("type-hierarchy-sub",60346),typeHierarchySuper:(0,d.k)("type-hierarchy-super",60347),gitPullRequestCreate:(0,d.k)("git-pull-request-create",60348),runAbove:(0,d.k)("run-above",60349),runBelow:(0,d.k)("run-below",60350),notebookTemplate:(0,d.k)("notebook-template",60351),debugRerun:(0,d.k)("debug-rerun",60352),workspaceTrusted:(0,d.k)("workspace-trusted",60353),workspaceUntrusted:(0,d.k)("workspace-untrusted",60354),workspaceUnknown:(0,d.k)("workspace-unknown",60355),terminalCmd:(0,d.k)("terminal-cmd",60356),terminalDebian:(0,d.k)("terminal-debian",60357),terminalLinux:(0,d.k)("terminal-linux",60358),terminalPowershell:(0,d.k)("terminal-powershell",60359),terminalTmux:(0,d.k)("terminal-tmux",60360),terminalUbuntu:(0,d.k)("terminal-ubuntu",60361),terminalBash:(0,d.k)("terminal-bash",60362),arrowSwap:(0,d.k)("arrow-swap",60363),copy:(0,d.k)("copy",60364),personAdd:(0,d.k)("person-add",60365),filterFilled:(0,d.k)("filter-filled",60366),wand:(0,d.k)("wand",60367),debugLineByLine:(0,d.k)("debug-line-by-line",60368),inspect:(0,d.k)("inspect",60369),layers:(0,d.k)("layers",60370),layersDot:(0,d.k)("layers-dot",60371),layersActive:(0,d.k)("layers-active",60372),compass:(0,d.k)("compass",60373),compassDot:(0,d.k)("compass-dot",60374),compassActive:(0,d.k)("compass-active",60375),azure:(0,d.k)("azure",60376),issueDraft:(0,d.k)("issue-draft",60377),gitPullRequestClosed:(0,d.k)("git-pull-request-closed",60378),gitPullRequestDraft:(0,d.k)("git-pull-request-draft",60379),debugAll:(0,d.k)("debug-all",60380),debugCoverage:(0,d.k)("debug-coverage",60381),runErrors:(0,d.k)("run-errors",60382),folderLibrary:(0,d.k)("folder-library",60383),debugContinueSmall:(0,d.k)("debug-continue-small",60384),beakerStop:(0,d.k)("beaker-stop",60385),graphLine:(0,d.k)("graph-line",60386),graphScatter:(0,d.k)("graph-scatter",60387),pieChart:(0,d.k)("pie-chart",60388),bracket:(0,d.k)("bracket",60175),bracketDot:(0,d.k)("bracket-dot",60389),bracketError:(0,d.k)("bracket-error",60390),lockSmall:(0,d.k)("lock-small",60391),azureDevops:(0,d.k)("azure-devops",60392),verifiedFilled:(0,d.k)("verified-filled",60393),newline:(0,d.k)("newline",60394),layout:(0,d.k)("layout",60395),layoutActivitybarLeft:(0,d.k)("layout-activitybar-left",60396),layoutActivitybarRight:(0,d.k)("layout-activitybar-right",60397),layoutPanelLeft:(0,d.k)("layout-panel-left",60398),layoutPanelCenter:(0,d.k)("layout-panel-center",60399),layoutPanelJustify:(0,d.k)("layout-panel-justify",60400),layoutPanelRight:(0,d.k)("layout-panel-right",60401),layoutPanel:(0,d.k)("layout-panel",60402),layoutSidebarLeft:(0,d.k)("layout-sidebar-left",60403),layoutSidebarRight:(0,d.k)("layout-sidebar-right",60404),layoutStatusbar:(0,d.k)("layout-statusbar",60405),layoutMenubar:(0,d.k)("layout-menubar",60406),layoutCentered:(0,d.k)("layout-centered",60407),target:(0,d.k)("target",60408),indent:(0,d.k)("indent",60409),recordSmall:(0,d.k)("record-small",60410),errorSmall:(0,d.k)("error-small",60411),terminalDecorationError:(0,d.k)("terminal-decoration-error",60411),arrowCircleDown:(0,d.k)("arrow-circle-down",60412),arrowCircleLeft:(0,d.k)("arrow-circle-left",60413),arrowCircleRight:(0,d.k)("arrow-circle-right",60414),arrowCircleUp:(0,d.k)("arrow-circle-up",60415),layoutSidebarRightOff:(0,d.k)("layout-sidebar-right-off",60416),layoutPanelOff:(0,d.k)("layout-panel-off",60417),layoutSidebarLeftOff:(0,d.k)("layout-sidebar-left-off",60418),blank:(0,d.k)("blank",60419),heartFilled:(0,d.k)("heart-filled",60420),map:(0,d.k)("map",60421),mapHorizontal:(0,d.k)("map-horizontal",60421),foldHorizontal:(0,d.k)("fold-horizontal",60421),mapFilled:(0,d.k)("map-filled",60422),mapHorizontalFilled:(0,d.k)("map-horizontal-filled",60422),foldHorizontalFilled:(0,d.k)("fold-horizontal-filled",60422),circleSmall:(0,d.k)("circle-small",60423),bellSlash:(0,d.k)("bell-slash",60424),bellSlashDot:(0,d.k)("bell-slash-dot",60425),commentUnresolved:(0,d.k)("comment-unresolved",60426),gitPullRequestGoToChanges:(0,d.k)("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:(0,d.k)("git-pull-request-new-changes",60428),searchFuzzy:(0,d.k)("search-fuzzy",60429),commentDraft:(0,d.k)("comment-draft",60430),send:(0,d.k)("send",60431),sparkle:(0,d.k)("sparkle",60432),insert:(0,d.k)("insert",60433),mic:(0,d.k)("mic",60434),thumbsdownFilled:(0,d.k)("thumbsdown-filled",60435),thumbsupFilled:(0,d.k)("thumbsup-filled",60436),coffee:(0,d.k)("coffee",60437),snake:(0,d.k)("snake",60438),game:(0,d.k)("game",60439),vr:(0,d.k)("vr",60440),chip:(0,d.k)("chip",60441),piano:(0,d.k)("piano",60442),music:(0,d.k)("music",60443),micFilled:(0,d.k)("mic-filled",60444),repoFetch:(0,d.k)("repo-fetch",60445),copilot:(0,d.k)("copilot",60446),lightbulbSparkle:(0,d.k)("lightbulb-sparkle",60447),robot:(0,d.k)("robot",60448),sparkleFilled:(0,d.k)("sparkle-filled",60449),diffSingle:(0,d.k)("diff-single",60450),diffMultiple:(0,d.k)("diff-multiple",60451),surroundWith:(0,d.k)("surround-with",60452),share:(0,d.k)("share",60453),gitStash:(0,d.k)("git-stash",60454),gitStashApply:(0,d.k)("git-stash-apply",60455),gitStashPop:(0,d.k)("git-stash-pop",60456),vscode:(0,d.k)("vscode",60457),vscodeInsiders:(0,d.k)("vscode-insiders",60458),codeOss:(0,d.k)("code-oss",60459),runCoverage:(0,d.k)("run-coverage",60460),runAllCoverage:(0,d.k)("run-all-coverage",60461),coverage:(0,d.k)("coverage",60462),githubProject:(0,d.k)("github-project",60463),mapVertical:(0,d.k)("map-vertical",60464),foldVertical:(0,d.k)("fold-vertical",60464),mapVerticalFilled:(0,d.k)("map-vertical-filled",60465),foldVerticalFilled:(0,d.k)("fold-vertical-filled",60465),goToSearch:(0,d.k)("go-to-search",60466),percentage:(0,d.k)("percentage",60467),sortPercentage:(0,d.k)("sort-percentage",60467),attach:(0,d.k)("attach",60468),goToEditingSession:(0,d.k)("go-to-editing-session",60469),editSession:(0,d.k)("edit-session",60470),codeReview:(0,d.k)("code-review",60471),copilotWarning:(0,d.k)("copilot-warning",60472),python:(0,d.k)("python",60473),copilotLarge:(0,d.k)("copilot-large",60474),copilotWarningLarge:(0,d.k)("copilot-warning-large",60475),keyboardTab:(0,d.k)("keyboard-tab",60476),copilotBlocked:(0,d.k)("copilot-blocked",60477),copilotNotConnected:(0,d.k)("copilot-not-connected",60478),flag:(0,d.k)("flag",60479),lightbulbEmpty:(0,d.k)("lightbulb-empty",60480),symbolMethodArrow:(0,d.k)("symbol-method-arrow",60481),copilotUnavailable:(0,d.k)("copilot-unavailable",60482),repoPinned:(0,d.k)("repo-pinned",60483),keyboardTabAbove:(0,d.k)("keyboard-tab-above",60484),keyboardTabBelow:(0,d.k)("keyboard-tab-below",60485),gitPullRequestDone:(0,d.k)("git-pull-request-done",60486),mcp:(0,d.k)("mcp",60487),extensionsLarge:(0,d.k)("extensions-large",60488),layoutPanelDock:(0,d.k)("layout-panel-dock",60489),layoutSidebarLeftDock:(0,d.k)("layout-sidebar-left-dock",60490),layoutSidebarRightDock:(0,d.k)("layout-sidebar-right-dock",60491),copilotInProgress:(0,d.k)("copilot-in-progress",60492),copilotError:(0,d.k)("copilot-error",60493),copilotSuccess:(0,d.k)("copilot-success",60494),chatSparkle:(0,d.k)("chat-sparkle",60495),searchSparkle:(0,d.k)("search-sparkle",60496),editSparkle:(0,d.k)("edit-sparkle",60497),copilotSnooze:(0,d.k)("copilot-snooze",60498),sendToRemoteAgent:(0,d.k)("send-to-remote-agent",60499),commentDiscussionSparkle:(0,d.k)("comment-discussion-sparkle",60500),chatSparkleWarning:(0,d.k)("chat-sparkle-warning",60501),chatSparkleError:(0,d.k)("chat-sparkle-error",60502),collection:(0,d.k)("collection",60503),newCollection:(0,d.k)("new-collection",60504),thinking:(0,d.k)("thinking",60505)},f={dialogError:(0,d.k)("dialog-error","error"),dialogWarning:(0,d.k)("dialog-warning","warning"),dialogInfo:(0,d.k)("dialog-info","info"),dialogClose:(0,d.k)("dialog-close","close"),treeItemExpanded:(0,d.k)("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:(0,d.k)("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:(0,d.k)("tree-filter-on-type-off","list-selection"),treeFilterClear:(0,d.k)("tree-filter-clear","close"),treeItemLoading:(0,d.k)("tree-item-loading","loading"),menuSelection:(0,d.k)("menu-selection","check"),menuSubmenu:(0,d.k)("menu-submenu","chevron-right"),menuBarMore:(0,d.k)("menubar-more","more"),scrollbarButtonLeft:(0,d.k)("scrollbar-button-left","triangle-left"),scrollbarButtonRight:(0,d.k)("scrollbar-button-right","triangle-right"),scrollbarButtonUp:(0,d.k)("scrollbar-button-up","triangle-up"),scrollbarButtonDown:(0,d.k)("scrollbar-button-down","triangle-down"),toolBarMore:(0,d.k)("toolbar-more","more"),quickInputBack:(0,d.k)("quick-input-back","arrow-left"),dropDownButton:(0,d.k)("drop-down-button",60084),symbolCustomColor:(0,d.k)("symbol-customcolor",60252),exportIcon:(0,d.k)("export",60332),workspaceUnspecified:(0,d.k)("workspace-unspecified",60355),newLine:(0,d.k)("newline",60394),thumbsDownFilled:(0,d.k)("thumbsdown-filled",60435),thumbsUpFilled:(0,d.k)("thumbsup-filled",60436),gitFetch:(0,d.k)("git-fetch",60445),lightbulbSparkleAutofix:(0,d.k)("lightbulb-sparkle-autofix",60447),debugBreakpointPending:(0,d.k)("debug-breakpoint-pending",60377)},g={...e,...f}},91170:()=>{},91295:(a,b,c)=>{"use strict";c.d(b,{k:()=>d});let d=(0,c(29715).u1)("telemetryService")},91389:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(88347),e=c(98447),f=c(70588),g=c(28272),h=c(43188),i=c(69467),j=c(91834),k=c(59317),l=c(79677),m=c(83594),n=c(59298),o=c(65576),p=c(31613),q=c(29214);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=e.UU(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=e.UU(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=e.UU(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=e.HG(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(d||1===b.length)return null;if(f&&f.length===b.length)return f;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=e.uz(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if(e.lT(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){let e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},91459:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},91580:(a,b,c)=>{"use strict";c.d(b,{Hq:()=>k,TN:()=>i,fO:()=>j});var d=c(29715),e=c(11314),f=c(38041),g=c(32677),h=function(a,b){return function(c,d){b(c,d,a)}};let i=(0,d.u1)("hoverService"),j=class extends e.jG{get delay(){return this.isInstantlyHovering()?0:this.hoverOptions?.dynamicDelay?a=>this.hoverOptions?.dynamicDelay?.(a)??this._delay:this._delay}constructor(a,b,c={},d,f){super(),this.placement=a,this.hoverOptions=b,this.overrideOptions=c,this.configurationService=d,this.hoverService=f,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new e.Cm),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(a=>{a.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(a,b){let c="function"==typeof this.overrideOptions?this.overrideOptions(a,b):this.overrideOptions;for(let b of(this.hoverDisposables.clear(),(0,g.sb)(a.target)?[a.target]:a.target.targetElements))this.hoverDisposables.add((0,g.un)(b,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));let d=(0,g.sb)(a.content)?void 0:"string"==typeof a.content?a.content.toString():a.content.value;return this.hoverService.showInstantHover({...a,...c,persistence:{hideOnKeyDown:!0,...c.persistence},id:d,appearance:{...a.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...c.appearance}},b)}isInstantlyHovering(){return!!this.hoverOptions?.instantHover&&Date.now()-this.lastHoverHideTime<this.timeLimit}onDidHideHover(){this.hoverDisposables.clear(),this.hoverOptions?.instantHover&&(this.lastHoverHideTime=Date.now())}};j=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([h(3,f.pG),h(4,i)],j);let k={showHover:function(){throw Error("Native hover function not implemented.")},delay:0,showNativeHover:!0}},91732:(a,b,c)=>{"use strict";function d(a){return a}c.d(b,{VV:()=>f,o5:()=>e});class e{constructor(a,b){this.lastCache=void 0,this.lastArgKey=void 0,"function"==typeof a?(this._fn=a,this._computeKey=d):(this._fn=b,this._computeKey=a.getCacheKey)}get(a){let b=this._computeKey(a);return this.lastArgKey!==b&&(this.lastArgKey=b,this.lastCache=this._fn(a)),this.lastCache}}class f{get cachedValues(){return this._map}constructor(a,b){this._map=new Map,this._map2=new Map,"function"==typeof a?(this._fn=a,this._computeKey=d):(this._fn=b,this._computeKey=a.getCacheKey)}get(a){let b=this._computeKey(a);if(this._map2.has(b))return this._map2.get(b);let c=this._fn(a);return this._map.set(a,c),this._map2.set(b,c),c}}},91778:()=>{},91834:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(11628),e=c(9888),f=c(62138);class g extends f.V{constructor(a,b){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=b,this.intlSegmenterLocales.length>0?this._segmenter=d.x.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let b=0,c=a.length;b<c;b++)this.set(a.charCodeAt(b),2);this.set(32,1),this.set(9,1)}findPrevIntlWordBeforeOrAtOffset(a,b){let c=null;for(let d of this._getIntlSegmenterWordsOnLine(a)){if(d.index>b)break;c=d}return c}findNextIntlWordAtOrAfterOffset(a,b){for(let c of this._getIntlSegmenterWordsOnLine(a))if(!(c.index<b))return c;return null}_getIntlSegmenterWordsOnLine(a){return this._segmenter?(this._cachedLine===a||(this._cachedLine=a,this._cachedSegments=this._filterWordSegments(this._segmenter.value.segment(a))),this._cachedSegments):[]}_filterWordSegments(a){let b=[];for(let c of a)this._isWordLike(c)&&b.push(c);return b}_isWordLike(a){return!!a.isWordLike}}let h=new e.qK(10);function i(a,b){let c=`${a}/${b.join(",")}`,d=h.get(c);return d||(d=new g(a,b),h.set(c,d)),d}},92540:()=>{},93349:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});var d=c(88347);function e(a,b){let c=globalThis.MonacoEnvironment;if(c?.createTrustedTypesPolicy)try{return c.createTrustedTypesPolicy(a,b)}catch(a){(0,d.dz)(a);return}try{return globalThis.trustedTypes?.createPolicy(a,b)}catch(a){(0,d.dz)(a);return}}},93353:(a,b,c)=>{"use strict";c.d(b,{e:()=>g});var d=c(88637),e=c(29813),f=c(56167);let g={clipboard:{writeText:f.ib||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:f.ib||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:f.ib||d.Qu()?0:navigator.keyboard||d.nr?1:2,touch:"ontouchstart"in e.G||navigator.maxTouchPoints>0,pointerEvents:e.G.PointerEvent&&("ontouchstart"in e.G||navigator.maxTouchPoints>0)}},93468:(a,b,c)=>{"use strict";c.d(b,{U:()=>n});var d,e=c(81040),f=c(9888),g=c(61496),h=c(22671),i=c(63090),j=c(29715),k=c(66153),l=c(18920),m=function(a,b){return function(c,d){b(c,d,a)}};let n=(0,j.u1)("ILanguageFeatureDebounceService");!function(a){let b=new WeakMap,c=0;a.of=function(a){let d=b.get(a);return void 0===d&&(d=++c,b.set(a,d)),d}}(d||(d={}));class o{constructor(a){this._default=a}get(a){return this._default}update(a,b){return this._default}default(){return this._default}}class p{constructor(a,b,c,d,e,g){this._logService=a,this._name=b,this._registry=c,this._default=d,this._min=e,this._max=g,this._cache=new f.qK(50,.7)}_key(a){return a.id+this._registry.all(a).reduce((a,b)=>(0,e.sN)(d.of(b),a),0)}get(a){let b=this._key(a),c=this._cache.get(b);return c?(0,g.qE)(c.value,this._min,this._max):this.default()}update(a,b){let c=this._key(a),d=this._cache.get(c);d||(d=new g.mu(6),this._cache.set(c,d));let e=(0,g.qE)(d.update(b),this._min,this._max);return(0,l.v$)(a.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${a.uri.toString()} is ${e}ms`),e}_overall(){let a=new g.Uq;for(let[,b]of this._cache)a.update(b.value);return a.value}default(){let a=0|this._overall()||this._default;return(0,g.qE)(a,this._min,this._max)}}let q=class{constructor(a,b){this._logService=a,this._data=new Map,this._isDev=b.isExtensionDevelopment||!b.isBuilt}for(a,b,c){let e=c?.min??50,f=c?.max??e**2,g=c?.key??void 0,h=`${d.of(a)},${e}${g?","+g:""}`,i=this._data.get(h);return i||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${b}] is disabled in developed mode`),i=new o(1.5*e)):i=new p(this._logService,b,a,0|this._overallAverage()||1.5*e,e,f),this._data.set(h,i)),i}_overallAverage(){let a=new g.Uq;for(let b of this._data.values())a.update(b.default());return a.value}};q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([m(0,k.rr),m(1,h.k)],q),(0,i.v)(n,q,1)},93835:(a,b,c)=>{"use strict";c.d(b,{R:()=>d});let d={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}}},94505:(a,b,c)=>{"use strict";c.d(b,{FH:()=>j,Sc:()=>m,kk:()=>n,lM:()=>k});var d=c(90399),e=c(60734),f=c(81633),g=c(21036),h=c(75096),i=c(62274);c(95013);let j={inputActiveOptionBorder:"#007ACC00",inputActiveOptionForeground:"#FFFFFF",inputActiveOptionBackground:"#0E639C50"};class k extends i.x{get onChange(){return this._onChange.event}get onKeyDown(){return this._onKeyDown.event}constructor(a){super(),this._onChange=this._register(new e.vl),this._onKeyDown=this._register(new e.vl),this._opts=a,this._checked=this._opts.isChecked;let b=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,b.push(...f.L.asClassNameArray(this._icon))),this._opts.actionClassName&&b.push(...this._opts.actionClassName.split(" ")),this._checked&&b.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register((0,g.i)().setupManagedHover(a.hoverDelegate??(0,h.nZ)("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...b),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,a=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),a.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,a=>{if(this.enabled){if(10===a.keyCode||3===a.keyCode){this.checked=!this._checked,this._onChange.fire(!0),a.preventDefault(),a.stopPropagation();return}this._onKeyDown.fire(a)}})}get enabled(){return"true"!==this.domNode.getAttribute("aria-disabled")}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(a){this._checked=a,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}setIcon(a){this._icon&&this.domNode.classList.remove(...f.L.asClassNameArray(this._icon)),this._icon=a,this._icon&&this.domNode.classList.add(...f.L.asClassNameArray(this._icon))}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1)),this.domNode.classList.remove("disabled")}disable(){this.domNode.setAttribute("aria-disabled",String(!0)),this.domNode.classList.add("disabled")}setTitle(a){this._hover.update(a),this.domNode.setAttribute("aria-label",a)}}class l extends i.x{static{this.CLASS_NAME="monaco-checkbox"}constructor(a,b,c){super(),this.checkbox=a,this.domNode=b,this.styles=c,this._onChange=this._register(new e.vl),this.onChange=this._onChange.event,this.applyStyles()}get enabled(){return this.checkbox.enabled}enable(){this.checkbox.enable(),this.applyStyles(!0)}disable(){this.checkbox.disable(),this.applyStyles(!1)}setTitle(a){this.checkbox.setTitle(a)}applyStyles(a=this.enabled){this.domNode.style.color=(a?this.styles.checkboxForeground:this.styles.checkboxDisabledForeground)||"",this.domNode.style.backgroundColor=(a?this.styles.checkboxBackground:this.styles.checkboxDisabledBackground)||"",this.domNode.style.borderColor=(a?this.styles.checkboxBorder:this.styles.checkboxDisabledBackground)||"";let b=this.styles.size||18;this.domNode.style.width=this.domNode.style.height=this.domNode.style.fontSize=`${b}px`,this.domNode.style.fontSize=`${b-2}px`}}class m extends l{constructor(a,b,c){let e=new k({title:a,isChecked:b,icon:d.W.check,actionClassName:l.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(e,e.domNode,c),this._register(e),this._register(this.checkbox.onChange(a=>{this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this.checkbox.checked}set checked(a){this.checkbox.checked=a,this.applyStyles()}applyStyles(a){this.checkbox.checked?this.checkbox.setIcon(d.W.check):this.checkbox.setIcon(void 0),super.applyStyles(a)}}class n extends l{constructor(a,b,c){let e;switch(b){case!0:e=d.W.check;break;case"partial":e=d.W.dash;break;case!1:e=void 0}let f=new k({title:a,isChecked:!0===b,icon:e,actionClassName:m.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(f,f.domNode,c),this._state=b,this._register(f),this._register(this.checkbox.onChange(a=>{this._state=this.checkbox.checked,this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this._state}set checked(a){this._state!==a&&(this._state=a,this.checkbox.checked=!0===a,this.applyStyles())}applyStyles(a){switch(this._state){case!0:this.checkbox.setIcon(d.W.check);break;case"partial":this.checkbox.setIcon(d.W.dash);break;case!1:this.checkbox.setIcon(void 0)}super.applyStyles(a)}}},94548:(a,b,c)=>{"use strict";function d(){return!1}function e(a){return{dispose(){}}}c.d(b,{O:()=>e,e:()=>d})},95013:()=>{},95102:(a,b,c)=>{"use strict";c.d(b,{T:()=>f,x:()=>e});let d=[];function e(a){d.push(a)}function f(){return d.slice(0)}},95159:(a,b,c)=>{"use strict";var d;c.d(b,{N6:()=>d,TH:()=>e,pv:()=>f}),function(a){a[a.Disabled=0]="Disabled",a[a.EnabledForActive=1]="EnabledForActive",a[a.Enabled=2]="Enabled"}(d||(d={}));class e{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class f{constructor(a,b){this.top=a,this.endColumn=b}}},95265:(a,b,c)=>{"use strict";function d(a,b,c=a.length-1){let e=function(a,b,c=a.length-1){for(let d=c;d>=0;d--)if(b(a[d]))return d;return -1}(a,b,c);if(-1!==e)return a[e]}function e(a,b){let c=f(a,b);return -1===c?void 0:a[c]}function f(a,b,c=0,d=a.length){let e=c,g=d;for(;e<g;){let c=Math.floor((e+g)/2);b(a[c])?e=c+1:g=c}return e-1}function g(a,b){let c=h(a,b);return c===a.length?void 0:a[c]}function h(a,b,c=0,d=a.length){let e=c,f=d;for(;e<f;){let c=Math.floor((e+f)/2);b(a[c])?f=c:e=c+1}return e}c.d(b,{Cn:()=>j,TM:()=>m,Uk:()=>d,XP:()=>g,hw:()=>h,iM:()=>f,kh:()=>l,lx:()=>e,oH:()=>n,ot:()=>k,vJ:()=>i});class i{static{this.assertInvariants=!1}constructor(a){this._array=a,this._findLastMonotonousLastIdx=0}findLastMonotonous(a){if(i.assertInvariants){if(this._prevFindLastPredicate){for(let b of this._array)if(this._prevFindLastPredicate(b)&&!a(b))throw Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=a}let b=f(this._array,a,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=b+1,-1===b?void 0:this._array[b]}}function j(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>0&&(c=e)}return c}function k(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>=0&&(c=e)}return c}function l(a,b){return j(a,(a,c)=>-b(a,c))}function m(a,b){if(0===a.length)return -1;let c=0;for(let d=1;d<a.length;d++)b(a[d],a[c])>0&&(c=d);return c}function n(a,b){for(let c of a){let a=b(c);if(void 0!==a)return a}}},95299:(a,b,c)=>{"use strict";c.d(b,{W:()=>m,m:()=>l});var d=c(54734),e=c(22450),f=c(88347),g=c(98447),h=c(79677),i=c(59317),j=c(48363),k=c(25917);class l{static fromStringEdit(a,b){return new l(a.replacements.map(a=>m.fromStringReplacement(a,b)))}static fromParallelReplacementsUnsorted(a){return new l(a.slice().sort((0,d.VE)(a=>a.range,i.Q.compareRangesUsingStarts)))}constructor(a){this.replacements=a,(0,e.Ft)(()=>(0,e.Xo)(a,(a,b)=>a.range.getEndPosition().isBeforeOrEqual(b.range.getStartPosition())))}mapPosition(a){let b=0,c=0,d=0;for(let e of this.replacements){let f=e.range.getStartPosition();if(a.isBeforeOrEqual(f))break;let g=e.range.getEndPosition(),i=j.W.ofText(e.text);if(a.isBefore(g)){let a=new h.y(f.lineNumber+b,f.column+(f.lineNumber+b===c?d:0)),e=i.addToPosition(a);return n(a,e)}f.lineNumber+b!==c&&(d=0),b+=i.lineCount-(e.range.endLineNumber-e.range.startLineNumber),0===i.lineCount?g.lineNumber!==f.lineNumber?d+=i.columnCount-(g.column-1):d+=i.columnCount-(g.column-f.column):d=i.columnCount,c=g.lineNumber+b}return new h.y(a.lineNumber+b,a.column+(a.lineNumber+b===c?d:0))}mapRange(a){var b,c;return n((b=this.mapPosition(a.getStartPosition()))instanceof h.y?b:b.getStartPosition(),(c=this.mapPosition(a.getEndPosition()))instanceof h.y?c:c.getEndPosition())}apply(a){let b="",c=new h.y(1,1);for(let d of this.replacements){let e=d.range,f=e.getStartPosition(),g=e.getEndPosition(),h=n(c,f);h.isEmpty()||(b+=a.getValueOfRange(h)),b+=d.text,c=g}let d=n(c,a.endPositionExclusive);return d.isEmpty()||(b+=a.getValueOfRange(d)),b}applyToString(a){let b=new k.tp(a);return this.apply(b)}getNewRanges(){let a=[],b=0,c=0,d=0;for(let e of this.replacements){let f=j.W.ofText(e.text),g=h.y.lift({lineNumber:e.range.startLineNumber+c,column:e.range.startColumn+(e.range.startLineNumber===b?d:0)}),i=f.createRange(g);a.push(i),c=i.endLineNumber-e.range.endLineNumber,d=i.endColumn-e.range.endColumn,b=e.range.endLineNumber}return a}toReplacement(a){if(0===this.replacements.length)throw new f.D7;if(1===this.replacements.length)return this.replacements[0];let b=this.replacements[0].range.getStartPosition(),c=this.replacements[this.replacements.length-1].range.getEndPosition(),d="";for(let b=0;b<this.replacements.length;b++){let c=this.replacements[b];if(d+=c.text,b<this.replacements.length-1){let e=this.replacements[b+1],f=i.Q.fromPositions(c.range.getEndPosition(),e.range.getStartPosition());d+=a.getValueOfRange(f)}}return new m(i.Q.fromPositions(b,c),d)}toString(a){return void 0===a?this.replacements.map(a=>a.toString()).join("\n"):"string"==typeof a?this.toString(new k.tp(a)):0===this.replacements.length?"":this.replacements.map(b=>{let c=a.getValueOfRange(b.range),d=i.Q.fromPositions(new h.y(Math.max(1,b.range.startLineNumber-1),1),b.range.getStartPosition()),e=a.getValueOfRange(d);e.length>10&&(e="..."+e.substring(e.length-10));let f=i.Q.fromPositions(b.range.getEndPosition(),new h.y(b.range.endLineNumber+1,1)),g=a.getValueOfRange(f);g.length>10&&(g=g.substring(0,10)+"...");let j=c;if(j.length>10){let a=Math.floor(5);j=j.substring(0,a)+"..."+j.substring(j.length-a)}let k=b.text;if(k.length>10){let a=Math.floor(5);k=k.substring(0,a)+"..."+k.substring(k.length-a)}return 0===j.length?`${e}❰${k}❱${g}`:`${e}❰${j}↦${k}❱${g}`}).join("\n")}}class m{static joinReplacements(a,b){if(0===a.length)throw new f.D7;if(1===a.length)return a[0];let c=a[0].range.getStartPosition(),d=a[a.length-1].range.getEndPosition(),e="";for(let c=0;c<a.length;c++){let d=a[c];if(e+=d.text,c<a.length-1){let f=a[c+1],g=i.Q.fromPositions(d.range.getEndPosition(),f.range.getStartPosition());e+=b.getValueOfRange(g)}}return new m(i.Q.fromPositions(c,d),e)}static fromStringReplacement(a,b){return new m(b.getTransformer().getRange(a.replaceRange),a.newText)}static delete(a){return new m(a,"")}constructor(a,b){this.range=a,this.text=b}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(a,b){return a.range.equalsRange(b.range)&&a.text===b.text}equals(a){return m.equals(this,a)}removeCommonPrefixAndSuffix(a){return this.removeCommonPrefix(a).removeCommonSuffix(a)}removeCommonPrefix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Qp)(b,c),e=j.W.ofText(b.substring(0,d)).addToPosition(this.range.getStartPosition()),f=c.substring(d);return new m(i.Q.fromPositions(e,this.range.getEndPosition()),f)}removeCommonSuffix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Vi)(b,c),e=j.W.ofText(b.substring(0,b.length-d)).addToPosition(this.range.getStartPosition()),f=c.substring(0,c.length-d);return new m(i.Q.fromPositions(this.range.getStartPosition(),e),f)}toString(){let a=this.range.getStartPosition(),b=this.range.getEndPosition();return`(${a.lineNumber},${a.column} -> ${b.lineNumber},${b.column}): "${this.text}"`}}function n(a,b){if(a.lineNumber===b.lineNumber&&a.column===Number.MAX_SAFE_INTEGER)return i.Q.fromPositions(b,b);if(!a.isBeforeOrEqual(b))throw new f.D7("start must be before end");return new i.Q(a.lineNumber,a.column,b.lineNumber,b.column)}},95659:()=>{},95967:(a,b,c)=>{"use strict";c.d(b,{L:()=>e,h:()=>f});var d=c(88347);class e{static fromTo(a,b){return new e(a,b)}static addRange(a,b){let c=0;for(;c<b.length&&b[c].endExclusive<a.start;)c++;let d=c;for(;d<b.length&&b[d].start<=a.endExclusive;)d++;if(c===d)b.splice(c,0,a);else{let f=Math.min(a.start,b[c].start),g=Math.max(a.endExclusive,b[d-1].endExclusive);b.splice(c,d-c,new e(f,g))}}static tryCreate(a,b){if(!(a>b))return new e(a,b)}static ofLength(a){return new e(0,a)}static ofStartAndLength(a,b){return new e(a,a+b)}static emptyAt(a){return new e(a,a)}constructor(a,b){if(this.start=a,this.endExclusive=b,a>b)throw new d.D7(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(a){return new e(this.start+a,this.endExclusive+a)}deltaStart(a){return new e(this.start+a,this.endExclusive)}deltaEnd(a){return new e(this.start,this.endExclusive+a)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(a){return this.start===a.start&&this.endExclusive===a.endExclusive}contains(a){return this.start<=a&&a<this.endExclusive}join(a){return new e(Math.min(this.start,a.start),Math.max(this.endExclusive,a.endExclusive))}intersect(a){let b=Math.max(this.start,a.start),c=Math.min(this.endExclusive,a.endExclusive);if(b<=c)return new e(b,c)}intersectionLength(a){let b=Math.max(this.start,a.start);return Math.max(0,Math.min(this.endExclusive,a.endExclusive)-b)}intersects(a){return Math.max(this.start,a.start)<Math.min(this.endExclusive,a.endExclusive)}intersectsOrTouches(a){return Math.max(this.start,a.start)<=Math.min(this.endExclusive,a.endExclusive)}isBefore(a){return this.endExclusive<=a.start}isAfter(a){return this.start>=a.endExclusive}slice(a){return a.slice(this.start,this.endExclusive)}substring(a){return a.substring(this.start,this.endExclusive)}clip(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,a))}clipCyclic(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return a<this.start?this.endExclusive-(this.start-a)%this.length:a>=this.endExclusive?this.start+(a-this.start)%this.length:a}forEach(a){for(let b=this.start;b<this.endExclusive;b++)a(b)}joinRightTouching(a){if(this.endExclusive!==a.start)throw new d.D7(`Invalid join: ${this.toString()} and ${a.toString()}`);return new e(this.start,a.endExclusive)}}class f{constructor(){this._sortedRanges=[]}addRange(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<a.start;)b++;let c=b;for(;c<this._sortedRanges.length&&this._sortedRanges[c].start<=a.endExclusive;)c++;if(b===c)this._sortedRanges.splice(b,0,a);else{let d=Math.min(a.start,this._sortedRanges[b].start),f=Math.max(a.endExclusive,this._sortedRanges[c-1].endExclusive);this._sortedRanges.splice(b,c-b,new e(d,f))}}toString(){return this._sortedRanges.map(a=>a.toString()).join(", ")}intersectsStrict(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<=a.start;)b++;return b<this._sortedRanges.length&&this._sortedRanges[b].start<a.endExclusive}intersectWithRange(a){let b=new f;for(let c of this._sortedRanges){let d=c.intersect(a);d&&b.addRange(d)}return b}intersectWithRangeLength(a){return this.intersectWithRange(a).length}get length(){return this._sortedRanges.reduce((a,b)=>a+b.length,0)}}},95987:()=>{},96085:(a,b,c)=>{"use strict";c.d(b,{W6:()=>k,vH:()=>l});var d=c(25536),e=c(60734),f=c(61059),g=c(11314),h=c(64336),i=c(59714);class j extends g.jG{constructor(){super(),this._onDidChangeLanguages=this._register(new e.vl),this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(a){return this._languages.push(a),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let b=0,c=this._languages.length;b<c;b++)if(this._languages[b]===a)return void this._languages.splice(b,1)}}}getLanguages(){return this._languages}}let k=new j;f.O.add("editor.modesRegistry",k);let l="plaintext";k.registerLanguage({id:l,extensions:[".txt"],aliases:[d.kg(780,"Plain Text"),"text"],mimetypes:[h.K.text]}),f.O.as(i.Fd.Configuration).registerDefaultConfigurations([{overrides:{"[plaintext]":{"editor.unicodeHighlight.ambiguousCharacters":!1,"editor.unicodeHighlight.invisibleCharacters":!1},"[go]":{"editor.insertSpaces":!1},"[makefile]":{"editor.insertSpaces":!1},"[shellscript]":{"files.eol":"\n"},"[yaml]":{"editor.insertSpaces":!0,"editor.tabSize":2}}}])},96096:(a,b,c)=>{"use strict";let d,e;c.d(b,{Bm:()=>j,FB:()=>k,N2:()=>i,ZK:()=>n,u5:()=>l,zV:()=>m});var f=c(80095),g=c(63411),h=c(81820);function i(a){d=a}function j(a){e=a}function k(a){}function l(a){}class m{get TChange(){return null}reportChanges(){this.get()}read(a){return a?a.readObservable(this):this.get()}map(a,b,c=f.j.ofCaller()){let e=void 0===b?void 0:a,h=void 0===b?a:b;return d({owner:e,debugName:()=>{let a=(0,g.qQ)(h);if(void 0!==a)return a;let b=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(h.toString());return b?`${this.debugName}.${b[2]}`:e?void 0:`${this.debugName} (mapped)`},debugReferenceFn:h},a=>h(this.read(a),a),c)}flatten(){return d({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},a=>this.read(a).read(a))}recomputeInitiallyAndOnChange(a,b){return a.add(e(this,b)),this}}class n extends m{constructor(a){super(),this._observers=new Set,(0,h.tZ)()?.handleObservableCreated(this,a)}addObserver(a){let b=this._observers.size;this._observers.add(a),0===b&&this.onFirstObserverAdded(),b!==this._observers.size&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}removeObserver(a){let b=this._observers.delete(a);b&&0===this._observers.size&&this.onLastObserverRemoved(),b&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}onFirstObserverAdded(){}onLastObserverRemoved(){}debugGetObservers(){return this._observers}}},96503:()=>{},97210:(a,b,c)=>{"use strict";c.d(b,{N:()=>f,c2:()=>g});var d=c(54734),e=c(97360);class f{constructor(a){this.values=a,this.prefixSum=new Uint32Array(a.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(a,b){a=(0,e.j)(a);let c=this.values,d=this.prefixSum,f=b.length;return 0!==f&&(this.values=new Uint32Array(c.length+f),this.values.set(c.subarray(0,a),0),this.values.set(c.subarray(a),a+f),this.values.set(b,a),a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(d.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(a,b){return a=(0,e.j)(a),b=(0,e.j)(b),this.values[a]!==b&&(this.values[a]=b,a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),!0)}removeValues(a,b){a=(0,e.j)(a),b=(0,e.j)(b);let c=this.values,d=this.prefixSum;if(a>=c.length)return!1;let f=c.length-a;return b>=f&&(b=f),0!==b&&(this.values=new Uint32Array(c.length-b),this.values.set(c.subarray(0,a),0),this.values.set(c.subarray(a+b),a),this.prefixSum=new Uint32Array(this.values.length),a-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=a-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(d.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(a){return a<0?0:(a=(0,e.j)(a),this._getPrefixSum(a))}_getPrefixSum(a){if(a<=this.prefixSumValidIndex[0])return this.prefixSum[a];let b=this.prefixSumValidIndex[0]+1;0===b&&(this.prefixSum[0]=this.values[0],b++),a>=this.values.length&&(a=this.values.length-1);for(let c=b;c<=a;c++)this.prefixSum[c]=this.prefixSum[c-1]+this.values[c];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],a),this.prefixSum[a]}getIndexOf(a){a=Math.floor(a),this.getTotalSum();let b=0,c=this.values.length-1,d=0,e=0,f=0;for(;b<=c;)if(d=b+(c-b)/2|0,f=(e=this.prefixSum[d])-this.values[d],a<f)c=d-1;else if(a>=e)b=d+1;else break;return new h(d,a-f)}}class g{constructor(a){this._values=a,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(a){return(this._ensureValid(),0===a)?0:this._prefixSum[a-1]}getIndexOf(a){this._ensureValid();let b=this._indexBySum[a],c=b>0?this._prefixSum[b-1]:0;return new h(b,a-c)}removeValues(a,b){this._values.splice(a,b),this._invalidate(a)}insertValues(a,b){this._values=(0,d.nK)(this._values,a,b),this._invalidate(a)}_invalidate(a){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,a-1)}_ensureValid(){if(!this._isValid){for(let a=this._validEndIndex+1,b=this._values.length;a<b;a++){let b=this._values[a],c=a>0?this._prefixSum[a-1]:0;this._prefixSum[a]=c+b;for(let d=0;d<b;d++)this._indexBySum[c+d]=a}this._prefixSum.length=this._values.length,this._indexBySum.length=this._prefixSum[this._prefixSum.length-1],this._isValid=!0,this._validEndIndex=this._values.length-1}}setValue(a,b){this._values[a]!==b&&(this._values[a]=b,this._invalidate(a))}}class h{constructor(a,b){this.index=a,this.remainder=b,this._prefixSumIndexOfResultBrand=void 0,this.index=a,this.remainder=b}}},97360:(a,b,c)=>{"use strict";function d(a){return a<0?0:a>255?255:0|a}function e(a){return a<0?0:a>0xffffffff?0xffffffff:0|a}c.d(b,{W:()=>d,j:()=>e})},97619:(a,b,c)=>{"use strict";let d;c.d(b,{_K:()=>h,bJ:()=>g,iD:()=>i});var e=c(56167);let f=globalThis.vscode;if(void 0!==f&&void 0!==f.process){let a=f.process;d={get platform(){return a.platform},get arch(){return a.arch},get env(){return a.env},cwd:()=>a.cwd()}}else d="undefined"!=typeof process&&"string"==typeof process?.versions?.node?{get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd:()=>process.env.VSCODE_CWD||process.cwd()}:{get platform(){return e.uF?"win32":e.zx?"darwin":"linux"},get arch(){return},get env(){return{}},cwd:()=>"/"};let g=d.cwd,h=d.env,i=d.platform},97654:()=>{},97791:(a,b,c)=>{"use strict";c.d(b,{O:()=>k});var d=c(53578),e=c(11314),f=c(56167),g=c(29892),h=c(48268),i=c(47341);let j=0;class k extends e.jG{get cacheKey(){return`${this.fontFamily}_${this.fontSize}px`}constructor(a,b,c,d){super(),this.fontSize=a,this.fontFamily=b,this.devicePixelRatio=c,this._decorationStyleCache=d,this.id=j++,this._workGlyph={source:null,boundingBox:{left:0,bottom:0,right:0,top:0},originOffset:{x:0,y:0},fontBoundingBoxAscent:0,fontBoundingBoxDescent:0},this._workGlyphConfig={chars:void 0,tokenMetadata:0,decorationStyleSetId:0},this._antiAliasing=f.zx?"greyscale":"subpixel";let e=Math.ceil(this.fontSize*c);this._canvas=new OffscreenCanvas(3*e,3*e),this._ctx=(0,i.HS)(this._canvas.getContext("2d",{willReadFrequently:!0,alpha:"greyscale"===this._antiAliasing})),this._ctx.textBaseline="top",this._ctx.fillStyle="#FFFFFF",this._ctx.font=`${e}px ${this.fontFamily}`,this._textMetrics=this._ctx.measureText("A")}rasterizeGlyph(a,b,c,d){return""===a?{source:this._canvas,boundingBox:{top:0,left:0,bottom:-1,right:-1},originOffset:{x:0,y:0},fontBoundingBoxAscent:0,fontBoundingBoxDescent:0}:this._workGlyphConfig.chars===a&&this._workGlyphConfig.tokenMetadata===b&&this._workGlyphConfig.decorationStyleSetId===c?this._workGlyph:(this._workGlyphConfig.chars=a,this._workGlyphConfig.tokenMetadata=b,this._workGlyphConfig.decorationStyleSetId=c,this._rasterizeGlyph(a,b,c,d))}_rasterizeGlyph(a,b,c,d){let e=Math.ceil(this.fontSize*this.devicePixelRatio),f=3*e;this._canvas.width!==f&&(this._canvas.width=f,this._canvas.height=f),this._ctx.save();let i=(15&b)/10,j=d[h.x.getBackground(b)],k=this._decorationStyleCache.getStyleSet(c);"subpixel"===this._antiAliasing?(this._ctx.fillStyle=j,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height)):this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height);let l=new g.fe(200),m=h.x.getFontStyle(b);1&m&&l.appendString("italic "),k?.bold!==void 0?k.bold&&l.appendString("bold "):2&m&&l.appendString("bold "),l.appendString(`${e}px ${this.fontFamily}`),this._ctx.font=l.build(),k?.color!==void 0?this._ctx.fillStyle=`#${k.color.toString(16).padStart(8,"0")}`:this._ctx.fillStyle=d[h.x.getForeground(b)],this._ctx.textBaseline="top",k?.opacity!==void 0&&(this._ctx.globalAlpha=k.opacity),this._ctx.fillText(a,e+i,e),this._ctx.restore();let n=this._ctx.getImageData(0,0,this._canvas.width,this._canvas.height);if("subpixel"===this._antiAliasing){let a=parseInt(j.substring(1,3),16),b=parseInt(j.substring(3,5),16),c=parseInt(j.substring(5,7),16);this._clearColor(n,a,b,c),this._ctx.putImageData(n,0,0)}return this._findGlyphBoundingBox(n,this._workGlyph.boundingBox),this._workGlyph.source=this._canvas,this._workGlyph.originOffset.x=this._workGlyph.boundingBox.left-e,this._workGlyph.originOffset.y=this._workGlyph.boundingBox.top-e,this._workGlyph.fontBoundingBoxAscent=this._textMetrics.fontBoundingBoxAscent,this._workGlyph.fontBoundingBoxDescent=this._textMetrics.fontBoundingBoxDescent,this._workGlyph}_clearColor(a,b,c,d){for(let e=0;e<a.data.length;e+=4)a.data[e]===b&&a.data[e+1]===c&&a.data[e+2]===d&&(a.data[e+3]=0)}_findGlyphBoundingBox(a,b){let c=this._canvas.height,d=this._canvas.width,e=!1;for(let f=0;f<c;f++){for(let c=0;c<d;c++){let g=f*d*4+4*c+3;if(0!==a.data[g]){b.top=f,e=!0;break}}if(e)break}b.left=0,e=!1;for(let f=0;f<d;f++){for(let g=0;g<c;g++){let c=g*d*4+4*f+3;if(0!==a.data[c]){b.left=f,e=!0;break}}if(e)break}b.right=d,e=!1;for(let f=d-1;f>=b.left;f--){for(let g=0;g<c;g++){let c=g*d*4+4*f+3;if(0!==a.data[c]){b.right=f,e=!0;break}}if(e)break}b.bottom=b.top,e=!1;for(let f=c-1;f>=0;f--){for(let c=0;c<d;c++){let g=f*d*4+4*c+3;if(0!==a.data[g]){b.bottom=f,e=!0;break}}if(e)break}}getTextMetrics(a){return this._ctx.measureText(a)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([d.B],k.prototype,"cacheKey",null)},97924:(a,b,c)=>{"use strict";c.d(b,{L:()=>u});var d,e,f=c(32677),g=c(88347),h=c(60734),i=c(11314),j=c(9888),k=c(29715),l=c(42484),m=c(97791),n=c(66153);let o=class extends i.jG{constructor(a){super(),this._logService=a,this._tasks=[],this._i=0,this._register((0,i.s)(()=>this.clear()))}enqueue(a){this._tasks.push(a),this._start()}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(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=Date.now(),!this._tasks[this._i]()&&this._i++,1.5*(c=Math.max(b=Math.max(1,Date.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&this._logService.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}};o=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=n.rr,function(a,b){d(a,b,0)})],o);class p extends o{_requestCallback(a){return(0,f.fz)().setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){(0,f.fz)().clearTimeout(a)}_createDeadline(a){let b=Date.now()+a;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}class q extends o{_requestCallback(a){return(0,f.fz)().requestIdleCallback(a)}_cancelCallback(a){(0,f.fz)().cancelIdleCallback(a)}}let r="requestIdleCallback"in(0,f.fz)()?q:p;var s=c(10958),t=function(a,b){return function(c,d){b(c,d,a)}};let u=class extends i.jG{static{e=this}static{this.maximumPageCount=16}get pages(){return this._pages}constructor(a,b,c,d,e){super(),this._maxTextureSize=a,this._decorationStyleCache=c,this._themeService=d,this._instantiationService=e,this._warmUpTask=this._register(new i.HE),this._warmedUpRasterizers=new Set,this._pages=[],this._glyphPageIndex=new j.QO,this._onDidDeleteGlyphs=this._register(new h.vl),this.onDidDeleteGlyphs=this._onDidDeleteGlyphs.event,this._allocatorType=b?.allocatorType??"slab",this._register(h.Jh.runAndSubscribe(this._themeService.onDidColorThemeChange,()=>{this._colorMap&&this.clear(),this._colorMap=this._themeService.getColorTheme().tokenColorMap}));let g=Math.max(1,Math.floor((0,f.fz)().devicePixelRatio));this.pageSize=Math.min(1024*g,this._maxTextureSize),this._initFirstPage(),this._register((0,i.s)(()=>(0,i.AS)(this._pages)))}_initFirstPage(){let a=this._instantiationService.createInstance(s.g,0,this.pageSize,this._allocatorType);this._pages.push(a);let b=new m.O(1,"",1,this._decorationStyleCache);a.getGlyph(b,"",0,0),b.dispose()}clear(){for(let a of this._pages)a.dispose();this._pages.length=0,this._glyphPageIndex.clear(),this._warmedUpRasterizers.clear(),this._warmUpTask.clear(),this._initFirstPage(),this._onDidDeleteGlyphs.fire()}getGlyph(a,b,c,d,e){return c&=-2048,c|=Math.floor(e%1*10),this._warmedUpRasterizers.has(a.id)||(this._warmUpAtlas(a),this._warmedUpRasterizers.add(a.id)),this._tryGetGlyph(this._glyphPageIndex.get(b,c,d,a.cacheKey)??0,a,b,c,d)}_tryGetGlyph(a,b,c,d,e){return this._glyphPageIndex.set(a,c,d,e,b.cacheKey),this._pages[a].getGlyph(b,c,d,e)??(a+1<this._pages.length?this._tryGetGlyph(a+1,b,c,d,e):void 0)??this._getGlyphFromNewPage(b,c,d,e)}_getGlyphFromNewPage(a,b,c,d){if(this._pages.length>=e.maximumPageCount)throw Error(`Attempt to create a texture atlas page past the limit ${e.maximumPageCount}`);return this._pages.push(this._instantiationService.createInstance(s.g,this._pages.length,this.pageSize,this._allocatorType)),this._glyphPageIndex.set(this._pages.length-1,b,c,d,a.cacheKey),this._pages[this._pages.length-1].getGlyph(a,b,c,d)}getStats(){return this._pages.map(a=>a.getStats())}_warmUpAtlas(a){let b=this._colorMap;if(!b)throw new g.D7("Cannot warm atlas without color map");this._warmUpTask.value?.clear();let c=this._warmUpTask.value=this._instantiationService.createInstance(r);for(let d=65;d<=90;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=97;d<=122;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=33;d<=126;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)})}};u=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([t(3,l.Gy),t(4,k._Y)],u)},98350:(a,b,c)=>{"use strict";c.d(b,{B:()=>d,q:()=>k});var d,e=c(32677),f=c(29813),g=c(53578),h=c(60734),i=c(11314),j=c(71373);!function(a){a.Tap="-monaco-gesturetap",a.Change="-monaco-gesturechange",a.Start="-monaco-gesturestart",a.End="-monaco-gesturesend",a.Contextmenu="-monaco-gesturecontextmenu"}(d||(d={}));class k extends i.jG{static{this.SCROLL_FRICTION=-.005}static{this.HOLD_DELAY=700}static{this.CLEAR_TAP_COUNT_TIME=400}constructor(){super(),this.dispatched=!1,this.targets=new j.w,this.ignoreTargets=new j.w,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(h.Jh.runAndSubscribe(e.Iv,({window:a,disposables:b})=>{b.add(e.ko(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(e.ko(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(e.ko(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:f.G,disposables:this._store}))}static addTarget(a){if(!k.isTouchDevice())return i.jG.None;k.INSTANCE||(k.INSTANCE=(0,i.lC)(new k));let b=k.INSTANCE.targets.push(a);return(0,i.s)(b)}static ignoreTarget(a){if(!k.isTouchDevice())return i.jG.None;k.INSTANCE||(k.INSTANCE=(0,i.lC)(new k));let b=k.INSTANCE.ignoreTargets.push(a);return(0,i.s)(b)}static isTouchDevice(){return"ontouchstart"in f.G||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,e=a.targetTouches.length;c<e;c++){let e=a.targetTouches.item(c);this.activeTouches[e.identifier]={id:e.identifier,initialTarget:e.target,initialTimeStamp:b,initialPageX:e.pageX,initialPageY:e.pageY,rollingTimestamps:[b],rollingPageX:[e.pageX],rollingPageY:[e.pageY]};let f=this.newGestureEvent(d.Start,e.target);f.pageX=e.pageX,f.pageY=e.pageY,this.dispatchEvent(f)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(a,b){let c=Date.now(),e=Object.keys(this.activeTouches).length;for(let f=0,g=b.changedTouches.length;f<g;f++){let g=b.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<k.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(d.Tap,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(i>=k.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(d.Contextmenu,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(1===e){let b=h.rollingPageX.at(-1),d=h.rollingPageY.at(-1),e=h.rollingTimestamps.at(-1)-h.rollingTimestamps[0],f=b-h.rollingPageX[0],g=d-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(a,i,c,Math.abs(f)/e,f>0?1:-1,b,Math.abs(g)/e,g>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(d.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(b.preventDefault(),b.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(a){if(a.type===d.Tap){let b=new Date().getTime(),c=0;c=b-this._lastSetTapCountTime>k.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=b,a.tapCount=c}else(a.type===d.Change||a.type===d.Contextmenu)&&(this._lastSetTapCountTime=0);if(a.initialTarget instanceof Node){for(let b of this.ignoreTargets)if(b.contains(a.initialTarget))return;let b=[];for(let c of this.targets)if(c.contains(a.initialTarget)){let d=0,e=a.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;b.push([d,c])}for(let[c,d]of(b.sort((a,b)=>a[0]-b[0]),b))d.dispatchEvent(a),this.dispatched=!0}}inertia(a,b,c,f,g,h,i,j,l){this.handle=e.PG(a,()=>{let e=Date.now(),m=e-c,n=0,o=0,p=!0;f+=k.SCROLL_FRICTION*m,i+=k.SCROLL_FRICTION*m,f>0&&(p=!1,n=g*f*m),i>0&&(p=!1,o=j*i*m);let q=this.newGestureEvent(d.Change);q.translationX=n,q.translationY=o,b.forEach(a=>a.dispatchEvent(q)),p||this.inertia(a,b,e,f,g,h+n,i,j,l+o)})}onTouchMove(a){let b=Date.now();for(let c=0,e=a.changedTouches.length;c<e;c++){let e=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(e.identifier))){console.warn("end of an UNKNOWN touch",e);continue}let f=this.activeTouches[e.identifier],g=this.newGestureEvent(d.Change,f.initialTarget);g.translationX=e.pageX-f.rollingPageX.at(-1),g.translationY=e.pageY-f.rollingPageY.at(-1),g.pageX=e.pageX,g.pageY=e.pageY,this.dispatchEvent(g),f.rollingPageX.length>3&&(f.rollingPageX.shift(),f.rollingPageY.shift(),f.rollingTimestamps.shift()),f.rollingPageX.push(e.pageX),f.rollingPageY.push(e.pageY),f.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([g.B],k,"isTouchDevice",null)},98447:(a,b,c)=>{"use strict";let d;c.d(b,{$X:()=>U,AV:()=>g,BO:()=>o,Bm:()=>p,Bq:()=>m,DB:()=>A,E_:()=>Q,GP:()=>i,HG:()=>t,LJ:()=>I,LU:()=>Y,Lv:()=>B,MV:()=>O,NB:()=>n,OS:()=>q,Q_:()=>D,Qp:()=>F,S8:()=>ac,Ss:()=>W,UD:()=>w,UU:()=>u,Vi:()=>G,W1:()=>y,Wd:()=>ab,Wv:()=>C,Z5:()=>K,_J:()=>T,aC:()=>S,bm:()=>l,eY:()=>r,ih:()=>k,iy:()=>N,jy:()=>j,km:()=>M,lF:()=>x,lT:()=>v,m:()=>P,ne:()=>V,ns:()=>E,pc:()=>H,r_:()=>X,tk:()=>$,tl:()=>ad,uz:()=>s,y_:()=>ae,zY:()=>Z,z_:()=>J,zd:()=>z});var e=c(91732),f=c(49982);function g(a){return!a||"string"!=typeof a||0===a.trim().length}let h=/{(\d+)}/g;function i(a,...b){return 0===b.length?a:a.replace(h,function(a,c){let d=parseInt(c,10);return isNaN(d)||d<0||d>=b.length?a:b[d]})}function j(a){return a.replace(/[<>"'&]/g,a=>{switch(a){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return a})}function k(a){return a.replace(/[<>&]/g,function(a){switch(a){case"<":return"<";case">":return">";case"&":return"&";default:return a}})}function l(a){return a.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function m(a,b=" "){return o(n(a,b),b)}function n(a,b){if(!a||!b)return a;let c=b.length;if(0===c||0===a.length)return a;let d=0;for(;a.indexOf(b,d)===d;)d+=c;return a.substring(d)}function o(a,b){if(!a||!b)return a;let c=b.length,d=a.length;if(0===c||0===d)return a;let e=d,f=-1;for(;-1!==(f=a.lastIndexOf(b,e-1))&&f+c===e;){if(0===f)return"";e=f}return a.substring(0,e)}function p(a){return a.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function q(a,b,c={}){if(!a)throw Error("Cannot create regex from empty string");b||(a=l(a)),c.wholeWord&&(/\B/.test(a.charAt(0))||(a="\\b"+a),/\B/.test(a.charAt(a.length-1))||(a+="\\b"));let d="";return c.global&&(d+="g"),c.matchCase||(d+="i"),c.multiline&&(d+="m"),c.unicode&&(d+="u"),new RegExp(a,d)}function r(a){return"^"!==a.source&&"^$"!==a.source&&"$"!==a.source&&"^\\s*$"!==a.source&&!!(a.exec("")&&0===a.lastIndex)}function s(a){return a.split(/\r\n|\r|\n/)}function t(a){for(let b=0,c=a.length;b<c;b++){let c=a.charCodeAt(b);if(32!==c&&9!==c)return b}return -1}function u(a,b=0,c=a.length){for(let d=b;d<c;d++){let c=a.charCodeAt(d);if(32!==c&&9!==c)return a.substring(b,d)}return a.substring(b,c)}function v(a,b=a.length-1){for(let c=b;c>=0;c--){let b=a.charCodeAt(c);if(32!==b&&9!==b)return c}return -1}function w(a,b){return a<b?-1:+(a>b)}function x(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let d=a.charCodeAt(c),f=b.charCodeAt(e);if(d<f)return -1;if(d>f)return 1}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function y(a,b){return z(a,b,0,a.length,0,b.length)}function z(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let g=a.charCodeAt(c),h=b.charCodeAt(e);if(g===h)continue;if(g>=128||h>=128)return x(a.toLowerCase(),b.toLowerCase(),c,d,e,f);B(g)&&(g-=32),B(h)&&(h-=32);let i=g-h;if(0!==i)return i}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function A(a){return a>=48&&a<=57}function B(a){return a>=97&&a<=122}function C(a){return a>=65&&a<=90}function D(a,b){return a.length===b.length&&0===z(a,b)}function E(a,b){let c=b.length;return!(b.length>a.length)&&0===z(a,b,0,c)}function F(a,b){let c,d=Math.min(a.length,b.length);for(c=0;c<d;c++)if(a.charCodeAt(c)!==b.charCodeAt(c))return c;return d}function G(a,b){let c,d=Math.min(a.length,b.length),e=a.length-1,f=b.length-1;for(c=0;c<d;c++)if(a.charCodeAt(e-c)!==b.charCodeAt(f-c))return c;return d}function H(a){return 55296<=a&&a<=56319}function I(a){return 56320<=a&&a<=57343}function J(a,b){return(a-55296<<10)+(b-56320)+65536}function K(a,b,c){let d=a.charCodeAt(c);if(H(d)&&c+1<b){let b=a.charCodeAt(c+1);if(I(b))return J(d,b)}return d}class L{get offset(){return this._offset}constructor(a,b=0){this._str=a,this._len=a.length,this._offset=b}setOffset(a){this._offset=a}prevCodePoint(){let a=function(a,b){let c=a.charCodeAt(b-1);if(I(c)&&b>1){let d=a.charCodeAt(b-2);if(H(d))return J(d,c)}return c}(this._str,this._offset);return this._offset-=a>=65536?2:1,a}nextCodePoint(){let a=K(this._str,this._len,this._offset);return this._offset+=a>=65536?2:1,a}eol(){return this._offset>=this._len}}class M{get offset(){return this._iterator.offset}constructor(a,b=0){this._iterator=new L(a,b)}nextGraphemeLength(){let a=aa.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.nextCodePoint());for(;!b.eol();){let c=b.offset,e=a.getGraphemeBreakType(b.nextCodePoint());if(_(d,e)){b.setOffset(c);break}d=e}return b.offset-c}prevGraphemeLength(){let a=aa.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.prevCodePoint());for(;b.offset>0;){let c=b.offset,e=a.getGraphemeBreakType(b.prevCodePoint());if(_(e,d)){b.setOffset(c);break}d=e}return c-b.offset}eol(){return this._iterator.eol()}}function N(a,b){return new M(a,b).nextGraphemeLength()}function O(a,b){return new M(a,b).prevGraphemeLength()}function P(a,b){b>0&&I(a.charCodeAt(b))&&b--;let c=b+N(a,b);return[c-O(a,c),c]}function Q(a){return d||(d=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/),d.test(a)}let R=/^[\t\n\r\x20-\x7E]*$/;function S(a){return R.test(a)}let T=/[\u2028\u2029]/;function U(a){return T.test(a)}function V(a){return a>=11904&&a<=55215||a>=63744&&a<=64255||a>=65281&&a<=65374}function W(a){return a>=127462&&a<=127487||8986===a||8987===a||9200===a||9203===a||a>=9728&&a<=10175||11088===a||11093===a||a>=127744&&a<=128591||a>=128640&&a<=128764||a>=128992&&a<=129008||a>=129280&&a<=129535||a>=129648&&a<=129782}RegExp("(?:"+[/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/.source,/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/.source,/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/.source].join("|")+")","g");let X=String.fromCharCode(65279);function Y(a){return!!(a&&a.length>0&&65279===a.charCodeAt(0))}function Z(a,b=!1){return!!a&&(b&&(a=a.replace(/\\./g,"")),a.toLowerCase()!==a)}function $(a){return(a%=52)<26?String.fromCharCode(97+a):String.fromCharCode(65+a-26)}function _(a,b){return 0===a?5!==b&&7!==b:(2!==a||3!==b)&&(4===a||2===a||3===a||4===b||2===b||3===b||(8!==a||8!==b&&9!==b&&11!==b&&12!==b)&&(11!==a&&9!==a||9!==b&&10!==b)&&(12!==a&&10!==a||10!==b)&&5!==b&&13!==b&&7!==b&&1!==a&&(13!==a||14!==b)&&(6!==a||6!==b)&&!0)}class aa{static{this._INSTANCE=null}static getInstance(){return aa._INSTANCE||(aa._INSTANCE=new aa),aa._INSTANCE}constructor(){this._data=JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}getGraphemeBreakType(a){if(a<32)return 10===a?3:13===a?2:4;if(a<127)return 0;let b=this._data,c=b.length/3,d=1;for(;d<=c;)if(a<b[3*d])d*=2;else{if(!(a>b[3*d+1]))return b[3*d+2];d=2*d+1}return 0}}function ab(a,b){if(0===a)return 0;let c=function(a,b){var c;let d=new L(b,a),e=d.prevCodePoint();for(;127995<=(c=e)&&c<=127999||65039===e||8419===e;){if(0===d.offset)return;e=d.prevCodePoint()}if(!W(e))return;let f=d.offset;return f>0&&8205===d.prevCodePoint()&&(f=d.offset),f}(a,b);if(void 0!==c)return c;let d=new L(b,a);return d.prevCodePoint(),d.offset}let ac="\xa0";class ad{static{this.ambiguousCharacterData=new f.d(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}'))}static{this.cache=new e.o5({getCacheKey:JSON.stringify},a=>{let b;function c(a){let b=new Map;for(let c=0;c<a.length;c+=2)b.set(a[c],a[c+1]);return b}let d=this.ambiguousCharacterData.value,e=a.filter(a=>!a.startsWith("_")&&a in d);for(let a of(0===e.length&&(e=["_default"]),e))b=function(a,b){if(!a)return b;let c=new Map;for(let[d,e]of a)b.has(d)&&c.set(d,e);return c}(b,c(d[a]));return new ad(function(a,b){let c=new Map(a);for(let[a,d]of b)c.set(a,d);return c}(c(d._common),b))})}static getInstance(a){return ad.cache.get(Array.from(a))}static{this._locales=new f.d(()=>Object.keys(ad.ambiguousCharacterData.value).filter(a=>!a.startsWith("_")))}static getLocales(){return ad._locales.value}constructor(a){this.confusableDictionary=a}isAmbiguous(a){return this.confusableDictionary.has(a)}getPrimaryConfusable(a){return this.confusableDictionary.get(a)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}class ae{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(ae.getRawData())].flat())),this._data}static isInvisibleCharacter(a){return ae.getData().has(a)}static get codePoints(){return ae.getData()}}},98787:(a,b,c)=>{"use strict";c.d(b,{V:()=>f,w:()=>g});var d=c(11314),e=c(43589);function f(a,b,c,d=e.jM.ofCaller()){return(0,e.eP)({debugName:()=>`Configuration Key "${a}"`},b=>c.onDidChangeConfiguration(c=>{c.affectsConfiguration(a)&&b(c)}),()=>c.getValue(a)??b,d)}function g(a,b,c,f=e.jM.ofCaller()){let h=a.bindTo(b),i=new d.Cm;return(0,e.C)({debugName:()=>`Set Context Key "${a.key}"`},a=>{let b=c(a);return h.set(b),b},f).recomputeInitiallyAndOnChange(i),i}},98867:(a,b,c)=>{"use strict";let d,e,f,g,h;c.d(b,{h5:()=>l,vr:()=>j,xE:()=>k});var i=c(32677);function j(a){(d=document.createElement("div")).className="monaco-aria-container";let b=()=>{let a=document.createElement("div");return a.className="monaco-alert",a.setAttribute("role","alert"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};e=b(),f=b();let c=()=>{let a=document.createElement("div");return a.className="monaco-status",a.setAttribute("aria-live","polite"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};g=c(),h=c(),a.appendChild(d)}function k(a){d&&(e.textContent!==a?(i.w_(f),m(e,a)):(i.w_(e),m(f,a)))}function l(a){d&&(g.textContent!==a?(i.w_(h),m(g,a)):(i.w_(g),m(h,a)))}function m(a,b){i.w_(a),b.length>2e4&&(b=b.substr(0,2e4)),a.textContent=b,a.style.visibility="hidden",a.style.visibility="visible"}c(30967)},99695:(a,b,c)=>{"use strict";c.d(b,{FW:()=>i,Zv:()=>e,dG:()=>g,z5:()=>j});var d=c(88347);function e(a,b){if("number"==typeof a){if(0===a)return null;let c=(65535&a)>>>0,d=(0xffff0000&a)>>>16;return new h(0!==d?[f(c,b),f(d,b)]:[f(c,b)])}{let c=[];for(let d=0;d<a.length;d++)c.push(f(a[d],b));return new h(c)}}function f(a,b){let c=!!(2048&a),d=!!(256&a);return new g(2===b?d:c,!!(1024&a),!!(512&a),2===b?c:d,255&a)}class g{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(a){return a instanceof g&&this.ctrlKey===a.ctrlKey&&this.shiftKey===a.shiftKey&&this.altKey===a.altKey&&this.metaKey===a.metaKey&&this.keyCode===a.keyCode}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}}class h{constructor(a){if(0===a.length)throw(0,d.Qg)("chords");this.chords=a}}class i{constructor(a,b,c,d,e,f){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyLabel=e,this.keyAriaLabel=f}}class j{}},99964:(a,b,c)=>{"use strict";c.d(b,{Z:()=>f,l:()=>e});var d=c(29715);let e=(0,d.u1)("contextViewService"),f=(0,d.u1)("contextMenuService")}};
|