@inkeep/agents-manage-ui 0.0.0-dev-20251125061921 → 0.0.0-dev-20251125083010
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-path-routes-manifest.json +6 -6
- package/.next/standalone/agents-manage-ui/.next/build-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
- 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/(with-react-flow-provider)/[agentId]/page.js +14 -14
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +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 +2 -2
- 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_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +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 +2 -2
- 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_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +2 -2
- 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_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +1 -1
- 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]/external-agents/[externalAgentId]/edit/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/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_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 +1 -1
- 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 +3 -3
- 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/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
- 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 +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_full.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_index.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route_client-reference-manifest.js +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/index.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/index.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_full.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_index.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_full.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_index.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_full.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_index.segment.rsc +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/page.js +1 -1
- 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 +6 -6
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2536.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3887.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4505.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{2595.js → 5279.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5566.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5992.js +13 -13
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6303.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6654.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6705.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7461.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{8712.js → 9012.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9783.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9886.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +2 -2
- 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/{16444-c467f452fb3a85f2.js → 12381-37fed221ca62c6c7.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{25082-88701481a069f889.js → 22645-b339c0e13e664092.js} +3 -3
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{33991-bff915bc1138ec70.js → 31631-2b73ab5e4455ac8e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{60209.0de7911781712a75.js → 60209.61e8c78852b47362.js} +3 -3
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{78064-ff1ec9f4ea54757e.js → 61287-0d4a38499b03a6e7.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/92501-b6c5e621f9d062e5.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/95340.95a1b719bdb3bcc3.js +23 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page-ddde66f143f911b3.js +433 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/layout-773f672bcc2ea9ba.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-08e231f8becddbb2.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/{page-4a309e0fb2887750.js → page-a68c8c24c183ebf4.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-cdb16be31e13a161.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-37ee3722e9aff505.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-e9291fed88114693.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-3261ea2dfc89a867.js → page-44d2c0720569a906.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-9249383da6592f68.js → page-7f8d22da166cbfad.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-85dd076e6cc00555.js → page-58567e4531868636.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-662d56ab5d64d33a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-3815329536836fa2.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-8e2d8508c95ee9d5.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-3bb87dc522e2875a.js → page-f9a2451ae77cd035.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/{page-7ac8e94dcc501a89.js → page-9ea4eb1079266c97.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-6462ca9226199304.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/{page-1a9b8913c13b221a.js → page-404ee7b1d006d898.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-95e94181f48add1a.js → page-9443fe46f15d1782.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-be6d2c35ee778e0e.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-99634aa6b997e433.js → page-bfcae62f6d5fa272.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-b2b57f05e8ec47a1.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-b82a3dbcaaa6ba84.js → page-70a8532f122a713c.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/{page-db32cb563d989556.js → page-a31b9a5bc8c0c5d2.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{page-18b99c298296d1e4.js → page-339f3bcc69a16aaa.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{layout-325a551530bf811b.js → layout-f7c3b1c64f59c64e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-af0da2ab82ed647a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-daa3edaf1d23ddb1.js → webpack-8b8a742b1249171d.js} +1 -1
- package/package.json +4 -4
- package/src/components/agent/agent.tsx +13 -3
- package/src/components/agent/copilot/copilot-chat.tsx +54 -2
- package/src/components/agent/copilot/copilot-context.tsx +19 -0
- package/src/components/agent/node-library/copilot-trigger.tsx +4 -12
- package/src/hooks/use-copilot-token.ts +124 -0
- package/src/lib/actions/copilot-token.ts +94 -0
- package/src/lib/api/api-config.ts +20 -6
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1155.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7148.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7642.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/78914-16a9f590d0943b9f.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/95624.b438877fe9b311c7.js +0 -23
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page-4bf34991a6f6aac6.js +0 -433
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/layout-3855e52eceb47f9b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-ba80d360b483c80d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-561c378e526c29f9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-2b5e5ab724e8e95c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-76eaf97e8b4beb78.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-bd5f13c9efc233c7.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-c0a536274cfdda2d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-d862e618a8c522e2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-f6417d699f3b2e84.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-50c47329fe22bfd3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-3c75f5711bc1a494.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-d7d5d9cb6d597206.js +0 -1
- /package/.next/standalone/agents-manage-ui/.next/static/{VUGdL6o6QOvnJ8rlPQ4Yr → 8e7Zds9LTJwXnJuJs_SxI}/_buildManifest.js +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{VUGdL6o6QOvnJ8rlPQ4Yr → 8e7Zds9LTJwXnJuJs_SxI}/_ssgManifest.js +0 -0
|
@@ -52,9 +52,9 @@ Make sure that all grammar rule definitions are done before 'performSelfAnalysis
|
|
|
52
52
|
inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=(0,td.A)(this.recordingProdStack),i=new j({idx:t,nonTerminalName:e.ruleName,label:null==r?void 0:r.LABEL,referencedRule:void 0});return n.definition.push(i),this.outputCst?rW:rj}consumeInternalRecord(e,t,r){if(rQ(t),!tT(e)){let r=Error(`<CONSUME${rq(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
|
|
53
53
|
inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=(0,td.A)(this.recordingProdStack),i=new Z({idx:t,terminalType:e,label:null==r?void 0:r.LABEL});return n.definition.push(i),rH}}function rY(e,t,r,n=!1){rQ(r);let i=(0,td.A)(this.recordingProdStack),a=(0,eC.A)(t)?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),(0,g.A)(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),rj}function rX(e,t){rQ(t);let r=(0,td.A)(this.recordingProdStack),n=!1===(0,en.A)(e),i=!1===n?e:e.DEF,a=new Q({definition:[],idx:t,ignoreAmbiguities:n&&!0===e.IGNORE_AMBIGUITIES});return(0,g.A)(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),a.hasPredicates=ea(i,e=>(0,eC.A)(e.GATE)),r.definition.push(a),(0,h.A)(i,e=>{let t=new H({definition:[]});a.definition.push(t),(0,g.A)(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:(0,g.A)(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()}),rj}function rq(e){return 0===e?"":`${e}`}function rQ(e){if(e<0||e>255){let t=Error(`Invalid DSL Method idx value: <${e}>
|
|
54
54
|
Idx value must be a none negative value smaller than ${256}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}class rZ{initPerformanceTracer(e){if((0,g.A)(e,"traceInitPerf")){let t=e.traceInitPerf,r="number"==typeof t;this.traceInitMaxIdent=r?t:1/0,this.traceInitPerf=r?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=r0.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0!==this.traceInitPerf)return t();{this.traceInitIndent++;let r=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:i}=th(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}}}let rJ=tM(tP,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(rJ);let r0=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:tF,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),r1=Object.freeze({recoveryValueFunc:()=>void 0,resyncEnabled:!0});function r2(e){return function(){return e}}(o=d||(d={}))[o.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",o[o.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",o[o.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",o[o.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",o[o.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",o[o.LEFT_RECURSION=5]="LEFT_RECURSION",o[o.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",o[o.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",o[o.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",o[o.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",o[o.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",o[o.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",o[o.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",o[o.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION";class r3{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let t=this.className;this.TRACE_INIT("toFastProps",()=>{T(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),(0,h.A)(this.definedRulesNames,e=>{let t,r=this[e].originalGrammarAction;this.TRACE_INIT(`${e} Rule`,()=>{t=this.topLevelRuleRecord(e,r)}),this.gastProductionsCache[e]=t})}finally{this.disableRecording()}});let r=[];if(this.TRACE_INIT("Grammar Resolving",()=>{var e;let t,n,i;e={rules:(0,f.A)(this.gastProductionsCache)},n=(0,ek.A)(e,{errMsgProvider:tU}),i={},(0,h.A)(e.rules,e=>{i[e.name]=e}),(t=new tK(i,n.errMsgProvider)).resolveRefs(),r=t.errors,this.definitionErrors=this.definitionErrors.concat(r)}),this.TRACE_INIT("Grammar Validations",()=>{if((0,p.A)(r)&&!1===this.skipValidations){var e,n,i,a,s,o,l,u,c;let r,p,g,y,T,A,v,R=(e={rules:(0,f.A)(this.gastProductionsCache),tokenTypes:(0,f.A)(this.tokensMap),errMsgProvider:tG,grammarName:t},n=(e=(0,ek.A)(e,{errMsgProvider:tG})).rules,i=e.tokenTypes,a=e.errMsgProvider,s=e.grammarName,g=(0,tB.A)(n,e=>{var t,r;let n,i;return t=e,r=a,n=new ru,t.accept(n),i=P(tz(n.allProductions,ro),e=>e.length>1),(0,m.A)((0,f.A)(i),e=>{let n=eV(e),i=r.buildDuplicateFoundError(t,e),a=ef(n),s={message:i,type:d.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:a,occurrence:n.idx},o=rl(n);return o&&(s.parameter=o),s})}),l=n,u=i,c=a,r=[],p=(0,m.A)(u,e=>e.name),(0,h.A)(l,e=>{let t=e.name;if(el(p,t)){let n=c.buildNamespaceConflictError(e);r.push({message:n,type:d.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}}),y=r,T=(0,tB.A)(n,e=>{var t,r;let n,i;return t=e,r=a,n=new rc,t.accept(n),i=n.alternations,(0,tB.A)(i,e=>e.definition.length>255?[{message:r.buildTooManyAlternativesError({topLevelRule:t,alternation:e}),type:d.TOO_MANY_ALTS,ruleName:t.name,occurrence:e.idx}]:[])}),A=(0,tB.A)(n,e=>(function(e,t,r,n){let i=[];if((0,eb.A)(t,(t,r)=>r.name===e.name?t+1:t,0)>1){let t=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:t,type:d.DUPLICATE_RULE_NAME,ruleName:e.name})}return i})(e,n,s,a)),g.concat(y,T,A)),$=(v=(o={lookaheadStrategy:this.lookaheadStrategy,rules:(0,f.A)(this.gastProductionsCache),tokenTypes:(0,f.A)(this.tokensMap),grammarName:t}).lookaheadStrategy.validate({rules:o.rules,tokenTypes:o.tokenTypes,grammarName:o.grammarName}),(0,m.A)(v,e=>Object.assign({type:d.CUSTOM_LOOKAHEAD_VALIDATION},e)));this.definitionErrors=this.definitionErrors.concat(R,$)}}),(0,p.A)(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{var e;let t,r=(e=(0,f.A)(this.gastProductionsCache),t={},(0,h.A)(e,e=>{w(t,new eR(e).startWalking())}),t);this.resyncFollows=r}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var e,t;null==(t=(e=this.lookaheadStrategy).initialize)||t.call(e,{rules:(0,f.A)(this.gastProductionsCache)}),this.preComputeLookaheadFunctions((0,f.A)(this.gastProductionsCache))})),!r3.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,p.A)(this.definitionErrors))throw e=(0,m.A)(this.definitionErrors,e=>e.message),Error(`Parser Definition Errors detected:
|
|
55
|
-
${e.join("\n-------------------------------\n")}`)})}constructor(e,t){if(this.definitionErrors=[],this.selfAnalysisDone=!1,this.initErrorHandler(t),this.initLexerAdapter(),this.initLooksAhead(t),this.initRecognizerEngine(e,t),this.initRecoverable(t),this.initTreeBuilder(t),this.initContentAssist(),this.initGastRecorder(t),this.initPerformanceTracer(t),(0,g.A)(t,"ignoredIssues"))throw Error("The <ignoredIssues> IParserConfig property has been deprecated.\n Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n For further details.");this.skipValidations=(0,g.A)(t,"skipValidations")?t.skipValidations:r0.skipValidations}}r3.DEFER_DEFINITION_ERRORS_HANDLING=!1,[rI,rC,rM,rD,rG,rF,rK,rB,rz,rZ].forEach(e=>{let t=e.prototype;Object.getOwnPropertyNames(t).forEach(r=>{if("constructor"===r)return;let n=Object.getOwnPropertyDescriptor(t,r);n&&(n.get||n.set)?Object.defineProperty(r3.prototype,r,n):r3.prototype[r]=e.prototype[r]})});class r4 extends r3{constructor(e,t=r0){const r=(0,y.A)(t);r.outputCst=!1,super(e,r)}}},21468:(e,t,r)=>{r.d(t,{Bd:()=>h,P3:()=>v,PV:()=>A,Rp:()=>g,S:()=>R,SS:()=>m,U5:()=>y,Uz:()=>function e(t){var r,n,a;if(i.s7(t))return T(t)?t.name:null!=(r=A(t))?r:t.name;if(i.S2(t)||i.Xj(t)||i.fG(t))return t.name;if(i.ve(t)){let r=(n=t).inferredType?n.inferredType.name:(null==(a=n.type)?void 0:a.ref)?e(n.type.ref):void 0;if(r)return r}else if(i.SP(t))return t.name;throw Error("Cannot get name of Unknown Type")},Xq:()=>T,YV:()=>u,eb:()=>d,g4:()=>c,qO:()=>f});var n=r(60056),i=r(83649),a=r(59357),s=r(72325),o=r(58815),l=r(99233);function u(e,t){let r=new Set,n=e.rules.find(e=>i.s7(e)&&e.entry);if(!n)return new Set(e.rules);for(let a of[n].concat(e.rules.filter(e=>i.rE(e)&&e.hidden)))!function e(t,r,n){r.add(t.name),(0,s.Uo)(t).forEach(t=>{if(i.$g(t)||n&&i.lF(t)){let i=t.rule.ref;i&&!r.has(i.name)&&e(i,r,n)}})}(a,r,t);let a=new Set;for(let t of e.rules)(r.has(t.name)||i.rE(t)&&t.hidden)&&a.add(t);return a}function c(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=y(e.type.ref);return null==t?void 0:t.terminal}}function d(e){return e.hidden&&!(0,l.Yv)(R(e))}function h(e,t){return e&&t?p(e,t,e.astNode,!0):[]}function f(e,t,r){if(!e||!t)return;let n=p(e,t,e.astNode,!0);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function p(e,t,r,n){if(!n){let r=(0,s.XG)(e.grammarSource,i.wh);if(r&&r.feature===t)return[e]}return(0,a.mD)(e)&&e.astNode===r?e.content.flatMap(e=>p(e,t,r,!1)):[]}function m(e,t,r){if(!e)return;let n=function(e,t,r){let n;if(e.astNode!==r)return[];if(i.wb(e.grammarSource)&&e.grammarSource.value===t)return[e];let a=(0,o.NS)(e).iterator(),s=[];do if(!(n=a.next()).done){let e=n.value;e.astNode===r?i.wb(e.grammarSource)&&e.grammarSource.value===t&&s.push(e):a.prune()}while(!n.done);return s}(e,t,null==e?void 0:e.astNode);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function g(e){var t;let r=e.astNode;for(;r===(null==(t=e.container)?void 0:t.astNode);){let t=(0,s.XG)(e.grammarSource,i.wh);if(t)return t;e=e.container}}function y(e){let t=e;return i.SP(t)&&(i.ve(t.$container)?t=t.$container.$container:i.s7(t.$container)?t=t.$container:(0,n.d)(t.$container)),function e(t,r,n){var a;function o(r,a){let o;return(0,s.XG)(r,i.wh)||(o=e(a,a,n)),n.set(t,o),o}if(n.has(t))return n.get(t);for(let e of(n.set(t,void 0),(0,s.Uo)(r)))if(i.wh(e)&&"name"===e.feature.toLowerCase())return n.set(t,e),e;else if(i.$g(e)&&i.s7(e.rule.ref))return o(e,e.rule.ref);else if(i.D8(e)&&(null==(a=e.typeRef)?void 0:a.ref))return o(e,e.typeRef.ref)}(e,t,new Map)}function T(e){return function e(t,r){if(r.has(t))return!0;for(let n of(r.add(t),(0,s.Uo)(t)))if(i.$g(n)){if(!n.rule.ref||i.s7(n.rule.ref)&&!e(n.rule.ref,r))return!1}else if(i.wh(n))return!1;else if(i.ve(n))return!1;return!!t.definition}(e,new Set)}function A(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t){if(i.s7(t))return t.name;else if(i.S2(t)||i.Xj(t))return t.name}}}function v(e){var t,r,n;return i.rE(e)?null!=(r=null==(t=e.type)?void 0:t.name)?r:"string":null!=(n=A(e))?n:e.name}function R(e){let t={s:!1,i:!1,u:!1};return new RegExp(function e(t,r){var n,a,s,o,l;if(i.Fy(t)){return k((n=t).elements.map(t=>e(t)).join("|"),{cardinality:n.cardinality,lookahead:n.lookahead})}if(i.O4(t)){return k((a=t).elements.map(t=>e(t)).join(""),{cardinality:a.cardinality,lookahead:a.lookahead})}if(i.Bg(t)){return(s=t).right?k(`[${E(s.left)}-${E(s.right)}]`,{cardinality:s.cardinality,lookahead:s.lookahead,wrap:!1}):k(E(s.left),{cardinality:s.cardinality,lookahead:s.lookahead,wrap:!1})}if(i.lF(t)){let r=t.rule.ref;if(!r)throw Error("Missing rule reference.");return k(e(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}if(i.GL(t)){return o=t,k(`(?!${e(o.terminal)})${$}*?`,{cardinality:o.cardinality,lookahead:o.lookahead})}else if(i.Mz(t)){return l=t,k(`${$}*?${e(l.terminal)}`,{cardinality:l.cardinality,lookahead:l.lookahead})}else if(i.vd(t)){let e=t.regex.lastIndexOf("/"),n=t.regex.substring(1,e),i=t.regex.substring(e+1);return r&&(r.i=i.includes("i"),r.s=i.includes("s"),r.u=i.includes("u")),k(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else if(i.z2(t))return k($,{cardinality:t.cardinality,lookahead:t.lookahead});else throw Error(`Invalid terminal element: ${null==t?void 0:t.$type}`)}(e.definition,t),Object.entries(t).filter(([,e])=>e).map(([e])=>e).join(""))}let $=/[\s\S]/.source;function E(e){return(0,l.Nt)(e.value)}function k(e,t){var r;return((!1!==t.wrap||t.lookahead)&&(e=`(${null!=(r=t.lookahead)?r:""}${e})`),t.cardinality)?`${e}${t.cardinality}`:e}},22351:(e,t,r)=>{var n,i;r.d(t,{B5:()=>o,Rf:()=>l,Td:()=>u,Vj:()=>c,fq:()=>a,iD:()=>n});class a{constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),t=0,r=e.next();for(;!r.done;)t++,r=e.next();return t}toArray(){let e,t=[],r=this.iterator();do void 0!==(e=r.next()).value&&t.push(e.value);while(!e.done);return t}toSet(){return new Set(this)}toMap(e,t){return new Map(this.map(r=>[e?e(r):r,t?t(r):r]))}toString(){return this.join()}concat(e){return new a(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),e=>{let t;if(!e.firstDone){do if(!(t=this.nextFn(e.first)).done)return t;while(!t.done);e.firstDone=!0}do if(!(t=e.iterator.next()).done)return t;while(!t.done);return l})}join(e=","){let t,r=this.iterator(),n="",i=!1;do{var a;(t=r.next()).done||(i&&(n+=e),n+="string"==typeof(a=t.value)?a:void 0===a?"undefined":"function"==typeof a.toString?a.toString():Object.prototype.toString.call(a)),i=!0}while(!t.done);return n}indexOf(e,t=0){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(n>=t&&i.value===e)return n;i=r.next(),n++}return -1}every(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)e(n.value,r),n=t.next(),r++}map(e){return new a(this.startFn,t=>{let{done:r,value:n}=this.nextFn(t);return r?l:{done:!1,value:e(n)}})}filter(e){return new a(this.startFn,t=>{let r;do if(!(r=this.nextFn(t)).done&&e(r.value))return r;while(!r.done);return l})}nonNullable(){return this.filter(e=>null!=e)}reduce(e,t){let r=this.iterator(),n=t,i=r.next();for(;!i.done;)n=void 0===n?i.value:e(n,i.value),i=r.next();return n}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let n=e.next();if(n.done)return r;let i=this.recursiveReduce(e,t,r);return void 0===i?n.value:t(i,n.value)}find(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return r.value;r=t.next()}}findIndex(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;){if(e(n.value))return r;n=t.next(),r++}return -1}includes(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(r.value===e)return!0;r=t.next()}return!1}flatMap(e){return new a(()=>({this:this.startFn()}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}let{done:r,value:n}=this.nextFn(t.this);if(!r){let r=e(n);if(!s(r))return{done:!1,value:r};t.iterator=r[Symbol.iterator]()}}while(t.iterator);return l})}flat(e){if(void 0===e&&(e=1),e<=0)return this;let t=e>1?this.flat(e-1):this;return new a(()=>({this:t.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:r,value:n}=t.nextFn(e.this);if(!r)if(!s(n))return{done:!1,value:n};else e.iterator=n[Symbol.iterator]()}while(e.iterator);return l})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new a(()=>{let t=this.startFn();for(let r=0;r<e&&!this.nextFn(t).done;r++);return t},this.nextFn)}limit(e){return new a(()=>({size:0,state:this.startFn()}),t=>(t.size++,t.size>e)?l:this.nextFn(t.state))}distinct(e){return new a(()=>({set:new Set,internalState:this.startFn()}),t=>{let r;do if(!(r=this.nextFn(t.internalState)).done){let n=e?e(r.value):r.value;if(!t.set.has(n))return t.set.add(n),r}while(!r.done);return l})}exclude(e,t){let r=new Set;for(let n of e){let e=t?t(n):n;r.add(e)}return this.filter(e=>{let n=t?t(e):e;return!r.has(n)})}}function s(e){return!!e&&"function"==typeof e[Symbol.iterator]}let o=new a(()=>void 0,()=>l),l=Object.freeze({done:!0,value:void 0});function u(...e){if(1===e.length){let t=e[0];if(t instanceof a)return t;if(s(t))return new a(()=>t[Symbol.iterator](),e=>e.next());if("number"==typeof t.length)return new a(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:l)}return e.length>1?new a(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){let r=e[t.collIndex++];s(r)?t.iterator=r[Symbol.iterator]():r&&"number"==typeof r.length&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length);return l}):o}class c extends a{constructor(e,t,r){super(()=>({iterators:(null==r?void 0:r.includeRoot)?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){let r=e.iterators[e.iterators.length-1].next();if(!r.done)return e.iterators.push(t(r.value)[Symbol.iterator]()),r;e.iterators.pop()}return l})}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}(i=n||(n={})).sum=function(e){return e.reduce((e,t)=>e+t,0)},i.product=function(e){return e.reduce((e,t)=>e*t,0)},i.min=function(e){return e.reduce((e,t)=>Math.min(e,t))},i.max=function(e){return e.reduce((e,t)=>Math.max(e,t))}},29005:(e,t,r)=>{r.d(t,{d:()=>o});var n,i,a=r(83649),s=r(21468);class o{convert(e,t){let r=t.grammarSource;if((0,a._c)(r)&&(r=(0,s.g4)(r)),(0,a.$g)(r)){let n=r.rule.ref;if(!n)throw Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){var n;switch(e.name.toUpperCase()){case"INT":return i.convertInt(t);case"STRING":return i.convertString(t);case"ID":return i.convertID(t)}switch(null==(n=(0,s.P3)(e))?void 0:n.toLowerCase()){case"number":return i.convertNumber(t);case"boolean":return i.convertBoolean(t);case"bigint":return i.convertBigint(t);case"date":return i.convertDate(t);default:return t}}}(n=i||(i={})).convertString=function(e){let t="";for(let r=1;r<e.length-1;r++){let n=e.charAt(r);"\\"===n?t+=function(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return e}}(e.charAt(++r)):t+=n}return t},n.convertID=function(e){return"^"===e.charAt(0)?e.substring(1):e},n.convertInt=function(e){return parseInt(e)},n.convertBigint=function(e){return BigInt(e)},n.convertDate=function(e){return new Date(e)},n.convertNumber=function(e){return Number(e)},n.convertBoolean=function(e){return"true"===e.toLowerCase()}},31700:(e,t,r)=>{r.d(t,{$:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.AM,l);return t.ServiceRegistry.register(r),{shared:t,Packet:r}}(0,n.K2)(u,"createPacketServices")},31895:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(54348),i=r(67891),a=r(16047);let s=function(e){return e&&e.length?(0,n.A)(e,a.A,i.A):void 0}},34700:(e,t,r)=>{var n;function i(e,t,r,n,i,a,o,l,c){return s([e,t,r,n,i,a,o,l,c].reduce(u,{}))}r.d(t,{WQ:()=>i}),(n||(n={})).merge=(e,t)=>u(u({},e),t);let a=Symbol("isProxy");function s(e,t){let r=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw Error("Cannot set property on injected service container")},get:(n,i)=>i===a||l(n,i,e,t||r),getOwnPropertyDescriptor:(n,i)=>(l(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),has:(t,r)=>r in e,ownKeys:()=>[...Object.getOwnPropertyNames(e)]});return r}let o=Symbol();function l(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===o)throw Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in r){let i=r[t];e[t]=o;try{e[t]="function"==typeof i?i(n):s(i,n)}catch(r){throw e[t]=r instanceof Error?r:void 0,r}return e[t]}}function u(e,t){if(t){for(let[r,n]of Object.entries(t))if(void 0!==n){let t=e[r];null!==t&&null!==n&&"object"==typeof t&&"object"==typeof n?e[r]=u(t,n):e[r]=n}}return e}},35046:(e,t,r)=>{r.d(t,{Q:()=>u});var n=r(18608),i=r(83649),a=r(72325),s=r(21468),o=r(99233),l=r(22351);class u{constructor(){this.diagnostics=[]}buildTokens(e,t){let r=(0,l.Td)((0,s.YV)(e,!1)),n=this.buildTerminalTokens(r),i=this.buildKeywordTokens(r,n,t);return n.forEach(e=>{let t=e.PATTERN;"object"==typeof t&&t&&"test"in t&&(0,o.Yv)(t)?i.unshift(e):i.push(e)}),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(i.rE).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){let t=(0,s.S)(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,i={name:e.name,PATTERN:r};return"function"==typeof r&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=(0,o.Yv)(t)?n.JG.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))||!!(e.source.includes("?<=")||e.source.includes("?<!"))}regexPatternFunction(e){let t=RegExp(e,e.flags+"y");return(e,r)=>(t.lastIndex=r,t.exec(e))}buildKeywordTokens(e,t,r){return e.filter(i.s7).flatMap(e=>(0,a.Uo)(e).filter(i.wb)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,!!(null==r?void 0:r.caseInsensitive)))}buildKeywordToken(e,t,r){let n=this.buildKeywordPattern(e,r),i={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return"function"==typeof n&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?new RegExp((0,o.Ao)(e.value)):e.value}findLongerAlt(e,t){return t.reduce((t,r)=>{let n=null==r?void 0:r.PATTERN;return(null==n?void 0:n.source)&&(0,o.PC)("^"+n.source+"$",e.value)&&t.push(r),t},[])}}},37044:(e,t,r)=>{let n;r.d(t,{t:()=>nV,u:()=>nH});var i,a,s,o,l,u,c,d,h,f,p,m,g,y,T,A,v,R,$,E,k,x,I,S,N,C,w,L,b,O,_,P,M,D,F,U,G,K,B,j,V,H,W,z,Y,X,q,Q,Z,J,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ed,eh,ef,ep,em,eg,ey,eT,eA,ev,eR,e$,eE,ek,ex,eI,eS,eN,eC,ew,eL,eb,eO,e_,eP,eM,eD,eF,eU,eG,eK,eB,ej,eV,eH,eW,ez,eY,eX,eq,eQ,eZ,eJ,e0,e1,e2,e3,e4,e9,e7,e5,e8,e6,te,tt,tr,tn,ti,ta,ts,to,tl,tu,tc,td,th,tf,tp,tm,tg,ty,tT,tA,tv,tR,t$,tE,tk,tx,tI,tS,tN,tC,tw,tL,tb=r(58815),tO=r(21468),t_=r(99233),tP=r(83649),tM=r(18608),tD=r(48233),tF=r(31375);function tU(e,t,r){return`${e.name}_${t}_${r}`}class tG{constructor(e){this.target=e}isEpsilon(){return!1}}class tK extends tG{constructor(e,t){super(e),this.tokenType=t}}class tB extends tG{constructor(e){super(e)}isEpsilon(){return!0}}class tj extends tG{constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}}function tV(e,t,r){let n=(0,tF.A)((0,tD.A)(r.definition,r=>(function e(t,r,n){var i,a,s,o,l,u,c,d,h,f,p,m,g,y,T,A,v,R,$,E,k,x,I,S,N;if(n instanceof tM.BK)return tX(t,r,n.terminalType,n);if(n instanceof tM.wL){let e,o,l,u;return i=t,a=r,e=(s=n).referencedRule,o=i.ruleToStartState.get(e),l=tQ(i,a,s,{type:1}),tZ(l,new tj(o,e,u=tQ(i,a,s,{type:1}))),{left:l,right:u}}if(n instanceof tM.ak){let i,a;return i=tQ(o=t,l=r,u=n,{type:1}),tz(o,i),a=(0,tD.A)(u.definition,t=>e(o,l,t)),tY(o,l,i,u,...a)}if(n instanceof tM.c$){let e,i,a;return e=tQ(c=t,d=r,h=n,{type:1}),tz(c,e),i=tY(c,d,e,h,tV(c,d,h)),f=c,p=d,m=h,tq(a=(g=i).left,g.right),f.decisionMap[tU(p,"Option",m.idx)]=a,g}if(n instanceof tM.Y2){let e,i;return e=tQ(y=t,T=r,A=n,{type:5}),tz(y,e),i=tY(y,T,e,A,tV(y,T,A)),tW(y,T,A,i)}else if(n instanceof tM.Pp){let e,i,a;return e=tQ(v=t,R=r,$=n,{type:5}),tz(v,e),i=tY(v,R,e,$,tV(v,R,$)),a=tX(v,R,$.separator,$),tW(v,R,$,i,a)}else if(n instanceof tM.$P){let e,i;return e=tQ(E=t,k=r,x=n,{type:4}),tz(E,e),i=tY(E,k,e,x,tV(E,k,x)),tH(E,k,x,i)}else{if(!(n instanceof tM.Cy))return tV(t,r,n);let e,i,a;return e=tQ(I=t,S=r,N=n,{type:4}),tz(I,e),i=tY(I,S,e,N,tV(I,S,N)),a=tX(I,S,N.separator,N),tH(I,S,N,i,a)}})(e,t,r)),e=>void 0!==e);return 1===n.length?n[0]:0===n.length?void 0:function(e,t){let r=t.length;for(let a=0;a<r-1;a++){var n,i;let r,s=t[a];1===s.left.transitions.length&&(r=s.left.transitions[0]);let o=r instanceof tj,l=r,u=t[a+1].left;1===s.left.type&&1===s.right.type&&void 0!==r&&(o&&l.followState===s.right||r.target===s.right)?(o?l.followState=u:r.target=u,n=e,i=s.right,n.states.splice(n.states.indexOf(i),1)):tq(s.right,u)}let a=t[0],s=t[r-1];return{left:a.left,right:s.right}}(e,n)}function tH(e,t,r,n,i){let a=n.left,s=n.right,o=tQ(e,t,r,{type:11});tz(e,o);let l=tQ(e,t,r,{type:12});return a.loopback=o,l.loopback=o,e.decisionMap[tU(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,tq(s,o),void 0===i?(tq(o,a),tq(o,l)):(tq(o,l),tq(o,i.left),tq(i.right,a)),{left:a,right:l}}function tW(e,t,r,n,i){let a=n.left,s=n.right,o=tQ(e,t,r,{type:10});tz(e,o);let l=tQ(e,t,r,{type:12}),u=tQ(e,t,r,{type:9});return o.loopback=u,l.loopback=u,tq(o,a),tq(o,l),tq(s,u),void 0!==i?(tq(u,l),tq(u,i.left),tq(i.right,a)):tq(u,o),e.decisionMap[tU(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function tz(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function tY(e,t,r,n,...i){let a=tQ(e,t,n,{type:8,start:r});for(let e of(r.end=a,i))void 0!==e?(tq(r,e.left),tq(e.right,a)):tq(r,a);return e.decisionMap[tU(t,function(e){if(e instanceof tM.ak)return"Alternation";if(e instanceof tM.c$)return"Option";if(e instanceof tM.Y2)return"Repetition";if(e instanceof tM.Pp)return"RepetitionWithSeparator";if(e instanceof tM.$P)return"RepetitionMandatory";else if(e instanceof tM.Cy)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}(n),n.idx)]=r,{left:r,right:a}}function tX(e,t,r,n){let i=tQ(e,t,n,{type:1}),a=tQ(e,t,n,{type:1});return tZ(i,new tK(a,r)),{left:i,right:a}}function tq(e,t){tZ(e,new tB(t))}function tQ(e,t,r,n){let i=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(i),i}function tZ(e,t){0===e.transitions.length&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}let tJ={};class t0{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=t1(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return(0,tD.A)(this.configs,e=>e.alt)}get key(){let e="";for(let t in this.map)e+=t+":";return e}}function t1(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join("_")}`}var t2=r(31895),t3=r(79884),t4=r(3585),t9=r(8414),t7=r(79753),t5=r(30097),t8=r(23098),t6=r(92901);class re{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="",t=this.predicates.length;for(let r=0;r<t;r++)e+=!0===this.predicates[r]?"1":"0";return e}}let rt=new re;class rr extends tM.T6{constructor(e){var t;super(),this.logging=null!=(t=null==e?void 0:e.logging)?t:e=>console.log(e)}initialize(e){this.atn=function(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};!function(e,t){let r=t.length;for(let n=0;n<r;n++){let r=t[n],i=tQ(e,r,void 0,{type:2}),a=tQ(e,r,void 0,{type:7});i.stop=a,e.ruleToStartState.set(r,i),e.ruleToStopState.set(r,a)}}(t,e);let r=e.length;for(let n=0;n<r;n++){let r=e[n],i=tV(t,r,r);void 0!==i&&function(e,t,r){tq(e.ruleToStartState.get(t),r.left);let n=e.ruleToStopState.get(t);tq(r.right,n)}(t,r,i)}return t}(e.rules),this.dfas=function(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=function(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return void 0!==a||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}(e.decisionStates[n],n);return r}(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=tU(r,"Alternation",t),l=this.atn.decisionMap[o].decision,u=(0,tD.A)((0,tM.jk)({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),e=>(0,tD.A)(e,e=>e[0]));if(rn(u,!1)&&!i){let e=(0,t6.A)(u,(e,t,r)=>((0,t5.A)(t,t=>{t&&(e[t.tokenTypeIdx]=r,(0,t5.A)(t.categoryMatches,t=>{e[t]=r}))}),e),{});return n?function(t){var r;let n=e[this.LA(1).tokenTypeIdx];if(void 0!==t&&void 0!==n){let e=null==(r=t[n])?void 0:r.GATE;if(void 0!==e&&!1===e.call(this))return}return n}:function(){return e[this.LA(1).tokenTypeIdx]}}return n?function(e){let t=new re,r=void 0===e?0:e.length;for(let n=0;n<r;n++){let r=null==e?void 0:e[n].GATE;t.set(n,void 0===r||r.call(this))}let n=ri.call(this,a,l,t,s);return"number"==typeof n?n:void 0}:function(){let e=ri.call(this,a,l,rt,s);return"number"==typeof e?e:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=tU(r,n,t),l=this.atn.decisionMap[o].decision,u=(0,tD.A)((0,tM.jk)({maxLookahead:1,occurrence:t,prodType:n,rule:r}),e=>(0,tD.A)(e,e=>e[0]));if(rn(u)&&u[0][0]&&!i){let e=u[0],t=(0,t7.A)(e);if(1===t.length&&(0,t8.A)(t[0].categoryMatches)){let e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{let e=(0,t6.A)(t,(e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,(0,t5.A)(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){return!0===e[this.LA(1).tokenTypeIdx]}}}return function(){let e=ri.call(this,a,l,rt,s);return"object"!=typeof e&&0===e}}}function rn(e,t=!0){let r=new Set;for(let n of e){let e=new Set;for(let i of n){if(void 0===i)if(!t)return!1;else break;for(let t of[i.tokenTypeIdx].concat(i.categoryMatches))if(r.has(t)){if(!e.has(t))return!1}else r.add(t),e.add(t)}}return!0}function ri(e,t,r,n){let i=e[t](r),a=i.start;if(void 0===a){let e=function(e){let t=new t0,r=e.transitions.length;for(let n=0;n<r;n++)rd({state:e.transitions[n].target,alt:n,stack:[]},t);return t}(i.atnStartState);a=rc(i,rl(e)),i.start=a}return ra.apply(this,[i,a,r,n])}function ra(e,t,r,n){let i=t,a=1,s=[],o=this.LA(a++);for(;;){var l,u;let t=(l=i,u=o,l.edges[u.tokenTypeIdx]);if(void 0===t&&(t=rs.apply(this,[e,i,o,a,r,n])),t===tJ)return function(e,t,r){var n,i;return{actualToken:r,possibleTokenTypes:(n=(0,t3.A)(t.configs.elements,e=>e.state.transitions).filter(e=>e instanceof tK).map(e=>e.tokenType),i=e=>e.tokenTypeIdx,n&&n.length?(0,t9.A)(n,(0,t4.A)(i,2)):[]),tokenPath:e}}(s,i,o);if(!0===t.isAcceptState)return t.prediction;i=t,s.push(o),o=this.LA(a++)}}function rs(e,t,r,n,i,a){let s=function(e,t,r){let n,i=new t0,a=[];for(let n of e.elements){if(!1===r.is(n.alt))continue;if(7===n.state.type){a.push(n);continue}let e=n.state.transitions.length;for(let r=0;r<e;r++){let e=function(e,t){if(e instanceof tK&&(0,tM.G)(t,e.tokenType))return e.target}(n.state.transitions[r],t);void 0!==e&&i.add({state:e,alt:n.alt,stack:n.stack})}}if(0===a.length&&1===i.size&&(n=i),void 0===n)for(let e of(n=new t0,i.elements))rd(e,n);if(a.length>0&&!function(e){for(let t of e.elements)if(7===t.state.type)return!0;return!1}(n))for(let e of a)n.add(e);return n}(t.configs,r,i);if(0===s.size)return ru(e,t,r,tJ),tJ;let o=rl(s),l=function(e,t){let r;for(let n of e.elements)if(!0===t.is(n.alt)){if(void 0===r)r=n.alt;else if(r!==n.alt)return}return r}(s,i);if(void 0!==l)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(function(e){if(function(e){for(let t of e.elements)if(7!==t.state.type)return!1;return!0}(e))return!0;let t=function(e){let t=new Map;for(let r of e){let e=t1(r,!1),n=t.get(e);void 0===n&&(n={},t.set(e,n)),n[r.alt]=!0}return t}(e.elements);return function(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}(t)&&!function(e){for(let t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}(t)}(s)){let t=(0,t2.A)(s.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,ro.apply(this,[e,n,s.alts,a])}return ru(e,t,r,o)}function ro(e,t,r,n){var i;let a,s,o,l=[];for(let e=1;e<=t;e++)l.push(this.LA(e).tokenType);let u=e.atnStartState;n((i={topLevelRule:u.rule,ambiguityIndices:r,production:u.production,prefixPath:l},a=(0,tD.A)(i.prefixPath,e=>(0,tM.Sk)(e)).join(", "),s=0===i.production.idx?"":i.production.idx,(o=`Ambiguous Alternatives Detected: <${i.ambiguityIndices.join(", ")}> in <${function(e){if(e instanceof tM.wL)return"SUBRULE";if(e instanceof tM.c$)return"OPTION";if(e instanceof tM.ak)return"OR";if(e instanceof tM.$P)return"AT_LEAST_ONE";if(e instanceof tM.Cy)return"AT_LEAST_ONE_SEP";else if(e instanceof tM.Pp)return"MANY_SEP";else if(e instanceof tM.Y2)return"MANY";else if(e instanceof tM.BK)return"CONSUME";else throw Error("non exhaustive match")}(i.production)}${s}> inside <${i.topLevelRule.name}> Rule,
|
|
55
|
+
${e.join("\n-------------------------------\n")}`)})}constructor(e,t){if(this.definitionErrors=[],this.selfAnalysisDone=!1,this.initErrorHandler(t),this.initLexerAdapter(),this.initLooksAhead(t),this.initRecognizerEngine(e,t),this.initRecoverable(t),this.initTreeBuilder(t),this.initContentAssist(),this.initGastRecorder(t),this.initPerformanceTracer(t),(0,g.A)(t,"ignoredIssues"))throw Error("The <ignoredIssues> IParserConfig property has been deprecated.\n Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n For further details.");this.skipValidations=(0,g.A)(t,"skipValidations")?t.skipValidations:r0.skipValidations}}r3.DEFER_DEFINITION_ERRORS_HANDLING=!1,[rI,rC,rM,rD,rG,rF,rK,rB,rz,rZ].forEach(e=>{let t=e.prototype;Object.getOwnPropertyNames(t).forEach(r=>{if("constructor"===r)return;let n=Object.getOwnPropertyDescriptor(t,r);n&&(n.get||n.set)?Object.defineProperty(r3.prototype,r,n):r3.prototype[r]=e.prototype[r]})});class r4 extends r3{constructor(e,t=r0){const r=(0,y.A)(t);r.outputCst=!1,super(e,r)}}},21468:(e,t,r)=>{r.d(t,{Bd:()=>h,P3:()=>v,PV:()=>A,Rp:()=>g,S:()=>R,SS:()=>m,U5:()=>y,Uz:()=>function e(t){var r,n,a;if(i.s7(t))return T(t)?t.name:null!=(r=A(t))?r:t.name;if(i.S2(t)||i.Xj(t)||i.fG(t))return t.name;if(i.ve(t)){let r=(n=t).inferredType?n.inferredType.name:(null==(a=n.type)?void 0:a.ref)?e(n.type.ref):void 0;if(r)return r}else if(i.SP(t))return t.name;throw Error("Cannot get name of Unknown Type")},Xq:()=>T,YV:()=>u,eb:()=>d,g4:()=>c,qO:()=>f});var n=r(37675),i=r(83649),a=r(59357),s=r(72325),o=r(58815),l=r(99233);function u(e,t){let r=new Set,n=e.rules.find(e=>i.s7(e)&&e.entry);if(!n)return new Set(e.rules);for(let a of[n].concat(e.rules.filter(e=>i.rE(e)&&e.hidden)))!function e(t,r,n){r.add(t.name),(0,s.Uo)(t).forEach(t=>{if(i.$g(t)||n&&i.lF(t)){let i=t.rule.ref;i&&!r.has(i.name)&&e(i,r,n)}})}(a,r,t);let a=new Set;for(let t of e.rules)(r.has(t.name)||i.rE(t)&&t.hidden)&&a.add(t);return a}function c(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=y(e.type.ref);return null==t?void 0:t.terminal}}function d(e){return e.hidden&&!(0,l.Yv)(R(e))}function h(e,t){return e&&t?p(e,t,e.astNode,!0):[]}function f(e,t,r){if(!e||!t)return;let n=p(e,t,e.astNode,!0);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function p(e,t,r,n){if(!n){let r=(0,s.XG)(e.grammarSource,i.wh);if(r&&r.feature===t)return[e]}return(0,a.mD)(e)&&e.astNode===r?e.content.flatMap(e=>p(e,t,r,!1)):[]}function m(e,t,r){if(!e)return;let n=function(e,t,r){let n;if(e.astNode!==r)return[];if(i.wb(e.grammarSource)&&e.grammarSource.value===t)return[e];let a=(0,o.NS)(e).iterator(),s=[];do if(!(n=a.next()).done){let e=n.value;e.astNode===r?i.wb(e.grammarSource)&&e.grammarSource.value===t&&s.push(e):a.prune()}while(!n.done);return s}(e,t,null==e?void 0:e.astNode);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function g(e){var t;let r=e.astNode;for(;r===(null==(t=e.container)?void 0:t.astNode);){let t=(0,s.XG)(e.grammarSource,i.wh);if(t)return t;e=e.container}}function y(e){let t=e;return i.SP(t)&&(i.ve(t.$container)?t=t.$container.$container:i.s7(t.$container)?t=t.$container:(0,n.d)(t.$container)),function e(t,r,n){var a;function o(r,a){let o;return(0,s.XG)(r,i.wh)||(o=e(a,a,n)),n.set(t,o),o}if(n.has(t))return n.get(t);for(let e of(n.set(t,void 0),(0,s.Uo)(r)))if(i.wh(e)&&"name"===e.feature.toLowerCase())return n.set(t,e),e;else if(i.$g(e)&&i.s7(e.rule.ref))return o(e,e.rule.ref);else if(i.D8(e)&&(null==(a=e.typeRef)?void 0:a.ref))return o(e,e.typeRef.ref)}(e,t,new Map)}function T(e){return function e(t,r){if(r.has(t))return!0;for(let n of(r.add(t),(0,s.Uo)(t)))if(i.$g(n)){if(!n.rule.ref||i.s7(n.rule.ref)&&!e(n.rule.ref,r))return!1}else if(i.wh(n))return!1;else if(i.ve(n))return!1;return!!t.definition}(e,new Set)}function A(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t){if(i.s7(t))return t.name;else if(i.S2(t)||i.Xj(t))return t.name}}}function v(e){var t,r,n;return i.rE(e)?null!=(r=null==(t=e.type)?void 0:t.name)?r:"string":null!=(n=A(e))?n:e.name}function R(e){let t={s:!1,i:!1,u:!1};return new RegExp(function e(t,r){var n,a,s,o,l;if(i.Fy(t)){return k((n=t).elements.map(t=>e(t)).join("|"),{cardinality:n.cardinality,lookahead:n.lookahead})}if(i.O4(t)){return k((a=t).elements.map(t=>e(t)).join(""),{cardinality:a.cardinality,lookahead:a.lookahead})}if(i.Bg(t)){return(s=t).right?k(`[${E(s.left)}-${E(s.right)}]`,{cardinality:s.cardinality,lookahead:s.lookahead,wrap:!1}):k(E(s.left),{cardinality:s.cardinality,lookahead:s.lookahead,wrap:!1})}if(i.lF(t)){let r=t.rule.ref;if(!r)throw Error("Missing rule reference.");return k(e(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}if(i.GL(t)){return o=t,k(`(?!${e(o.terminal)})${$}*?`,{cardinality:o.cardinality,lookahead:o.lookahead})}else if(i.Mz(t)){return l=t,k(`${$}*?${e(l.terminal)}`,{cardinality:l.cardinality,lookahead:l.lookahead})}else if(i.vd(t)){let e=t.regex.lastIndexOf("/"),n=t.regex.substring(1,e),i=t.regex.substring(e+1);return r&&(r.i=i.includes("i"),r.s=i.includes("s"),r.u=i.includes("u")),k(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else if(i.z2(t))return k($,{cardinality:t.cardinality,lookahead:t.lookahead});else throw Error(`Invalid terminal element: ${null==t?void 0:t.$type}`)}(e.definition,t),Object.entries(t).filter(([,e])=>e).map(([e])=>e).join(""))}let $=/[\s\S]/.source;function E(e){return(0,l.Nt)(e.value)}function k(e,t){var r;return((!1!==t.wrap||t.lookahead)&&(e=`(${null!=(r=t.lookahead)?r:""}${e})`),t.cardinality)?`${e}${t.cardinality}`:e}},22351:(e,t,r)=>{var n,i;r.d(t,{B5:()=>o,Rf:()=>l,Td:()=>u,Vj:()=>c,fq:()=>a,iD:()=>n});class a{constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),t=0,r=e.next();for(;!r.done;)t++,r=e.next();return t}toArray(){let e,t=[],r=this.iterator();do void 0!==(e=r.next()).value&&t.push(e.value);while(!e.done);return t}toSet(){return new Set(this)}toMap(e,t){return new Map(this.map(r=>[e?e(r):r,t?t(r):r]))}toString(){return this.join()}concat(e){return new a(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),e=>{let t;if(!e.firstDone){do if(!(t=this.nextFn(e.first)).done)return t;while(!t.done);e.firstDone=!0}do if(!(t=e.iterator.next()).done)return t;while(!t.done);return l})}join(e=","){let t,r=this.iterator(),n="",i=!1;do{var a;(t=r.next()).done||(i&&(n+=e),n+="string"==typeof(a=t.value)?a:void 0===a?"undefined":"function"==typeof a.toString?a.toString():Object.prototype.toString.call(a)),i=!0}while(!t.done);return n}indexOf(e,t=0){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(n>=t&&i.value===e)return n;i=r.next(),n++}return -1}every(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)e(n.value,r),n=t.next(),r++}map(e){return new a(this.startFn,t=>{let{done:r,value:n}=this.nextFn(t);return r?l:{done:!1,value:e(n)}})}filter(e){return new a(this.startFn,t=>{let r;do if(!(r=this.nextFn(t)).done&&e(r.value))return r;while(!r.done);return l})}nonNullable(){return this.filter(e=>null!=e)}reduce(e,t){let r=this.iterator(),n=t,i=r.next();for(;!i.done;)n=void 0===n?i.value:e(n,i.value),i=r.next();return n}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let n=e.next();if(n.done)return r;let i=this.recursiveReduce(e,t,r);return void 0===i?n.value:t(i,n.value)}find(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return r.value;r=t.next()}}findIndex(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;){if(e(n.value))return r;n=t.next(),r++}return -1}includes(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(r.value===e)return!0;r=t.next()}return!1}flatMap(e){return new a(()=>({this:this.startFn()}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}let{done:r,value:n}=this.nextFn(t.this);if(!r){let r=e(n);if(!s(r))return{done:!1,value:r};t.iterator=r[Symbol.iterator]()}}while(t.iterator);return l})}flat(e){if(void 0===e&&(e=1),e<=0)return this;let t=e>1?this.flat(e-1):this;return new a(()=>({this:t.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:r,value:n}=t.nextFn(e.this);if(!r)if(!s(n))return{done:!1,value:n};else e.iterator=n[Symbol.iterator]()}while(e.iterator);return l})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new a(()=>{let t=this.startFn();for(let r=0;r<e&&!this.nextFn(t).done;r++);return t},this.nextFn)}limit(e){return new a(()=>({size:0,state:this.startFn()}),t=>(t.size++,t.size>e)?l:this.nextFn(t.state))}distinct(e){return new a(()=>({set:new Set,internalState:this.startFn()}),t=>{let r;do if(!(r=this.nextFn(t.internalState)).done){let n=e?e(r.value):r.value;if(!t.set.has(n))return t.set.add(n),r}while(!r.done);return l})}exclude(e,t){let r=new Set;for(let n of e){let e=t?t(n):n;r.add(e)}return this.filter(e=>{let n=t?t(e):e;return!r.has(n)})}}function s(e){return!!e&&"function"==typeof e[Symbol.iterator]}let o=new a(()=>void 0,()=>l),l=Object.freeze({done:!0,value:void 0});function u(...e){if(1===e.length){let t=e[0];if(t instanceof a)return t;if(s(t))return new a(()=>t[Symbol.iterator](),e=>e.next());if("number"==typeof t.length)return new a(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:l)}return e.length>1?new a(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){let r=e[t.collIndex++];s(r)?t.iterator=r[Symbol.iterator]():r&&"number"==typeof r.length&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length);return l}):o}class c extends a{constructor(e,t,r){super(()=>({iterators:(null==r?void 0:r.includeRoot)?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){let r=e.iterators[e.iterators.length-1].next();if(!r.done)return e.iterators.push(t(r.value)[Symbol.iterator]()),r;e.iterators.pop()}return l})}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}(i=n||(n={})).sum=function(e){return e.reduce((e,t)=>e+t,0)},i.product=function(e){return e.reduce((e,t)=>e*t,0)},i.min=function(e){return e.reduce((e,t)=>Math.min(e,t))},i.max=function(e){return e.reduce((e,t)=>Math.max(e,t))}},29005:(e,t,r)=>{r.d(t,{d:()=>o});var n,i,a=r(83649),s=r(21468);class o{convert(e,t){let r=t.grammarSource;if((0,a._c)(r)&&(r=(0,s.g4)(r)),(0,a.$g)(r)){let n=r.rule.ref;if(!n)throw Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){var n;switch(e.name.toUpperCase()){case"INT":return i.convertInt(t);case"STRING":return i.convertString(t);case"ID":return i.convertID(t)}switch(null==(n=(0,s.P3)(e))?void 0:n.toLowerCase()){case"number":return i.convertNumber(t);case"boolean":return i.convertBoolean(t);case"bigint":return i.convertBigint(t);case"date":return i.convertDate(t);default:return t}}}(n=i||(i={})).convertString=function(e){let t="";for(let r=1;r<e.length-1;r++){let n=e.charAt(r);"\\"===n?t+=function(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return e}}(e.charAt(++r)):t+=n}return t},n.convertID=function(e){return"^"===e.charAt(0)?e.substring(1):e},n.convertInt=function(e){return parseInt(e)},n.convertBigint=function(e){return BigInt(e)},n.convertDate=function(e){return new Date(e)},n.convertNumber=function(e){return Number(e)},n.convertBoolean=function(e){return"true"===e.toLowerCase()}},31700:(e,t,r)=>{r.d(t,{$:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.AM,l);return t.ServiceRegistry.register(r),{shared:t,Packet:r}}(0,n.K2)(u,"createPacketServices")},31895:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(54348),i=r(67891),a=r(16047);let s=function(e){return e&&e.length?(0,n.A)(e,a.A,i.A):void 0}},34700:(e,t,r)=>{var n;function i(e,t,r,n,i,a,o,l,c){return s([e,t,r,n,i,a,o,l,c].reduce(u,{}))}r.d(t,{WQ:()=>i}),(n||(n={})).merge=(e,t)=>u(u({},e),t);let a=Symbol("isProxy");function s(e,t){let r=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw Error("Cannot set property on injected service container")},get:(n,i)=>i===a||l(n,i,e,t||r),getOwnPropertyDescriptor:(n,i)=>(l(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),has:(t,r)=>r in e,ownKeys:()=>[...Object.getOwnPropertyNames(e)]});return r}let o=Symbol();function l(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===o)throw Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in r){let i=r[t];e[t]=o;try{e[t]="function"==typeof i?i(n):s(i,n)}catch(r){throw e[t]=r instanceof Error?r:void 0,r}return e[t]}}function u(e,t){if(t){for(let[r,n]of Object.entries(t))if(void 0!==n){let t=e[r];null!==t&&null!==n&&"object"==typeof t&&"object"==typeof n?e[r]=u(t,n):e[r]=n}}return e}},35046:(e,t,r)=>{r.d(t,{Q:()=>u});var n=r(18608),i=r(83649),a=r(72325),s=r(21468),o=r(99233),l=r(22351);class u{constructor(){this.diagnostics=[]}buildTokens(e,t){let r=(0,l.Td)((0,s.YV)(e,!1)),n=this.buildTerminalTokens(r),i=this.buildKeywordTokens(r,n,t);return n.forEach(e=>{let t=e.PATTERN;"object"==typeof t&&t&&"test"in t&&(0,o.Yv)(t)?i.unshift(e):i.push(e)}),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(i.rE).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){let t=(0,s.S)(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,i={name:e.name,PATTERN:r};return"function"==typeof r&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=(0,o.Yv)(t)?n.JG.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))||!!(e.source.includes("?<=")||e.source.includes("?<!"))}regexPatternFunction(e){let t=RegExp(e,e.flags+"y");return(e,r)=>(t.lastIndex=r,t.exec(e))}buildKeywordTokens(e,t,r){return e.filter(i.s7).flatMap(e=>(0,a.Uo)(e).filter(i.wb)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,!!(null==r?void 0:r.caseInsensitive)))}buildKeywordToken(e,t,r){let n=this.buildKeywordPattern(e,r),i={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return"function"==typeof n&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?new RegExp((0,o.Ao)(e.value)):e.value}findLongerAlt(e,t){return t.reduce((t,r)=>{let n=null==r?void 0:r.PATTERN;return(null==n?void 0:n.source)&&(0,o.PC)("^"+n.source+"$",e.value)&&t.push(r),t},[])}}},37044:(e,t,r)=>{let n;r.d(t,{t:()=>nV,u:()=>nH});var i,a,s,o,l,u,c,d,h,f,p,m,g,y,T,A,v,R,$,E,k,x,I,S,N,C,w,L,b,O,_,P,M,D,F,U,G,K,B,j,V,H,W,z,Y,X,q,Q,Z,J,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ed,eh,ef,ep,em,eg,ey,eT,eA,ev,eR,e$,eE,ek,ex,eI,eS,eN,eC,ew,eL,eb,eO,e_,eP,eM,eD,eF,eU,eG,eK,eB,ej,eV,eH,eW,ez,eY,eX,eq,eQ,eZ,eJ,e0,e1,e2,e3,e4,e9,e7,e5,e8,e6,te,tt,tr,tn,ti,ta,ts,to,tl,tu,tc,td,th,tf,tp,tm,tg,ty,tT,tA,tv,tR,t$,tE,tk,tx,tI,tS,tN,tC,tw,tL,tb=r(58815),tO=r(21468),t_=r(99233),tP=r(83649),tM=r(18608),tD=r(48233),tF=r(31375);function tU(e,t,r){return`${e.name}_${t}_${r}`}class tG{constructor(e){this.target=e}isEpsilon(){return!1}}class tK extends tG{constructor(e,t){super(e),this.tokenType=t}}class tB extends tG{constructor(e){super(e)}isEpsilon(){return!0}}class tj extends tG{constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}}function tV(e,t,r){let n=(0,tF.A)((0,tD.A)(r.definition,r=>(function e(t,r,n){var i,a,s,o,l,u,c,d,h,f,p,m,g,y,T,A,v,R,$,E,k,x,I,S,N;if(n instanceof tM.BK)return tX(t,r,n.terminalType,n);if(n instanceof tM.wL){let e,o,l,u;return i=t,a=r,e=(s=n).referencedRule,o=i.ruleToStartState.get(e),l=tQ(i,a,s,{type:1}),tZ(l,new tj(o,e,u=tQ(i,a,s,{type:1}))),{left:l,right:u}}if(n instanceof tM.ak){let i,a;return i=tQ(o=t,l=r,u=n,{type:1}),tz(o,i),a=(0,tD.A)(u.definition,t=>e(o,l,t)),tY(o,l,i,u,...a)}if(n instanceof tM.c$){let e,i,a;return e=tQ(c=t,d=r,h=n,{type:1}),tz(c,e),i=tY(c,d,e,h,tV(c,d,h)),f=c,p=d,m=h,tq(a=(g=i).left,g.right),f.decisionMap[tU(p,"Option",m.idx)]=a,g}if(n instanceof tM.Y2){let e,i;return e=tQ(y=t,T=r,A=n,{type:5}),tz(y,e),i=tY(y,T,e,A,tV(y,T,A)),tW(y,T,A,i)}else if(n instanceof tM.Pp){let e,i,a;return e=tQ(v=t,R=r,$=n,{type:5}),tz(v,e),i=tY(v,R,e,$,tV(v,R,$)),a=tX(v,R,$.separator,$),tW(v,R,$,i,a)}else if(n instanceof tM.$P){let e,i;return e=tQ(E=t,k=r,x=n,{type:4}),tz(E,e),i=tY(E,k,e,x,tV(E,k,x)),tH(E,k,x,i)}else{if(!(n instanceof tM.Cy))return tV(t,r,n);let e,i,a;return e=tQ(I=t,S=r,N=n,{type:4}),tz(I,e),i=tY(I,S,e,N,tV(I,S,N)),a=tX(I,S,N.separator,N),tH(I,S,N,i,a)}})(e,t,r)),e=>void 0!==e);return 1===n.length?n[0]:0===n.length?void 0:function(e,t){let r=t.length;for(let a=0;a<r-1;a++){var n,i;let r,s=t[a];1===s.left.transitions.length&&(r=s.left.transitions[0]);let o=r instanceof tj,l=r,u=t[a+1].left;1===s.left.type&&1===s.right.type&&void 0!==r&&(o&&l.followState===s.right||r.target===s.right)?(o?l.followState=u:r.target=u,n=e,i=s.right,n.states.splice(n.states.indexOf(i),1)):tq(s.right,u)}let a=t[0],s=t[r-1];return{left:a.left,right:s.right}}(e,n)}function tH(e,t,r,n,i){let a=n.left,s=n.right,o=tQ(e,t,r,{type:11});tz(e,o);let l=tQ(e,t,r,{type:12});return a.loopback=o,l.loopback=o,e.decisionMap[tU(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,tq(s,o),void 0===i?(tq(o,a),tq(o,l)):(tq(o,l),tq(o,i.left),tq(i.right,a)),{left:a,right:l}}function tW(e,t,r,n,i){let a=n.left,s=n.right,o=tQ(e,t,r,{type:10});tz(e,o);let l=tQ(e,t,r,{type:12}),u=tQ(e,t,r,{type:9});return o.loopback=u,l.loopback=u,tq(o,a),tq(o,l),tq(s,u),void 0!==i?(tq(u,l),tq(u,i.left),tq(i.right,a)):tq(u,o),e.decisionMap[tU(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function tz(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function tY(e,t,r,n,...i){let a=tQ(e,t,n,{type:8,start:r});for(let e of(r.end=a,i))void 0!==e?(tq(r,e.left),tq(e.right,a)):tq(r,a);return e.decisionMap[tU(t,function(e){if(e instanceof tM.ak)return"Alternation";if(e instanceof tM.c$)return"Option";if(e instanceof tM.Y2)return"Repetition";if(e instanceof tM.Pp)return"RepetitionWithSeparator";if(e instanceof tM.$P)return"RepetitionMandatory";else if(e instanceof tM.Cy)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}(n),n.idx)]=r,{left:r,right:a}}function tX(e,t,r,n){let i=tQ(e,t,n,{type:1}),a=tQ(e,t,n,{type:1});return tZ(i,new tK(a,r)),{left:i,right:a}}function tq(e,t){tZ(e,new tB(t))}function tQ(e,t,r,n){let i=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(i),i}function tZ(e,t){0===e.transitions.length&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}let tJ={};class t0{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=t1(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return(0,tD.A)(this.configs,e=>e.alt)}get key(){let e="";for(let t in this.map)e+=t+":";return e}}function t1(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join("_")}`}var t2=r(31895),t3=r(79884),t4=r(3585),t9=r(8414),t7=r(79753),t5=r(30097),t8=r(23098),t6=r(92901);class re{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="",t=this.predicates.length;for(let r=0;r<t;r++)e+=!0===this.predicates[r]?"1":"0";return e}}let rt=new re;class rr extends tM.T6{constructor(e){var t;super(),this.logging=null!=(t=null==e?void 0:e.logging)?t:e=>console.log(e)}initialize(e){this.atn=function(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};!function(e,t){let r=t.length;for(let n=0;n<r;n++){let r=t[n],i=tQ(e,r,void 0,{type:2}),a=tQ(e,r,void 0,{type:7});i.stop=a,e.ruleToStartState.set(r,i),e.ruleToStopState.set(r,a)}}(t,e);let r=e.length;for(let n=0;n<r;n++){let r=e[n],i=tV(t,r,r);void 0!==i&&function(e,t,r){tq(e.ruleToStartState.get(t),r.left);let n=e.ruleToStopState.get(t);tq(r.right,n)}(t,r,i)}return t}(e.rules),this.dfas=function(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=function(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return void 0!==a||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}(e.decisionStates[n],n);return r}(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=tU(r,"Alternation",t),l=this.atn.decisionMap[o].decision,u=(0,tD.A)((0,tM.jk)({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),e=>(0,tD.A)(e,e=>e[0]));if(rn(u,!1)&&!i){let e=(0,t6.A)(u,(e,t,r)=>((0,t5.A)(t,t=>{t&&(e[t.tokenTypeIdx]=r,(0,t5.A)(t.categoryMatches,t=>{e[t]=r}))}),e),{});return n?function(t){var r;let n=e[this.LA(1).tokenTypeIdx];if(void 0!==t&&void 0!==n){let e=null==(r=t[n])?void 0:r.GATE;if(void 0!==e&&!1===e.call(this))return}return n}:function(){return e[this.LA(1).tokenTypeIdx]}}return n?function(e){let t=new re,r=void 0===e?0:e.length;for(let n=0;n<r;n++){let r=null==e?void 0:e[n].GATE;t.set(n,void 0===r||r.call(this))}let n=ri.call(this,a,l,t,s);return"number"==typeof n?n:void 0}:function(){let e=ri.call(this,a,l,rt,s);return"number"==typeof e?e:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=tU(r,n,t),l=this.atn.decisionMap[o].decision,u=(0,tD.A)((0,tM.jk)({maxLookahead:1,occurrence:t,prodType:n,rule:r}),e=>(0,tD.A)(e,e=>e[0]));if(rn(u)&&u[0][0]&&!i){let e=u[0],t=(0,t7.A)(e);if(1===t.length&&(0,t8.A)(t[0].categoryMatches)){let e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{let e=(0,t6.A)(t,(e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,(0,t5.A)(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){return!0===e[this.LA(1).tokenTypeIdx]}}}return function(){let e=ri.call(this,a,l,rt,s);return"object"!=typeof e&&0===e}}}function rn(e,t=!0){let r=new Set;for(let n of e){let e=new Set;for(let i of n){if(void 0===i)if(!t)return!1;else break;for(let t of[i.tokenTypeIdx].concat(i.categoryMatches))if(r.has(t)){if(!e.has(t))return!1}else r.add(t),e.add(t)}}return!0}function ri(e,t,r,n){let i=e[t](r),a=i.start;if(void 0===a){let e=function(e){let t=new t0,r=e.transitions.length;for(let n=0;n<r;n++)rd({state:e.transitions[n].target,alt:n,stack:[]},t);return t}(i.atnStartState);a=rc(i,rl(e)),i.start=a}return ra.apply(this,[i,a,r,n])}function ra(e,t,r,n){let i=t,a=1,s=[],o=this.LA(a++);for(;;){var l,u;let t=(l=i,u=o,l.edges[u.tokenTypeIdx]);if(void 0===t&&(t=rs.apply(this,[e,i,o,a,r,n])),t===tJ)return function(e,t,r){var n,i;return{actualToken:r,possibleTokenTypes:(n=(0,t3.A)(t.configs.elements,e=>e.state.transitions).filter(e=>e instanceof tK).map(e=>e.tokenType),i=e=>e.tokenTypeIdx,n&&n.length?(0,t9.A)(n,(0,t4.A)(i,2)):[]),tokenPath:e}}(s,i,o);if(!0===t.isAcceptState)return t.prediction;i=t,s.push(o),o=this.LA(a++)}}function rs(e,t,r,n,i,a){let s=function(e,t,r){let n,i=new t0,a=[];for(let n of e.elements){if(!1===r.is(n.alt))continue;if(7===n.state.type){a.push(n);continue}let e=n.state.transitions.length;for(let r=0;r<e;r++){let e=function(e,t){if(e instanceof tK&&(0,tM.G)(t,e.tokenType))return e.target}(n.state.transitions[r],t);void 0!==e&&i.add({state:e,alt:n.alt,stack:n.stack})}}if(0===a.length&&1===i.size&&(n=i),void 0===n)for(let e of(n=new t0,i.elements))rd(e,n);if(a.length>0&&!function(e){for(let t of e.elements)if(7===t.state.type)return!0;return!1}(n))for(let e of a)n.add(e);return n}(t.configs,r,i);if(0===s.size)return ru(e,t,r,tJ),tJ;let o=rl(s),l=function(e,t){let r;for(let n of e.elements)if(!0===t.is(n.alt)){if(void 0===r)r=n.alt;else if(r!==n.alt)return}return r}(s,i);if(void 0!==l)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(function(e){if(function(e){for(let t of e.elements)if(7!==t.state.type)return!1;return!0}(e))return!0;let t=function(e){let t=new Map;for(let r of e){let e=t1(r,!1),n=t.get(e);void 0===n&&(n={},t.set(e,n)),n[r.alt]=!0}return t}(e.elements);return function(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}(t)&&!function(e){for(let t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}(t)}(s)){let t=(0,t2.A)(s.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,ro.apply(this,[e,n,s.alts,a])}return ru(e,t,r,o)}function ro(e,t,r,n){var i;let a,s,o,l=[];for(let e=1;e<=t;e++)l.push(this.LA(e).tokenType);let u=e.atnStartState;n((i={topLevelRule:u.rule,ambiguityIndices:r,production:u.production,prefixPath:l},a=(0,tD.A)(i.prefixPath,e=>(0,tM.Sk)(e)).join(", "),s=0===i.production.idx?"":i.production.idx,(o=`Ambiguous Alternatives Detected: <${i.ambiguityIndices.join(", ")}> in <${function(e){if(e instanceof tM.wL)return"SUBRULE";if(e instanceof tM.c$)return"OPTION";if(e instanceof tM.ak)return"OR";if(e instanceof tM.$P)return"AT_LEAST_ONE";if(e instanceof tM.Cy)return"AT_LEAST_ONE_SEP";else if(e instanceof tM.Pp)return"MANY_SEP";else if(e instanceof tM.Y2)return"MANY";else if(e instanceof tM.BK)return"CONSUME";else throw Error("non exhaustive match")}(i.production)}${s}> inside <${i.topLevelRule.name}> Rule,
|
|
56
56
|
<${a}> may appears as a prefix path in all these alternatives.
|
|
57
57
|
`)+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
58
|
-
`+"For Further details."))}function rl(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function ru(e,t,r,n){return n=rc(e,n),t.edges[r.tokenTypeIdx]=n,n}function rc(e,t){if(t===tJ)return t;let r=t.configs.key,n=e.states[r];return void 0!==n?n:(t.configs.finalize(),e.states[r]=t,t)}function rd(e,t){let r=e.state;if(7===r.type){if(e.stack.length>0){let r=[...e.stack];rd({state:r.pop(),alt:e.alt,stack:r},t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i<n;i++){let n=function(e,t){if(t instanceof tB)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof tj){let r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}(e,r.transitions[i]);void 0!==n&&rd(n,t)}}var rh=r(72325);(ec||(ec={})).is=function(e){return"string"==typeof e},(ed||(ed={})).is=function(e){return"string"==typeof e},(i=eh||(eh={})).MIN_VALUE=-0x80000000,i.MAX_VALUE=0x7fffffff,i.is=function(e){return"number"==typeof e&&i.MIN_VALUE<=e&&e<=i.MAX_VALUE},(a=ef||(ef={})).MIN_VALUE=0,a.MAX_VALUE=0x7fffffff,a.is=function(e){return"number"==typeof e&&a.MIN_VALUE<=e&&e<=a.MAX_VALUE},(s=ep||(ep={})).create=function(e,t){return e===Number.MAX_VALUE&&(e=ef.MAX_VALUE),t===Number.MAX_VALUE&&(t=ef.MAX_VALUE),{line:e,character:t}},s.is=function(e){return tx.objectLiteral(e)&&tx.uinteger(e.line)&&tx.uinteger(e.character)},(o=em||(em={})).create=function(e,t,r,n){if(tx.uinteger(e)&&tx.uinteger(t)&&tx.uinteger(r)&&tx.uinteger(n))return{start:ep.create(e,t),end:ep.create(r,n)};if(ep.is(e)&&ep.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)},o.is=function(e){return tx.objectLiteral(e)&&ep.is(e.start)&&ep.is(e.end)},(l=eg||(eg={})).create=function(e,t){return{uri:e,range:t}},l.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&(tx.string(e.uri)||tx.undefined(e.uri))},(u=ey||(ey={})).create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},u.is=function(e){return tx.objectLiteral(e)&&em.is(e.targetRange)&&tx.string(e.targetUri)&&em.is(e.targetSelectionRange)&&(em.is(e.originSelectionRange)||tx.undefined(e.originSelectionRange))},(c=eT||(eT={})).create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},c.is=function(e){return tx.objectLiteral(e)&&tx.numberRange(e.red,0,1)&&tx.numberRange(e.green,0,1)&&tx.numberRange(e.blue,0,1)&&tx.numberRange(e.alpha,0,1)},(d=eA||(eA={})).create=function(e,t){return{range:e,color:t}},d.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&eT.is(e.color)},(h=ev||(ev={})).create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},h.is=function(e){return tx.objectLiteral(e)&&tx.string(e.label)&&(tx.undefined(e.textEdit)||eC.is(e))&&(tx.undefined(e.additionalTextEdits)||tx.typedArray(e.additionalTextEdits,eC.is))},(f=eR||(eR={})).Comment="comment",f.Imports="imports",f.Region="region",(p=e$||(e$={})).create=function(e,t,r,n,i,a){let s={startLine:e,endLine:t};return tx.defined(r)&&(s.startCharacter=r),tx.defined(n)&&(s.endCharacter=n),tx.defined(i)&&(s.kind=i),tx.defined(a)&&(s.collapsedText=a),s},p.is=function(e){return tx.objectLiteral(e)&&tx.uinteger(e.startLine)&&tx.uinteger(e.startLine)&&(tx.undefined(e.startCharacter)||tx.uinteger(e.startCharacter))&&(tx.undefined(e.endCharacter)||tx.uinteger(e.endCharacter))&&(tx.undefined(e.kind)||tx.string(e.kind))},(m=eE||(eE={})).create=function(e,t){return{location:e,message:t}},m.is=function(e){return tx.defined(e)&&eg.is(e.location)&&tx.string(e.message)},(g=ek||(ek={})).Error=1,g.Warning=2,g.Information=3,g.Hint=4,(y=ex||(ex={})).Unnecessary=1,y.Deprecated=2,(eI||(eI={})).is=function(e){return tx.objectLiteral(e)&&tx.string(e.href)},(T=eS||(eS={})).create=function(e,t,r,n,i,a){let s={range:e,message:t};return tx.defined(r)&&(s.severity=r),tx.defined(n)&&(s.code=n),tx.defined(i)&&(s.source=i),tx.defined(a)&&(s.relatedInformation=a),s},T.is=function(e){var t;return tx.defined(e)&&em.is(e.range)&&tx.string(e.message)&&(tx.number(e.severity)||tx.undefined(e.severity))&&(tx.integer(e.code)||tx.string(e.code)||tx.undefined(e.code))&&(tx.undefined(e.codeDescription)||tx.string(null==(t=e.codeDescription)?void 0:t.href))&&(tx.string(e.source)||tx.undefined(e.source))&&(tx.undefined(e.relatedInformation)||tx.typedArray(e.relatedInformation,eE.is))},(A=eN||(eN={})).create=function(e,t,...r){let n={title:e,command:t};return tx.defined(r)&&r.length>0&&(n.arguments=r),n},A.is=function(e){return tx.defined(e)&&tx.string(e.title)&&tx.string(e.command)},(v=eC||(eC={})).replace=function(e,t){return{range:e,newText:t}},v.insert=function(e,t){return{range:{start:e,end:e},newText:t}},v.del=function(e){return{range:e,newText:""}},v.is=function(e){return tx.objectLiteral(e)&&tx.string(e.newText)&&em.is(e.range)},(R=ew||(ew={})).create=function(e,t,r){let n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n},R.is=function(e){return tx.objectLiteral(e)&&tx.string(e.label)&&(tx.boolean(e.needsConfirmation)||void 0===e.needsConfirmation)&&(tx.string(e.description)||void 0===e.description)},(eL||(eL={})).is=function(e){return tx.string(e)},($=eb||(eb={})).replace=function(e,t,r){return{range:e,newText:t,annotationId:r}},$.insert=function(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}},$.del=function(e,t){return{range:e,newText:"",annotationId:t}},$.is=function(e){return eC.is(e)&&(ew.is(e.annotationId)||eL.is(e.annotationId))},(E=eO||(eO={})).create=function(e,t){return{textDocument:e,edits:t}},E.is=function(e){return tx.defined(e)&&eG.is(e.textDocument)&&Array.isArray(e.edits)},(k=e_||(e_={})).create=function(e,t,r){let n={kind:"create",uri:e};return void 0!==t&&(void 0!==t.overwrite||void 0!==t.ignoreIfExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},k.is=function(e){return e&&"create"===e.kind&&tx.string(e.uri)&&(void 0===e.options||(void 0===e.options.overwrite||tx.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||tx.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(x=eP||(eP={})).create=function(e,t,r,n){let i={kind:"rename",oldUri:e,newUri:t};return void 0!==r&&(void 0!==r.overwrite||void 0!==r.ignoreIfExists)&&(i.options=r),void 0!==n&&(i.annotationId=n),i},x.is=function(e){return e&&"rename"===e.kind&&tx.string(e.oldUri)&&tx.string(e.newUri)&&(void 0===e.options||(void 0===e.options.overwrite||tx.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||tx.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(I=eM||(eM={})).create=function(e,t,r){let n={kind:"delete",uri:e};return void 0!==t&&(void 0!==t.recursive||void 0!==t.ignoreIfNotExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},I.is=function(e){return e&&"delete"===e.kind&&tx.string(e.uri)&&(void 0===e.options||(void 0===e.options.recursive||tx.boolean(e.options.recursive))&&(void 0===e.options.ignoreIfNotExists||tx.boolean(e.options.ignoreIfNotExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(eD||(eD={})).is=function(e){return e&&(void 0!==e.changes||void 0!==e.documentChanges)&&(void 0===e.documentChanges||e.documentChanges.every(e=>tx.string(e.kind)?e_.is(e)||eP.is(e)||eM.is(e):eO.is(e)))},(S=eF||(eF={})).create=function(e){return{uri:e}},S.is=function(e){return tx.defined(e)&&tx.string(e.uri)},(N=eU||(eU={})).create=function(e,t){return{uri:e,version:t}},N.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&tx.integer(e.version)},(C=eG||(eG={})).create=function(e,t){return{uri:e,version:t}},C.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&(null===e.version||tx.integer(e.version))},(w=eK||(eK={})).create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},w.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&tx.string(e.languageId)&&tx.integer(e.version)&&tx.string(e.text)},(L=eB||(eB={})).PlainText="plaintext",L.Markdown="markdown",L.is=function(e){return e===L.PlainText||e===L.Markdown},(ej||(ej={})).is=function(e){return tx.objectLiteral(e)&&eB.is(e.kind)&&tx.string(e.value)},(b=eV||(eV={})).Text=1,b.Method=2,b.Function=3,b.Constructor=4,b.Field=5,b.Variable=6,b.Class=7,b.Interface=8,b.Module=9,b.Property=10,b.Unit=11,b.Value=12,b.Enum=13,b.Keyword=14,b.Snippet=15,b.Color=16,b.File=17,b.Reference=18,b.Folder=19,b.EnumMember=20,b.Constant=21,b.Struct=22,b.Event=23,b.Operator=24,b.TypeParameter=25,(O=eH||(eH={})).PlainText=1,O.Snippet=2,(eW||(eW={})).Deprecated=1,(_=ez||(ez={})).create=function(e,t,r){return{newText:e,insert:t,replace:r}},_.is=function(e){return e&&tx.string(e.newText)&&em.is(e.insert)&&em.is(e.replace)},(P=eY||(eY={})).asIs=1,P.adjustIndentation=2,(eX||(eX={})).is=function(e){return e&&(tx.string(e.detail)||void 0===e.detail)&&(tx.string(e.description)||void 0===e.description)},(eq||(eq={})).create=function(e){return{label:e}},(eQ||(eQ={})).create=function(e,t){return{items:e||[],isIncomplete:!!t}},(M=eZ||(eZ={})).fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},M.is=function(e){return tx.string(e)||tx.objectLiteral(e)&&tx.string(e.language)&&tx.string(e.value)},(eJ||(eJ={})).is=function(e){return!!e&&tx.objectLiteral(e)&&(ej.is(e.contents)||eZ.is(e.contents)||tx.typedArray(e.contents,eZ.is))&&(void 0===e.range||em.is(e.range))},(e0||(e0={})).create=function(e,t){return t?{label:e,documentation:t}:{label:e}},(e1||(e1={})).create=function(e,t,...r){let n={label:e};return tx.defined(t)&&(n.documentation=t),tx.defined(r)?n.parameters=r:n.parameters=[],n},(D=e2||(e2={})).Text=1,D.Read=2,D.Write=3,(e3||(e3={})).create=function(e,t){let r={range:e};return tx.number(t)&&(r.kind=t),r},(F=e4||(e4={})).File=1,F.Module=2,F.Namespace=3,F.Package=4,F.Class=5,F.Method=6,F.Property=7,F.Field=8,F.Constructor=9,F.Enum=10,F.Interface=11,F.Function=12,F.Variable=13,F.Constant=14,F.String=15,F.Number=16,F.Boolean=17,F.Array=18,F.Object=19,F.Key=20,F.Null=21,F.EnumMember=22,F.Struct=23,F.Event=24,F.Operator=25,F.TypeParameter=26,(e9||(e9={})).Deprecated=1,(e7||(e7={})).create=function(e,t,r,n,i){let a={name:e,kind:t,location:{uri:n,range:r}};return i&&(a.containerName=i),a},(e5||(e5={})).create=function(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}},(U=e8||(e8={})).create=function(e,t,r,n,i,a){let s={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==a&&(s.children=a),s},U.is=function(e){return e&&tx.string(e.name)&&tx.number(e.kind)&&em.is(e.range)&&em.is(e.selectionRange)&&(void 0===e.detail||tx.string(e.detail))&&(void 0===e.deprecated||tx.boolean(e.deprecated))&&(void 0===e.children||Array.isArray(e.children))&&(void 0===e.tags||Array.isArray(e.tags))},(G=e6||(e6={})).Empty="",G.QuickFix="quickfix",G.Refactor="refactor",G.RefactorExtract="refactor.extract",G.RefactorInline="refactor.inline",G.RefactorRewrite="refactor.rewrite",G.Source="source",G.SourceOrganizeImports="source.organizeImports",G.SourceFixAll="source.fixAll",(K=te||(te={})).Invoked=1,K.Automatic=2,(B=tt||(tt={})).create=function(e,t,r){let n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n},B.is=function(e){return tx.defined(e)&&tx.typedArray(e.diagnostics,eS.is)&&(void 0===e.only||tx.typedArray(e.only,tx.string))&&(void 0===e.triggerKind||e.triggerKind===te.Invoked||e.triggerKind===te.Automatic)},(j=tr||(tr={})).create=function(e,t,r){let n={title:e},i=!0;return"string"==typeof t?(i=!1,n.kind=t):eN.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n},j.is=function(e){return e&&tx.string(e.title)&&(void 0===e.diagnostics||tx.typedArray(e.diagnostics,eS.is))&&(void 0===e.kind||tx.string(e.kind))&&(void 0!==e.edit||void 0!==e.command)&&(void 0===e.command||eN.is(e.command))&&(void 0===e.isPreferred||tx.boolean(e.isPreferred))&&(void 0===e.edit||eD.is(e.edit))},(V=tn||(tn={})).create=function(e,t){let r={range:e};return tx.defined(t)&&(r.data=t),r},V.is=function(e){return tx.defined(e)&&em.is(e.range)&&(tx.undefined(e.command)||eN.is(e.command))},(H=ti||(ti={})).create=function(e,t){return{tabSize:e,insertSpaces:t}},H.is=function(e){return tx.defined(e)&&tx.uinteger(e.tabSize)&&tx.boolean(e.insertSpaces)},(W=ta||(ta={})).create=function(e,t,r){return{range:e,target:t,data:r}},W.is=function(e){return tx.defined(e)&&em.is(e.range)&&(tx.undefined(e.target)||tx.string(e.target))},(z=ts||(ts={})).create=function(e,t){return{range:e,parent:t}},z.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&(void 0===e.parent||z.is(e.parent))},(Y=to||(to={})).namespace="namespace",Y.type="type",Y.class="class",Y.enum="enum",Y.interface="interface",Y.struct="struct",Y.typeParameter="typeParameter",Y.parameter="parameter",Y.variable="variable",Y.property="property",Y.enumMember="enumMember",Y.event="event",Y.function="function",Y.method="method",Y.macro="macro",Y.keyword="keyword",Y.modifier="modifier",Y.comment="comment",Y.string="string",Y.number="number",Y.regexp="regexp",Y.operator="operator",Y.decorator="decorator",(X=tl||(tl={})).declaration="declaration",X.definition="definition",X.readonly="readonly",X.static="static",X.deprecated="deprecated",X.abstract="abstract",X.async="async",X.modification="modification",X.documentation="documentation",X.defaultLibrary="defaultLibrary",(tu||(tu={})).is=function(e){return tx.objectLiteral(e)&&(void 0===e.resultId||"string"==typeof e.resultId)&&Array.isArray(e.data)&&(0===e.data.length||"number"==typeof e.data[0])},(q=tc||(tc={})).create=function(e,t){return{range:e,text:t}},q.is=function(e){return null!=e&&em.is(e.range)&&tx.string(e.text)},(Q=td||(td={})).create=function(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}},Q.is=function(e){return null!=e&&em.is(e.range)&&tx.boolean(e.caseSensitiveLookup)&&(tx.string(e.variableName)||void 0===e.variableName)},(Z=th||(th={})).create=function(e,t){return{range:e,expression:t}},Z.is=function(e){return null!=e&&em.is(e.range)&&(tx.string(e.expression)||void 0===e.expression)},(J=tf||(tf={})).create=function(e,t){return{frameId:e,stoppedLocation:t}},J.is=function(e){return tx.defined(e)&&em.is(e.stoppedLocation)},(ee=tp||(tp={})).Type=1,ee.Parameter=2,ee.is=function(e){return 1===e||2===e},(et=tm||(tm={})).create=function(e){return{value:e}},et.is=function(e){return tx.objectLiteral(e)&&(void 0===e.tooltip||tx.string(e.tooltip)||ej.is(e.tooltip))&&(void 0===e.location||eg.is(e.location))&&(void 0===e.command||eN.is(e.command))},(er=tg||(tg={})).create=function(e,t,r){let n={position:e,label:t};return void 0!==r&&(n.kind=r),n},er.is=function(e){return tx.objectLiteral(e)&&ep.is(e.position)&&(tx.string(e.label)||tx.typedArray(e.label,tm.is))&&(void 0===e.kind||tp.is(e.kind))&&void 0===e.textEdits||tx.typedArray(e.textEdits,eC.is)&&(void 0===e.tooltip||tx.string(e.tooltip)||ej.is(e.tooltip))&&(void 0===e.paddingLeft||tx.boolean(e.paddingLeft))&&(void 0===e.paddingRight||tx.boolean(e.paddingRight))},(ty||(ty={})).createSnippet=function(e){return{kind:"snippet",value:e}},(tT||(tT={})).create=function(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}},(tA||(tA={})).create=function(e){return{items:e}},(en=tv||(tv={})).Invoked=0,en.Automatic=1,(tR||(tR={})).create=function(e,t){return{range:e,text:t}},(t$||(t$={})).create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}},(tE||(tE={})).is=function(e){return tx.objectLiteral(e)&&ed.is(e.uri)&&tx.string(e.name)},(ei=tk||(tk={})).create=function(e,t,r,n){return new rf(e,t,r,n)},ei.is=function(e){return!!(tx.defined(e)&&tx.string(e.uri)&&(tx.undefined(e.languageId)||tx.string(e.languageId))&&tx.uinteger(e.lineCount)&&tx.func(e.getText)&&tx.func(e.positionAt)&&tx.func(e.offsetAt))},ei.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),a=t.slice(n);e(i,r),e(a,r);let s=0,o=0,l=0;for(;s<i.length&&o<a.length;)0>=r(i[s],a[o])?t[l++]=i[s++]:t[l++]=a[o++];for(;s<i.length;)t[l++]=i[s++];for(;o<a.length;)t[l++]=a[o++];return t}(t,(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length;for(let t=n.length-1;t>=0;t--){let a=n[t],s=e.offsetAt(a.range.start),o=e.offsetAt(a.range.end);if(o<=i)r=r.substring(0,s)+a.newText+r.substring(o,r.length);else throw Error("Overlapping edit");i=s}return r};class rf{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return ep.create(0,e);for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return ep.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}}ea=tx||(tx={}),n=Object.prototype.toString,ea.defined=function(e){return void 0!==e},ea.undefined=function(e){return void 0===e},ea.boolean=function(e){return!0===e||!1===e},ea.string=function(e){return"[object String]"===n.call(e)},ea.number=function(e){return"[object Number]"===n.call(e)},ea.numberRange=function(e,t,r){return"[object Number]"===n.call(e)&&t<=e&&e<=r},ea.integer=function(e){return"[object Number]"===n.call(e)&&-0x80000000<=e&&e<=0x7fffffff},ea.uinteger=function(e){return"[object Number]"===n.call(e)&&0<=e&&e<=0x7fffffff},ea.func=function(e){return"[object Function]"===n.call(e)},ea.objectLiteral=function(e){return null!==e&&"object"==typeof e},ea.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)};class rp{constructor(){this.nodeStack=[]}get current(){var e;return null!=(e=this.nodeStack[this.nodeStack.length-1])?e:this.rootNode}buildRootNode(e){return this.rootNode=new rA(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new ry;return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),this.nodeStack.push(t),t}buildLeafNode(e,t){let r=new rg(e.startOffset,e.image.length,(0,tb.wf)(e),e.tokenType,!t);return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),r}removeNode(e){let t=e.container;if(t){let r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){let t=[];for(let r of e){let e=new rg(r.startOffset,r.image.length,(0,tb.wf)(r),r.tokenType,!0);e.root=this.rootNode,t.push(e)}let r=this.current,n=!1;if(r.content.length>0)return void r.content.push(...t);for(;r.container;){let e=r.container.content.indexOf(r);if(e>0){r.container.content.splice(e,0,...t),n=!0;break}r=r.container}n||this.rootNode.content.unshift(...t)}construct(e){let t=this.current;"string"==typeof e.$type&&(this.current.astNode=e),e.$cstNode=t;let r=this.nodeStack.pop();(null==r?void 0:r.content.length)===0&&this.removeNode(r)}}class rm{get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,t;let r="string"==typeof(null==(e=this._astNode)?void 0:e.$type)?this._astNode:null==(t=this.container)?void 0:t.astNode;if(!r)throw Error("This node has no associated AST element");return r}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}}class rg extends rm{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,t,r,n,i=!1){super(),this._hidden=i,this._offset=e,this._tokenType=n,this._length=t,this._range=r}}class ry extends rm{constructor(){super(...arguments),this.content=new rT(this)}get children(){return this.content}get offset(){var e,t;return null!=(t=null==(e=this.firstNonHiddenNode)?void 0:e.offset)?t:0}get length(){return this.end-this.offset}get end(){var e,t;return null!=(t=null==(e=this.lastNonHiddenNode)?void 0:e.end)?t:0}get range(){let e=this.firstNonHiddenNode,t=this.lastNonHiddenNode;if(!e||!t)return{start:ep.create(0,0),end:ep.create(0,0)};if(void 0===this._rangeCache){let{range:r}=e,{range:n}=t;this._rangeCache={start:r.start,end:n.end.line<r.start.line?r.start:n.end}}return this._rangeCache}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}}class rT extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,rT.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}}class rA extends ry{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=null!=e?e:""}}let rv=Symbol("Datatype");function rR(e){return e.$type===rv}let r$=e=>e.endsWith("")?e:e+"";class rE{constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition,r="production"===e.LanguageMetaData.mode;this.wrapper=new rC(t,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class rk extends rE{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new rp,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){let r=this.computeRuleType(e),n=this.wrapper.DEFINE_RULE(r$(e.name),this.startImplementation(r,t).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}computeRuleType(e){if(!e.fragment){if((0,tO.Xq)(e))return rv;let t=(0,tO.PV)(e);return null!=t?t:e.name}}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");let i=n.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:i,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}startImplementation(e,t){return r=>{let n,i=!this.isRecording()&&void 0!==e;if(i){let t={$type:e};this.stack.push(t),e===rv&&(t.value="")}try{n=t(r)}catch(e){n=void 0}return void 0===n&&i&&(n=this.construct()),n}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let r=e.startOffset;for(let e=0;e<t.length;e++)if(t[e].startOffset>r)return t.splice(0,e);return t.splice(0,t.length)}consume(e,t,r){let n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){let e=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(e);let t=this.nodeBuilder.buildLeafNode(n,r),{assignment:i,isCrossRef:a}=this.getAssignment(r),s=this.current;if(i){let e=(0,tP.wb)(r)?n.image:this.converter.convert(n.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(rR(s)){let e=n.image;(0,tP.wb)(r)||(e=this.converter.convert(e,t).toString()),s.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,r,n,i){let a;this.isRecording()||r||(a=this.nodeBuilder.buildCompositeNode(n));let s=this.wrapper.wrapSubrule(e,t,i);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(s,n,a)}performSubruleAssignment(e,t,r){let{assignment:n,isCrossRef:i}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,i);else if(!n){let t=this.current;if(rR(t))t.value+=e.toString();else if("object"==typeof e&&e){let r=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(r)}}}action(e,t){if(!this.isRecording()){let r=this.current;t.feature&&t.operator?(r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode),this.nodeBuilder.buildCompositeNode(t).content.push(r.$cstNode),this.stack.push({$type:e}),this.assign(t.operator,t.feature,r,r.$cstNode,!1)):r.$type=e}}construct(){if(this.isRecording())return;let e=this.current;return((0,rh.SD)(e),this.nodeBuilder.construct(e),this.stack.pop(),rR(e))?this.converter.convert(e.value,e.$cstNode):((0,rh.OP)(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){let t=(0,rh.XG)(e,tP.wh);this.assignmentMap.set(e,{assignment:t,isCrossRef:!!t&&(0,tP._c)(t.terminal)})}return this.assignmentMap.get(e)}assign(e,t,r,n,i){let a,s=this.current;switch(a=i&&"string"==typeof r?this.linker.buildReference(s,t,n,r):r,e){case"=":s[t]=a;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(a)}}assignWithoutOverride(e,t){for(let[r,n]of Object.entries(t)){let t=e[r];void 0===t?e[r]=n:Array.isArray(t)&&Array.isArray(n)&&(n.push(...t),e[r]=n)}let r=e.$cstNode;return r&&(r.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}}class rx{buildMismatchTokenMessage(e){return tM.my.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return tM.my.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return tM.my.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return tM.my.buildEarlyExitMessage(e)}}class rI extends rx{buildMismatchTokenMessage({expected:e,actual:t}){let r=e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`;return`Expecting ${r} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class rS extends rE{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){let r=this.wrapper.DEFINE_RULE(r$(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,t,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}}let rN={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new rI};class rC extends tM.jr{constructor(e,t){super(e,Object.assign(Object.assign(Object.assign({},rN),{lookaheadStrategy:t&&"maxLookahead"in t?new tM.T6({maxLookahead:t.maxLookahead}):new rr({logging:t.skipValidations?()=>{}:void 0})}),t))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t){return this.RULE(e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}}var rw=r(60056),rL=r(22351);function rb(e,t,r){return function(e,t){let r=(0,tO.YV)(t,!1);for(let n of(0,rL.Td)(t.rules).filter(tP.s7).filter(e=>r.has(e))){let t=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});e.parser.rule(n,function e(t,r,n=!1){var i,a,s;let o;if((0,tP.wb)(r))o=function(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}(t,r);else if((0,tP.ve)(r)){let e;i=t,a=r,e=(0,tO.Uz)(a),o=()=>i.parser.action(e,a)}else if((0,tP.wh)(r))o=e(t,r.terminal);else if((0,tP._c)(r))o=function e(t,r,n=r.terminal){if(n)if((0,tP.$g)(n)&&(0,tP.s7)(n.rule.ref)){let e=n.rule.ref,i=t.subrule++;return n=>t.parser.subrule(i,rM(t,e),!1,r,n)}else if((0,tP.$g)(n)&&(0,tP.rE)(n.rule.ref)){let e=t.consume++,i=rD(t,n.rule.ref.name);return()=>t.parser.consume(e,i,r)}else if((0,tP.wb)(n)){let e=t.consume++,i=rD(t,n.value);return()=>t.parser.consume(e,i,r)}else throw Error("Could not build cross reference parser");{if(!r.type.ref)throw Error("Could not resolve reference to type: "+r.type.$refText);let n=(0,tO.U5)(r.type.ref),i=null==n?void 0:n.terminal;if(!i)throw Error("Could not find name assignment for type: "+(0,tO.Uz)(r.type.ref));return e(t,r,i)}}(t,r);else if((0,tP.$g)(r))o=function(e,t){let r=t.rule.ref;if((0,tP.s7)(r)){var n;let i,a=e.subrule++,s=r.fragment,o=t.arguments.length>0?(n=r,i=t.arguments.map(e=>rO(e.value)),e=>{let t={};for(let r=0;r<i.length;r++){let a=n.parameters[r],s=i[r];t[a.name]=s(e)}return t}):()=>({});return n=>e.parser.subrule(a,rM(e,r),s,t,o(n))}if((0,tP.rE)(r)){let n=e.consume++,i=rD(e,r.name);return()=>e.parser.consume(n,i,t)}if(r)(0,rw.d)(r);else throw new rw.W(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}(t,r);else if((0,tP.jp)(r))o=function(t,r){if(1===r.elements.length)return e(t,r.elements[0]);{let n=[];for(let i of r.elements){let r={ALT:e(t,i,!0)},a=r_(i);a&&(r.GATE=rO(a)),n.push(r)}let i=t.or++;return e=>t.parser.alternatives(i,n.map(t=>{let r={ALT:()=>t.ALT(e)},n=t.GATE;return n&&(r.GATE=()=>n(e)),r}))}}(t,r);else if((0,tP.cY)(r))o=function(t,r){if(1===r.elements.length)return e(t,r.elements[0]);let n=[];for(let i of r.elements){let r={ALT:e(t,i,!0)},a=r_(i);a&&(r.GATE=rO(a)),n.push(r)}let i=t.or++,a=(e,t)=>{let r=t.getRuleStack().join("-");return`uGroup_${e}_${r}`},s=rP(t,r_(r),e=>t.parser.alternatives(i,n.map((r,n)=>{let s={ALT:()=>!0},o=t.parser;s.ALT=()=>{if(r.ALT(e),!o.isRecording()){let e=a(i,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);let t=o.unorderedGroups.get(e);void 0===(null==t?void 0:t[n])&&(t[n]=!0)}};let l=r.GATE;return l?s.GATE=()=>l(e):s.GATE=()=>{let e=o.unorderedGroups.get(a(i,o));return!(null==e?void 0:e[n])},s})),"*");return e=>{s(e),t.parser.isRecording()||t.parser.unorderedGroups.delete(a(i,t.parser))}}(t,r);else if((0,tP.IZ)(r)){let n;s=t,n=r.elements.map(t=>e(s,t)),o=e=>n.forEach(t=>t(e))}else if((0,tP.FO)(r)){let e=t.consume++;o=()=>t.parser.consume(e,tM.LT,r)}else throw new rw.W(r.$cstNode,`Unexpected element type: ${r.$type}`);return rP(t,n?void 0:r_(r),o,r.cardinality)}(t,n.definition))}}({parser:t,tokens:r,ruleNames:new Map},e),t}function rO(e){if((0,tP.RP)(e)){let t=rO(e.left),r=rO(e.right);return e=>t(e)||r(e)}if((0,tP.Tu)(e)){let t=rO(e.left),r=rO(e.right);return e=>t(e)&&r(e)}if((0,tP.Ct)(e)){let t=rO(e.value);return e=>!t(e)}if((0,tP.TF)(e)){let t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if((0,tP.Cz)(e)){let t=!!e.true;return()=>t}(0,rw.d)(e)}function r_(e){if((0,tP.IZ)(e))return e.guardCondition}function rP(e,t,r,n){let i=t&&rO(t);if(!n)if(!i)return r;else{let t=e.or++;return n=>e.parser.alternatives(t,[{ALT:()=>r(n),GATE:()=>i(n)},{ALT:(0,tM.mT)(),GATE:()=>!i(n)}])}if("*"===n){let t=e.many++;return n=>e.parser.many(t,{DEF:()=>r(n),GATE:i?()=>i(n):void 0})}if("+"===n){let t=e.many++;if(!i)return n=>e.parser.atLeastOne(t,{DEF:()=>r(n)});{let n=e.or++;return a=>e.parser.alternatives(n,[{ALT:()=>e.parser.atLeastOne(t,{DEF:()=>r(a)}),GATE:()=>i(a)},{ALT:(0,tM.mT)(),GATE:()=>!i(a)}])}}if("?"===n){let t=e.optional++;return n=>e.parser.optional(t,{DEF:()=>r(n),GATE:i?()=>i(n):void 0})}(0,rw.d)(n)}function rM(e,t){let r=function(e,t){if((0,tP.s7)(t))return t.name;{if(e.ruleNames.has(t))return e.ruleNames.get(t);let r=t,n=r.$container,i=t.$type;for(;!(0,tP.s7)(n);)((0,tP.IZ)(n)||(0,tP.jp)(n)||(0,tP.cY)(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}(e,t),n=e.parser.getRule(r);if(!n)throw Error(`Rule "${r}" not found."`);return n}function rD(e,t){let r=e.tokens[t];if(!r)throw Error(`Token "${t}" not found."`);return r}var rF=r(35046),rU=r(29005),rG=r(82609),rK=r(59357);let rB=0,rj=Symbol("OperationCancelled");async function rV(e){if(e===rG.XO.None)return;let t=performance.now();if(t-rB>=10&&(rB=t,await new Promise(e=>{"undefined"==typeof setImmediate?setTimeout(e,0):setImmediate(e)}),rB=performance.now()),e.isCancellationRequested)throw rj}class rH{constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}}class rW{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){for(let t of e)if(rW.isIncremental(t)){let e=rX(t.range),r=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,r)+t.text+this._content.substring(n,this._content.length);let i=Math.max(e.start.line,0),a=Math.max(e.end.line,0),s=this._lineOffsets,o=rz(t.text,!1,r);if(a-i===o.length)for(let e=0,t=o.length;e<t;e++)s[e+i+1]=o[e];else o.length<1e4?s.splice(i+1,a-i,...o):this._lineOffsets=s=s.slice(0,i+1).concat(o,s.slice(a+1));let l=t.text.length-(n-r);if(0!==l)for(let e=i+1+o.length,t=s.length;e<t;e++)s[e]=s[e]+l}else if(rW.isFull(t))this._content=t.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=t}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=rz(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return e=this.ensureBeforeEOL(e,t[i]),{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let n=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(r+e.character,n);return this.ensureBeforeEOL(i,r)}ensureBeforeEOL(e,t){for(;e>t&&rY(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}static isFull(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}}function rz(e,t,r=0){let n=t?[r]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);rY(i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function rY(e){return 13===e||10===e}function rX(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function rq(e){let t=rX(e.range);return t!==e.range?{newText:e.newText,range:t}:e}(es=tI||(tI={})).create=function(e,t,r,n){return new rW(e,t,r,n)},es.update=function(e,t,r){if(e instanceof rW)return e.update(t,r),e;throw Error("TextDocument.update: document must be created by TextDocument.create")},es.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),a=t.slice(n);e(i,r),e(a,r);let s=0,o=0,l=0;for(;s<i.length&&o<a.length;)0>=r(i[s],a[o])?t[l++]=i[s++]:t[l++]=a[o++];for(;s<i.length;)t[l++]=i[s++];for(;o<a.length;)t[l++]=a[o++];return t}(t.map(rq),(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=0,a=[];for(let t of n){let n=e.offsetAt(t.range.start);if(n<i)throw Error("Overlapping edit");n>i&&a.push(r.substring(i,n)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(r.substr(i)),a.join("")};var rQ=r(43294);(eo=tS||(tS={}))[eo.Changed=0]="Changed",eo[eo.Parsed=1]="Parsed",eo[eo.IndexedContent=2]="IndexedContent",eo[eo.ComputedScopes=3]="ComputedScopes",eo[eo.Linked=4]="Linked",eo[eo.IndexedReferences=5]="IndexedReferences",eo[eo.Validated=6]="Validated";class rZ{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=rG.XO.None){let r=await this.fileSystemProvider.readFile(e);return this.createAsync(e,r,t)}fromTextDocument(e,t,r){return(t=null!=t?t:rQ.r.parse(e.uri),rG.XO.is(r))?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return rG.XO.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if("string"==typeof t){let n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}if("$model"in t){let r={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,e)}{let n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if("string"==typeof t){let n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}{let n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let i;if(r)i={parseResult:e,uri:t,state:tS.Parsed,references:[],textDocument:r};else{let r=this.createTextDocumentGetter(t,n);i={parseResult:e,uri:t,state:tS.Parsed,references:[],get textDocument(){return r()}}}return e.value.$document=i,i}async update(e,t){var r,n;let i=null==(r=e.parseResult.value.$cstNode)?void 0:r.root.fullText,a=null==(n=this.textDocuments)?void 0:n.get(e.uri.toString()),s=a?a.getText():await this.fileSystemProvider.readFile(e.uri);if(a)Object.defineProperty(e,"textDocument",{value:a});else{let t=this.createTextDocumentGetter(e.uri,s);Object.defineProperty(e,"textDocument",{get:t})}return i!==s&&(e.parseResult=await this.parseAsync(e.uri,s,t),e.parseResult.value.$document=e),e.state=tS.Parsed,e}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){let r,n=this.serviceRegistry;return()=>null!=r?r:r=tI.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,null!=t?t:"")}}class rJ{constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return(0,rL.Td)(this.documentMap.values())}addDocument(e){let t=e.uri.toString();if(this.documentMap.has(t))throw Error(`A document with the URI '${t}' is already present.`);this.documentMap.set(t,e)}getDocument(e){let t=e.toString();return this.documentMap.get(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r)),r}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(e=>(this.addDocument(e),e));{let r=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(r),r}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let t=e.toString(),r=this.documentMap.get(t);return r&&(this.serviceRegistry.getServices(e).references.Linker.unlink(r),r.state=tS.Changed,r.precomputedScopes=void 0,r.diagnostics=void 0),r}deleteDocument(e){let t=e.toString(),r=this.documentMap.get(t);return r&&(r.state=tS.Changed,this.documentMap.delete(t)),r}}let r0=Symbol("ref_resolving");class r1{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,t=rG.XO.None){for(let r of(0,rh.jm)(e.parseResult.value))await rV(t),(0,rh.DM)(r).forEach(t=>this.doLink(t,e))}doLink(e,t){var r;let n=e.reference;if(void 0===n._ref){n._ref=r0;try{let t=this.getCandidate(e);if((0,rK.Zl)(t))n._ref=t;else if(n._nodeDescription=t,this.langiumDocuments().hasDocument(t.documentUri)){let r=this.loadAstNode(t);n._ref=null!=r?r:this.createLinkingError(e,t)}else n._ref=void 0}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let t=null!=(r=i.message)?r:String(i);n._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${n.$refText}': ${t}`})}t.references.push(n)}}unlink(e){for(let t of e.references)delete t._ref,delete t._nodeDescription;e.references=[]}getCandidate(e){let t=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return null!=t?t:this.createLinkingError(e)}buildReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,get ref(){var s;if((0,rK.ng)(this._ref))return this._ref;if((0,rK.Nr)(this._nodeDescription)){let r=i.loadAstNode(this._nodeDescription);this._ref=null!=r?r:i.createLinkingError({reference:a,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){this._ref=r0;let r=(0,rh.cQ)(e).$document,n=i.getLinkedNode({reference:a,container:e,property:t});if(n.error&&r&&r.state<tS.ComputedScopes)return this._ref=void 0;this._ref=null!=(s=n.node)?s:n.error,this._nodeDescription=n.descr,null==r||r.references.push(this)}else if(this._ref===r0)throw Error(`Cyclic reference resolution detected: ${i.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${n}')`);return(0,rK.ng)(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return(0,rK.Zl)(this._ref)?this._ref:void 0}};return a}getLinkedNode(e){var t;try{let t=this.getCandidate(e);if((0,rK.Zl)(t))return{error:t};let r=this.loadAstNode(t);if(r)return{node:r,descr:t};return{descr:t,error:this.createLinkingError(e,t)}}catch(n){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,n);let r=null!=(t=n.message)?t:String(n);return{error:Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${e.reference.$refText}': ${r}`})}}}loadAstNode(e){if(e.node)return e.node;let t=this.langiumDocuments().getDocument(e.documentUri);if(t)return this.astNodeLocator.getAstNode(t.parseResult.value,e.path)}createLinkingError(e,t){let r=(0,rh.cQ)(e.container).$document;r&&r.state<tS.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);let n=this.reflection.getReferenceType(e);return Object.assign(Object.assign({},e),{message:`Could not resolve reference to ${n} named '${e.reference.$refText}'.`,targetDescription:t})}}class r2{getName(e){if("string"==typeof e.name)return e.name}getNameNode(e){return(0,tO.qO)(e.$cstNode,"name")}}(el=tN||(tN={})).basename=rQ.A.basename,el.dirname=rQ.A.dirname,el.extname=rQ.A.extname,el.joinPath=rQ.A.joinPath,el.resolvePath=rQ.A.resolvePath,el.equals=function(e,t){return(null==e?void 0:e.toString())===(null==t?void 0:t.toString())},el.relative=function(e,t){let r="string"==typeof e?e:e.path,n="string"==typeof t?t:t.path,i=r.split("/").filter(e=>e.length>0),a=n.split("/").filter(e=>e.length>0),s=0;for(;s<i.length&&i[s]===a[s];s++);return"../".repeat(i.length-s)+a.slice(s).join("/")},el.normalize=function(e){return rQ.r.parse(e.toString()).toString()};class r3{constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let t=(0,tO.Rp)(e),r=e.astNode;if(t&&r){let n=r[t.feature];if((0,rK.A_)(n))return n.ref;if(Array.isArray(n)){for(let t of n)if((0,rK.A_)(t)&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return t.ref}}if(r){let t=this.nameProvider.getNameNode(r);if(t&&(t===e||(0,tb.pO)(e,t)))return r}}}findDeclarationNode(e){let t=this.findDeclaration(e);if(null==t?void 0:t.$cstNode){let e=this.nameProvider.getNameNode(t);return null!=e?e:t.$cstNode}}findReferences(e,t){let r=[];if(t.includeDeclaration){let t=this.getReferenceToSelf(e);t&&r.push(t)}let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(e=>tN.equals(e.sourceUri,t.documentUri))),r.push(...n),(0,rL.Td)(r)}getReferenceToSelf(e){let t=this.nameProvider.getNameNode(e);if(t){let r=(0,rh.YE)(e),n=this.nodeLocator.getAstNodePath(e);return{sourceUri:r.uri,sourcePath:n,targetUri:r.uri,targetPath:n,segment:(0,tb.SX)(t),local:!0}}}}class r4{constructor(e){if(this.map=new Map,e)for(const[t,r]of e)this.add(t,r)}get size(){return rL.iD.sum((0,rL.Td)(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{let r=this.map.get(e);if(r){let n=r.indexOf(t);if(n>=0)return 1===r.length?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){var t;return null!=(t=this.map.get(e))?t:[]}has(e,t){if(void 0===t)return this.map.has(e);{let r=this.map.get(e);return!!r&&r.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(t=>e(t,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return(0,rL.Td)(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return(0,rL.Td)(this.map.keys())}values(){return(0,rL.Td)(this.map.values()).flat()}entriesGroupedByKey(){return(0,rL.Td)(this.map.entries())}}class r9{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}}class r7{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,t=rG.XO.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,t)}async computeExportsForNode(e,t,r=rh.VN,n=rG.XO.None){let i=[];for(let a of(this.exportNode(e,i,t),r(e)))await rV(n),this.exportNode(a,i,t);return i}exportNode(e,t,r){let n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async computeLocalScopes(e,t=rG.XO.None){let r=e.parseResult.value,n=new r4;for(let i of(0,rh.Uo)(r))await rV(t),this.processNode(i,e,n);return n}processNode(e,t,r){let n=e.$container;if(n){let i=this.nameProvider.getName(e);i&&r.add(n,this.descriptions.createDescription(e,i,t))}}}class r5{constructor(e,t,r){var n;this.elements=e,this.outerScope=t,this.caseInsensitive=null!=(n=null==r?void 0:r.caseInsensitive)&&n}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?this.elements.find(t=>t.name.toLowerCase()===e.toLowerCase()):this.elements.find(t=>t.name===e);return t||(this.outerScope?this.outerScope.getElement(e):void 0)}}class r8{constructor(e,t,r){var n;for(const t of(this.elements=new Map,this.caseInsensitive=null!=(n=null==r?void 0:r.caseInsensitive)&&n,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getAllElements(){let e=(0,rL.Td)(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class r6{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}}class ne extends r6{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){let r=t();return this.cache.set(e,r),r}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class nt extends r6{constructor(e){super(),this.cache=new Map,this.converter=null!=e?e:e=>e}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();let n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){let e=r();return n.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){let t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){let t=this.converter(e),r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}}class nr extends ne{constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{t.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}class nn{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new nr(e.shared)}getScope(e){let t=[],r=this.reflection.getReferenceType(e),n=(0,rh.YE)(e.container).precomputedScopes;if(n){let i=e.container;do{let e=n.get(i);e.length>0&&t.push((0,rL.Td)(e).filter(e=>this.reflection.isSubtype(e.type,r))),i=i.$container}while(i)}let i=this.getGlobalScope(r,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,r){return new r5((0,rL.Td)(e),t,r)}createScopeForNodes(e,t,r){return new r5((0,rL.Td)(e).map(e=>{let t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable(),t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new r8(this.indexManager.allElements(e)))}}function ni(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}class na{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){let r=null!=t?t:{},n=null==t?void 0:t.replacer,i=(e,t)=>this.replacer(e,t,r),a=n?(e,t)=>n(e,t,i):i;try{return this.currentDocument=(0,rh.YE)(e),JSON.stringify(e,a,null==t?void 0:t.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let r=JSON.parse(e);return this.linkNode(r,r,null!=t?t:{}),r}replacer(e,t,{refText:r,sourceText:n,textRegions:i,comments:a,uriConverter:s}){var o,l,u,c;if(!this.ignoreProperties.has(e)){if((0,rK.A_)(t)){let e=t.ref,n=r?t.$refText:void 0;if(!e)return{$error:null!=(l=null==(o=t.error)?void 0:o.message)?l:"Could not resolve reference",$refText:n};{let r=(0,rh.YE)(e),i="";this.currentDocument&&this.currentDocument!==r&&(i=s?s(r.uri,t):r.uri.toString());let a=this.astNodeLocator.getAstNodePath(e);return{$ref:`${i}#${a}`,$refText:n}}}if(!(0,rK.ng)(t))return t;{let r;if(i&&(r=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},t)),(!e||t.$document)&&(null==r?void 0:r.$textRegion)&&(r.$textRegion.documentURI=null==(u=this.currentDocument)?void 0:u.uri.toString())),n&&!e&&(null!=r||(r=Object.assign({},t)),r.$sourceText=null==(c=t.$cstNode)?void 0:c.text),a){null!=r||(r=Object.assign({},t));let e=this.commentProvider.getComment(t);e&&(r.$comment=e.replace(/\r/g,""))}return null!=r?r:t}}}addAstNodeRegionWithAssignmentsTo(e){let t=e=>({offset:e.offset,end:e.end,length:e.length,range:e.range});if(e.$cstNode){let r=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter(e=>!e.startsWith("$")).forEach(n=>{let i=(0,tO.Bd)(e.$cstNode,n).map(t);0!==i.length&&(r[n]=i)}),e}}linkNode(e,t,r,n,i,a){for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){let s=i[a];ni(s)?i[a]=this.reviveReference(e,n,t,s,r):(0,rK.ng)(s)&&this.linkNode(s,t,r,e,n,a)}else ni(i)?e[n]=this.reviveReference(e,n,t,i,r):(0,rK.ng)(i)&&this.linkNode(i,t,r,e,n);e.$container=n,e.$containerProperty=i,e.$containerIndex=a}reviveReference(e,t,r,n,i){let a=n.$refText,s=n.$error;if(n.$ref){let e=this.getRefNode(r,n.$ref,i.uriConverter);if((0,rK.ng)(e))return a||(a=this.nameProvider.getName(e)),{$refText:null!=a?a:"",ref:e};s=e}if(s){let r={$refText:null!=a?a:""};return r.error={container:e,property:t,message:s,reference:r},r}}getRefNode(e,t,r){try{let n=t.indexOf("#");if(0===n){let r=this.astNodeLocator.getAstNode(e,t.substring(1));if(!r)return"Could not resolve path: "+t;return r}if(n<0){let e=r?r(t):rQ.r.parse(t),n=this.langiumDocuments.getDocument(e);if(!n)return"Could not find document for URI: "+t;return n.parseResult.value}let i=r?r(t.substring(0,n)):rQ.r.parse(t.substring(0,n)),a=this.langiumDocuments.getDocument(i);if(!a)return"Could not find document for URI: "+t;if(n===t.length-1)return a.parseResult.value;let s=this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(n+1));if(!s)return"Could not resolve URI: "+t;return s}catch(e){return String(e)}}}class ns{get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=null==e?void 0:e.workspace.TextDocuments}register(e){let t=e.LanguageMetaData;for(let r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);this.languageIdMap.set(t.languageId,e),1===this.languageIdMap.size?this.singleton=e:this.singleton=void 0}getServices(e){var t,r;if(void 0!==this.singleton)return this.singleton;if(0===this.languageIdMap.size)throw Error("The service registry is empty. Use `register` to register the services of a language.");let n=null==(r=null==(t=this.textDocuments)?void 0:t.get(e))?void 0:r.languageId;if(void 0!==n){let e=this.languageIdMap.get(n);if(e)return e}let i=tN.extname(e),a=this.fileExtensionMap.get(i);if(!a)if(n)throw Error(`The service registry contains no services for the extension '${i}' for language '${n}'.`);else throw Error(`The service registry contains no services for the extension '${i}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch(e){return!1}}get all(){return Array.from(this.languageIdMap.values())}}(tC||(tC={})).all=["fast","slow","built-in"];class no{constructor(e){this.entries=new r4,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if("built-in"===r)throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let e of i){let i={check:this.wrapValidationException(e,t),category:r};this.addEntry(n,i)}else if("function"==typeof i){let e={check:this.wrapValidationException(i,t),category:r};this.addEntry(n,e)}else(0,rw.d)(i)}wrapValidationException(e,t){return async(r,n,i)=>{await this.handleException(()=>e.call(t,r,n,i),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(i){if(i===rj)throw i;console.error(`${t}:`,i),i instanceof Error&&i.stack&&console.error(i.stack);let e=i instanceof Error?i.message:String(i);r("error",`${t}: ${e}`,{node:n})}}addEntry(e,t){if("AstNode"===e)return void this.entries.add("AstNode",t);for(let r of this.reflection.getAllSubTypes(e))this.entries.add(r,t)}getChecks(e,t){let r=(0,rL.Td)(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(e=>t.includes(e.category))),r.map(e=>e.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,i,a,s)=>{await this.handleException(()=>e.call(r,n,i,a,s),t,i,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}class nl{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,t={},r=rG.XO.None){let n=e.parseResult,i=[];if((await rV(r),!t.categories||t.categories.includes("built-in"))&&(this.processLexingErrors(n,i,t),t.stopAfterLexingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.LexingError})||(this.processParsingErrors(n,i,t),t.stopAfterParsingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.ParsingError}))||(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.LinkingError}))))return i;try{i.push(...await this.validateAst(n.value,t,r))}catch(e){if(e===rj)throw e;console.error("An error occurred during validation:",e)}return await rV(r),i}processLexingErrors(e,t,r){var n,i,a;for(let r of[...e.lexerErrors,...null!=(i=null==(n=e.lexerReport)?void 0:n.diagnostics)?i:[]]){let e=null!=(a=r.severity)?a:"error",n={severity:nu(e),range:{start:{line:r.line-1,character:r.column-1},end:{line:r.line-1,character:r.column+r.length-1}},message:r.message,data:function(e){switch(e){case"error":return{code:tw.LexingError};case"warning":return{code:tw.LexingWarning};case"info":return{code:tw.LexingInfo};case"hint":return{code:tw.LexingHint};default:throw Error("Invalid diagnostic severity: "+e)}}(e),source:this.getSource()};t.push(n)}}processParsingErrors(e,t,r){for(let r of e.parserErrors){let e;if(isNaN(r.token.startOffset)){if("previousToken"in r){let t=r.previousToken;if(isNaN(t.startOffset)){let t={line:0,character:0};e={start:t,end:t}}else{let r={line:t.endLine-1,character:t.endColumn};e={start:r,end:r}}}}else e=(0,tb.wf)(r.token);if(e){let n={severity:nu("error"),range:e,message:r.message,data:{code:tw.ParsingError},source:this.getSource()};t.push(n)}}}processLinkingErrors(e,t,r){for(let r of e.references){let e=r.error;if(e){let r={node:e.container,property:e.property,index:e.index,data:{code:tw.LinkingError,containerType:e.container.$type,property:e.property,refText:e.reference.$refText}};t.push(this.toDiagnostic("error",e.message,r))}}}async validateAst(e,t,r=rG.XO.None){let n=[],i=(e,t,r)=>{n.push(this.toDiagnostic(e,t,r))};return await this.validateAstBefore(e,t,i,r),await this.validateAstNodes(e,t,i,r),await this.validateAstAfter(e,t,i,r),n}async validateAstBefore(e,t,r,n=rG.XO.None){var i;for(let a of this.validationRegistry.checksBefore)await rV(n),await a(e,r,null!=(i=t.categories)?i:[],n)}async validateAstNodes(e,t,r,n=rG.XO.None){await Promise.all((0,rh.jm)(e).map(async e=>{for(let i of(await rV(n),this.validationRegistry.getChecks(e.$type,t.categories)))await i(e,r,n)}))}async validateAstAfter(e,t,r,n=rG.XO.None){var i;for(let a of this.validationRegistry.checksAfter)await rV(n),await a(e,r,null!=(i=t.categories)?i:[],n)}toDiagnostic(e,t,r){var n;let i;return{message:t,range:(n=r).range?n.range:("string"==typeof n.property?i=(0,tO.qO)(n.node.$cstNode,n.property,n.index):"string"==typeof n.keyword&&(i=(0,tO.SS)(n.node.$cstNode,n.keyword,n.index)),null!=i||(i=n.node.$cstNode),i)?i.range:{start:{line:0,character:0},end:{line:0,character:0}},severity:nu(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function nu(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+e)}}(eu=tw||(tw={})).LexingError="lexing-error",eu.LexingWarning="lexing-warning",eu.LexingInfo="lexing-info",eu.LexingHint="lexing-hint",eu.ParsingError="parsing-error",eu.LinkingError="linking-error";class nc{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){let n,i=null!=r?r:(0,rh.YE)(e);null!=t||(t=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!t)throw Error(`Node at path ${a} has no name.`);let s=()=>{var t;return null!=n?n:n=(0,tb.SX)(null!=(t=this.nameProvider.getNameNode(e))?t:e.$cstNode)};return{node:e,name:t,get nameSegment(){return s()},selectionSegment:(0,tb.SX)(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}}class nd{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=rG.XO.None){let r=[],n=e.parseResult.value;for(let e of(0,rh.jm)(n))await rV(t),(0,rh.DM)(e).filter(e=>!(0,rK.Zl)(e)).forEach(e=>{let t=this.createDescription(e);t&&r.push(t)});return r}createDescription(e){let t=e.reference.$nodeDescription,r=e.reference.$refNode;if(!t||!r)return;let n=(0,rh.YE)(e.container).uri;return{sourceUri:n,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:t.documentUri,targetPath:t.path,segment:(0,tb.SX)(r),local:tN.equals(t.documentUri,n)}}}class nh{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||0===t.length)return e;let r=t.indexOf(this.indexSeparator);if(r>0){let n=t.substring(0,r),i=parseInt(t.substring(r+1)),a=e[n];return null==a?void 0:a[i]}return e[t]},e)}}var nf=r(75347);class np{constructor(e){this._ready=new rH,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new nf.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var t,r;this.workspaceConfig=null!=(r=null==(t=e.capabilities.workspace)?void 0:t.configuration)&&r}async initialized(e){if(this.workspaceConfig){if(e.register){let t=this.serviceRegistry.all;e.register({section:t.map(e=>this.toSectionName(e.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let t=this.serviceRegistry.all.map(e=>({section:this.toSectionName(e.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,r[t])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(t=>{let r=e.settings[t];this.updateSectionConfiguration(t,r),this.onConfigurationSectionUpdateEmitter.fire({section:t,configuration:r})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;let r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}(tL||(tL={})).create=function(e){return{dispose:async()=>await e()}};class nm{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new r4,this.documentPhaseListeners=new r4,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=tS.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=rG.XO.None){var n,i;for(let r of e){let e=r.uri.toString();if(r.state===tS.Validated){if("boolean"==typeof t.validation&&t.validation)r.state=tS.IndexedReferences,r.diagnostics=void 0,this.buildState.delete(e);else if("object"==typeof t.validation){let a=this.buildState.get(e),s=null==(n=null==a?void 0:a.result)?void 0:n.validationChecks;if(s){let n=(null!=(i=t.validation.categories)?i:tC.all).filter(e=>!s.includes(e));n.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:Object.assign(Object.assign({},t.validation),{categories:n})},result:a.result}),r.state=tS.IndexedReferences)}}}else this.buildState.delete(e)}this.currentState=tS.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=rG.XO.None){for(let e of(this.currentState=tS.Changed,t))this.langiumDocuments.deleteDocument(e),this.buildState.delete(e.toString()),this.indexManager.remove(e);for(let t of e){if(!this.langiumDocuments.invalidateDocument(t)){let e=this.langiumDocumentFactory.fromModel({$type:"INVALID"},t);e.state=tS.Changed,this.langiumDocuments.addDocument(e)}this.buildState.delete(t.toString())}let n=(0,rL.Td)(e).concat(t).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!n.has(e.uri.toString())&&this.shouldRelink(e,n)).forEach(e=>{this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e),e.state=Math.min(e.state,tS.ComputedScopes),e.diagnostics=void 0}),await this.emitUpdate(e,t),await rV(r);let i=this.sortDocuments(this.langiumDocuments.all.filter(e=>{var t;return e.state<tS.Linked||!(null==(t=this.buildState.get(e.uri.toString()))?void 0:t.completed)}).toArray());await this.buildDocuments(i,this.updateBuildOptions,r)}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){var t;return!!(null==(t=this.textDocuments)?void 0:t.get(e.uri))}shouldRelink(e,t){return!!e.references.some(e=>void 0!==e.error)||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),tL.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,tS.Parsed,r,e=>this.langiumDocumentFactory.update(e,r)),await this.runCancelable(e,tS.IndexedContent,r,e=>this.indexManager.updateContent(e,r)),await this.runCancelable(e,tS.ComputedScopes,r,async e=>{let t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.precomputedScopes=await t.computeLocalScopes(e,r)}),await this.runCancelable(e,tS.Linked,r,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,r)),await this.runCancelable(e,tS.IndexedReferences,r,e=>this.indexManager.updateReferences(e,r));let n=e.filter(e=>this.shouldValidate(e));for(let t of(await this.runCancelable(n,tS.Validated,r,e=>this.validate(e,r)),e)){let e=this.buildState.get(t.uri.toString());e&&(e.completed=!0)}}prepareBuild(e,t){for(let r of e){let e=r.uri.toString(),n=this.buildState.get(e);(!n||n.completed)&&this.buildState.set(e,{completed:!1,options:t,result:null==n?void 0:n.result})}}async runCancelable(e,t,r,n){for(let i of e.filter(e=>e.state<t))await rV(r),await n(i),i.state=t,await this.notifyDocumentPhase(i,t,r);let i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),tL.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),tL.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;if(t&&"path"in t?n=t:r=t,null!=r||(r=rG.XO.None),n){let t=this.langiumDocuments.getDocument(n);if(t&&t.state>e)return Promise.resolve(n)}return this.currentState>=e?Promise.resolve(void 0):r.isCancellationRequested?Promise.reject(rj):new Promise((t,i)=>{let a=this.onBuildPhase(e,()=>{if(a.dispose(),s.dispose(),n){let e=this.langiumDocuments.getDocument(n);t(null==e?void 0:e.uri)}else t(void 0)}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i(rj)})})}async notifyDocumentPhase(e,t,r){for(let n of this.documentPhaseListeners.get(t).slice())try{await n(e,r)}catch(e){if(e!==rj)throw e}}async notifyBuildPhase(e,t,r){if(0!==e.length)for(let n of this.buildPhaseListeners.get(t).slice())await rV(r),await n(e,r)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){var r;let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e).validation,a="object"==typeof i?i:void 0,s=await n.validateDocument(e,a,t);e.diagnostics?e.diagnostics.push(...s):e.diagnostics=s;let o=this.buildState.get(e.uri.toString());if(o){null!=o.result||(o.result={});let e=null!=(r=null==a?void 0:a.categories)?r:tC.all;o.result.validationChecks?o.result.validationChecks.push(...e):o.result.validationChecks=[...e]}}getBuildOptions(e){var t,r;return null!=(r=null==(t=this.buildState.get(e.uri.toString()))?void 0:t.options)?r:{}}}class ng{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new nt,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let r=(0,rh.YE)(e).uri,n=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{tN.equals(e.targetUri,r)&&e.targetPath===t&&n.push(e)})}),(0,rL.Td)(n)}allElements(e,t){let r=(0,rL.Td)(this.symbolIndex.keys());return t&&(r=r.filter(e=>!t||t.has(e))),r.map(t=>this.getFileDescriptions(t,e)).flat()}getFileDescriptions(e,t){var r;return t?this.symbolByTypeIndex.get(e,t,()=>{var r;return(null!=(r=this.symbolIndex.get(e))?r:[]).filter(e=>this.astReflection.isSubtype(e.type,t))}):null!=(r=this.symbolIndex.get(e))?r:[]}remove(e){let t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t),this.referenceIndex.delete(t)}async updateContent(e,t=rG.XO.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.references.ScopeComputation.computeExports(e,t),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=rG.XO.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let r=this.referenceIndex.get(e.uri.toString());return!!r&&r.some(e=>!e.local&&t.has(e.targetUri.toString()))}}class ny{constructor(e){this.initialBuildOptions={},this._ready=new rH,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var t;this.folders=null!=(t=e.workspaceFolders)?t:void 0}initialized(e){return this.mutex.write(e=>{var t;return this.initializeWorkspace(null!=(t=this.folders)?t:[],e)})}async initializeWorkspace(e,t=rG.XO.None){let r=await this.performStartup(e);await rV(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){let t=this.serviceRegistry.all.flatMap(e=>e.LanguageMetaData.fileExtensions),r=[],n=e=>{r.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)};return await this.loadAdditionalDocuments(e,n),await Promise.all(e.map(e=>[e,this.getRootFolder(e)]).map(async e=>this.traverseFolder(...e,t,n))),this._ready.resolve(),r}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return rQ.r.parse(e.uri)}async traverseFolder(e,t,r,n){let i=await this.fileSystemProvider.readDirectory(t);await Promise.all(i.map(async t=>{this.includeEntry(e,t,r)&&(t.isDirectory?await this.traverseFolder(e,t.uri,r,n):t.isFile&&n(await this.langiumDocuments.getOrCreateDocument(t.uri)))}))}includeEntry(e,t,r){let n=tN.basename(t.uri);if(n.startsWith("."))return!1;if(t.isDirectory)return"node_modules"!==n&&"out"!==n;if(t.isFile){let e=tN.extname(t.uri);return r.includes(e)}return!1}}class nT{buildUnexpectedCharactersMessage(e,t,r,n,i){return tM.PW.buildUnexpectedCharactersMessage(e,t,r,n,i)}buildUnableToPopLexerModeMessage(e){return tM.PW.buildUnableToPopLexerModeMessage(e)}}let nA={mode:"full"};class nv{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const r=n$(t)?Object.values(t):t,n="production"===e.LanguageMetaData.mode;this.chevrotainLexer=new tM.JG(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=nA){var r,n,i;let a=this.chevrotainLexer.tokenize(e);return{tokens:a.tokens,errors:a.errors,hidden:null!=(r=a.groups.hidden)?r:[],report:null==(i=(n=this.tokenBuilder).flushLexingReport)?void 0:i.call(n,e)}}toTokenTypeDictionary(e){if(n$(e))return e;let t=nR(e)?Object.values(e.modes).flat():e,r={};return t.forEach(e=>r[e.name]=e),r}}function nR(e){return e&&"modes"in e&&"defaultMode"in e}function n$(e){return!(Array.isArray(e)&&(0===e.length||"name"in e[0]))&&!nR(e)}function nE(e){return("string"==typeof e?e:e.text).split(t_.TH)}let nk=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,nx=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu,nI=/\S/,nS=/\s*$/;function nN(e,t){let r=e.substring(t).match(nI);return r?t+r.index:e.length}function nC(e){let t=e.tokens[e.index],r=t,n=t,i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;){var a;i.push("inline-tag"===(a=e).tokens[a.index].type?nw(a,!0):nL(a)),n=t,t=e.tokens[e.index]}return new nM(i,em.create(r.range.start,n.range.end))}function nw(e,t){let r=e.tokens[e.index++],n=r.content.substring(1),i=e.tokens[e.index];if((null==i?void 0:i.type)==="text")if(t){let i=nL(e);return new nP(n,new nM([i],i.range),t,em.create(r.range.start,i.range.end))}else{let i=nC(e);return new nP(n,i,t,em.create(r.range.start,i.range.end))}{let e=r.range;return new nP(n,new nM([],e),t,e)}}function nL(e){let t=e.tokens[e.index++];return new nD(t.content,t.range)}function nb(e){if(!e)return nb({start:"/**",end:"*/",line:"*"});let{start:t,end:r,line:n}=e;return{start:nO(t,!0),end:nO(r,!1),line:nO(n,!0)}}function nO(e,t){if("string"!=typeof e&&"object"!=typeof e)return e;{let r="string"==typeof e?(0,t_.Nt)(e):e.source;return t?RegExp(`^\\s*${r}`):RegExp(`\\s*${r}\\s*$`)}}class n_{constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let t of this.elements)if(0===e.length)e=t.toString();else{let r=t.toString();e+=nF(e)+r}return e.trim()}toMarkdown(e){let t="";for(let r of this.elements)if(0===t.length)t=r.toMarkdown(e);else{let n=r.toMarkdown(e);t+=nF(t)+n}return t.trim()}}class nP{constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`,t=this.content.toString();return(1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
|
|
58
|
+
`+"For Further details."))}function rl(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function ru(e,t,r,n){return n=rc(e,n),t.edges[r.tokenTypeIdx]=n,n}function rc(e,t){if(t===tJ)return t;let r=t.configs.key,n=e.states[r];return void 0!==n?n:(t.configs.finalize(),e.states[r]=t,t)}function rd(e,t){let r=e.state;if(7===r.type){if(e.stack.length>0){let r=[...e.stack];rd({state:r.pop(),alt:e.alt,stack:r},t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i<n;i++){let n=function(e,t){if(t instanceof tB)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof tj){let r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}(e,r.transitions[i]);void 0!==n&&rd(n,t)}}var rh=r(72325);(ec||(ec={})).is=function(e){return"string"==typeof e},(ed||(ed={})).is=function(e){return"string"==typeof e},(i=eh||(eh={})).MIN_VALUE=-0x80000000,i.MAX_VALUE=0x7fffffff,i.is=function(e){return"number"==typeof e&&i.MIN_VALUE<=e&&e<=i.MAX_VALUE},(a=ef||(ef={})).MIN_VALUE=0,a.MAX_VALUE=0x7fffffff,a.is=function(e){return"number"==typeof e&&a.MIN_VALUE<=e&&e<=a.MAX_VALUE},(s=ep||(ep={})).create=function(e,t){return e===Number.MAX_VALUE&&(e=ef.MAX_VALUE),t===Number.MAX_VALUE&&(t=ef.MAX_VALUE),{line:e,character:t}},s.is=function(e){return tx.objectLiteral(e)&&tx.uinteger(e.line)&&tx.uinteger(e.character)},(o=em||(em={})).create=function(e,t,r,n){if(tx.uinteger(e)&&tx.uinteger(t)&&tx.uinteger(r)&&tx.uinteger(n))return{start:ep.create(e,t),end:ep.create(r,n)};if(ep.is(e)&&ep.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)},o.is=function(e){return tx.objectLiteral(e)&&ep.is(e.start)&&ep.is(e.end)},(l=eg||(eg={})).create=function(e,t){return{uri:e,range:t}},l.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&(tx.string(e.uri)||tx.undefined(e.uri))},(u=ey||(ey={})).create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},u.is=function(e){return tx.objectLiteral(e)&&em.is(e.targetRange)&&tx.string(e.targetUri)&&em.is(e.targetSelectionRange)&&(em.is(e.originSelectionRange)||tx.undefined(e.originSelectionRange))},(c=eT||(eT={})).create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},c.is=function(e){return tx.objectLiteral(e)&&tx.numberRange(e.red,0,1)&&tx.numberRange(e.green,0,1)&&tx.numberRange(e.blue,0,1)&&tx.numberRange(e.alpha,0,1)},(d=eA||(eA={})).create=function(e,t){return{range:e,color:t}},d.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&eT.is(e.color)},(h=ev||(ev={})).create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},h.is=function(e){return tx.objectLiteral(e)&&tx.string(e.label)&&(tx.undefined(e.textEdit)||eC.is(e))&&(tx.undefined(e.additionalTextEdits)||tx.typedArray(e.additionalTextEdits,eC.is))},(f=eR||(eR={})).Comment="comment",f.Imports="imports",f.Region="region",(p=e$||(e$={})).create=function(e,t,r,n,i,a){let s={startLine:e,endLine:t};return tx.defined(r)&&(s.startCharacter=r),tx.defined(n)&&(s.endCharacter=n),tx.defined(i)&&(s.kind=i),tx.defined(a)&&(s.collapsedText=a),s},p.is=function(e){return tx.objectLiteral(e)&&tx.uinteger(e.startLine)&&tx.uinteger(e.startLine)&&(tx.undefined(e.startCharacter)||tx.uinteger(e.startCharacter))&&(tx.undefined(e.endCharacter)||tx.uinteger(e.endCharacter))&&(tx.undefined(e.kind)||tx.string(e.kind))},(m=eE||(eE={})).create=function(e,t){return{location:e,message:t}},m.is=function(e){return tx.defined(e)&&eg.is(e.location)&&tx.string(e.message)},(g=ek||(ek={})).Error=1,g.Warning=2,g.Information=3,g.Hint=4,(y=ex||(ex={})).Unnecessary=1,y.Deprecated=2,(eI||(eI={})).is=function(e){return tx.objectLiteral(e)&&tx.string(e.href)},(T=eS||(eS={})).create=function(e,t,r,n,i,a){let s={range:e,message:t};return tx.defined(r)&&(s.severity=r),tx.defined(n)&&(s.code=n),tx.defined(i)&&(s.source=i),tx.defined(a)&&(s.relatedInformation=a),s},T.is=function(e){var t;return tx.defined(e)&&em.is(e.range)&&tx.string(e.message)&&(tx.number(e.severity)||tx.undefined(e.severity))&&(tx.integer(e.code)||tx.string(e.code)||tx.undefined(e.code))&&(tx.undefined(e.codeDescription)||tx.string(null==(t=e.codeDescription)?void 0:t.href))&&(tx.string(e.source)||tx.undefined(e.source))&&(tx.undefined(e.relatedInformation)||tx.typedArray(e.relatedInformation,eE.is))},(A=eN||(eN={})).create=function(e,t,...r){let n={title:e,command:t};return tx.defined(r)&&r.length>0&&(n.arguments=r),n},A.is=function(e){return tx.defined(e)&&tx.string(e.title)&&tx.string(e.command)},(v=eC||(eC={})).replace=function(e,t){return{range:e,newText:t}},v.insert=function(e,t){return{range:{start:e,end:e},newText:t}},v.del=function(e){return{range:e,newText:""}},v.is=function(e){return tx.objectLiteral(e)&&tx.string(e.newText)&&em.is(e.range)},(R=ew||(ew={})).create=function(e,t,r){let n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n},R.is=function(e){return tx.objectLiteral(e)&&tx.string(e.label)&&(tx.boolean(e.needsConfirmation)||void 0===e.needsConfirmation)&&(tx.string(e.description)||void 0===e.description)},(eL||(eL={})).is=function(e){return tx.string(e)},($=eb||(eb={})).replace=function(e,t,r){return{range:e,newText:t,annotationId:r}},$.insert=function(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}},$.del=function(e,t){return{range:e,newText:"",annotationId:t}},$.is=function(e){return eC.is(e)&&(ew.is(e.annotationId)||eL.is(e.annotationId))},(E=eO||(eO={})).create=function(e,t){return{textDocument:e,edits:t}},E.is=function(e){return tx.defined(e)&&eG.is(e.textDocument)&&Array.isArray(e.edits)},(k=e_||(e_={})).create=function(e,t,r){let n={kind:"create",uri:e};return void 0!==t&&(void 0!==t.overwrite||void 0!==t.ignoreIfExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},k.is=function(e){return e&&"create"===e.kind&&tx.string(e.uri)&&(void 0===e.options||(void 0===e.options.overwrite||tx.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||tx.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(x=eP||(eP={})).create=function(e,t,r,n){let i={kind:"rename",oldUri:e,newUri:t};return void 0!==r&&(void 0!==r.overwrite||void 0!==r.ignoreIfExists)&&(i.options=r),void 0!==n&&(i.annotationId=n),i},x.is=function(e){return e&&"rename"===e.kind&&tx.string(e.oldUri)&&tx.string(e.newUri)&&(void 0===e.options||(void 0===e.options.overwrite||tx.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||tx.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(I=eM||(eM={})).create=function(e,t,r){let n={kind:"delete",uri:e};return void 0!==t&&(void 0!==t.recursive||void 0!==t.ignoreIfNotExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},I.is=function(e){return e&&"delete"===e.kind&&tx.string(e.uri)&&(void 0===e.options||(void 0===e.options.recursive||tx.boolean(e.options.recursive))&&(void 0===e.options.ignoreIfNotExists||tx.boolean(e.options.ignoreIfNotExists)))&&(void 0===e.annotationId||eL.is(e.annotationId))},(eD||(eD={})).is=function(e){return e&&(void 0!==e.changes||void 0!==e.documentChanges)&&(void 0===e.documentChanges||e.documentChanges.every(e=>tx.string(e.kind)?e_.is(e)||eP.is(e)||eM.is(e):eO.is(e)))},(S=eF||(eF={})).create=function(e){return{uri:e}},S.is=function(e){return tx.defined(e)&&tx.string(e.uri)},(N=eU||(eU={})).create=function(e,t){return{uri:e,version:t}},N.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&tx.integer(e.version)},(C=eG||(eG={})).create=function(e,t){return{uri:e,version:t}},C.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&(null===e.version||tx.integer(e.version))},(w=eK||(eK={})).create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},w.is=function(e){return tx.defined(e)&&tx.string(e.uri)&&tx.string(e.languageId)&&tx.integer(e.version)&&tx.string(e.text)},(L=eB||(eB={})).PlainText="plaintext",L.Markdown="markdown",L.is=function(e){return e===L.PlainText||e===L.Markdown},(ej||(ej={})).is=function(e){return tx.objectLiteral(e)&&eB.is(e.kind)&&tx.string(e.value)},(b=eV||(eV={})).Text=1,b.Method=2,b.Function=3,b.Constructor=4,b.Field=5,b.Variable=6,b.Class=7,b.Interface=8,b.Module=9,b.Property=10,b.Unit=11,b.Value=12,b.Enum=13,b.Keyword=14,b.Snippet=15,b.Color=16,b.File=17,b.Reference=18,b.Folder=19,b.EnumMember=20,b.Constant=21,b.Struct=22,b.Event=23,b.Operator=24,b.TypeParameter=25,(O=eH||(eH={})).PlainText=1,O.Snippet=2,(eW||(eW={})).Deprecated=1,(_=ez||(ez={})).create=function(e,t,r){return{newText:e,insert:t,replace:r}},_.is=function(e){return e&&tx.string(e.newText)&&em.is(e.insert)&&em.is(e.replace)},(P=eY||(eY={})).asIs=1,P.adjustIndentation=2,(eX||(eX={})).is=function(e){return e&&(tx.string(e.detail)||void 0===e.detail)&&(tx.string(e.description)||void 0===e.description)},(eq||(eq={})).create=function(e){return{label:e}},(eQ||(eQ={})).create=function(e,t){return{items:e||[],isIncomplete:!!t}},(M=eZ||(eZ={})).fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},M.is=function(e){return tx.string(e)||tx.objectLiteral(e)&&tx.string(e.language)&&tx.string(e.value)},(eJ||(eJ={})).is=function(e){return!!e&&tx.objectLiteral(e)&&(ej.is(e.contents)||eZ.is(e.contents)||tx.typedArray(e.contents,eZ.is))&&(void 0===e.range||em.is(e.range))},(e0||(e0={})).create=function(e,t){return t?{label:e,documentation:t}:{label:e}},(e1||(e1={})).create=function(e,t,...r){let n={label:e};return tx.defined(t)&&(n.documentation=t),tx.defined(r)?n.parameters=r:n.parameters=[],n},(D=e2||(e2={})).Text=1,D.Read=2,D.Write=3,(e3||(e3={})).create=function(e,t){let r={range:e};return tx.number(t)&&(r.kind=t),r},(F=e4||(e4={})).File=1,F.Module=2,F.Namespace=3,F.Package=4,F.Class=5,F.Method=6,F.Property=7,F.Field=8,F.Constructor=9,F.Enum=10,F.Interface=11,F.Function=12,F.Variable=13,F.Constant=14,F.String=15,F.Number=16,F.Boolean=17,F.Array=18,F.Object=19,F.Key=20,F.Null=21,F.EnumMember=22,F.Struct=23,F.Event=24,F.Operator=25,F.TypeParameter=26,(e9||(e9={})).Deprecated=1,(e7||(e7={})).create=function(e,t,r,n,i){let a={name:e,kind:t,location:{uri:n,range:r}};return i&&(a.containerName=i),a},(e5||(e5={})).create=function(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}},(U=e8||(e8={})).create=function(e,t,r,n,i,a){let s={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==a&&(s.children=a),s},U.is=function(e){return e&&tx.string(e.name)&&tx.number(e.kind)&&em.is(e.range)&&em.is(e.selectionRange)&&(void 0===e.detail||tx.string(e.detail))&&(void 0===e.deprecated||tx.boolean(e.deprecated))&&(void 0===e.children||Array.isArray(e.children))&&(void 0===e.tags||Array.isArray(e.tags))},(G=e6||(e6={})).Empty="",G.QuickFix="quickfix",G.Refactor="refactor",G.RefactorExtract="refactor.extract",G.RefactorInline="refactor.inline",G.RefactorRewrite="refactor.rewrite",G.Source="source",G.SourceOrganizeImports="source.organizeImports",G.SourceFixAll="source.fixAll",(K=te||(te={})).Invoked=1,K.Automatic=2,(B=tt||(tt={})).create=function(e,t,r){let n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n},B.is=function(e){return tx.defined(e)&&tx.typedArray(e.diagnostics,eS.is)&&(void 0===e.only||tx.typedArray(e.only,tx.string))&&(void 0===e.triggerKind||e.triggerKind===te.Invoked||e.triggerKind===te.Automatic)},(j=tr||(tr={})).create=function(e,t,r){let n={title:e},i=!0;return"string"==typeof t?(i=!1,n.kind=t):eN.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n},j.is=function(e){return e&&tx.string(e.title)&&(void 0===e.diagnostics||tx.typedArray(e.diagnostics,eS.is))&&(void 0===e.kind||tx.string(e.kind))&&(void 0!==e.edit||void 0!==e.command)&&(void 0===e.command||eN.is(e.command))&&(void 0===e.isPreferred||tx.boolean(e.isPreferred))&&(void 0===e.edit||eD.is(e.edit))},(V=tn||(tn={})).create=function(e,t){let r={range:e};return tx.defined(t)&&(r.data=t),r},V.is=function(e){return tx.defined(e)&&em.is(e.range)&&(tx.undefined(e.command)||eN.is(e.command))},(H=ti||(ti={})).create=function(e,t){return{tabSize:e,insertSpaces:t}},H.is=function(e){return tx.defined(e)&&tx.uinteger(e.tabSize)&&tx.boolean(e.insertSpaces)},(W=ta||(ta={})).create=function(e,t,r){return{range:e,target:t,data:r}},W.is=function(e){return tx.defined(e)&&em.is(e.range)&&(tx.undefined(e.target)||tx.string(e.target))},(z=ts||(ts={})).create=function(e,t){return{range:e,parent:t}},z.is=function(e){return tx.objectLiteral(e)&&em.is(e.range)&&(void 0===e.parent||z.is(e.parent))},(Y=to||(to={})).namespace="namespace",Y.type="type",Y.class="class",Y.enum="enum",Y.interface="interface",Y.struct="struct",Y.typeParameter="typeParameter",Y.parameter="parameter",Y.variable="variable",Y.property="property",Y.enumMember="enumMember",Y.event="event",Y.function="function",Y.method="method",Y.macro="macro",Y.keyword="keyword",Y.modifier="modifier",Y.comment="comment",Y.string="string",Y.number="number",Y.regexp="regexp",Y.operator="operator",Y.decorator="decorator",(X=tl||(tl={})).declaration="declaration",X.definition="definition",X.readonly="readonly",X.static="static",X.deprecated="deprecated",X.abstract="abstract",X.async="async",X.modification="modification",X.documentation="documentation",X.defaultLibrary="defaultLibrary",(tu||(tu={})).is=function(e){return tx.objectLiteral(e)&&(void 0===e.resultId||"string"==typeof e.resultId)&&Array.isArray(e.data)&&(0===e.data.length||"number"==typeof e.data[0])},(q=tc||(tc={})).create=function(e,t){return{range:e,text:t}},q.is=function(e){return null!=e&&em.is(e.range)&&tx.string(e.text)},(Q=td||(td={})).create=function(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}},Q.is=function(e){return null!=e&&em.is(e.range)&&tx.boolean(e.caseSensitiveLookup)&&(tx.string(e.variableName)||void 0===e.variableName)},(Z=th||(th={})).create=function(e,t){return{range:e,expression:t}},Z.is=function(e){return null!=e&&em.is(e.range)&&(tx.string(e.expression)||void 0===e.expression)},(J=tf||(tf={})).create=function(e,t){return{frameId:e,stoppedLocation:t}},J.is=function(e){return tx.defined(e)&&em.is(e.stoppedLocation)},(ee=tp||(tp={})).Type=1,ee.Parameter=2,ee.is=function(e){return 1===e||2===e},(et=tm||(tm={})).create=function(e){return{value:e}},et.is=function(e){return tx.objectLiteral(e)&&(void 0===e.tooltip||tx.string(e.tooltip)||ej.is(e.tooltip))&&(void 0===e.location||eg.is(e.location))&&(void 0===e.command||eN.is(e.command))},(er=tg||(tg={})).create=function(e,t,r){let n={position:e,label:t};return void 0!==r&&(n.kind=r),n},er.is=function(e){return tx.objectLiteral(e)&&ep.is(e.position)&&(tx.string(e.label)||tx.typedArray(e.label,tm.is))&&(void 0===e.kind||tp.is(e.kind))&&void 0===e.textEdits||tx.typedArray(e.textEdits,eC.is)&&(void 0===e.tooltip||tx.string(e.tooltip)||ej.is(e.tooltip))&&(void 0===e.paddingLeft||tx.boolean(e.paddingLeft))&&(void 0===e.paddingRight||tx.boolean(e.paddingRight))},(ty||(ty={})).createSnippet=function(e){return{kind:"snippet",value:e}},(tT||(tT={})).create=function(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}},(tA||(tA={})).create=function(e){return{items:e}},(en=tv||(tv={})).Invoked=0,en.Automatic=1,(tR||(tR={})).create=function(e,t){return{range:e,text:t}},(t$||(t$={})).create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}},(tE||(tE={})).is=function(e){return tx.objectLiteral(e)&&ed.is(e.uri)&&tx.string(e.name)},(ei=tk||(tk={})).create=function(e,t,r,n){return new rf(e,t,r,n)},ei.is=function(e){return!!(tx.defined(e)&&tx.string(e.uri)&&(tx.undefined(e.languageId)||tx.string(e.languageId))&&tx.uinteger(e.lineCount)&&tx.func(e.getText)&&tx.func(e.positionAt)&&tx.func(e.offsetAt))},ei.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),a=t.slice(n);e(i,r),e(a,r);let s=0,o=0,l=0;for(;s<i.length&&o<a.length;)0>=r(i[s],a[o])?t[l++]=i[s++]:t[l++]=a[o++];for(;s<i.length;)t[l++]=i[s++];for(;o<a.length;)t[l++]=a[o++];return t}(t,(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length;for(let t=n.length-1;t>=0;t--){let a=n[t],s=e.offsetAt(a.range.start),o=e.offsetAt(a.range.end);if(o<=i)r=r.substring(0,s)+a.newText+r.substring(o,r.length);else throw Error("Overlapping edit");i=s}return r};class rf{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return ep.create(0,e);for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return ep.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}}ea=tx||(tx={}),n=Object.prototype.toString,ea.defined=function(e){return void 0!==e},ea.undefined=function(e){return void 0===e},ea.boolean=function(e){return!0===e||!1===e},ea.string=function(e){return"[object String]"===n.call(e)},ea.number=function(e){return"[object Number]"===n.call(e)},ea.numberRange=function(e,t,r){return"[object Number]"===n.call(e)&&t<=e&&e<=r},ea.integer=function(e){return"[object Number]"===n.call(e)&&-0x80000000<=e&&e<=0x7fffffff},ea.uinteger=function(e){return"[object Number]"===n.call(e)&&0<=e&&e<=0x7fffffff},ea.func=function(e){return"[object Function]"===n.call(e)},ea.objectLiteral=function(e){return null!==e&&"object"==typeof e},ea.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)};class rp{constructor(){this.nodeStack=[]}get current(){var e;return null!=(e=this.nodeStack[this.nodeStack.length-1])?e:this.rootNode}buildRootNode(e){return this.rootNode=new rA(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new ry;return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),this.nodeStack.push(t),t}buildLeafNode(e,t){let r=new rg(e.startOffset,e.image.length,(0,tb.wf)(e),e.tokenType,!t);return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),r}removeNode(e){let t=e.container;if(t){let r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){let t=[];for(let r of e){let e=new rg(r.startOffset,r.image.length,(0,tb.wf)(r),r.tokenType,!0);e.root=this.rootNode,t.push(e)}let r=this.current,n=!1;if(r.content.length>0)return void r.content.push(...t);for(;r.container;){let e=r.container.content.indexOf(r);if(e>0){r.container.content.splice(e,0,...t),n=!0;break}r=r.container}n||this.rootNode.content.unshift(...t)}construct(e){let t=this.current;"string"==typeof e.$type&&(this.current.astNode=e),e.$cstNode=t;let r=this.nodeStack.pop();(null==r?void 0:r.content.length)===0&&this.removeNode(r)}}class rm{get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,t;let r="string"==typeof(null==(e=this._astNode)?void 0:e.$type)?this._astNode:null==(t=this.container)?void 0:t.astNode;if(!r)throw Error("This node has no associated AST element");return r}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}}class rg extends rm{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,t,r,n,i=!1){super(),this._hidden=i,this._offset=e,this._tokenType=n,this._length=t,this._range=r}}class ry extends rm{constructor(){super(...arguments),this.content=new rT(this)}get children(){return this.content}get offset(){var e,t;return null!=(t=null==(e=this.firstNonHiddenNode)?void 0:e.offset)?t:0}get length(){return this.end-this.offset}get end(){var e,t;return null!=(t=null==(e=this.lastNonHiddenNode)?void 0:e.end)?t:0}get range(){let e=this.firstNonHiddenNode,t=this.lastNonHiddenNode;if(!e||!t)return{start:ep.create(0,0),end:ep.create(0,0)};if(void 0===this._rangeCache){let{range:r}=e,{range:n}=t;this._rangeCache={start:r.start,end:n.end.line<r.start.line?r.start:n.end}}return this._rangeCache}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}}class rT extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,rT.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}}class rA extends ry{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=null!=e?e:""}}let rv=Symbol("Datatype");function rR(e){return e.$type===rv}let r$=e=>e.endsWith("")?e:e+"";class rE{constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition,r="production"===e.LanguageMetaData.mode;this.wrapper=new rC(t,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class rk extends rE{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new rp,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){let r=this.computeRuleType(e),n=this.wrapper.DEFINE_RULE(r$(e.name),this.startImplementation(r,t).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}computeRuleType(e){if(!e.fragment){if((0,tO.Xq)(e))return rv;let t=(0,tO.PV)(e);return null!=t?t:e.name}}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");let i=n.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:i,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}startImplementation(e,t){return r=>{let n,i=!this.isRecording()&&void 0!==e;if(i){let t={$type:e};this.stack.push(t),e===rv&&(t.value="")}try{n=t(r)}catch(e){n=void 0}return void 0===n&&i&&(n=this.construct()),n}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let r=e.startOffset;for(let e=0;e<t.length;e++)if(t[e].startOffset>r)return t.splice(0,e);return t.splice(0,t.length)}consume(e,t,r){let n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){let e=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(e);let t=this.nodeBuilder.buildLeafNode(n,r),{assignment:i,isCrossRef:a}=this.getAssignment(r),s=this.current;if(i){let e=(0,tP.wb)(r)?n.image:this.converter.convert(n.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(rR(s)){let e=n.image;(0,tP.wb)(r)||(e=this.converter.convert(e,t).toString()),s.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,r,n,i){let a;this.isRecording()||r||(a=this.nodeBuilder.buildCompositeNode(n));let s=this.wrapper.wrapSubrule(e,t,i);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(s,n,a)}performSubruleAssignment(e,t,r){let{assignment:n,isCrossRef:i}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,i);else if(!n){let t=this.current;if(rR(t))t.value+=e.toString();else if("object"==typeof e&&e){let r=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(r)}}}action(e,t){if(!this.isRecording()){let r=this.current;t.feature&&t.operator?(r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode),this.nodeBuilder.buildCompositeNode(t).content.push(r.$cstNode),this.stack.push({$type:e}),this.assign(t.operator,t.feature,r,r.$cstNode,!1)):r.$type=e}}construct(){if(this.isRecording())return;let e=this.current;return((0,rh.SD)(e),this.nodeBuilder.construct(e),this.stack.pop(),rR(e))?this.converter.convert(e.value,e.$cstNode):((0,rh.OP)(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){let t=(0,rh.XG)(e,tP.wh);this.assignmentMap.set(e,{assignment:t,isCrossRef:!!t&&(0,tP._c)(t.terminal)})}return this.assignmentMap.get(e)}assign(e,t,r,n,i){let a,s=this.current;switch(a=i&&"string"==typeof r?this.linker.buildReference(s,t,n,r):r,e){case"=":s[t]=a;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(a)}}assignWithoutOverride(e,t){for(let[r,n]of Object.entries(t)){let t=e[r];void 0===t?e[r]=n:Array.isArray(t)&&Array.isArray(n)&&(n.push(...t),e[r]=n)}let r=e.$cstNode;return r&&(r.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}}class rx{buildMismatchTokenMessage(e){return tM.my.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return tM.my.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return tM.my.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return tM.my.buildEarlyExitMessage(e)}}class rI extends rx{buildMismatchTokenMessage({expected:e,actual:t}){let r=e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`;return`Expecting ${r} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class rS extends rE{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){let r=this.wrapper.DEFINE_RULE(r$(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,t,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}}let rN={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new rI};class rC extends tM.jr{constructor(e,t){super(e,Object.assign(Object.assign(Object.assign({},rN),{lookaheadStrategy:t&&"maxLookahead"in t?new tM.T6({maxLookahead:t.maxLookahead}):new rr({logging:t.skipValidations?()=>{}:void 0})}),t))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t){return this.RULE(e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}}var rw=r(37675),rL=r(22351);function rb(e,t,r){return function(e,t){let r=(0,tO.YV)(t,!1);for(let n of(0,rL.Td)(t.rules).filter(tP.s7).filter(e=>r.has(e))){let t=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});e.parser.rule(n,function e(t,r,n=!1){var i,a,s;let o;if((0,tP.wb)(r))o=function(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}(t,r);else if((0,tP.ve)(r)){let e;i=t,a=r,e=(0,tO.Uz)(a),o=()=>i.parser.action(e,a)}else if((0,tP.wh)(r))o=e(t,r.terminal);else if((0,tP._c)(r))o=function e(t,r,n=r.terminal){if(n)if((0,tP.$g)(n)&&(0,tP.s7)(n.rule.ref)){let e=n.rule.ref,i=t.subrule++;return n=>t.parser.subrule(i,rM(t,e),!1,r,n)}else if((0,tP.$g)(n)&&(0,tP.rE)(n.rule.ref)){let e=t.consume++,i=rD(t,n.rule.ref.name);return()=>t.parser.consume(e,i,r)}else if((0,tP.wb)(n)){let e=t.consume++,i=rD(t,n.value);return()=>t.parser.consume(e,i,r)}else throw Error("Could not build cross reference parser");{if(!r.type.ref)throw Error("Could not resolve reference to type: "+r.type.$refText);let n=(0,tO.U5)(r.type.ref),i=null==n?void 0:n.terminal;if(!i)throw Error("Could not find name assignment for type: "+(0,tO.Uz)(r.type.ref));return e(t,r,i)}}(t,r);else if((0,tP.$g)(r))o=function(e,t){let r=t.rule.ref;if((0,tP.s7)(r)){var n;let i,a=e.subrule++,s=r.fragment,o=t.arguments.length>0?(n=r,i=t.arguments.map(e=>rO(e.value)),e=>{let t={};for(let r=0;r<i.length;r++){let a=n.parameters[r],s=i[r];t[a.name]=s(e)}return t}):()=>({});return n=>e.parser.subrule(a,rM(e,r),s,t,o(n))}if((0,tP.rE)(r)){let n=e.consume++,i=rD(e,r.name);return()=>e.parser.consume(n,i,t)}if(r)(0,rw.d)(r);else throw new rw.W(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}(t,r);else if((0,tP.jp)(r))o=function(t,r){if(1===r.elements.length)return e(t,r.elements[0]);{let n=[];for(let i of r.elements){let r={ALT:e(t,i,!0)},a=r_(i);a&&(r.GATE=rO(a)),n.push(r)}let i=t.or++;return e=>t.parser.alternatives(i,n.map(t=>{let r={ALT:()=>t.ALT(e)},n=t.GATE;return n&&(r.GATE=()=>n(e)),r}))}}(t,r);else if((0,tP.cY)(r))o=function(t,r){if(1===r.elements.length)return e(t,r.elements[0]);let n=[];for(let i of r.elements){let r={ALT:e(t,i,!0)},a=r_(i);a&&(r.GATE=rO(a)),n.push(r)}let i=t.or++,a=(e,t)=>{let r=t.getRuleStack().join("-");return`uGroup_${e}_${r}`},s=rP(t,r_(r),e=>t.parser.alternatives(i,n.map((r,n)=>{let s={ALT:()=>!0},o=t.parser;s.ALT=()=>{if(r.ALT(e),!o.isRecording()){let e=a(i,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);let t=o.unorderedGroups.get(e);void 0===(null==t?void 0:t[n])&&(t[n]=!0)}};let l=r.GATE;return l?s.GATE=()=>l(e):s.GATE=()=>{let e=o.unorderedGroups.get(a(i,o));return!(null==e?void 0:e[n])},s})),"*");return e=>{s(e),t.parser.isRecording()||t.parser.unorderedGroups.delete(a(i,t.parser))}}(t,r);else if((0,tP.IZ)(r)){let n;s=t,n=r.elements.map(t=>e(s,t)),o=e=>n.forEach(t=>t(e))}else if((0,tP.FO)(r)){let e=t.consume++;o=()=>t.parser.consume(e,tM.LT,r)}else throw new rw.W(r.$cstNode,`Unexpected element type: ${r.$type}`);return rP(t,n?void 0:r_(r),o,r.cardinality)}(t,n.definition))}}({parser:t,tokens:r,ruleNames:new Map},e),t}function rO(e){if((0,tP.RP)(e)){let t=rO(e.left),r=rO(e.right);return e=>t(e)||r(e)}if((0,tP.Tu)(e)){let t=rO(e.left),r=rO(e.right);return e=>t(e)&&r(e)}if((0,tP.Ct)(e)){let t=rO(e.value);return e=>!t(e)}if((0,tP.TF)(e)){let t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if((0,tP.Cz)(e)){let t=!!e.true;return()=>t}(0,rw.d)(e)}function r_(e){if((0,tP.IZ)(e))return e.guardCondition}function rP(e,t,r,n){let i=t&&rO(t);if(!n)if(!i)return r;else{let t=e.or++;return n=>e.parser.alternatives(t,[{ALT:()=>r(n),GATE:()=>i(n)},{ALT:(0,tM.mT)(),GATE:()=>!i(n)}])}if("*"===n){let t=e.many++;return n=>e.parser.many(t,{DEF:()=>r(n),GATE:i?()=>i(n):void 0})}if("+"===n){let t=e.many++;if(!i)return n=>e.parser.atLeastOne(t,{DEF:()=>r(n)});{let n=e.or++;return a=>e.parser.alternatives(n,[{ALT:()=>e.parser.atLeastOne(t,{DEF:()=>r(a)}),GATE:()=>i(a)},{ALT:(0,tM.mT)(),GATE:()=>!i(a)}])}}if("?"===n){let t=e.optional++;return n=>e.parser.optional(t,{DEF:()=>r(n),GATE:i?()=>i(n):void 0})}(0,rw.d)(n)}function rM(e,t){let r=function(e,t){if((0,tP.s7)(t))return t.name;{if(e.ruleNames.has(t))return e.ruleNames.get(t);let r=t,n=r.$container,i=t.$type;for(;!(0,tP.s7)(n);)((0,tP.IZ)(n)||(0,tP.jp)(n)||(0,tP.cY)(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}(e,t),n=e.parser.getRule(r);if(!n)throw Error(`Rule "${r}" not found."`);return n}function rD(e,t){let r=e.tokens[t];if(!r)throw Error(`Token "${t}" not found."`);return r}var rF=r(35046),rU=r(29005),rG=r(82609),rK=r(59357);let rB=0,rj=Symbol("OperationCancelled");async function rV(e){if(e===rG.XO.None)return;let t=performance.now();if(t-rB>=10&&(rB=t,await new Promise(e=>{"undefined"==typeof setImmediate?setTimeout(e,0):setImmediate(e)}),rB=performance.now()),e.isCancellationRequested)throw rj}class rH{constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}}class rW{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){for(let t of e)if(rW.isIncremental(t)){let e=rX(t.range),r=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,r)+t.text+this._content.substring(n,this._content.length);let i=Math.max(e.start.line,0),a=Math.max(e.end.line,0),s=this._lineOffsets,o=rz(t.text,!1,r);if(a-i===o.length)for(let e=0,t=o.length;e<t;e++)s[e+i+1]=o[e];else o.length<1e4?s.splice(i+1,a-i,...o):this._lineOffsets=s=s.slice(0,i+1).concat(o,s.slice(a+1));let l=t.text.length-(n-r);if(0!==l)for(let e=i+1+o.length,t=s.length;e<t;e++)s[e]=s[e]+l}else if(rW.isFull(t))this._content=t.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=t}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=rz(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return e=this.ensureBeforeEOL(e,t[i]),{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let n=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(r+e.character,n);return this.ensureBeforeEOL(i,r)}ensureBeforeEOL(e,t){for(;e>t&&rY(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}static isFull(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}}function rz(e,t,r=0){let n=t?[r]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);rY(i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function rY(e){return 13===e||10===e}function rX(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function rq(e){let t=rX(e.range);return t!==e.range?{newText:e.newText,range:t}:e}(es=tI||(tI={})).create=function(e,t,r,n){return new rW(e,t,r,n)},es.update=function(e,t,r){if(e instanceof rW)return e.update(t,r),e;throw Error("TextDocument.update: document must be created by TextDocument.create")},es.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),a=t.slice(n);e(i,r),e(a,r);let s=0,o=0,l=0;for(;s<i.length&&o<a.length;)0>=r(i[s],a[o])?t[l++]=i[s++]:t[l++]=a[o++];for(;s<i.length;)t[l++]=i[s++];for(;o<a.length;)t[l++]=a[o++];return t}(t.map(rq),(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=0,a=[];for(let t of n){let n=e.offsetAt(t.range.start);if(n<i)throw Error("Overlapping edit");n>i&&a.push(r.substring(i,n)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(r.substr(i)),a.join("")};var rQ=r(43294);(eo=tS||(tS={}))[eo.Changed=0]="Changed",eo[eo.Parsed=1]="Parsed",eo[eo.IndexedContent=2]="IndexedContent",eo[eo.ComputedScopes=3]="ComputedScopes",eo[eo.Linked=4]="Linked",eo[eo.IndexedReferences=5]="IndexedReferences",eo[eo.Validated=6]="Validated";class rZ{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=rG.XO.None){let r=await this.fileSystemProvider.readFile(e);return this.createAsync(e,r,t)}fromTextDocument(e,t,r){return(t=null!=t?t:rQ.r.parse(e.uri),rG.XO.is(r))?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return rG.XO.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if("string"==typeof t){let n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}if("$model"in t){let r={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,e)}{let n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if("string"==typeof t){let n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}{let n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let i;if(r)i={parseResult:e,uri:t,state:tS.Parsed,references:[],textDocument:r};else{let r=this.createTextDocumentGetter(t,n);i={parseResult:e,uri:t,state:tS.Parsed,references:[],get textDocument(){return r()}}}return e.value.$document=i,i}async update(e,t){var r,n;let i=null==(r=e.parseResult.value.$cstNode)?void 0:r.root.fullText,a=null==(n=this.textDocuments)?void 0:n.get(e.uri.toString()),s=a?a.getText():await this.fileSystemProvider.readFile(e.uri);if(a)Object.defineProperty(e,"textDocument",{value:a});else{let t=this.createTextDocumentGetter(e.uri,s);Object.defineProperty(e,"textDocument",{get:t})}return i!==s&&(e.parseResult=await this.parseAsync(e.uri,s,t),e.parseResult.value.$document=e),e.state=tS.Parsed,e}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){let r,n=this.serviceRegistry;return()=>null!=r?r:r=tI.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,null!=t?t:"")}}class rJ{constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return(0,rL.Td)(this.documentMap.values())}addDocument(e){let t=e.uri.toString();if(this.documentMap.has(t))throw Error(`A document with the URI '${t}' is already present.`);this.documentMap.set(t,e)}getDocument(e){let t=e.toString();return this.documentMap.get(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r)),r}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(e=>(this.addDocument(e),e));{let r=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(r),r}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let t=e.toString(),r=this.documentMap.get(t);return r&&(this.serviceRegistry.getServices(e).references.Linker.unlink(r),r.state=tS.Changed,r.precomputedScopes=void 0,r.diagnostics=void 0),r}deleteDocument(e){let t=e.toString(),r=this.documentMap.get(t);return r&&(r.state=tS.Changed,this.documentMap.delete(t)),r}}let r0=Symbol("ref_resolving");class r1{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,t=rG.XO.None){for(let r of(0,rh.jm)(e.parseResult.value))await rV(t),(0,rh.DM)(r).forEach(t=>this.doLink(t,e))}doLink(e,t){var r;let n=e.reference;if(void 0===n._ref){n._ref=r0;try{let t=this.getCandidate(e);if((0,rK.Zl)(t))n._ref=t;else if(n._nodeDescription=t,this.langiumDocuments().hasDocument(t.documentUri)){let r=this.loadAstNode(t);n._ref=null!=r?r:this.createLinkingError(e,t)}else n._ref=void 0}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let t=null!=(r=i.message)?r:String(i);n._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${n.$refText}': ${t}`})}t.references.push(n)}}unlink(e){for(let t of e.references)delete t._ref,delete t._nodeDescription;e.references=[]}getCandidate(e){let t=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return null!=t?t:this.createLinkingError(e)}buildReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,get ref(){var s;if((0,rK.ng)(this._ref))return this._ref;if((0,rK.Nr)(this._nodeDescription)){let r=i.loadAstNode(this._nodeDescription);this._ref=null!=r?r:i.createLinkingError({reference:a,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){this._ref=r0;let r=(0,rh.cQ)(e).$document,n=i.getLinkedNode({reference:a,container:e,property:t});if(n.error&&r&&r.state<tS.ComputedScopes)return this._ref=void 0;this._ref=null!=(s=n.node)?s:n.error,this._nodeDescription=n.descr,null==r||r.references.push(this)}else if(this._ref===r0)throw Error(`Cyclic reference resolution detected: ${i.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${n}')`);return(0,rK.ng)(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return(0,rK.Zl)(this._ref)?this._ref:void 0}};return a}getLinkedNode(e){var t;try{let t=this.getCandidate(e);if((0,rK.Zl)(t))return{error:t};let r=this.loadAstNode(t);if(r)return{node:r,descr:t};return{descr:t,error:this.createLinkingError(e,t)}}catch(n){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,n);let r=null!=(t=n.message)?t:String(n);return{error:Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${e.reference.$refText}': ${r}`})}}}loadAstNode(e){if(e.node)return e.node;let t=this.langiumDocuments().getDocument(e.documentUri);if(t)return this.astNodeLocator.getAstNode(t.parseResult.value,e.path)}createLinkingError(e,t){let r=(0,rh.cQ)(e.container).$document;r&&r.state<tS.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);let n=this.reflection.getReferenceType(e);return Object.assign(Object.assign({},e),{message:`Could not resolve reference to ${n} named '${e.reference.$refText}'.`,targetDescription:t})}}class r2{getName(e){if("string"==typeof e.name)return e.name}getNameNode(e){return(0,tO.qO)(e.$cstNode,"name")}}(el=tN||(tN={})).basename=rQ.A.basename,el.dirname=rQ.A.dirname,el.extname=rQ.A.extname,el.joinPath=rQ.A.joinPath,el.resolvePath=rQ.A.resolvePath,el.equals=function(e,t){return(null==e?void 0:e.toString())===(null==t?void 0:t.toString())},el.relative=function(e,t){let r="string"==typeof e?e:e.path,n="string"==typeof t?t:t.path,i=r.split("/").filter(e=>e.length>0),a=n.split("/").filter(e=>e.length>0),s=0;for(;s<i.length&&i[s]===a[s];s++);return"../".repeat(i.length-s)+a.slice(s).join("/")},el.normalize=function(e){return rQ.r.parse(e.toString()).toString()};class r3{constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let t=(0,tO.Rp)(e),r=e.astNode;if(t&&r){let n=r[t.feature];if((0,rK.A_)(n))return n.ref;if(Array.isArray(n)){for(let t of n)if((0,rK.A_)(t)&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return t.ref}}if(r){let t=this.nameProvider.getNameNode(r);if(t&&(t===e||(0,tb.pO)(e,t)))return r}}}findDeclarationNode(e){let t=this.findDeclaration(e);if(null==t?void 0:t.$cstNode){let e=this.nameProvider.getNameNode(t);return null!=e?e:t.$cstNode}}findReferences(e,t){let r=[];if(t.includeDeclaration){let t=this.getReferenceToSelf(e);t&&r.push(t)}let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(e=>tN.equals(e.sourceUri,t.documentUri))),r.push(...n),(0,rL.Td)(r)}getReferenceToSelf(e){let t=this.nameProvider.getNameNode(e);if(t){let r=(0,rh.YE)(e),n=this.nodeLocator.getAstNodePath(e);return{sourceUri:r.uri,sourcePath:n,targetUri:r.uri,targetPath:n,segment:(0,tb.SX)(t),local:!0}}}}class r4{constructor(e){if(this.map=new Map,e)for(const[t,r]of e)this.add(t,r)}get size(){return rL.iD.sum((0,rL.Td)(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{let r=this.map.get(e);if(r){let n=r.indexOf(t);if(n>=0)return 1===r.length?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){var t;return null!=(t=this.map.get(e))?t:[]}has(e,t){if(void 0===t)return this.map.has(e);{let r=this.map.get(e);return!!r&&r.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(t=>e(t,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return(0,rL.Td)(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return(0,rL.Td)(this.map.keys())}values(){return(0,rL.Td)(this.map.values()).flat()}entriesGroupedByKey(){return(0,rL.Td)(this.map.entries())}}class r9{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}}class r7{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,t=rG.XO.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,t)}async computeExportsForNode(e,t,r=rh.VN,n=rG.XO.None){let i=[];for(let a of(this.exportNode(e,i,t),r(e)))await rV(n),this.exportNode(a,i,t);return i}exportNode(e,t,r){let n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async computeLocalScopes(e,t=rG.XO.None){let r=e.parseResult.value,n=new r4;for(let i of(0,rh.Uo)(r))await rV(t),this.processNode(i,e,n);return n}processNode(e,t,r){let n=e.$container;if(n){let i=this.nameProvider.getName(e);i&&r.add(n,this.descriptions.createDescription(e,i,t))}}}class r5{constructor(e,t,r){var n;this.elements=e,this.outerScope=t,this.caseInsensitive=null!=(n=null==r?void 0:r.caseInsensitive)&&n}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?this.elements.find(t=>t.name.toLowerCase()===e.toLowerCase()):this.elements.find(t=>t.name===e);return t||(this.outerScope?this.outerScope.getElement(e):void 0)}}class r8{constructor(e,t,r){var n;for(const t of(this.elements=new Map,this.caseInsensitive=null!=(n=null==r?void 0:r.caseInsensitive)&&n,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getAllElements(){let e=(0,rL.Td)(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class r6{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}}class ne extends r6{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){let r=t();return this.cache.set(e,r),r}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class nt extends r6{constructor(e){super(),this.cache=new Map,this.converter=null!=e?e:e=>e}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();let n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){let e=r();return n.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){let t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){let t=this.converter(e),r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}}class nr extends ne{constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{t.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}class nn{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new nr(e.shared)}getScope(e){let t=[],r=this.reflection.getReferenceType(e),n=(0,rh.YE)(e.container).precomputedScopes;if(n){let i=e.container;do{let e=n.get(i);e.length>0&&t.push((0,rL.Td)(e).filter(e=>this.reflection.isSubtype(e.type,r))),i=i.$container}while(i)}let i=this.getGlobalScope(r,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,r){return new r5((0,rL.Td)(e),t,r)}createScopeForNodes(e,t,r){return new r5((0,rL.Td)(e).map(e=>{let t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable(),t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new r8(this.indexManager.allElements(e)))}}function ni(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}class na{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){let r=null!=t?t:{},n=null==t?void 0:t.replacer,i=(e,t)=>this.replacer(e,t,r),a=n?(e,t)=>n(e,t,i):i;try{return this.currentDocument=(0,rh.YE)(e),JSON.stringify(e,a,null==t?void 0:t.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let r=JSON.parse(e);return this.linkNode(r,r,null!=t?t:{}),r}replacer(e,t,{refText:r,sourceText:n,textRegions:i,comments:a,uriConverter:s}){var o,l,u,c;if(!this.ignoreProperties.has(e)){if((0,rK.A_)(t)){let e=t.ref,n=r?t.$refText:void 0;if(!e)return{$error:null!=(l=null==(o=t.error)?void 0:o.message)?l:"Could not resolve reference",$refText:n};{let r=(0,rh.YE)(e),i="";this.currentDocument&&this.currentDocument!==r&&(i=s?s(r.uri,t):r.uri.toString());let a=this.astNodeLocator.getAstNodePath(e);return{$ref:`${i}#${a}`,$refText:n}}}if(!(0,rK.ng)(t))return t;{let r;if(i&&(r=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},t)),(!e||t.$document)&&(null==r?void 0:r.$textRegion)&&(r.$textRegion.documentURI=null==(u=this.currentDocument)?void 0:u.uri.toString())),n&&!e&&(null!=r||(r=Object.assign({},t)),r.$sourceText=null==(c=t.$cstNode)?void 0:c.text),a){null!=r||(r=Object.assign({},t));let e=this.commentProvider.getComment(t);e&&(r.$comment=e.replace(/\r/g,""))}return null!=r?r:t}}}addAstNodeRegionWithAssignmentsTo(e){let t=e=>({offset:e.offset,end:e.end,length:e.length,range:e.range});if(e.$cstNode){let r=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter(e=>!e.startsWith("$")).forEach(n=>{let i=(0,tO.Bd)(e.$cstNode,n).map(t);0!==i.length&&(r[n]=i)}),e}}linkNode(e,t,r,n,i,a){for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){let s=i[a];ni(s)?i[a]=this.reviveReference(e,n,t,s,r):(0,rK.ng)(s)&&this.linkNode(s,t,r,e,n,a)}else ni(i)?e[n]=this.reviveReference(e,n,t,i,r):(0,rK.ng)(i)&&this.linkNode(i,t,r,e,n);e.$container=n,e.$containerProperty=i,e.$containerIndex=a}reviveReference(e,t,r,n,i){let a=n.$refText,s=n.$error;if(n.$ref){let e=this.getRefNode(r,n.$ref,i.uriConverter);if((0,rK.ng)(e))return a||(a=this.nameProvider.getName(e)),{$refText:null!=a?a:"",ref:e};s=e}if(s){let r={$refText:null!=a?a:""};return r.error={container:e,property:t,message:s,reference:r},r}}getRefNode(e,t,r){try{let n=t.indexOf("#");if(0===n){let r=this.astNodeLocator.getAstNode(e,t.substring(1));if(!r)return"Could not resolve path: "+t;return r}if(n<0){let e=r?r(t):rQ.r.parse(t),n=this.langiumDocuments.getDocument(e);if(!n)return"Could not find document for URI: "+t;return n.parseResult.value}let i=r?r(t.substring(0,n)):rQ.r.parse(t.substring(0,n)),a=this.langiumDocuments.getDocument(i);if(!a)return"Could not find document for URI: "+t;if(n===t.length-1)return a.parseResult.value;let s=this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(n+1));if(!s)return"Could not resolve URI: "+t;return s}catch(e){return String(e)}}}class ns{get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=null==e?void 0:e.workspace.TextDocuments}register(e){let t=e.LanguageMetaData;for(let r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);this.languageIdMap.set(t.languageId,e),1===this.languageIdMap.size?this.singleton=e:this.singleton=void 0}getServices(e){var t,r;if(void 0!==this.singleton)return this.singleton;if(0===this.languageIdMap.size)throw Error("The service registry is empty. Use `register` to register the services of a language.");let n=null==(r=null==(t=this.textDocuments)?void 0:t.get(e))?void 0:r.languageId;if(void 0!==n){let e=this.languageIdMap.get(n);if(e)return e}let i=tN.extname(e),a=this.fileExtensionMap.get(i);if(!a)if(n)throw Error(`The service registry contains no services for the extension '${i}' for language '${n}'.`);else throw Error(`The service registry contains no services for the extension '${i}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch(e){return!1}}get all(){return Array.from(this.languageIdMap.values())}}(tC||(tC={})).all=["fast","slow","built-in"];class no{constructor(e){this.entries=new r4,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if("built-in"===r)throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let e of i){let i={check:this.wrapValidationException(e,t),category:r};this.addEntry(n,i)}else if("function"==typeof i){let e={check:this.wrapValidationException(i,t),category:r};this.addEntry(n,e)}else(0,rw.d)(i)}wrapValidationException(e,t){return async(r,n,i)=>{await this.handleException(()=>e.call(t,r,n,i),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(i){if(i===rj)throw i;console.error(`${t}:`,i),i instanceof Error&&i.stack&&console.error(i.stack);let e=i instanceof Error?i.message:String(i);r("error",`${t}: ${e}`,{node:n})}}addEntry(e,t){if("AstNode"===e)return void this.entries.add("AstNode",t);for(let r of this.reflection.getAllSubTypes(e))this.entries.add(r,t)}getChecks(e,t){let r=(0,rL.Td)(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(e=>t.includes(e.category))),r.map(e=>e.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,i,a,s)=>{await this.handleException(()=>e.call(r,n,i,a,s),t,i,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}class nl{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,t={},r=rG.XO.None){let n=e.parseResult,i=[];if((await rV(r),!t.categories||t.categories.includes("built-in"))&&(this.processLexingErrors(n,i,t),t.stopAfterLexingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.LexingError})||(this.processParsingErrors(n,i,t),t.stopAfterParsingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.ParsingError}))||(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>{var t;return(null==(t=e.data)?void 0:t.code)===tw.LinkingError}))))return i;try{i.push(...await this.validateAst(n.value,t,r))}catch(e){if(e===rj)throw e;console.error("An error occurred during validation:",e)}return await rV(r),i}processLexingErrors(e,t,r){var n,i,a;for(let r of[...e.lexerErrors,...null!=(i=null==(n=e.lexerReport)?void 0:n.diagnostics)?i:[]]){let e=null!=(a=r.severity)?a:"error",n={severity:nu(e),range:{start:{line:r.line-1,character:r.column-1},end:{line:r.line-1,character:r.column+r.length-1}},message:r.message,data:function(e){switch(e){case"error":return{code:tw.LexingError};case"warning":return{code:tw.LexingWarning};case"info":return{code:tw.LexingInfo};case"hint":return{code:tw.LexingHint};default:throw Error("Invalid diagnostic severity: "+e)}}(e),source:this.getSource()};t.push(n)}}processParsingErrors(e,t,r){for(let r of e.parserErrors){let e;if(isNaN(r.token.startOffset)){if("previousToken"in r){let t=r.previousToken;if(isNaN(t.startOffset)){let t={line:0,character:0};e={start:t,end:t}}else{let r={line:t.endLine-1,character:t.endColumn};e={start:r,end:r}}}}else e=(0,tb.wf)(r.token);if(e){let n={severity:nu("error"),range:e,message:r.message,data:{code:tw.ParsingError},source:this.getSource()};t.push(n)}}}processLinkingErrors(e,t,r){for(let r of e.references){let e=r.error;if(e){let r={node:e.container,property:e.property,index:e.index,data:{code:tw.LinkingError,containerType:e.container.$type,property:e.property,refText:e.reference.$refText}};t.push(this.toDiagnostic("error",e.message,r))}}}async validateAst(e,t,r=rG.XO.None){let n=[],i=(e,t,r)=>{n.push(this.toDiagnostic(e,t,r))};return await this.validateAstBefore(e,t,i,r),await this.validateAstNodes(e,t,i,r),await this.validateAstAfter(e,t,i,r),n}async validateAstBefore(e,t,r,n=rG.XO.None){var i;for(let a of this.validationRegistry.checksBefore)await rV(n),await a(e,r,null!=(i=t.categories)?i:[],n)}async validateAstNodes(e,t,r,n=rG.XO.None){await Promise.all((0,rh.jm)(e).map(async e=>{for(let i of(await rV(n),this.validationRegistry.getChecks(e.$type,t.categories)))await i(e,r,n)}))}async validateAstAfter(e,t,r,n=rG.XO.None){var i;for(let a of this.validationRegistry.checksAfter)await rV(n),await a(e,r,null!=(i=t.categories)?i:[],n)}toDiagnostic(e,t,r){var n;let i;return{message:t,range:(n=r).range?n.range:("string"==typeof n.property?i=(0,tO.qO)(n.node.$cstNode,n.property,n.index):"string"==typeof n.keyword&&(i=(0,tO.SS)(n.node.$cstNode,n.keyword,n.index)),null!=i||(i=n.node.$cstNode),i)?i.range:{start:{line:0,character:0},end:{line:0,character:0}},severity:nu(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function nu(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+e)}}(eu=tw||(tw={})).LexingError="lexing-error",eu.LexingWarning="lexing-warning",eu.LexingInfo="lexing-info",eu.LexingHint="lexing-hint",eu.ParsingError="parsing-error",eu.LinkingError="linking-error";class nc{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){let n,i=null!=r?r:(0,rh.YE)(e);null!=t||(t=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!t)throw Error(`Node at path ${a} has no name.`);let s=()=>{var t;return null!=n?n:n=(0,tb.SX)(null!=(t=this.nameProvider.getNameNode(e))?t:e.$cstNode)};return{node:e,name:t,get nameSegment(){return s()},selectionSegment:(0,tb.SX)(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}}class nd{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=rG.XO.None){let r=[],n=e.parseResult.value;for(let e of(0,rh.jm)(n))await rV(t),(0,rh.DM)(e).filter(e=>!(0,rK.Zl)(e)).forEach(e=>{let t=this.createDescription(e);t&&r.push(t)});return r}createDescription(e){let t=e.reference.$nodeDescription,r=e.reference.$refNode;if(!t||!r)return;let n=(0,rh.YE)(e.container).uri;return{sourceUri:n,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:t.documentUri,targetPath:t.path,segment:(0,tb.SX)(r),local:tN.equals(t.documentUri,n)}}}class nh{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||0===t.length)return e;let r=t.indexOf(this.indexSeparator);if(r>0){let n=t.substring(0,r),i=parseInt(t.substring(r+1)),a=e[n];return null==a?void 0:a[i]}return e[t]},e)}}var nf=r(75347);class np{constructor(e){this._ready=new rH,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new nf.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var t,r;this.workspaceConfig=null!=(r=null==(t=e.capabilities.workspace)?void 0:t.configuration)&&r}async initialized(e){if(this.workspaceConfig){if(e.register){let t=this.serviceRegistry.all;e.register({section:t.map(e=>this.toSectionName(e.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let t=this.serviceRegistry.all.map(e=>({section:this.toSectionName(e.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,r[t])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(t=>{let r=e.settings[t];this.updateSectionConfiguration(t,r),this.onConfigurationSectionUpdateEmitter.fire({section:t,configuration:r})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;let r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}(tL||(tL={})).create=function(e){return{dispose:async()=>await e()}};class nm{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new r4,this.documentPhaseListeners=new r4,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=tS.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=rG.XO.None){var n,i;for(let r of e){let e=r.uri.toString();if(r.state===tS.Validated){if("boolean"==typeof t.validation&&t.validation)r.state=tS.IndexedReferences,r.diagnostics=void 0,this.buildState.delete(e);else if("object"==typeof t.validation){let a=this.buildState.get(e),s=null==(n=null==a?void 0:a.result)?void 0:n.validationChecks;if(s){let n=(null!=(i=t.validation.categories)?i:tC.all).filter(e=>!s.includes(e));n.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:Object.assign(Object.assign({},t.validation),{categories:n})},result:a.result}),r.state=tS.IndexedReferences)}}}else this.buildState.delete(e)}this.currentState=tS.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=rG.XO.None){for(let e of(this.currentState=tS.Changed,t))this.langiumDocuments.deleteDocument(e),this.buildState.delete(e.toString()),this.indexManager.remove(e);for(let t of e){if(!this.langiumDocuments.invalidateDocument(t)){let e=this.langiumDocumentFactory.fromModel({$type:"INVALID"},t);e.state=tS.Changed,this.langiumDocuments.addDocument(e)}this.buildState.delete(t.toString())}let n=(0,rL.Td)(e).concat(t).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!n.has(e.uri.toString())&&this.shouldRelink(e,n)).forEach(e=>{this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e),e.state=Math.min(e.state,tS.ComputedScopes),e.diagnostics=void 0}),await this.emitUpdate(e,t),await rV(r);let i=this.sortDocuments(this.langiumDocuments.all.filter(e=>{var t;return e.state<tS.Linked||!(null==(t=this.buildState.get(e.uri.toString()))?void 0:t.completed)}).toArray());await this.buildDocuments(i,this.updateBuildOptions,r)}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){var t;return!!(null==(t=this.textDocuments)?void 0:t.get(e.uri))}shouldRelink(e,t){return!!e.references.some(e=>void 0!==e.error)||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),tL.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,tS.Parsed,r,e=>this.langiumDocumentFactory.update(e,r)),await this.runCancelable(e,tS.IndexedContent,r,e=>this.indexManager.updateContent(e,r)),await this.runCancelable(e,tS.ComputedScopes,r,async e=>{let t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.precomputedScopes=await t.computeLocalScopes(e,r)}),await this.runCancelable(e,tS.Linked,r,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,r)),await this.runCancelable(e,tS.IndexedReferences,r,e=>this.indexManager.updateReferences(e,r));let n=e.filter(e=>this.shouldValidate(e));for(let t of(await this.runCancelable(n,tS.Validated,r,e=>this.validate(e,r)),e)){let e=this.buildState.get(t.uri.toString());e&&(e.completed=!0)}}prepareBuild(e,t){for(let r of e){let e=r.uri.toString(),n=this.buildState.get(e);(!n||n.completed)&&this.buildState.set(e,{completed:!1,options:t,result:null==n?void 0:n.result})}}async runCancelable(e,t,r,n){for(let i of e.filter(e=>e.state<t))await rV(r),await n(i),i.state=t,await this.notifyDocumentPhase(i,t,r);let i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),tL.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),tL.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;if(t&&"path"in t?n=t:r=t,null!=r||(r=rG.XO.None),n){let t=this.langiumDocuments.getDocument(n);if(t&&t.state>e)return Promise.resolve(n)}return this.currentState>=e?Promise.resolve(void 0):r.isCancellationRequested?Promise.reject(rj):new Promise((t,i)=>{let a=this.onBuildPhase(e,()=>{if(a.dispose(),s.dispose(),n){let e=this.langiumDocuments.getDocument(n);t(null==e?void 0:e.uri)}else t(void 0)}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i(rj)})})}async notifyDocumentPhase(e,t,r){for(let n of this.documentPhaseListeners.get(t).slice())try{await n(e,r)}catch(e){if(e!==rj)throw e}}async notifyBuildPhase(e,t,r){if(0!==e.length)for(let n of this.buildPhaseListeners.get(t).slice())await rV(r),await n(e,r)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){var r;let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e).validation,a="object"==typeof i?i:void 0,s=await n.validateDocument(e,a,t);e.diagnostics?e.diagnostics.push(...s):e.diagnostics=s;let o=this.buildState.get(e.uri.toString());if(o){null!=o.result||(o.result={});let e=null!=(r=null==a?void 0:a.categories)?r:tC.all;o.result.validationChecks?o.result.validationChecks.push(...e):o.result.validationChecks=[...e]}}getBuildOptions(e){var t,r;return null!=(r=null==(t=this.buildState.get(e.uri.toString()))?void 0:t.options)?r:{}}}class ng{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new nt,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let r=(0,rh.YE)(e).uri,n=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{tN.equals(e.targetUri,r)&&e.targetPath===t&&n.push(e)})}),(0,rL.Td)(n)}allElements(e,t){let r=(0,rL.Td)(this.symbolIndex.keys());return t&&(r=r.filter(e=>!t||t.has(e))),r.map(t=>this.getFileDescriptions(t,e)).flat()}getFileDescriptions(e,t){var r;return t?this.symbolByTypeIndex.get(e,t,()=>{var r;return(null!=(r=this.symbolIndex.get(e))?r:[]).filter(e=>this.astReflection.isSubtype(e.type,t))}):null!=(r=this.symbolIndex.get(e))?r:[]}remove(e){let t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t),this.referenceIndex.delete(t)}async updateContent(e,t=rG.XO.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.references.ScopeComputation.computeExports(e,t),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=rG.XO.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let r=this.referenceIndex.get(e.uri.toString());return!!r&&r.some(e=>!e.local&&t.has(e.targetUri.toString()))}}class ny{constructor(e){this.initialBuildOptions={},this._ready=new rH,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var t;this.folders=null!=(t=e.workspaceFolders)?t:void 0}initialized(e){return this.mutex.write(e=>{var t;return this.initializeWorkspace(null!=(t=this.folders)?t:[],e)})}async initializeWorkspace(e,t=rG.XO.None){let r=await this.performStartup(e);await rV(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){let t=this.serviceRegistry.all.flatMap(e=>e.LanguageMetaData.fileExtensions),r=[],n=e=>{r.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)};return await this.loadAdditionalDocuments(e,n),await Promise.all(e.map(e=>[e,this.getRootFolder(e)]).map(async e=>this.traverseFolder(...e,t,n))),this._ready.resolve(),r}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return rQ.r.parse(e.uri)}async traverseFolder(e,t,r,n){let i=await this.fileSystemProvider.readDirectory(t);await Promise.all(i.map(async t=>{this.includeEntry(e,t,r)&&(t.isDirectory?await this.traverseFolder(e,t.uri,r,n):t.isFile&&n(await this.langiumDocuments.getOrCreateDocument(t.uri)))}))}includeEntry(e,t,r){let n=tN.basename(t.uri);if(n.startsWith("."))return!1;if(t.isDirectory)return"node_modules"!==n&&"out"!==n;if(t.isFile){let e=tN.extname(t.uri);return r.includes(e)}return!1}}class nT{buildUnexpectedCharactersMessage(e,t,r,n,i){return tM.PW.buildUnexpectedCharactersMessage(e,t,r,n,i)}buildUnableToPopLexerModeMessage(e){return tM.PW.buildUnableToPopLexerModeMessage(e)}}let nA={mode:"full"};class nv{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const r=n$(t)?Object.values(t):t,n="production"===e.LanguageMetaData.mode;this.chevrotainLexer=new tM.JG(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=nA){var r,n,i;let a=this.chevrotainLexer.tokenize(e);return{tokens:a.tokens,errors:a.errors,hidden:null!=(r=a.groups.hidden)?r:[],report:null==(i=(n=this.tokenBuilder).flushLexingReport)?void 0:i.call(n,e)}}toTokenTypeDictionary(e){if(n$(e))return e;let t=nR(e)?Object.values(e.modes).flat():e,r={};return t.forEach(e=>r[e.name]=e),r}}function nR(e){return e&&"modes"in e&&"defaultMode"in e}function n$(e){return!(Array.isArray(e)&&(0===e.length||"name"in e[0]))&&!nR(e)}function nE(e){return("string"==typeof e?e:e.text).split(t_.TH)}let nk=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,nx=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu,nI=/\S/,nS=/\s*$/;function nN(e,t){let r=e.substring(t).match(nI);return r?t+r.index:e.length}function nC(e){let t=e.tokens[e.index],r=t,n=t,i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;){var a;i.push("inline-tag"===(a=e).tokens[a.index].type?nw(a,!0):nL(a)),n=t,t=e.tokens[e.index]}return new nM(i,em.create(r.range.start,n.range.end))}function nw(e,t){let r=e.tokens[e.index++],n=r.content.substring(1),i=e.tokens[e.index];if((null==i?void 0:i.type)==="text")if(t){let i=nL(e);return new nP(n,new nM([i],i.range),t,em.create(r.range.start,i.range.end))}else{let i=nC(e);return new nP(n,i,t,em.create(r.range.start,i.range.end))}{let e=r.range;return new nP(n,new nM([],e),t,e)}}function nL(e){let t=e.tokens[e.index++];return new nD(t.content,t.range)}function nb(e){if(!e)return nb({start:"/**",end:"*/",line:"*"});let{start:t,end:r,line:n}=e;return{start:nO(t,!0),end:nO(r,!1),line:nO(n,!0)}}function nO(e,t){if("string"!=typeof e&&"object"!=typeof e)return e;{let r="string"==typeof e?(0,t_.Nt)(e):e.source;return t?RegExp(`^\\s*${r}`):RegExp(`\\s*${r}\\s*$`)}}class n_{constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let t of this.elements)if(0===e.length)e=t.toString();else{let r=t.toString();e+=nF(e)+r}return e.trim()}toMarkdown(e){let t="";for(let r of this.elements)if(0===t.length)t=r.toMarkdown(e);else{let n=r.toMarkdown(e);t+=nF(t)+n}return t.trim()}}class nP{constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`,t=this.content.toString();return(1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
|
|
59
59
|
${t}`),this.inline)?`{${e}}`:e}toMarkdown(e){var t,r;return null!=(r=null==(t=null==e?void 0:e.renderTag)?void 0:t.call(e,this))?r:this.toMarkdownDefault(e)}toMarkdownDefault(e){let t=this.content.toMarkdown(e);if(this.inline){let r=function(e,t,r){var n,i;if("linkplain"===e||"linkcode"===e||"link"===e){let a=t.indexOf(" "),s=t;if(a>0){let e=nN(t,a);s=t.substring(e),t=t.substring(0,a)}return("linkcode"===e||"link"===e&&"code"===r.link)&&(s=`\`${s}\``),null!=(i=null==(n=r.renderLink)?void 0:n.call(r,t,s))?i:function(e,t){try{return rQ.r.parse(e,!0),`[${t}](${e})`}catch(t){return e}}(t,s)}}(this.name,t,null!=e?e:{});if("string"==typeof r)return r}let r="";(null==e?void 0:e.tag)==="italic"||(null==e?void 0:e.tag)===void 0?r="*":(null==e?void 0:e.tag)==="bold"?r="**":(null==e?void 0:e.tag)==="bold-italic"&&(r="***");let n=`${r}@${this.name}${r}`;return(1===this.content.inlines.length?n=`${n} — ${t}`:this.content.inlines.length>1&&(n=`${n}
|
|
60
|
-
${t}`),this.inline)?`{${n}}`:n}}class nM{constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];t+=n.toMarkdown(e),i&&i.range.start.line>n.range.start.line&&(t+="\n")}return t}}class nD{constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}}function nF(e){return e.endsWith("\n")?"\n":"\n\n"}class nU{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let t=this.commentProvider.getComment(e);if(t&&function(e,t){let r=nb(void 0),n=nE(e);if(0===n.length)return!1;let i=n[0],a=n[n.length-1],s=r.start,o=r.end;return!!(null==s?void 0:s.exec(i))&&!!(null==o?void 0:o.exec(a))}(t)){let r,n;return("string"==typeof t?n=void 0:n=t.range.start,r=void 0,!n&&(n=ep.create(0,0)),function(e){var t,r,n,i;let a=ep.create(e.position.line,e.position.character);if(0===e.tokens.length)return new n_([],em.create(a,a));let s=[];for(;e.index<e.tokens.length;){let t=function(e,t){let r=e.tokens[e.index];return"tag"===r.type?nw(e,!1):"text"===r.type||"inline-tag"===r.type?nC(e):(function(e,t){if(t){let r=new nD("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}(r,t),void e.index++)}(e,s[s.length-1]);t&&s.push(t)}let o=null!=(r=null==(t=s[0])?void 0:t.range.start)?r:a,l=null!=(i=null==(n=s[s.length-1])?void 0:n.range.end)?i:a;return new n_(s,em.create(o,l))}({index:0,tokens:function(e){var t,r,n;let i=[],a=e.position.line,s=e.position.character;for(let o=0;o<e.lines.length;o++){let l=0===o,u=o===e.lines.length-1,c=e.lines[o],d=0;if(l&&e.options.start){let r=null==(t=e.options.start)?void 0:t.exec(c);r&&(d=r.index+r[0].length)}else{let t=null==(r=e.options.line)?void 0:r.exec(c);t&&(d=t.index+t[0].length)}if(u){let t=null==(n=e.options.end)?void 0:n.exec(c);t&&(c=c.substring(0,t.index))}if(nN(c=c.substring(0,function(e){let t=e.match(nS);if(t&&"number"==typeof t.index)return t.index}(c)),d)>=c.length){if(i.length>0){let e=ep.create(a,s);i.push({type:"break",content:"",range:em.create(e,e)})}}else{nk.lastIndex=d;let e=nk.exec(c);if(e){let t=e[0],r=e[1],n=ep.create(a,s+d),o=ep.create(a,s+d+t.length);i.push({type:"tag",content:r,range:em.create(n,o)}),d+=t.length,d=nN(c,d)}if(d<c.length){let e=c.substring(d),t=Array.from(e.matchAll(nx));i.push(...function(e,t,r,n){let i=[];if(0===e.length){let e=ep.create(r,n),a=ep.create(r,n+t.length);i.push({type:"text",content:t,range:em.create(e,a)})}else{let a=0;for(let s of e){let e=s.index,o=t.substring(a,e);o.length>0&&i.push({type:"text",content:t.substring(a,e),range:em.create(ep.create(r,a+n),ep.create(r,e+n))});let l=o.length+1,u=s[1];if(i.push({type:"inline-tag",content:u,range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+u.length+n))}),l+=u.length,4===s.length){l+=s[2].length;let e=s[3];i.push({type:"text",content:e,range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+e.length+n))})}else i.push({type:"text",content:"",range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+n))});a=e+s[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:em.create(ep.create(r,a+n),ep.create(r,a+n+s.length))})}return i}(t,e,a,s+d))}}a++,s=0}return i.length>0&&"break"===i[i.length-1].type?i.slice(0,-1):i}({lines:nE(t),position:n,options:nb(r)}),position:n})).toMarkdown({renderLink:(t,r)=>this.documentationLinkRenderer(e,t,r),renderTag:t=>this.documentationTagRenderer(e,t)})}}documentationLinkRenderer(e,t,r){var n;let i=null!=(n=this.findNameInPrecomputedScopes(e,t))?n:this.findNameInGlobalScope(e,t);if(i&&i.nameSegment){let e=i.nameSegment.range.start.line+1,t=i.nameSegment.range.start.character+1,n=i.documentUri.with({fragment:`L${e},${t}`});return`[${r}](${n.toString()})`}}documentationTagRenderer(e,t){}findNameInPrecomputedScopes(e,t){let r=(0,rh.YE)(e).precomputedScopes;if(!r)return;let n=e;do{let e=r.get(n).find(e=>e.name===t);if(e)return e;n=n.$container}while(n)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}}class nG{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var t;return"string"==typeof e.$comment?e.$comment:null==(t=(0,tb.v)(e.$cstNode,this.grammarConfig().multilineCommentRules))?void 0:t.text}}class nK{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}}class nB{constructor(){this.previousTokenSource=new rG.Qi,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let t=(rB=performance.now(),new rG.Qi);return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,r=rG.XO.None){let n=new rH;return e.push({action:t,deferred:n,cancellationToken:r}),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let n=await Promise.resolve().then(()=>e(r));t.resolve(n)}catch(e){e===rj?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class nj{constructor(e){this.grammarElementIdMap=new r9,this.tokenTypeIdMap=new r9,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(e=>Object.assign(Object.assign({},e),{message:e.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let t=new Map,r=new Map;for(let r of(0,rh.jm)(e))t.set(r,{});if(e.$cstNode)for(let t of(0,tb.NS)(e.$cstNode))r.set(t,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))(0,rK.ng)(a)?e.push(this.dehydrateAstNode(a,t)):(0,rK.A_)(a)?e.push(this.dehydrateReference(a,t)):e.push(a)}else(0,rK.ng)(i)?r[n]=this.dehydrateAstNode(i,t):(0,rK.A_)(i)?r[n]=this.dehydrateReference(i,t):void 0!==i&&(r[n]=i);return r}dehydrateReference(e,t){let r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){let r=t.cstNodes.get(e);return(0,rK.br)(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,r.astNode=t.astNodes.get(e.astNode),(0,rK.mD)(e)?r.content=e.content.map(e=>this.dehydrateCstNode(e,t)):(0,rK.FC)(e)&&(r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length,r.startLine=e.range.start.line,r.startColumn=e.range.start.character,r.endLine=e.range.end.line,r.endColumn=e.range.end.character),r}hydrate(e){let t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){let t,r=new Map,n=new Map;for(let t of(0,rh.jm)(e))r.set(t,{});if(e.$cstNode)for(let r of(0,tb.NS)(e.$cstNode)){let e;"fullText"in r?t=e=new rA(r.fullText):"content"in r?e=new ry:"tokenType"in r&&(e=this.hydrateCstLeafNode(r)),e&&(n.set(r,e),e.root=t)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode&&(r.$cstNode=t.cstNodes.get(e.$cstNode)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))(0,rK.ng)(a)?e.push(this.setParent(this.hydrateAstNode(a,t),r)):(0,rK.A_)(a)?e.push(this.hydrateReference(a,r,n,t)):e.push(a)}else(0,rK.ng)(i)?r[n]=this.setParent(this.hydrateAstNode(i,t),r):(0,rK.A_)(i)?r[n]=this.hydrateReference(i,r,n,t):void 0!==i&&(r[n]=i);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){let n=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),n.astNode=t.astNodes.get(e.astNode),(0,rK.mD)(n))for(let i of e.content){let e=this.hydrateCstNode(i,t,r++);n.content.push(e)}return n}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new rg(e.offset,e.length,{start:{line:e.startLine,character:e.startColumn},end:{line:e.endLine,character:e.endColumn}},t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of(0,rh.jm)(this.grammar))(0,tP.r1)(t)&&this.grammarElementIdMap.set(t,e++)}}function nV(e){return{documentation:{CommentProvider:e=>new nG(e),DocumentationProvider:e=>new nU(e)},parser:{AsyncParser:e=>new nK(e),GrammarConfig:e=>(function(e){let t=[];for(let r of e.Grammar.rules)(0,tP.rE)(r)&&(0,tO.eb)(r)&&(0,t_.lU)((0,tO.S)(r))&&t.push(r.name);return{multilineCommentRules:t,nameRegexp:tb.El}})(e),LangiumParser:e=>{var t;let r,n,i;return n=(t=e).Grammar,i=t.parser.Lexer,(r=rb(n,new rk(t),i.definition)).finalize(),r},CompletionParser:e=>{let t,r,n;return t=e.Grammar,r=e.parser.Lexer,rb(t,n=new rS(e),r.definition),n.finalize(),n},ValueConverter:()=>new rU.d,TokenBuilder:()=>new rF.Q,Lexer:e=>new nv(e),ParserErrorMessageProvider:()=>new rI,LexerErrorMessageProvider:()=>new nT},workspace:{AstNodeLocator:()=>new nh,AstNodeDescriptionProvider:e=>new nc(e),ReferenceDescriptionProvider:e=>new nd(e)},references:{Linker:e=>new r1(e),NameProvider:()=>new r2,ScopeProvider:e=>new nn(e),ScopeComputation:e=>new r7(e),References:e=>new r3(e)},serializer:{Hydrator:e=>new nj(e),JsonSerializer:e=>new na(e)},validation:{DocumentValidator:e=>new nl(e),ValidationRegistry:e=>new no(e)},shared:()=>e.shared}}function nH(e){return{ServiceRegistry:e=>new ns(e),workspace:{LangiumDocuments:e=>new rJ(e),LangiumDocumentFactory:e=>new rZ(e),DocumentBuilder:e=>new nm(e),IndexManager:e=>new ng(e),WorkspaceManager:e=>new ny(e),FileSystemProvider:t=>e.fileSystemProvider(t),WorkspaceLock:()=>new nB,ConfigurationProvider:e=>new np(e)}}}},39841:(e,t,r)=>{r.d(t,{D:()=>i});class n{readFile(){throw Error("No file system is available.")}async readDirectory(){return[]}}let i={fileSystemProvider:()=>new n}},43294:(e,t,r)=>{r.d(t,{A:()=>u,r:()=>l});var n=r(40074),i={470:e=>{function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,a=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)r=e.charCodeAt(o);else{if(47===r)break;r=47}if(47===r){if(a===o-1||1===s);else if(a!==o-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2)){if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),a=o,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,a=o,s=0;continue}}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),i=o-a-1;a=o,s=0}else 46===r&&-1!==s?++s:s=-1}return n}var i={resolve:function(){for(var e,i,a="",s=!1,o=arguments.length-1;o>=-1&&!s;o--)o>=0?e=arguments[o]:(void 0===i&&(i=n.cwd()),e=i),t(e),0!==e.length&&(a=e+"/"+a,s=47===e.charCodeAt(0));return a=r(a,!s),s?a.length>0?"/"+a:"/":a.length>0?a:"."},normalize:function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var n=arguments[r];t(n),n.length>0&&(void 0===e?e=n:e+="/"+n)}return void 0===e?".":i.normalize(e)},relative:function(e,r){if(t(e),t(r),e===r||(e=i.resolve(e))===(r=i.resolve(r)))return"";for(var n=1;n<e.length&&47===e.charCodeAt(n);++n);for(var a=e.length,s=a-n,o=1;o<r.length&&47===r.charCodeAt(o);++o);for(var l=r.length-o,u=s<l?s:l,c=-1,d=0;d<=u;++d){if(d===u){if(l>u){if(47===r.charCodeAt(o+d))return r.slice(o+d+1);if(0===d)return r.slice(o+d)}else s>u&&(47===e.charCodeAt(n+d)?c=d:0===d&&(c=0));break}var h=e.charCodeAt(n+d);if(h!==r.charCodeAt(o+d))break;47===h&&(c=d)}var f="";for(d=n+c+1;d<=a;++d)d!==a&&47!==e.charCodeAt(d)||(0===f.length?f+="..":f+="/..");return f.length>0?f+r.slice(o+c):(o+=c,47===r.charCodeAt(o)&&++o,r.slice(o))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,a=!0,s=e.length-1;s>=1;--s)if(47===(r=e.charCodeAt(s))){if(!a){i=s;break}}else a=!1;return -1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var n,i=0,a=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var o=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!s){i=n+1;break}}else -1===l&&(s=!1,l=n+1),o>=0&&(u===r.charCodeAt(o)?-1==--o&&(a=n):(o=-1,a=l))}return i===a?a=l:-1===a&&(a=e.length),e.slice(i,a)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!s){i=n+1;break}}else -1===a&&(s=!1,a=n+1);return -1===a?"":e.slice(i,a)},extname:function(e){t(e);for(var r=-1,n=0,i=-1,a=!0,s=0,o=e.length-1;o>=0;--o){var l=e.charCodeAt(o);if(47!==l)-1===i&&(a=!1,i=o+1),46===l?-1===r?r=o:1!==s&&(s=1):-1!==r&&(s=-1);else if(!a){n=o+1;break}}return -1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":e.slice(r,i)},format:function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},parse:function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),a=47===i;a?(r.root="/",n=1):n=0;for(var s=-1,o=0,l=-1,u=!0,c=e.length-1,d=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===s?s=c:1!==d&&(d=1):-1!==s&&(d=-1);else if(!u){o=c+1;break}return -1===s||-1===l||0===d||1===d&&s===l-1&&s===o+1?-1!==l&&(r.base=r.name=0===o&&a?e.slice(1,l):e.slice(o,l)):(0===o&&a?(r.name=e.slice(1,s),r.base=e.slice(1,l)):(r.name=e.slice(o,s),r.base=e.slice(o,l)),r.ext=e.slice(s,l)),o>0?r.dir=e.slice(0,o-1):a&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};i.posix=i,e.exports=i}},a={};function s(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={exports:{}};return i[e](r,r.exports,s),r.exports}s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{let e;(s.r(o),s.d(o,{URI:()=>u,Utils:()=>v}),"object"==typeof n)?e="win32"===n.platform:"object"==typeof navigator&&(e=navigator.userAgent.indexOf("Windows")>=0);let t=/^\w[\w\d+.-]*$/,r=/^\//,i=/^\/\//;function a(e,n){if(!e.scheme&&n)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!r.test(e.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(i.test(e.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class u{static isUri(e){return e instanceof u||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,i,s=!1){"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",a(this,s))}get fsPath(){return m(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:a}=e;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&a===this.fragment?this:new d(t,r,n,i,a)}static parse(e,t=!1){let r=l.exec(e);return r?new d(r[2]||"",T(r[4]||""),T(r[5]||""),T(r[7]||""),T(r[9]||""),t):new d("","","","","")}static file(t){let r="";if(e&&(t=t.replace(/\\/g,"/")),"/"===t[0]&&"/"===t[1]){let e=t.indexOf("/",2);-1===e?(r=t.substring(2),t="/"):(r=t.substring(2,e),t=t.substring(e)||"/")}return new d("file",r,t,"","")}static from(e){let t=new d(e.scheme,e.authority,e.path,e.query,e.fragment);return a(t,!0),t}toString(e=!1){return g(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof u)return e;{let t=new d(e);return t._formatted=e.external,t._fsPath=e._sep===c?e.fsPath:null,t}}return e}}let c=e?1:void 0;class d extends u{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=m(this,!1)),this._fsPath}toString(e=!1){return e?g(this,!0):(this._formatted||(this._formatted=g(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=c),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}let h={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function f(e,t,r){let n,i=-1;for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),void 0!==n&&(n+=e.charAt(a));else{void 0===n&&(n=e.substr(0,a));let t=h[s];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),n+=t):-1===i&&(i=a)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function p(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=h[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function m(t,r){let n;return n=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&90>=t.path.charCodeAt(1)||t.path.charCodeAt(1)>=97&&122>=t.path.charCodeAt(1))&&58===t.path.charCodeAt(2)?r?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(n=n.replace(/\//g,"\\")),n}function g(e,t){let r=t?p:f,n="",{scheme:i,authority:a,path:s,query:o,fragment:l}=e;if(i&&(n+=i,n+=":"),(a||"file"===i)&&(n+="/",n+="/"),a){let e=a.indexOf("@");if(-1!==e){let t=a.substr(0,e);a=a.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(a=a.toLowerCase()).lastIndexOf(":"))?n+=r(a,!1,!0):(n+=r(a.substr(0,e),!1,!0),n+=a.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){let e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){let e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return o&&(n+="?",n+=r(o,!1,!1)),l&&(n+="#",n+=t?l:f(l,!1,!1)),n}let y=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function T(e){return e.match(y)?e.replace(y,e=>(function e(t){try{return decodeURIComponent(t)}catch{return t.length>3?t.substr(0,3)+e(t.substr(3)):t}})(e)):e}var A,v,R=s(470);let $=R.posix||R;(A=v||(v={})).joinPath=function(e,...t){return e.with({path:$.join(e.path,...t)})},A.resolvePath=function(e,...t){let r=e.path,n=!1;"/"!==r[0]&&(r="/"+r,n=!0);let i=$.resolve(r,...t);return n&&"/"===i[0]&&!e.authority&&(i=i.substring(1)),e.with({path:i})},A.dirname=function(e){if(0===e.path.length||"/"===e.path)return e;let t=$.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},A.basename=function(e){return $.basename(e.path)},A.extname=function(e){return $.extname(e.path)}})();let{URI:l,Utils:u}=o},48233:(e,t,r)=>{r.d(t,{A:()=>o});var n=r(68583),i=r(3585),a=r(73983),s=r(63114);let o=function(e,t){return((0,s.A)(e)?n.A:a.A)(e,(0,i.A)(t,3))}},54348:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(44237);let i=function(e,t,r){for(var i=-1,a=e.length;++i<a;){var s=e[i],o=t(s);if(null!=o&&(void 0===l?o==o&&!(0,n.A)(o):r(o,l)))var l=o,u=s}return u}},55809:(e,t)=>{function r(e){return"string"==typeof e||e instanceof String}function n(e){return Array.isArray(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0,t.boolean=function(e){return!0===e||!1===e},t.string=r,t.number=function(e){return"number"==typeof e||e instanceof Number},t.error=function(e){return e instanceof Error},t.func=function(e){return"function"==typeof e},t.array=n,t.stringArray=function(e){return n(e)&&e.every(e=>r(e))}},58815:(e,t,r)=>{r.d(t,{El:()=>h,NS:()=>o,SX:()=>c,pO:()=>l,r4:()=>d,v:()=>f,wf:()=>u});var n,i,a=r(59357),s=r(22351);function o(e){return new s.Vj(e,e=>(0,a.mD)(e)?e.content:[],{includeRoot:!0})}function l(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}function u(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function c(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function d(e,t){return function(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return i.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return i.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?i.Inside:r?i.OverlapBack:n?i.OverlapFront:i.Outside}(e,t)>i.After}(n=i||(i={}))[n.Before=0]="Before",n[n.After=1]="After",n[n.OverlapFront=2]="OverlapFront",n[n.OverlapBack=3]="OverlapBack",n[n.Inside=4]="Inside",n[n.Outside=5]="Outside";let h=/^[\w\p{L}]$/u;function f(e,t){if(e){let r=function(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let e=r.content[n];if(t||!e.hidden)return e}e=r}}(e,!0);if(r&&p(r,t))return r;if((0,a.br)(e)){let r=e.content.findIndex(e=>!e.hidden);for(let n=r-1;n>=0;n--){let r=e.content[n];if(p(r,t))return r}}}}function p(e,t){return(0,a.FC)(e)&&t.includes(e.tokenType.name)}},59357:(e,t,r)=>{function n(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function i(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText}function a(e){return"object"==typeof e&&null!==e&&"string"==typeof e.name&&"string"==typeof e.type&&"string"==typeof e.path}function s(e){return"object"==typeof e&&null!==e&&n(e.container)&&i(e.reference)&&"string"==typeof e.message}r.d(t,{A_:()=>i,FC:()=>u,Nr:()=>a,Zl:()=>s,br:()=>c,kD:()=>o,mD:()=>l,ng:()=>n});class o{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,t){return n(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});let n=r[t];if(void 0!==n)return n;{let n=this.computeIsSubtype(e,t);return r[t]=n,n}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let t=this.getAllTypes(),r=[];for(let n of t)this.isSubtype(n,e)&&r.push(n);return this.allSubtypes[e]=r,r}}}function l(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function u(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function c(e){return l(e)&&"string"==typeof e.fullText}},60056:(e,t,r)=>{r.d(t,{W:()=>n,d:()=>i});class n extends Error{constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}}function i(e){throw Error("Error! The input value was not handled.")}},60209:(e,t,r)=>{r.d(t,{qg:()=>s}),r(90841),r(72475),r(31700),r(75380),r(94994),r(80488),r(17263);var n=r(93517),i={},a={info:(0,n.K2)(async()=>{let{createInfoServices:e}=await r.e(51802).then(r.bind(r,51802));i.info=e().Info.parser.LangiumParser},"info"),packet:(0,n.K2)(async()=>{let{createPacketServices:e}=await r.e(44641).then(r.bind(r,44641));i.packet=e().Packet.parser.LangiumParser},"packet"),pie:(0,n.K2)(async()=>{let{createPieServices:e}=await r.e(55331).then(r.bind(r,55331));i.pie=e().Pie.parser.LangiumParser},"pie"),architecture:(0,n.K2)(async()=>{let{createArchitectureServices:e}=await r.e(98270).then(r.bind(r,98270));i.architecture=e().Architecture.parser.LangiumParser},"architecture"),gitGraph:(0,n.K2)(async()=>{let{createGitGraphServices:e}=await r.e(80037).then(r.bind(r,80037));i.gitGraph=e().GitGraph.parser.LangiumParser},"gitGraph"),radar:(0,n.K2)(async()=>{let{createRadarServices:e}=await r.e(26442).then(r.bind(r,26442));i.radar=e().Radar.parser.LangiumParser},"radar"),treemap:(0,n.K2)(async()=>{let{createTreemapServices:e}=await r.e(6999).then(r.bind(r,6999));i.treemap=e().Treemap.parser.LangiumParser},"treemap")};async function s(e,t){let r=a[e];if(!r)throw Error(`Unknown diagram type: ${e}`);i[e]||await r();let n=i[e].parse(t);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new o(n);return n.value}(0,n.K2)(s,"parse");var o=class extends Error{constructor(e){super(`Parsing failed: ${e.lexerErrors.map(e=>e.message).join("\n")} ${e.parserErrors.map(e=>e.message).join("\n")}`),this.result=e}static{(0,n.K2)(this,"MermaidParseError")}}},67271:(e,t,r)=>{r.d(t,{A:()=>u});var n=r(48649),i=r(16755),a=r(50247),s=r(51214),o=Object.prototype,l=o.hasOwnProperty;let u=(0,n.A)(function(e,t){e=Object(e);var r=-1,n=t.length,u=n>2?t[2]:void 0;for(u&&(0,a.A)(t[0],t[1],u)&&(n=1);++r<n;)for(var c=t[r],d=(0,s.A)(c),h=-1,f=d.length;++h<f;){var p=d[h],m=e[p];(void 0===m||(0,i.A)(m,o[p])&&!l.call(e,p))&&(e[p]=c[p])}return e})},67891:(e,t,r)=>{r.d(t,{A:()=>n});let n=function(e,t){return e<t}},72325:(e,t,r)=>{r.d(t,{DM:()=>p,OP:()=>m,SD:()=>s,Uo:()=>d,VN:()=>c,XG:()=>o,YE:()=>l,cQ:()=>u,jm:()=>h});var n=r(59357),i=r(22351),a=r(58815);function s(e){for(let[t,r]of Object.entries(e))!t.startsWith("$")&&(Array.isArray(r)?r.forEach((r,i)=>{(0,n.ng)(r)&&(r.$container=e,r.$containerProperty=t,r.$containerIndex=i)}):(0,n.ng)(r)&&(r.$container=e,r.$containerProperty=t))}function o(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function l(e){let t=u(e).$document;if(!t)throw Error("AST node has no document.");return t}function u(e){for(;e.$container;)e=e.$container;return e}function c(e,t){if(!e)throw Error("Node must be an AstNode.");let r=null==t?void 0:t.range;return new i.fq(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let i=t.keys[t.keyIndex];if(!i.startsWith("$")){let a=e[i];if((0,n.ng)(a)){if(t.keyIndex++,f(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;t.arrayIndex<a.length;){let e=a[t.arrayIndex++];if((0,n.ng)(e)&&f(e,r))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return i.Rf})}function d(e,t){if(!e)throw Error("Root node must be an AstNode.");return new i.Vj(e,e=>c(e,t))}function h(e,t){if(e){if((null==t?void 0:t.range)&&!f(e,t.range))return new i.Vj(e,()=>[])}else throw Error("Root node must be an AstNode.");return new i.Vj(e,e=>c(e,t),{includeRoot:!0})}function f(e,t){var r;if(!t)return!0;let n=null==(r=e.$cstNode)?void 0:r.range;return!!n&&(0,a.r4)(n,t)}function p(e){return new i.fq(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let r=t.keys[t.keyIndex];if(!r.startsWith("$")){let i=e[r];if((0,n.A_)(i))return t.keyIndex++,{done:!1,value:{reference:i,container:e,property:r}};if(Array.isArray(i)){for(;t.arrayIndex<i.length;){let a=t.arrayIndex++,s=i[a];if((0,n.A_)(s))return{done:!1,value:{reference:s,container:e,property:r,index:a}}}t.arrayIndex=0}}t.keyIndex++}return i.Rf})}function m(e,t){for(let r of e.getTypeMetaData(t.$type).properties)void 0!==r.defaultValue&&void 0===t[r.name]&&(t[r.name]=function e(t){return Array.isArray(t)?[...t.map(e)]:t}(r.defaultValue))}},72475:(e,t,r)=>{r.d(t,{v:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.e5,l);return t.ServiceRegistry.register(r),{shared:t,Info:r}}(0,n.K2)(u,"createInfoServices")},73542:(e,t)=>{let r;function n(){if(void 0===r)throw Error("No runtime abstraction layer installed");return r}Object.defineProperty(t,"__esModule",{value:!0}),(n||(n={})).install=function(e){if(void 0===e)throw Error("No runtime abstraction layer provided");r=e},t.default=n},73983:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(34373),i=r(89173);let a=function(e,t){var r=-1,a=(0,i.A)(e)?Array(e.length):[];return(0,n.A)(e,function(e,n,i){a[++r]=t(e,n,i)}),a}},75347:(e,t,r)=>{var n,i;let a;Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;let s=r(73542);i=n||(t.Event=n={}),a={dispose(){}},i.None=function(){return a};class o{add(e,t=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(r)&&r.push({dispose:()=>this.remove(e,t)})}remove(e,t=null){if(!this._callbacks)return;let r=!1;for(let n=0,i=this._callbacks.length;n<i;n++)if(this._callbacks[n]===e)if(this._contexts[n]===t){this._callbacks.splice(n,1),this._contexts.splice(n,1);return}else r=!0;if(r)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let t=[],r=this._callbacks.slice(0),n=this._contexts.slice(0);for(let i=0,a=r.length;i<a;i++)try{t.push(r[i].apply(n[i],e))}catch(e){(0,s.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}}class l{constructor(e){this._options=e}get event(){return this._event||(this._event=(e,t,r)=>{this._callbacks||(this._callbacks=new o),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,t);let n={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,t),n.dispose=l._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(r)&&r.push(n),n}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}t.Emitter=l,l._noop=function(){}},75380:(e,t,r)=>{r.d(t,{f:()=>c});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},l=class extends n.dg{static{(0,n.K2)(this,"PieValueConverter")}runCustomConverter(e,t,r){if("PIE_SECTION_LABEL"===e.name)return t.replace(/"/g,"").trim()}},u={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new l,"ValueConverter")}};function c(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.KX,u);return t.ServiceRegistry.register(r),{shared:t,Pie:r}}(0,n.K2)(c,"createPieServices")},78262:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(81987);let i=function(e){var t=(0,n.A)(e),r=t%1;return t==t?r?t-r:t:0}},79753:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(65314);let i=function(e){return(null==e?0:e.length)?(0,n.A)(e,1):[]}},79884:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(65314),i=r(48233);let a=function(e,t){return(0,n.A)((0,i.A)(e,t),1)}},80488:(e,t,r)=>{r.d(t,{f:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.YP,l);return t.ServiceRegistry.register(r),{shared:t,Radar:r}}(0,n.K2)(u,"createRadarServices")},81987:(e,t,r)=>{r.d(t,{A:()=>m});var n=/\s/;let i=function(e){for(var t=e.length;t--&&n.test(e.charAt(t)););return t};var a=/^\s+/,s=r(94090),o=r(44237),l=0/0,u=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,d=/^0o[0-7]+$/i,h=parseInt;let f=function(e){if("number"==typeof e)return e;if((0,o.A)(e))return l;if((0,s.A)(e)){var t,r="function"==typeof e.valueOf?e.valueOf():e;e=(0,s.A)(r)?r+"":r}if("string"!=typeof e)return 0===e?e:+e;e=(t=e)?t.slice(0,i(t)+1).replace(a,""):t;var n=c.test(e);return n||d.test(e)?h(e.slice(2),n?2:8):u.test(e)?l:+e};var p=1/0;let m=function(e){return e?(e=f(e))===p||e===-p?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},82609:(e,t,r)=>{var n,i;t.Qi=t.XO=void 0;let a=r(73542),s=r(55809),o=r(75347);(i=n||(t.XO=n={})).None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:o.Event.None}),i.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:o.Event.None}),i.is=function(e){return e&&(e===i.None||e===i.Cancelled||s.boolean(e.isCancellationRequested)&&!!e.onCancellationRequested)};let l=Object.freeze(function(e,t){let r=(0,a.default)().timer.setTimeout(e.bind(t),0);return{dispose(){r.dispose()}}});class u{constructor(){this._isCancelled=!1}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?l:(this._emitter||(this._emitter=new o.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}class c{get token(){return this._token||(this._token=new u),this._token}cancel(){this._token?this._token.cancel():this._token=n.Cancelled}dispose(){this._token?this._token instanceof u&&this._token.dispose():this._token=n.None}}t.Qi=c},83649:(e,t,r)=>{r.d(t,{$g:()=>ef,Bg:()=>J,Ct:()=>S,Cz:()=>p,D8:()=>F,FO:()=>en,Fy:()=>em,GL:()=>eu,IZ:()=>ea,Mz:()=>eE,O4:()=>ey,QX:()=>eI,RP:()=>T,S2:()=>k,SP:()=>$,TF:()=>L,Tu:()=>g,Xj:()=>j,_c:()=>et,cY:()=>eR,fG:()=>M,jp:()=>X,lF:()=>eA,r1:()=>c,rE:()=>K,s7:()=>O,vd:()=>ed,ve:()=>z,wb:()=>eo,wh:()=>Q,z2:()=>ex});var n=r(59357);let i="AbstractRule",a="AbstractType",s="Condition",o="TypeDefinition",l="ValueLiteral",u="AbstractElement";function c(e){return eS.isInstance(e,u)}let d="ArrayLiteral",h="ArrayType",f="BooleanLiteral";function p(e){return eS.isInstance(e,f)}let m="Conjunction";function g(e){return eS.isInstance(e,m)}let y="Disjunction";function T(e){return eS.isInstance(e,y)}let A="Grammar",v="GrammarImport",R="InferredType";function $(e){return eS.isInstance(e,R)}let E="Interface";function k(e){return eS.isInstance(e,E)}let x="NamedArgument",I="Negation";function S(e){return eS.isInstance(e,I)}let N="NumberLiteral",C="Parameter",w="ParameterReference";function L(e){return eS.isInstance(e,w)}let b="ParserRule";function O(e){return eS.isInstance(e,b)}let _="ReferenceType",P="ReturnType";function M(e){return eS.isInstance(e,P)}let D="SimpleType";function F(e){return eS.isInstance(e,D)}let U="StringLiteral",G="TerminalRule";function K(e){return eS.isInstance(e,G)}let B="Type";function j(e){return eS.isInstance(e,B)}let V="TypeAttribute",H="UnionType",W="Action";function z(e){return eS.isInstance(e,W)}let Y="Alternatives";function X(e){return eS.isInstance(e,Y)}let q="Assignment";function Q(e){return eS.isInstance(e,q)}let Z="CharacterRange";function J(e){return eS.isInstance(e,Z)}let ee="CrossReference";function et(e){return eS.isInstance(e,ee)}let er="EndOfFile";function en(e){return eS.isInstance(e,er)}let ei="Group";function ea(e){return eS.isInstance(e,ei)}let es="Keyword";function eo(e){return eS.isInstance(e,es)}let el="NegatedToken";function eu(e){return eS.isInstance(e,el)}let ec="RegexToken";function ed(e){return eS.isInstance(e,ec)}let eh="RuleCall";function ef(e){return eS.isInstance(e,eh)}let ep="TerminalAlternatives";function em(e){return eS.isInstance(e,ep)}let eg="TerminalGroup";function ey(e){return eS.isInstance(e,eg)}let eT="TerminalRuleCall";function eA(e){return eS.isInstance(e,eT)}let ev="UnorderedGroup";function eR(e){return eS.isInstance(e,ev)}let e$="UntilToken";function eE(e){return eS.isInstance(e,e$)}let ek="Wildcard";function ex(e){return eS.isInstance(e,ek)}class eI extends n.kD{getAllTypes(){return[u,i,a,W,Y,d,h,q,f,Z,s,m,ee,y,er,A,v,ei,R,E,es,x,el,I,N,C,w,b,_,ec,P,eh,D,U,ep,eg,G,eT,B,V,o,H,ev,e$,l,ek]}computeIsSubtype(e,t){switch(e){case W:case Y:case q:case Z:case ee:case er:case ei:case es:case el:case ec:case eh:case ep:case eg:case eT:case ev:case e$:case ek:return this.isSubtype(u,t);case d:case N:case U:return this.isSubtype(l,t);case h:case _:case D:case H:return this.isSubtype(o,t);case f:return this.isSubtype(s,t)||this.isSubtype(l,t);case m:case y:case I:case w:return this.isSubtype(s,t);case R:case E:case B:return this.isSubtype(a,t);case b:return this.isSubtype(i,t)||this.isSubtype(a,t);case G:return this.isSubtype(i,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;switch(t){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return a;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return i;case"Grammar:usedGrammars":return A;case"NamedArgument:parameter":case"ParameterReference:parameter":return C;case"TerminalRuleCall:rule":return G;default:throw Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case u:return{name:u,properties:[{name:"cardinality"},{name:"lookahead"}]};case d:return{name:d,properties:[{name:"elements",defaultValue:[]}]};case h:return{name:h,properties:[{name:"elementType"}]};case f:return{name:f,properties:[{name:"true",defaultValue:!1}]};case m:return{name:m,properties:[{name:"left"},{name:"right"}]};case y:return{name:y,properties:[{name:"left"},{name:"right"}]};case A:return{name:A,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case v:return{name:v,properties:[{name:"path"}]};case R:return{name:R,properties:[{name:"name"}]};case E:return{name:E,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case x:return{name:x,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case I:return{name:I,properties:[{name:"value"}]};case N:return{name:N,properties:[{name:"value"}]};case C:return{name:C,properties:[{name:"name"}]};case w:return{name:w,properties:[{name:"parameter"}]};case b:return{name:b,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case _:return{name:_,properties:[{name:"referenceType"}]};case P:return{name:P,properties:[{name:"name"}]};case D:return{name:D,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case U:return{name:U,properties:[{name:"value"}]};case G:return{name:G,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case B:return{name:B,properties:[{name:"name"},{name:"type"}]};case V:return{name:V,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case H:return{name:H,properties:[{name:"types",defaultValue:[]}]};case W:return{name:W,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case Y:return{name:Y,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case q:return{name:q,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case Z:return{name:Z,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case ee:return{name:ee,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case er:return{name:er,properties:[{name:"cardinality"},{name:"lookahead"}]};case ei:return{name:ei,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case es:return{name:es,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case el:return{name:el,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case ec:return{name:ec,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case eh:return{name:eh,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case ep:return{name:ep,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case eg:return{name:eg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case eT:return{name:eT,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case ev:return{name:ev,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case e$:return{name:e$,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case ek:return{name:ek,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}}let eS=new eI},88388:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(79898),i=r(63114),a=r(5653);let s=function(e){return"string"==typeof e||!(0,i.A)(e)&&(0,a.A)(e)&&"[object String]"==(0,n.A)(e)}},90841:(e,t,r)=>{r.d(t,{b:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.eZ,l);return t.ServiceRegistry.register(r),{shared:t,GitGraph:r}}(0,n.K2)(u,"createGitGraphServices")},92804:(e,t,r)=>{r.d(t,{A:()=>c});var n,i=r(3585),a=r(89173),s=r(80641),o=r(23956),l=r(78262),u=Math.max;let c=(n=function(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var a=null==r?0:(0,l.A)(r);return a<0&&(a=u(n+a,0)),(0,o.A)(e,(0,i.A)(t,3),a)},function(e,t,r){var o=Object(e);if(!(0,a.A)(e)){var l=(0,i.A)(t,3);e=(0,s.A)(e),t=function(e){return l(o[e],e,o)}}var u=n(e,t,r);return u>-1?o[l?e[u]:u]:void 0})},93401:(e,t,r)=>{r.d(t,{A:()=>n});let n=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},93517:(e,t,r)=>{r.d(t,{mR:()=>ek,dg:()=>e$,jE:()=>ey,Tm:()=>eE,eZ:()=>eT,e5:()=>ep,sr:()=>ef,AM:()=>em,KX:()=>eg,YP:()=>eA,eV:()=>ev,K2:()=>$});var n,i,a,s,o,l,u,c=r(59357),d=r(37044),h=r(34700),f=r(83649),p=r(39841),m=r(43294);let g={Grammar:()=>void 0,LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},y={AstReflection:()=>new f.QX};function T(e){var t;let r,n,i=(r=(0,h.WQ)((0,d.u)(p.D),y),n=(0,h.WQ)((0,d.t)({shared:r}),g),r.ServiceRegistry.register(n),n),a=i.serializer.JsonSerializer.deserialize(e);return i.shared.workspace.LangiumDocumentFactory.fromModel(a,m.r.parse(`memory://${null!=(t=a.name)?t:"grammar"}.langium`)),a}var A=r(29005),v=r(35046),R=Object.defineProperty,$=(e,t)=>R(e,"name",{value:t,configurable:!0}),E="Statement",k="Architecture";$(function(e){return Z.isInstance(e,k)},"isArchitecture");var x="Axis",I="Branch";$(function(e){return Z.isInstance(e,I)},"isBranch");var S="Checkout",N="CherryPicking",C="ClassDefStatement",w="Commit";$(function(e){return Z.isInstance(e,w)},"isCommit");var L="Curve",b="Edge",O="Entry",_="GitGraph";$(function(e){return Z.isInstance(e,_)},"isGitGraph");var P="Group",M="Info";$(function(e){return Z.isInstance(e,M)},"isInfo");var D="Item",F="Junction",U="Merge";$(function(e){return Z.isInstance(e,U)},"isMerge");var G="Option",K="Packet";$(function(e){return Z.isInstance(e,K)},"isPacket");var B="PacketBlock";$(function(e){return Z.isInstance(e,B)},"isPacketBlock"),$(function(e){return Z.isInstance(e,"Pie")},"isPie");var j="PieSection";$(function(e){return Z.isInstance(e,j)},"isPieSection");var V="Radar",H="Service",W="Treemap";$(function(e){return Z.isInstance(e,W)},"isTreemap");var z="TreemapRow",Y="Direction",X="Leaf",q="Section",Q=class extends c.kD{static{$(this,"MermaidAstReflection")}getAllTypes(){return[k,x,I,S,N,C,w,L,Y,b,O,_,P,M,D,F,X,U,G,K,B,"Pie",j,V,q,H,E,W,z]}computeIsSubtype(e,t){switch(e){case I:case S:case N:case w:case U:return this.isSubtype(E,t);case Y:return this.isSubtype(_,t);case X:case q:return this.isSubtype(D,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;if("Entry:axis"===t)return x;throw Error(`${t} is not a valid reference id.`)}getTypeMetaData(e){switch(e){case k:return{name:k,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case x:return{name:x,properties:[{name:"label"},{name:"name"}]};case I:return{name:I,properties:[{name:"name"},{name:"order"}]};case S:return{name:S,properties:[{name:"branch"}]};case N:return{name:N,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case C:return{name:C,properties:[{name:"className"},{name:"styleText"}]};case w:return{name:w,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case L:return{name:L,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case b:return{name:b,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case O:return{name:O,properties:[{name:"axis"},{name:"value"}]};case _:return{name:_,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case P:return{name:P,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case M:return{name:M,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case D:return{name:D,properties:[{name:"classSelector"},{name:"name"}]};case F:return{name:F,properties:[{name:"id"},{name:"in"}]};case U:return{name:U,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case G:return{name:G,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case K:return{name:K,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case B:return{name:B,properties:[{name:"bits"},{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case j:return{name:j,properties:[{name:"label"},{name:"value"}]};case V:return{name:V,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case H:return{name:H,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case W:return{name:W,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"},{name:"TreemapRows",defaultValue:[]}]};case z:return{name:z,properties:[{name:"indent"},{name:"item"}]};case Y:return{name:Y,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};case X:return{name:X,properties:[{name:"classSelector"},{name:"name"},{name:"value"}]};case q:return{name:q,properties:[{name:"classSelector"},{name:"name"}]};default:return{name:e,properties:[]}}}},Z=new Q,J=$(()=>n??(n=T(`{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"InfoGrammar"),ee=$(()=>i??(i=T(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),et=$(()=>a??(a=T(`{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PieGrammar"),er=$(()=>s??(s=T(`{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"ArchitectureGrammar"),en=$(()=>o??(o=T(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),ei=$(()=>l??(l=T(`{"$type":"Grammar","isDeclared":true,"name":"Radar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),ea=$(()=>u??(u=T(`{"$type":"Grammar","isDeclared":true,"name":"Treemap","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","}},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammar"),es={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eo={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},el={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eu={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ec={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ed={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eh={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ef={AstReflection:$(()=>new Q,"AstReflection")},ep={Grammar:$(()=>J(),"Grammar"),LanguageMetaData:$(()=>es,"LanguageMetaData"),parser:{}},em={Grammar:$(()=>ee(),"Grammar"),LanguageMetaData:$(()=>eo,"LanguageMetaData"),parser:{}},eg={Grammar:$(()=>et(),"Grammar"),LanguageMetaData:$(()=>el,"LanguageMetaData"),parser:{}},ey={Grammar:$(()=>er(),"Grammar"),LanguageMetaData:$(()=>eu,"LanguageMetaData"),parser:{}},eT={Grammar:$(()=>en(),"Grammar"),LanguageMetaData:$(()=>ec,"LanguageMetaData"),parser:{}},eA={Grammar:$(()=>ei(),"Grammar"),LanguageMetaData:$(()=>ed,"LanguageMetaData"),parser:{}},ev={Grammar:$(()=>ea(),"Grammar"),LanguageMetaData:$(()=>eh,"LanguageMetaData"),parser:{}},eR={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},e$=class extends A.d{static{$(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return(void 0===n&&(n=this.runCustomConverter(e,t,r)),void 0===n)?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=eR[e.name];if(void 0===n)return;let i=n.exec(t);if(null!==i){if(void 0!==i[1])return i[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==i[2])return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},eE=class extends e${static{$(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},ek=class extends v.Q{static{$(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}};(class extends ek{static{$(this,"CommonTokenBuilder")}})},94994:(e,t,r)=>{r.d(t,{S:()=>c});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},l=class extends n.dg{static{(0,n.K2)(this,"ArchitectureValueConverter")}runCustomConverter(e,t,r){return"ARCH_ICON"===e.name?t.replace(/[()]/g,"").trim():"ARCH_TEXT_ICON"===e.name?t.replace(/["()]/g,""):"ARCH_TITLE"===e.name?t.replace(/[[\]]/g,"").trim():void 0}},u={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new l,"ValueConverter")}};function c(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.jE,u);return t.ServiceRegistry.register(r),{shared:t,Architecture:r}}(0,n.K2)(c,"createArchitectureServices")},96781:(e,t,r)=>{function n(e){return e.charCodeAt(0)}function i(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function a(e,t){if(!0===e[t])throw"duplicate flag "+t;e[t],e[t]=!0}function s(e){if(void 0===e)throw Error("Internal Error - Should never get here!");return!0}function o(){throw Error("Internal Error - Should never get here!")}function l(e){return"Character"===e.type}r.d(t,{z:()=>g,H:()=>m});let u=[];for(let e=n("0");e<=n("9");e++)u.push(e);let c=[n("_")].concat(u);for(let e=n("a");e<=n("z");e++)c.push(e);for(let e=n("A");e<=n("Z");e++)c.push(e);let d=[n(" "),n("\f"),n("\n"),n("\r"),n(" "),n("\v"),n(" "),n("\xa0"),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n("\u2028"),n("\u2029"),n(" "),n(" "),n(" "),n("\uFEFF")],h=/[0-9a-fA-F]/,f=/[0-9]/,p=/[1-9]/;class m{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let t=this.disjunction();this.consumeChar("/");let r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":a(r,"global");break;case"i":a(r,"ignoreCase");break;case"m":a(r,"multiLine");break;case"u":a(r,"unicode");break;case"y":a(r,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":let t;switch(this.consumeChar("?"),this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead"}s(t);let r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return o()}quantifier(e=!1){let t,r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":let n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":t=this.isDigit()?{atLeast:n,atMost:this.integerIncludingZero()}:{atLeast:n,atMost:1/0},this.consumeChar("}")}if(!0===e&&void 0===t)return;s(t)}if((!0!==e||void 0!==t)&&s(t))return"?"===this.peekChar(0)?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t}atom(){let e,t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group()}return(void 0===e&&this.isPatternCharacter()&&(e=this.patternCharacter()),s(e))?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):o()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n("\n"),n("\r"),n("\u2028"),n("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=u;break;case"D":e=u,t=!0;break;case"s":e=d;break;case"S":e=d,t=!0;break;case"w":e=c;break;case"W":e=c,t=!0}return s(e)?{type:"Set",value:e,complement:t}:o()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=n("\f");break;case"n":e=n("\n");break;case"r":e=n("\r");break;case"t":e=n(" ");break;case"v":e=n("\v")}return s(e)?{type:"Character",value:e}:o()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(!1===/[a-zA-Z]/.test(e))throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:n("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:n(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:n(this.popChar())}}}characterClass(){let e=[],t=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),t=!0);this.isClassAtom();){let t=this.classAtom();if(t.type,l(t)&&this.isRangeDash()){this.consumeChar("-");let r=this.classAtom();if(r.type,l(r)){if(r.value<t.value)throw Error("Range out of order in character class");e.push({from:t.value,to:r.value})}else i(t.value,e),e.push(n("-")),i(r.value,e)}else i(t.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:n("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;this.consumeChar("("),"?"===this.peekChar(0)?(this.consumeChar("?"),this.consumeChar(":"),e=!1):this.groupIdx++;let t=this.disjunction();this.consumeChar(")");let r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(!1===p.test(e))throw Error("Expecting a positive integer");for(;f.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(!1===f.test(e))throw Error("Expecting an integer");for(;f.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:n(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return"-"===this.peekChar()&&this.isClassAtom(1)}isDigit(){return f.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2));default:return!1}}isQuantifier(){let e=this.saveState();try{return void 0!==this.quantifier(!0)}catch(e){return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let r=0;r<e;r++){let e=this.popChar();if(!1===h.test(e))throw Error("Expecting a HexDecimal digits");t+=e}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(void 0!==e&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class g{visitChildren(e){for(let t in e){let r=e[t];e.hasOwnProperty(t)&&(void 0!==r.type?this.visit(r):Array.isArray(r)&&r.forEach(e=>{this.visit(e)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}},99233:(e,t,r)=>{r.d(t,{Ao:()=>h,Nt:()=>d,PC:()=>f,TH:()=>i,Yv:()=>c,lU:()=>l});var n=r(96781);let i=/\r?\n/gm,a=new n.H;class s extends n.z{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=d(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){let t=new RegExp(this.regex.substring(e.loc.begin,e.loc.end));this.multiline=!!"\n".match(t)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}}let o=new s;function l(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),o.reset(e),o.visit(a.pattern(e)),o.multiline}catch(e){return!1}}let u="\f\n\r \v \xa0 \u2028\u2029 \uFEFF".split("");function c(e){let t="string"==typeof e?new RegExp(e):e;return u.some(e=>t.test(e))}function d(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function h(e){return Array.prototype.map.call(e,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:d(e)).join("")}function f(e,t){var r;let n,i,a,s=("string"==typeof(r=e)&&(r=new RegExp(r)),n=r,i=r.source,a=0,new RegExp(function e(){let t="",r;function s(e){t+=i.substr(a,e),a+=e}function o(e){t+="(?:"+i.substr(a,e)+"|$)",a+=e}for(;a<i.length;)switch(i[a]){case"\\":switch(i[a+1]){case"c":o(3);break;case"x":o(4);break;case"u":o(n.unicode?"{"===i[a+2]?i.indexOf("}",a)-a+1:6:2);break;case"p":case"P":o(n.unicode?i.indexOf("}",a)-a+1:2);break;case"k":o(i.indexOf(">",a)-a+1);break;default:o(2)}break;case"[":(r=/\[(?:\\.|.)*?\]/g).lastIndex=a,o((r=r.exec(i)||[])[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":s(1);break;case"{":(r=/\{\d+,?\d*\}/g).lastIndex=a,(r=r.exec(i))?s(r[0].length):o(1);break;case"(":if("?"===i[a+1])switch(i[a+2]){case":":t+="(?:",a+=3,t+=e()+"|$)";break;case"=":t+="(?=",a+=3,t+=e()+")";break;case"!":r=a,a+=3,e(),t+=i.substr(r,a-r);break;case"<":switch(i[a+3]){case"=":case"!":r=a,a+=4,e(),t+=i.substr(r,a-r);break;default:s(i.indexOf(">",a)-a+1),t+=e()+"|$)"}}else s(1),t+=e()+"|$)";break;case")":return++a,t;default:o(1)}return t}(),r.flags)),o=t.match(s);return!!o&&o[0].length>0}}}]);
|
|
60
|
+
${t}`),this.inline)?`{${n}}`:n}}class nM{constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];t+=n.toMarkdown(e),i&&i.range.start.line>n.range.start.line&&(t+="\n")}return t}}class nD{constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}}function nF(e){return e.endsWith("\n")?"\n":"\n\n"}class nU{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let t=this.commentProvider.getComment(e);if(t&&function(e,t){let r=nb(void 0),n=nE(e);if(0===n.length)return!1;let i=n[0],a=n[n.length-1],s=r.start,o=r.end;return!!(null==s?void 0:s.exec(i))&&!!(null==o?void 0:o.exec(a))}(t)){let r,n;return("string"==typeof t?n=void 0:n=t.range.start,r=void 0,!n&&(n=ep.create(0,0)),function(e){var t,r,n,i;let a=ep.create(e.position.line,e.position.character);if(0===e.tokens.length)return new n_([],em.create(a,a));let s=[];for(;e.index<e.tokens.length;){let t=function(e,t){let r=e.tokens[e.index];return"tag"===r.type?nw(e,!1):"text"===r.type||"inline-tag"===r.type?nC(e):(function(e,t){if(t){let r=new nD("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}(r,t),void e.index++)}(e,s[s.length-1]);t&&s.push(t)}let o=null!=(r=null==(t=s[0])?void 0:t.range.start)?r:a,l=null!=(i=null==(n=s[s.length-1])?void 0:n.range.end)?i:a;return new n_(s,em.create(o,l))}({index:0,tokens:function(e){var t,r,n;let i=[],a=e.position.line,s=e.position.character;for(let o=0;o<e.lines.length;o++){let l=0===o,u=o===e.lines.length-1,c=e.lines[o],d=0;if(l&&e.options.start){let r=null==(t=e.options.start)?void 0:t.exec(c);r&&(d=r.index+r[0].length)}else{let t=null==(r=e.options.line)?void 0:r.exec(c);t&&(d=t.index+t[0].length)}if(u){let t=null==(n=e.options.end)?void 0:n.exec(c);t&&(c=c.substring(0,t.index))}if(nN(c=c.substring(0,function(e){let t=e.match(nS);if(t&&"number"==typeof t.index)return t.index}(c)),d)>=c.length){if(i.length>0){let e=ep.create(a,s);i.push({type:"break",content:"",range:em.create(e,e)})}}else{nk.lastIndex=d;let e=nk.exec(c);if(e){let t=e[0],r=e[1],n=ep.create(a,s+d),o=ep.create(a,s+d+t.length);i.push({type:"tag",content:r,range:em.create(n,o)}),d+=t.length,d=nN(c,d)}if(d<c.length){let e=c.substring(d),t=Array.from(e.matchAll(nx));i.push(...function(e,t,r,n){let i=[];if(0===e.length){let e=ep.create(r,n),a=ep.create(r,n+t.length);i.push({type:"text",content:t,range:em.create(e,a)})}else{let a=0;for(let s of e){let e=s.index,o=t.substring(a,e);o.length>0&&i.push({type:"text",content:t.substring(a,e),range:em.create(ep.create(r,a+n),ep.create(r,e+n))});let l=o.length+1,u=s[1];if(i.push({type:"inline-tag",content:u,range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+u.length+n))}),l+=u.length,4===s.length){l+=s[2].length;let e=s[3];i.push({type:"text",content:e,range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+e.length+n))})}else i.push({type:"text",content:"",range:em.create(ep.create(r,a+l+n),ep.create(r,a+l+n))});a=e+s[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:em.create(ep.create(r,a+n),ep.create(r,a+n+s.length))})}return i}(t,e,a,s+d))}}a++,s=0}return i.length>0&&"break"===i[i.length-1].type?i.slice(0,-1):i}({lines:nE(t),position:n,options:nb(r)}),position:n})).toMarkdown({renderLink:(t,r)=>this.documentationLinkRenderer(e,t,r),renderTag:t=>this.documentationTagRenderer(e,t)})}}documentationLinkRenderer(e,t,r){var n;let i=null!=(n=this.findNameInPrecomputedScopes(e,t))?n:this.findNameInGlobalScope(e,t);if(i&&i.nameSegment){let e=i.nameSegment.range.start.line+1,t=i.nameSegment.range.start.character+1,n=i.documentUri.with({fragment:`L${e},${t}`});return`[${r}](${n.toString()})`}}documentationTagRenderer(e,t){}findNameInPrecomputedScopes(e,t){let r=(0,rh.YE)(e).precomputedScopes;if(!r)return;let n=e;do{let e=r.get(n).find(e=>e.name===t);if(e)return e;n=n.$container}while(n)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}}class nG{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var t;return"string"==typeof e.$comment?e.$comment:null==(t=(0,tb.v)(e.$cstNode,this.grammarConfig().multilineCommentRules))?void 0:t.text}}class nK{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}}class nB{constructor(){this.previousTokenSource=new rG.Qi,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let t=(rB=performance.now(),new rG.Qi);return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,r=rG.XO.None){let n=new rH;return e.push({action:t,deferred:n,cancellationToken:r}),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let n=await Promise.resolve().then(()=>e(r));t.resolve(n)}catch(e){e===rj?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class nj{constructor(e){this.grammarElementIdMap=new r9,this.tokenTypeIdMap=new r9,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(e=>Object.assign(Object.assign({},e),{message:e.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let t=new Map,r=new Map;for(let r of(0,rh.jm)(e))t.set(r,{});if(e.$cstNode)for(let t of(0,tb.NS)(e.$cstNode))r.set(t,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))(0,rK.ng)(a)?e.push(this.dehydrateAstNode(a,t)):(0,rK.A_)(a)?e.push(this.dehydrateReference(a,t)):e.push(a)}else(0,rK.ng)(i)?r[n]=this.dehydrateAstNode(i,t):(0,rK.A_)(i)?r[n]=this.dehydrateReference(i,t):void 0!==i&&(r[n]=i);return r}dehydrateReference(e,t){let r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){let r=t.cstNodes.get(e);return(0,rK.br)(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,r.astNode=t.astNodes.get(e.astNode),(0,rK.mD)(e)?r.content=e.content.map(e=>this.dehydrateCstNode(e,t)):(0,rK.FC)(e)&&(r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length,r.startLine=e.range.start.line,r.startColumn=e.range.start.character,r.endLine=e.range.end.line,r.endColumn=e.range.end.character),r}hydrate(e){let t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){let t,r=new Map,n=new Map;for(let t of(0,rh.jm)(e))r.set(t,{});if(e.$cstNode)for(let r of(0,tb.NS)(e.$cstNode)){let e;"fullText"in r?t=e=new rA(r.fullText):"content"in r?e=new ry:"tokenType"in r&&(e=this.hydrateCstLeafNode(r)),e&&(n.set(r,e),e.root=t)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode&&(r.$cstNode=t.cstNodes.get(e.$cstNode)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))(0,rK.ng)(a)?e.push(this.setParent(this.hydrateAstNode(a,t),r)):(0,rK.A_)(a)?e.push(this.hydrateReference(a,r,n,t)):e.push(a)}else(0,rK.ng)(i)?r[n]=this.setParent(this.hydrateAstNode(i,t),r):(0,rK.A_)(i)?r[n]=this.hydrateReference(i,r,n,t):void 0!==i&&(r[n]=i);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){let n=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),n.astNode=t.astNodes.get(e.astNode),(0,rK.mD)(n))for(let i of e.content){let e=this.hydrateCstNode(i,t,r++);n.content.push(e)}return n}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new rg(e.offset,e.length,{start:{line:e.startLine,character:e.startColumn},end:{line:e.endLine,character:e.endColumn}},t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of(0,rh.jm)(this.grammar))(0,tP.r1)(t)&&this.grammarElementIdMap.set(t,e++)}}function nV(e){return{documentation:{CommentProvider:e=>new nG(e),DocumentationProvider:e=>new nU(e)},parser:{AsyncParser:e=>new nK(e),GrammarConfig:e=>(function(e){let t=[];for(let r of e.Grammar.rules)(0,tP.rE)(r)&&(0,tO.eb)(r)&&(0,t_.lU)((0,tO.S)(r))&&t.push(r.name);return{multilineCommentRules:t,nameRegexp:tb.El}})(e),LangiumParser:e=>{var t;let r,n,i;return n=(t=e).Grammar,i=t.parser.Lexer,(r=rb(n,new rk(t),i.definition)).finalize(),r},CompletionParser:e=>{let t,r,n;return t=e.Grammar,r=e.parser.Lexer,rb(t,n=new rS(e),r.definition),n.finalize(),n},ValueConverter:()=>new rU.d,TokenBuilder:()=>new rF.Q,Lexer:e=>new nv(e),ParserErrorMessageProvider:()=>new rI,LexerErrorMessageProvider:()=>new nT},workspace:{AstNodeLocator:()=>new nh,AstNodeDescriptionProvider:e=>new nc(e),ReferenceDescriptionProvider:e=>new nd(e)},references:{Linker:e=>new r1(e),NameProvider:()=>new r2,ScopeProvider:e=>new nn(e),ScopeComputation:e=>new r7(e),References:e=>new r3(e)},serializer:{Hydrator:e=>new nj(e),JsonSerializer:e=>new na(e)},validation:{DocumentValidator:e=>new nl(e),ValidationRegistry:e=>new no(e)},shared:()=>e.shared}}function nH(e){return{ServiceRegistry:e=>new ns(e),workspace:{LangiumDocuments:e=>new rJ(e),LangiumDocumentFactory:e=>new rZ(e),DocumentBuilder:e=>new nm(e),IndexManager:e=>new ng(e),WorkspaceManager:e=>new ny(e),FileSystemProvider:t=>e.fileSystemProvider(t),WorkspaceLock:()=>new nB,ConfigurationProvider:e=>new np(e)}}}},37675:(e,t,r)=>{r.d(t,{W:()=>n,d:()=>i});class n extends Error{constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}}function i(e){throw Error("Error! The input value was not handled.")}},39841:(e,t,r)=>{r.d(t,{D:()=>i});class n{readFile(){throw Error("No file system is available.")}async readDirectory(){return[]}}let i={fileSystemProvider:()=>new n}},43294:(e,t,r)=>{r.d(t,{A:()=>u,r:()=>l});var n=r(40074),i={470:e=>{function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,a=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)r=e.charCodeAt(o);else{if(47===r)break;r=47}if(47===r){if(a===o-1||1===s);else if(a!==o-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2)){if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),a=o,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,a=o,s=0;continue}}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),i=o-a-1;a=o,s=0}else 46===r&&-1!==s?++s:s=-1}return n}var i={resolve:function(){for(var e,i,a="",s=!1,o=arguments.length-1;o>=-1&&!s;o--)o>=0?e=arguments[o]:(void 0===i&&(i=n.cwd()),e=i),t(e),0!==e.length&&(a=e+"/"+a,s=47===e.charCodeAt(0));return a=r(a,!s),s?a.length>0?"/"+a:"/":a.length>0?a:"."},normalize:function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var n=arguments[r];t(n),n.length>0&&(void 0===e?e=n:e+="/"+n)}return void 0===e?".":i.normalize(e)},relative:function(e,r){if(t(e),t(r),e===r||(e=i.resolve(e))===(r=i.resolve(r)))return"";for(var n=1;n<e.length&&47===e.charCodeAt(n);++n);for(var a=e.length,s=a-n,o=1;o<r.length&&47===r.charCodeAt(o);++o);for(var l=r.length-o,u=s<l?s:l,c=-1,d=0;d<=u;++d){if(d===u){if(l>u){if(47===r.charCodeAt(o+d))return r.slice(o+d+1);if(0===d)return r.slice(o+d)}else s>u&&(47===e.charCodeAt(n+d)?c=d:0===d&&(c=0));break}var h=e.charCodeAt(n+d);if(h!==r.charCodeAt(o+d))break;47===h&&(c=d)}var f="";for(d=n+c+1;d<=a;++d)d!==a&&47!==e.charCodeAt(d)||(0===f.length?f+="..":f+="/..");return f.length>0?f+r.slice(o+c):(o+=c,47===r.charCodeAt(o)&&++o,r.slice(o))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,a=!0,s=e.length-1;s>=1;--s)if(47===(r=e.charCodeAt(s))){if(!a){i=s;break}}else a=!1;return -1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var n,i=0,a=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var o=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!s){i=n+1;break}}else -1===l&&(s=!1,l=n+1),o>=0&&(u===r.charCodeAt(o)?-1==--o&&(a=n):(o=-1,a=l))}return i===a?a=l:-1===a&&(a=e.length),e.slice(i,a)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!s){i=n+1;break}}else -1===a&&(s=!1,a=n+1);return -1===a?"":e.slice(i,a)},extname:function(e){t(e);for(var r=-1,n=0,i=-1,a=!0,s=0,o=e.length-1;o>=0;--o){var l=e.charCodeAt(o);if(47!==l)-1===i&&(a=!1,i=o+1),46===l?-1===r?r=o:1!==s&&(s=1):-1!==r&&(s=-1);else if(!a){n=o+1;break}}return -1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":e.slice(r,i)},format:function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},parse:function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),a=47===i;a?(r.root="/",n=1):n=0;for(var s=-1,o=0,l=-1,u=!0,c=e.length-1,d=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===s?s=c:1!==d&&(d=1):-1!==s&&(d=-1);else if(!u){o=c+1;break}return -1===s||-1===l||0===d||1===d&&s===l-1&&s===o+1?-1!==l&&(r.base=r.name=0===o&&a?e.slice(1,l):e.slice(o,l)):(0===o&&a?(r.name=e.slice(1,s),r.base=e.slice(1,l)):(r.name=e.slice(o,s),r.base=e.slice(o,l)),r.ext=e.slice(s,l)),o>0?r.dir=e.slice(0,o-1):a&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};i.posix=i,e.exports=i}},a={};function s(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={exports:{}};return i[e](r,r.exports,s),r.exports}s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{let e;(s.r(o),s.d(o,{URI:()=>u,Utils:()=>v}),"object"==typeof n)?e="win32"===n.platform:"object"==typeof navigator&&(e=navigator.userAgent.indexOf("Windows")>=0);let t=/^\w[\w\d+.-]*$/,r=/^\//,i=/^\/\//;function a(e,n){if(!e.scheme&&n)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!r.test(e.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(i.test(e.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class u{static isUri(e){return e instanceof u||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,i,s=!1){"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",a(this,s))}get fsPath(){return m(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:a}=e;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&a===this.fragment?this:new d(t,r,n,i,a)}static parse(e,t=!1){let r=l.exec(e);return r?new d(r[2]||"",T(r[4]||""),T(r[5]||""),T(r[7]||""),T(r[9]||""),t):new d("","","","","")}static file(t){let r="";if(e&&(t=t.replace(/\\/g,"/")),"/"===t[0]&&"/"===t[1]){let e=t.indexOf("/",2);-1===e?(r=t.substring(2),t="/"):(r=t.substring(2,e),t=t.substring(e)||"/")}return new d("file",r,t,"","")}static from(e){let t=new d(e.scheme,e.authority,e.path,e.query,e.fragment);return a(t,!0),t}toString(e=!1){return g(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof u)return e;{let t=new d(e);return t._formatted=e.external,t._fsPath=e._sep===c?e.fsPath:null,t}}return e}}let c=e?1:void 0;class d extends u{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=m(this,!1)),this._fsPath}toString(e=!1){return e?g(this,!0):(this._formatted||(this._formatted=g(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=c),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}let h={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function f(e,t,r){let n,i=-1;for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),void 0!==n&&(n+=e.charAt(a));else{void 0===n&&(n=e.substr(0,a));let t=h[s];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),n+=t):-1===i&&(i=a)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function p(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=h[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function m(t,r){let n;return n=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&90>=t.path.charCodeAt(1)||t.path.charCodeAt(1)>=97&&122>=t.path.charCodeAt(1))&&58===t.path.charCodeAt(2)?r?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(n=n.replace(/\//g,"\\")),n}function g(e,t){let r=t?p:f,n="",{scheme:i,authority:a,path:s,query:o,fragment:l}=e;if(i&&(n+=i,n+=":"),(a||"file"===i)&&(n+="/",n+="/"),a){let e=a.indexOf("@");if(-1!==e){let t=a.substr(0,e);a=a.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(a=a.toLowerCase()).lastIndexOf(":"))?n+=r(a,!1,!0):(n+=r(a.substr(0,e),!1,!0),n+=a.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){let e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){let e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return o&&(n+="?",n+=r(o,!1,!1)),l&&(n+="#",n+=t?l:f(l,!1,!1)),n}let y=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function T(e){return e.match(y)?e.replace(y,e=>(function e(t){try{return decodeURIComponent(t)}catch{return t.length>3?t.substr(0,3)+e(t.substr(3)):t}})(e)):e}var A,v,R=s(470);let $=R.posix||R;(A=v||(v={})).joinPath=function(e,...t){return e.with({path:$.join(e.path,...t)})},A.resolvePath=function(e,...t){let r=e.path,n=!1;"/"!==r[0]&&(r="/"+r,n=!0);let i=$.resolve(r,...t);return n&&"/"===i[0]&&!e.authority&&(i=i.substring(1)),e.with({path:i})},A.dirname=function(e){if(0===e.path.length||"/"===e.path)return e;let t=$.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},A.basename=function(e){return $.basename(e.path)},A.extname=function(e){return $.extname(e.path)}})();let{URI:l,Utils:u}=o},48233:(e,t,r)=>{r.d(t,{A:()=>o});var n=r(68583),i=r(3585),a=r(73983),s=r(63114);let o=function(e,t){return((0,s.A)(e)?n.A:a.A)(e,(0,i.A)(t,3))}},54348:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(44237);let i=function(e,t,r){for(var i=-1,a=e.length;++i<a;){var s=e[i],o=t(s);if(null!=o&&(void 0===l?o==o&&!(0,n.A)(o):r(o,l)))var l=o,u=s}return u}},55809:(e,t)=>{function r(e){return"string"==typeof e||e instanceof String}function n(e){return Array.isArray(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0,t.boolean=function(e){return!0===e||!1===e},t.string=r,t.number=function(e){return"number"==typeof e||e instanceof Number},t.error=function(e){return e instanceof Error},t.func=function(e){return"function"==typeof e},t.array=n,t.stringArray=function(e){return n(e)&&e.every(e=>r(e))}},58815:(e,t,r)=>{r.d(t,{El:()=>h,NS:()=>o,SX:()=>c,pO:()=>l,r4:()=>d,v:()=>f,wf:()=>u});var n,i,a=r(59357),s=r(22351);function o(e){return new s.Vj(e,e=>(0,a.mD)(e)?e.content:[],{includeRoot:!0})}function l(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}function u(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function c(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function d(e,t){return function(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return i.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return i.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?i.Inside:r?i.OverlapBack:n?i.OverlapFront:i.Outside}(e,t)>i.After}(n=i||(i={}))[n.Before=0]="Before",n[n.After=1]="After",n[n.OverlapFront=2]="OverlapFront",n[n.OverlapBack=3]="OverlapBack",n[n.Inside=4]="Inside",n[n.Outside=5]="Outside";let h=/^[\w\p{L}]$/u;function f(e,t){if(e){let r=function(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let e=r.content[n];if(t||!e.hidden)return e}e=r}}(e,!0);if(r&&p(r,t))return r;if((0,a.br)(e)){let r=e.content.findIndex(e=>!e.hidden);for(let n=r-1;n>=0;n--){let r=e.content[n];if(p(r,t))return r}}}}function p(e,t){return(0,a.FC)(e)&&t.includes(e.tokenType.name)}},59357:(e,t,r)=>{function n(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function i(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText}function a(e){return"object"==typeof e&&null!==e&&"string"==typeof e.name&&"string"==typeof e.type&&"string"==typeof e.path}function s(e){return"object"==typeof e&&null!==e&&n(e.container)&&i(e.reference)&&"string"==typeof e.message}r.d(t,{A_:()=>i,FC:()=>u,Nr:()=>a,Zl:()=>s,br:()=>c,kD:()=>o,mD:()=>l,ng:()=>n});class o{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,t){return n(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});let n=r[t];if(void 0!==n)return n;{let n=this.computeIsSubtype(e,t);return r[t]=n,n}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let t=this.getAllTypes(),r=[];for(let n of t)this.isSubtype(n,e)&&r.push(n);return this.allSubtypes[e]=r,r}}}function l(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function u(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function c(e){return l(e)&&"string"==typeof e.fullText}},60209:(e,t,r)=>{r.d(t,{qg:()=>s}),r(90841),r(72475),r(31700),r(75380),r(94994),r(80488),r(17263);var n=r(93517),i={},a={info:(0,n.K2)(async()=>{let{createInfoServices:e}=await r.e(51802).then(r.bind(r,51802));i.info=e().Info.parser.LangiumParser},"info"),packet:(0,n.K2)(async()=>{let{createPacketServices:e}=await r.e(44641).then(r.bind(r,44641));i.packet=e().Packet.parser.LangiumParser},"packet"),pie:(0,n.K2)(async()=>{let{createPieServices:e}=await r.e(55331).then(r.bind(r,55331));i.pie=e().Pie.parser.LangiumParser},"pie"),architecture:(0,n.K2)(async()=>{let{createArchitectureServices:e}=await r.e(98270).then(r.bind(r,98270));i.architecture=e().Architecture.parser.LangiumParser},"architecture"),gitGraph:(0,n.K2)(async()=>{let{createGitGraphServices:e}=await r.e(80037).then(r.bind(r,80037));i.gitGraph=e().GitGraph.parser.LangiumParser},"gitGraph"),radar:(0,n.K2)(async()=>{let{createRadarServices:e}=await r.e(26442).then(r.bind(r,26442));i.radar=e().Radar.parser.LangiumParser},"radar"),treemap:(0,n.K2)(async()=>{let{createTreemapServices:e}=await r.e(6999).then(r.bind(r,6999));i.treemap=e().Treemap.parser.LangiumParser},"treemap")};async function s(e,t){let r=a[e];if(!r)throw Error(`Unknown diagram type: ${e}`);i[e]||await r();let n=i[e].parse(t);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new o(n);return n.value}(0,n.K2)(s,"parse");var o=class extends Error{constructor(e){super(`Parsing failed: ${e.lexerErrors.map(e=>e.message).join("\n")} ${e.parserErrors.map(e=>e.message).join("\n")}`),this.result=e}static{(0,n.K2)(this,"MermaidParseError")}}},67271:(e,t,r)=>{r.d(t,{A:()=>u});var n=r(48649),i=r(16755),a=r(50247),s=r(51214),o=Object.prototype,l=o.hasOwnProperty;let u=(0,n.A)(function(e,t){e=Object(e);var r=-1,n=t.length,u=n>2?t[2]:void 0;for(u&&(0,a.A)(t[0],t[1],u)&&(n=1);++r<n;)for(var c=t[r],d=(0,s.A)(c),h=-1,f=d.length;++h<f;){var p=d[h],m=e[p];(void 0===m||(0,i.A)(m,o[p])&&!l.call(e,p))&&(e[p]=c[p])}return e})},67891:(e,t,r)=>{r.d(t,{A:()=>n});let n=function(e,t){return e<t}},72325:(e,t,r)=>{r.d(t,{DM:()=>p,OP:()=>m,SD:()=>s,Uo:()=>d,VN:()=>c,XG:()=>o,YE:()=>l,cQ:()=>u,jm:()=>h});var n=r(59357),i=r(22351),a=r(58815);function s(e){for(let[t,r]of Object.entries(e))!t.startsWith("$")&&(Array.isArray(r)?r.forEach((r,i)=>{(0,n.ng)(r)&&(r.$container=e,r.$containerProperty=t,r.$containerIndex=i)}):(0,n.ng)(r)&&(r.$container=e,r.$containerProperty=t))}function o(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function l(e){let t=u(e).$document;if(!t)throw Error("AST node has no document.");return t}function u(e){for(;e.$container;)e=e.$container;return e}function c(e,t){if(!e)throw Error("Node must be an AstNode.");let r=null==t?void 0:t.range;return new i.fq(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let i=t.keys[t.keyIndex];if(!i.startsWith("$")){let a=e[i];if((0,n.ng)(a)){if(t.keyIndex++,f(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;t.arrayIndex<a.length;){let e=a[t.arrayIndex++];if((0,n.ng)(e)&&f(e,r))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return i.Rf})}function d(e,t){if(!e)throw Error("Root node must be an AstNode.");return new i.Vj(e,e=>c(e,t))}function h(e,t){if(e){if((null==t?void 0:t.range)&&!f(e,t.range))return new i.Vj(e,()=>[])}else throw Error("Root node must be an AstNode.");return new i.Vj(e,e=>c(e,t),{includeRoot:!0})}function f(e,t){var r;if(!t)return!0;let n=null==(r=e.$cstNode)?void 0:r.range;return!!n&&(0,a.r4)(n,t)}function p(e){return new i.fq(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let r=t.keys[t.keyIndex];if(!r.startsWith("$")){let i=e[r];if((0,n.A_)(i))return t.keyIndex++,{done:!1,value:{reference:i,container:e,property:r}};if(Array.isArray(i)){for(;t.arrayIndex<i.length;){let a=t.arrayIndex++,s=i[a];if((0,n.A_)(s))return{done:!1,value:{reference:s,container:e,property:r,index:a}}}t.arrayIndex=0}}t.keyIndex++}return i.Rf})}function m(e,t){for(let r of e.getTypeMetaData(t.$type).properties)void 0!==r.defaultValue&&void 0===t[r.name]&&(t[r.name]=function e(t){return Array.isArray(t)?[...t.map(e)]:t}(r.defaultValue))}},72475:(e,t,r)=>{r.d(t,{v:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.e5,l);return t.ServiceRegistry.register(r),{shared:t,Info:r}}(0,n.K2)(u,"createInfoServices")},73542:(e,t)=>{let r;function n(){if(void 0===r)throw Error("No runtime abstraction layer installed");return r}Object.defineProperty(t,"__esModule",{value:!0}),(n||(n={})).install=function(e){if(void 0===e)throw Error("No runtime abstraction layer provided");r=e},t.default=n},73983:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(34373),i=r(89173);let a=function(e,t){var r=-1,a=(0,i.A)(e)?Array(e.length):[];return(0,n.A)(e,function(e,n,i){a[++r]=t(e,n,i)}),a}},75347:(e,t,r)=>{var n,i;let a;Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;let s=r(73542);i=n||(t.Event=n={}),a={dispose(){}},i.None=function(){return a};class o{add(e,t=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(r)&&r.push({dispose:()=>this.remove(e,t)})}remove(e,t=null){if(!this._callbacks)return;let r=!1;for(let n=0,i=this._callbacks.length;n<i;n++)if(this._callbacks[n]===e)if(this._contexts[n]===t){this._callbacks.splice(n,1),this._contexts.splice(n,1);return}else r=!0;if(r)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let t=[],r=this._callbacks.slice(0),n=this._contexts.slice(0);for(let i=0,a=r.length;i<a;i++)try{t.push(r[i].apply(n[i],e))}catch(e){(0,s.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}}class l{constructor(e){this._options=e}get event(){return this._event||(this._event=(e,t,r)=>{this._callbacks||(this._callbacks=new o),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,t);let n={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,t),n.dispose=l._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(r)&&r.push(n),n}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}t.Emitter=l,l._noop=function(){}},75380:(e,t,r)=>{r.d(t,{f:()=>c});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},l=class extends n.dg{static{(0,n.K2)(this,"PieValueConverter")}runCustomConverter(e,t,r){if("PIE_SECTION_LABEL"===e.name)return t.replace(/"/g,"").trim()}},u={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new l,"ValueConverter")}};function c(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.KX,u);return t.ServiceRegistry.register(r),{shared:t,Pie:r}}(0,n.K2)(c,"createPieServices")},78262:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(81987);let i=function(e){var t=(0,n.A)(e),r=t%1;return t==t?r?t-r:t:0}},79753:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(65314);let i=function(e){return(null==e?0:e.length)?(0,n.A)(e,1):[]}},79884:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(65314),i=r(48233);let a=function(e,t){return(0,n.A)((0,i.A)(e,t),1)}},80488:(e,t,r)=>{r.d(t,{f:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.YP,l);return t.ServiceRegistry.register(r),{shared:t,Radar:r}}(0,n.K2)(u,"createRadarServices")},81987:(e,t,r)=>{r.d(t,{A:()=>m});var n=/\s/;let i=function(e){for(var t=e.length;t--&&n.test(e.charAt(t)););return t};var a=/^\s+/,s=r(94090),o=r(44237),l=0/0,u=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,d=/^0o[0-7]+$/i,h=parseInt;let f=function(e){if("number"==typeof e)return e;if((0,o.A)(e))return l;if((0,s.A)(e)){var t,r="function"==typeof e.valueOf?e.valueOf():e;e=(0,s.A)(r)?r+"":r}if("string"!=typeof e)return 0===e?e:+e;e=(t=e)?t.slice(0,i(t)+1).replace(a,""):t;var n=c.test(e);return n||d.test(e)?h(e.slice(2),n?2:8):u.test(e)?l:+e};var p=1/0;let m=function(e){return e?(e=f(e))===p||e===-p?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},82609:(e,t,r)=>{var n,i;t.Qi=t.XO=void 0;let a=r(73542),s=r(55809),o=r(75347);(i=n||(t.XO=n={})).None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:o.Event.None}),i.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:o.Event.None}),i.is=function(e){return e&&(e===i.None||e===i.Cancelled||s.boolean(e.isCancellationRequested)&&!!e.onCancellationRequested)};let l=Object.freeze(function(e,t){let r=(0,a.default)().timer.setTimeout(e.bind(t),0);return{dispose(){r.dispose()}}});class u{constructor(){this._isCancelled=!1}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?l:(this._emitter||(this._emitter=new o.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}class c{get token(){return this._token||(this._token=new u),this._token}cancel(){this._token?this._token.cancel():this._token=n.Cancelled}dispose(){this._token?this._token instanceof u&&this._token.dispose():this._token=n.None}}t.Qi=c},83649:(e,t,r)=>{r.d(t,{$g:()=>ef,Bg:()=>J,Ct:()=>S,Cz:()=>p,D8:()=>F,FO:()=>en,Fy:()=>em,GL:()=>eu,IZ:()=>ea,Mz:()=>eE,O4:()=>ey,QX:()=>eI,RP:()=>T,S2:()=>k,SP:()=>$,TF:()=>L,Tu:()=>g,Xj:()=>j,_c:()=>et,cY:()=>eR,fG:()=>M,jp:()=>X,lF:()=>eA,r1:()=>c,rE:()=>K,s7:()=>O,vd:()=>ed,ve:()=>z,wb:()=>eo,wh:()=>Q,z2:()=>ex});var n=r(59357);let i="AbstractRule",a="AbstractType",s="Condition",o="TypeDefinition",l="ValueLiteral",u="AbstractElement";function c(e){return eS.isInstance(e,u)}let d="ArrayLiteral",h="ArrayType",f="BooleanLiteral";function p(e){return eS.isInstance(e,f)}let m="Conjunction";function g(e){return eS.isInstance(e,m)}let y="Disjunction";function T(e){return eS.isInstance(e,y)}let A="Grammar",v="GrammarImport",R="InferredType";function $(e){return eS.isInstance(e,R)}let E="Interface";function k(e){return eS.isInstance(e,E)}let x="NamedArgument",I="Negation";function S(e){return eS.isInstance(e,I)}let N="NumberLiteral",C="Parameter",w="ParameterReference";function L(e){return eS.isInstance(e,w)}let b="ParserRule";function O(e){return eS.isInstance(e,b)}let _="ReferenceType",P="ReturnType";function M(e){return eS.isInstance(e,P)}let D="SimpleType";function F(e){return eS.isInstance(e,D)}let U="StringLiteral",G="TerminalRule";function K(e){return eS.isInstance(e,G)}let B="Type";function j(e){return eS.isInstance(e,B)}let V="TypeAttribute",H="UnionType",W="Action";function z(e){return eS.isInstance(e,W)}let Y="Alternatives";function X(e){return eS.isInstance(e,Y)}let q="Assignment";function Q(e){return eS.isInstance(e,q)}let Z="CharacterRange";function J(e){return eS.isInstance(e,Z)}let ee="CrossReference";function et(e){return eS.isInstance(e,ee)}let er="EndOfFile";function en(e){return eS.isInstance(e,er)}let ei="Group";function ea(e){return eS.isInstance(e,ei)}let es="Keyword";function eo(e){return eS.isInstance(e,es)}let el="NegatedToken";function eu(e){return eS.isInstance(e,el)}let ec="RegexToken";function ed(e){return eS.isInstance(e,ec)}let eh="RuleCall";function ef(e){return eS.isInstance(e,eh)}let ep="TerminalAlternatives";function em(e){return eS.isInstance(e,ep)}let eg="TerminalGroup";function ey(e){return eS.isInstance(e,eg)}let eT="TerminalRuleCall";function eA(e){return eS.isInstance(e,eT)}let ev="UnorderedGroup";function eR(e){return eS.isInstance(e,ev)}let e$="UntilToken";function eE(e){return eS.isInstance(e,e$)}let ek="Wildcard";function ex(e){return eS.isInstance(e,ek)}class eI extends n.kD{getAllTypes(){return[u,i,a,W,Y,d,h,q,f,Z,s,m,ee,y,er,A,v,ei,R,E,es,x,el,I,N,C,w,b,_,ec,P,eh,D,U,ep,eg,G,eT,B,V,o,H,ev,e$,l,ek]}computeIsSubtype(e,t){switch(e){case W:case Y:case q:case Z:case ee:case er:case ei:case es:case el:case ec:case eh:case ep:case eg:case eT:case ev:case e$:case ek:return this.isSubtype(u,t);case d:case N:case U:return this.isSubtype(l,t);case h:case _:case D:case H:return this.isSubtype(o,t);case f:return this.isSubtype(s,t)||this.isSubtype(l,t);case m:case y:case I:case w:return this.isSubtype(s,t);case R:case E:case B:return this.isSubtype(a,t);case b:return this.isSubtype(i,t)||this.isSubtype(a,t);case G:return this.isSubtype(i,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;switch(t){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return a;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return i;case"Grammar:usedGrammars":return A;case"NamedArgument:parameter":case"ParameterReference:parameter":return C;case"TerminalRuleCall:rule":return G;default:throw Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case u:return{name:u,properties:[{name:"cardinality"},{name:"lookahead"}]};case d:return{name:d,properties:[{name:"elements",defaultValue:[]}]};case h:return{name:h,properties:[{name:"elementType"}]};case f:return{name:f,properties:[{name:"true",defaultValue:!1}]};case m:return{name:m,properties:[{name:"left"},{name:"right"}]};case y:return{name:y,properties:[{name:"left"},{name:"right"}]};case A:return{name:A,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case v:return{name:v,properties:[{name:"path"}]};case R:return{name:R,properties:[{name:"name"}]};case E:return{name:E,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case x:return{name:x,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case I:return{name:I,properties:[{name:"value"}]};case N:return{name:N,properties:[{name:"value"}]};case C:return{name:C,properties:[{name:"name"}]};case w:return{name:w,properties:[{name:"parameter"}]};case b:return{name:b,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case _:return{name:_,properties:[{name:"referenceType"}]};case P:return{name:P,properties:[{name:"name"}]};case D:return{name:D,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case U:return{name:U,properties:[{name:"value"}]};case G:return{name:G,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case B:return{name:B,properties:[{name:"name"},{name:"type"}]};case V:return{name:V,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case H:return{name:H,properties:[{name:"types",defaultValue:[]}]};case W:return{name:W,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case Y:return{name:Y,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case q:return{name:q,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case Z:return{name:Z,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case ee:return{name:ee,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case er:return{name:er,properties:[{name:"cardinality"},{name:"lookahead"}]};case ei:return{name:ei,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case es:return{name:es,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case el:return{name:el,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case ec:return{name:ec,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case eh:return{name:eh,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case ep:return{name:ep,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case eg:return{name:eg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case eT:return{name:eT,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case ev:return{name:ev,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case e$:return{name:e$,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case ek:return{name:ek,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}}let eS=new eI},88388:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(79898),i=r(63114),a=r(5653);let s=function(e){return"string"==typeof e||!(0,i.A)(e)&&(0,a.A)(e)&&"[object String]"==(0,n.A)(e)}},90841:(e,t,r)=>{r.d(t,{b:()=>u});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},l={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function u(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.eZ,l);return t.ServiceRegistry.register(r),{shared:t,GitGraph:r}}(0,n.K2)(u,"createGitGraphServices")},92804:(e,t,r)=>{r.d(t,{A:()=>c});var n,i=r(3585),a=r(89173),s=r(80641),o=r(23956),l=r(78262),u=Math.max;let c=(n=function(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var a=null==r?0:(0,l.A)(r);return a<0&&(a=u(n+a,0)),(0,o.A)(e,(0,i.A)(t,3),a)},function(e,t,r){var o=Object(e);if(!(0,a.A)(e)){var l=(0,i.A)(t,3);e=(0,s.A)(e),t=function(e){return l(o[e],e,o)}}var u=n(e,t,r);return u>-1?o[l?e[u]:u]:void 0})},93401:(e,t,r)=>{r.d(t,{A:()=>n});let n=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},93517:(e,t,r)=>{r.d(t,{mR:()=>ek,dg:()=>e$,jE:()=>ey,Tm:()=>eE,eZ:()=>eT,e5:()=>ep,sr:()=>ef,AM:()=>em,KX:()=>eg,YP:()=>eA,eV:()=>ev,K2:()=>$});var n,i,a,s,o,l,u,c=r(59357),d=r(37044),h=r(34700),f=r(83649),p=r(39841),m=r(43294);let g={Grammar:()=>void 0,LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},y={AstReflection:()=>new f.QX};function T(e){var t;let r,n,i=(r=(0,h.WQ)((0,d.u)(p.D),y),n=(0,h.WQ)((0,d.t)({shared:r}),g),r.ServiceRegistry.register(n),n),a=i.serializer.JsonSerializer.deserialize(e);return i.shared.workspace.LangiumDocumentFactory.fromModel(a,m.r.parse(`memory://${null!=(t=a.name)?t:"grammar"}.langium`)),a}var A=r(29005),v=r(35046),R=Object.defineProperty,$=(e,t)=>R(e,"name",{value:t,configurable:!0}),E="Statement",k="Architecture";$(function(e){return Z.isInstance(e,k)},"isArchitecture");var x="Axis",I="Branch";$(function(e){return Z.isInstance(e,I)},"isBranch");var S="Checkout",N="CherryPicking",C="ClassDefStatement",w="Commit";$(function(e){return Z.isInstance(e,w)},"isCommit");var L="Curve",b="Edge",O="Entry",_="GitGraph";$(function(e){return Z.isInstance(e,_)},"isGitGraph");var P="Group",M="Info";$(function(e){return Z.isInstance(e,M)},"isInfo");var D="Item",F="Junction",U="Merge";$(function(e){return Z.isInstance(e,U)},"isMerge");var G="Option",K="Packet";$(function(e){return Z.isInstance(e,K)},"isPacket");var B="PacketBlock";$(function(e){return Z.isInstance(e,B)},"isPacketBlock"),$(function(e){return Z.isInstance(e,"Pie")},"isPie");var j="PieSection";$(function(e){return Z.isInstance(e,j)},"isPieSection");var V="Radar",H="Service",W="Treemap";$(function(e){return Z.isInstance(e,W)},"isTreemap");var z="TreemapRow",Y="Direction",X="Leaf",q="Section",Q=class extends c.kD{static{$(this,"MermaidAstReflection")}getAllTypes(){return[k,x,I,S,N,C,w,L,Y,b,O,_,P,M,D,F,X,U,G,K,B,"Pie",j,V,q,H,E,W,z]}computeIsSubtype(e,t){switch(e){case I:case S:case N:case w:case U:return this.isSubtype(E,t);case Y:return this.isSubtype(_,t);case X:case q:return this.isSubtype(D,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;if("Entry:axis"===t)return x;throw Error(`${t} is not a valid reference id.`)}getTypeMetaData(e){switch(e){case k:return{name:k,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case x:return{name:x,properties:[{name:"label"},{name:"name"}]};case I:return{name:I,properties:[{name:"name"},{name:"order"}]};case S:return{name:S,properties:[{name:"branch"}]};case N:return{name:N,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case C:return{name:C,properties:[{name:"className"},{name:"styleText"}]};case w:return{name:w,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case L:return{name:L,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case b:return{name:b,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case O:return{name:O,properties:[{name:"axis"},{name:"value"}]};case _:return{name:_,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case P:return{name:P,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case M:return{name:M,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case D:return{name:D,properties:[{name:"classSelector"},{name:"name"}]};case F:return{name:F,properties:[{name:"id"},{name:"in"}]};case U:return{name:U,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case G:return{name:G,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case K:return{name:K,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case B:return{name:B,properties:[{name:"bits"},{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case j:return{name:j,properties:[{name:"label"},{name:"value"}]};case V:return{name:V,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case H:return{name:H,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case W:return{name:W,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"},{name:"TreemapRows",defaultValue:[]}]};case z:return{name:z,properties:[{name:"indent"},{name:"item"}]};case Y:return{name:Y,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};case X:return{name:X,properties:[{name:"classSelector"},{name:"name"},{name:"value"}]};case q:return{name:q,properties:[{name:"classSelector"},{name:"name"}]};default:return{name:e,properties:[]}}}},Z=new Q,J=$(()=>n??(n=T(`{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"InfoGrammar"),ee=$(()=>i??(i=T(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),et=$(()=>a??(a=T(`{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PieGrammar"),er=$(()=>s??(s=T(`{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"ArchitectureGrammar"),en=$(()=>o??(o=T(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),ei=$(()=>l??(l=T(`{"$type":"Grammar","isDeclared":true,"name":"Radar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),ea=$(()=>u??(u=T(`{"$type":"Grammar","isDeclared":true,"name":"Treemap","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","}},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammar"),es={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eo={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},el={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eu={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ec={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ed={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},eh={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ef={AstReflection:$(()=>new Q,"AstReflection")},ep={Grammar:$(()=>J(),"Grammar"),LanguageMetaData:$(()=>es,"LanguageMetaData"),parser:{}},em={Grammar:$(()=>ee(),"Grammar"),LanguageMetaData:$(()=>eo,"LanguageMetaData"),parser:{}},eg={Grammar:$(()=>et(),"Grammar"),LanguageMetaData:$(()=>el,"LanguageMetaData"),parser:{}},ey={Grammar:$(()=>er(),"Grammar"),LanguageMetaData:$(()=>eu,"LanguageMetaData"),parser:{}},eT={Grammar:$(()=>en(),"Grammar"),LanguageMetaData:$(()=>ec,"LanguageMetaData"),parser:{}},eA={Grammar:$(()=>ei(),"Grammar"),LanguageMetaData:$(()=>ed,"LanguageMetaData"),parser:{}},ev={Grammar:$(()=>ea(),"Grammar"),LanguageMetaData:$(()=>eh,"LanguageMetaData"),parser:{}},eR={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},e$=class extends A.d{static{$(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return(void 0===n&&(n=this.runCustomConverter(e,t,r)),void 0===n)?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=eR[e.name];if(void 0===n)return;let i=n.exec(t);if(null!==i){if(void 0!==i[1])return i[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==i[2])return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},eE=class extends e${static{$(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},ek=class extends v.Q{static{$(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}};(class extends ek{static{$(this,"CommonTokenBuilder")}})},94994:(e,t,r)=>{r.d(t,{S:()=>c});var n=r(93517),i=r(39841),a=r(34700),s=r(37044),o=class extends n.mR{static{(0,n.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},l=class extends n.dg{static{(0,n.K2)(this,"ArchitectureValueConverter")}runCustomConverter(e,t,r){return"ARCH_ICON"===e.name?t.replace(/[()]/g,"").trim():"ARCH_TEXT_ICON"===e.name?t.replace(/["()]/g,""):"ARCH_TITLE"===e.name?t.replace(/[[\]]/g,"").trim():void 0}},u={parser:{TokenBuilder:(0,n.K2)(()=>new o,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new l,"ValueConverter")}};function c(e=i.D){let t=(0,a.WQ)((0,s.u)(e),n.sr),r=(0,a.WQ)((0,s.t)({shared:t}),n.jE,u);return t.ServiceRegistry.register(r),{shared:t,Architecture:r}}(0,n.K2)(c,"createArchitectureServices")},96781:(e,t,r)=>{function n(e){return e.charCodeAt(0)}function i(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function a(e,t){if(!0===e[t])throw"duplicate flag "+t;e[t],e[t]=!0}function s(e){if(void 0===e)throw Error("Internal Error - Should never get here!");return!0}function o(){throw Error("Internal Error - Should never get here!")}function l(e){return"Character"===e.type}r.d(t,{z:()=>g,H:()=>m});let u=[];for(let e=n("0");e<=n("9");e++)u.push(e);let c=[n("_")].concat(u);for(let e=n("a");e<=n("z");e++)c.push(e);for(let e=n("A");e<=n("Z");e++)c.push(e);let d=[n(" "),n("\f"),n("\n"),n("\r"),n(" "),n("\v"),n(" "),n("\xa0"),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n("\u2028"),n("\u2029"),n(" "),n(" "),n(" "),n("\uFEFF")],h=/[0-9a-fA-F]/,f=/[0-9]/,p=/[1-9]/;class m{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let t=this.disjunction();this.consumeChar("/");let r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":a(r,"global");break;case"i":a(r,"ignoreCase");break;case"m":a(r,"multiLine");break;case"u":a(r,"unicode");break;case"y":a(r,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":let t;switch(this.consumeChar("?"),this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead"}s(t);let r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return o()}quantifier(e=!1){let t,r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":let n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":t=this.isDigit()?{atLeast:n,atMost:this.integerIncludingZero()}:{atLeast:n,atMost:1/0},this.consumeChar("}")}if(!0===e&&void 0===t)return;s(t)}if((!0!==e||void 0!==t)&&s(t))return"?"===this.peekChar(0)?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t}atom(){let e,t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group()}return(void 0===e&&this.isPatternCharacter()&&(e=this.patternCharacter()),s(e))?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):o()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n("\n"),n("\r"),n("\u2028"),n("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=u;break;case"D":e=u,t=!0;break;case"s":e=d;break;case"S":e=d,t=!0;break;case"w":e=c;break;case"W":e=c,t=!0}return s(e)?{type:"Set",value:e,complement:t}:o()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=n("\f");break;case"n":e=n("\n");break;case"r":e=n("\r");break;case"t":e=n(" ");break;case"v":e=n("\v")}return s(e)?{type:"Character",value:e}:o()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(!1===/[a-zA-Z]/.test(e))throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:n("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:n(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:n(this.popChar())}}}characterClass(){let e=[],t=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),t=!0);this.isClassAtom();){let t=this.classAtom();if(t.type,l(t)&&this.isRangeDash()){this.consumeChar("-");let r=this.classAtom();if(r.type,l(r)){if(r.value<t.value)throw Error("Range out of order in character class");e.push({from:t.value,to:r.value})}else i(t.value,e),e.push(n("-")),i(r.value,e)}else i(t.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:n("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;this.consumeChar("("),"?"===this.peekChar(0)?(this.consumeChar("?"),this.consumeChar(":"),e=!1):this.groupIdx++;let t=this.disjunction();this.consumeChar(")");let r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(!1===p.test(e))throw Error("Expecting a positive integer");for(;f.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(!1===f.test(e))throw Error("Expecting an integer");for(;f.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:n(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return"-"===this.peekChar()&&this.isClassAtom(1)}isDigit(){return f.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2));default:return!1}}isQuantifier(){let e=this.saveState();try{return void 0!==this.quantifier(!0)}catch(e){return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let r=0;r<e;r++){let e=this.popChar();if(!1===h.test(e))throw Error("Expecting a HexDecimal digits");t+=e}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(void 0!==e&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class g{visitChildren(e){for(let t in e){let r=e[t];e.hasOwnProperty(t)&&(void 0!==r.type?this.visit(r):Array.isArray(r)&&r.forEach(e=>{this.visit(e)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}},99233:(e,t,r)=>{r.d(t,{Ao:()=>h,Nt:()=>d,PC:()=>f,TH:()=>i,Yv:()=>c,lU:()=>l});var n=r(96781);let i=/\r?\n/gm,a=new n.H;class s extends n.z{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=d(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){let t=new RegExp(this.regex.substring(e.loc.begin,e.loc.end));this.multiline=!!"\n".match(t)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}}let o=new s;function l(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),o.reset(e),o.visit(a.pattern(e)),o.multiline}catch(e){return!1}}let u="\f\n\r \v \xa0 \u2028\u2029 \uFEFF".split("");function c(e){let t="string"==typeof e?new RegExp(e):e;return u.some(e=>t.test(e))}function d(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function h(e){return Array.prototype.map.call(e,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:d(e)).join("")}function f(e,t){var r;let n,i,a,s=("string"==typeof(r=e)&&(r=new RegExp(r)),n=r,i=r.source,a=0,new RegExp(function e(){let t="",r;function s(e){t+=i.substr(a,e),a+=e}function o(e){t+="(?:"+i.substr(a,e)+"|$)",a+=e}for(;a<i.length;)switch(i[a]){case"\\":switch(i[a+1]){case"c":o(3);break;case"x":o(4);break;case"u":o(n.unicode?"{"===i[a+2]?i.indexOf("}",a)-a+1:6:2);break;case"p":case"P":o(n.unicode?i.indexOf("}",a)-a+1:2);break;case"k":o(i.indexOf(">",a)-a+1);break;default:o(2)}break;case"[":(r=/\[(?:\\.|.)*?\]/g).lastIndex=a,o((r=r.exec(i)||[])[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":s(1);break;case"{":(r=/\{\d+,?\d*\}/g).lastIndex=a,(r=r.exec(i))?s(r[0].length):o(1);break;case"(":if("?"===i[a+1])switch(i[a+2]){case":":t+="(?:",a+=3,t+=e()+"|$)";break;case"=":t+="(?=",a+=3,t+=e()+")";break;case"!":r=a,a+=3,e(),t+=i.substr(r,a-r);break;case"<":switch(i[a+3]){case"=":case"!":r=a,a+=4,e(),t+=i.substr(r,a-r);break;default:s(i.indexOf(">",a)-a+1),t+=e()+"|$)"}}else s(1),t+=e()+"|$)";break;case")":return++a,t;default:o(1)}return t}(),r.flags)),o=t.match(s);return!!o&&o[0].length>0}}}]);
|