@henlii/pidance 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +12 -7
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.json +6 -2
- package/.next/routes-manifest.json +36 -6
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +3 -3
- package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/about/route.js +1 -1
- package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/running/events/route.js +2 -2
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent-settings/route.js +2 -2
- package/.next/server/app/api/attachments/route.js +1 -1
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/auth/ui-session/route.js +1 -1
- package/.next/server/app/api/cwd/browse/route.js +1 -1
- package/.next/server/app/api/cwd/validate/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/files/[...path]/route.js +5 -5
- package/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/server/app/api/git/status/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/raw/route.js +1 -0
- package/.next/server/app/api/models-config/raw/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/route.js +1 -1
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -2
- package/.next/server/app/api/plugins/search/route.js +1 -0
- package/.next/server/app/api/{runtime/switch → plugins/search}/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/plugins/updates/route.js +1 -0
- package/.next/server/app/api/plugins/updates/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/preferences/route.js +1 -0
- package/.next/server/app/api/preferences/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/project-assets/route.js +13 -0
- package/.next/server/app/api/project-assets/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/prompts/route.js +1 -0
- package/.next/server/app/api/{runtime → prompts}/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +4 -4
- package/.next/server/app/api/sessions/[id]/command-entry/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +17 -17
- package/.next/server/app/api/sessions/[id]/info/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/tool-results/[toolCallId]/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/search/route.js +3 -3
- package/.next/server/app/api/settings/raw/route.js +2 -0
- package/.next/server/app/api/settings/raw/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +1 -1
- package/.next/server/app/api/skills/route.js +2 -2
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +1 -1
- package/.next/server/app/api/subagent-runs/route.js +1 -1
- package/.next/server/app/api/update/apply/route.js +4 -2
- package/.next/server/app/api/update/check/route.js +2 -2
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/icon.png/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +5 -5
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/index.segments/_full.segment.rsc +5 -5
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page.js +6 -6
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +12 -7
- package/.next/server/chunks/188.js +1 -1
- package/.next/server/chunks/2325.js +1 -1
- package/.next/server/chunks/3960.js +1 -1
- package/.next/server/chunks/5319.js +1 -1
- package/.next/server/chunks/5582.js +1 -0
- package/.next/server/chunks/6192.js +1 -1
- package/.next/server/chunks/7561.js +1 -1
- package/.next/server/chunks/7594.js +1 -0
- package/.next/server/chunks/8359.js +2 -0
- package/.next/server/chunks/981.js +1 -1
- package/.next/server/chunks/9874.js +1 -1
- package/.next/server/instrumentation.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware.js +2 -2
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/server/webpack-runtime.js +1 -1
- package/.next/static/chunks/1-71e25539dfd4d39d.js +1 -0
- package/.next/static/chunks/9780-f1bf37996f7894e3.js +1 -0
- package/.next/static/chunks/app/_global-error/page-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/about/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/bash-output/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/agent-settings/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/attachments/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/auth/ui-session/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/cwd/browse/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/cwd/validate/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/home/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/models/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/models-config/raw/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/plugins/search/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/plugins/updates/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/preferences/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/project-assets/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/prompts/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/archive/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/info/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/state/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/sessions/search/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/settings/raw/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/skills/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/subagent-runs/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/update/apply/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/update/check/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/app/page-d30f26ad6c277d9a.js +25 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-c74291295bcd24a9.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-c74291295bcd24a9.js +1 -0
- package/.next/static/css/{08fde228db4b094f.css → 3f30d6a75b867678.css} +1 -1
- package/.next/static/q1mexPd6cs-PRLAbDhEQK/_buildManifest.js +1 -0
- package/README.en.md +25 -10
- package/README.md +26 -10
- package/README.zh-CN.md +32 -2
- package/bin/pidance.js +17 -0
- package/package.json +4 -6
- package/.next/server/app/api/runtime/route.js +0 -1
- package/.next/server/app/api/runtime/switch/route.js +0 -1
- package/.next/server/chunks/1734.js +0 -1
- package/.next/server/chunks/1965.js +0 -8
- package/.next/server/chunks/2537.js +0 -1
- package/.next/server/chunks/2817.js +0 -17
- package/.next/server/chunks/3115.js +0 -4
- package/.next/server/chunks/3504.js +0 -1
- package/.next/server/chunks/3533.js +0 -1293
- package/.next/server/chunks/3603.js +0 -1
- package/.next/server/chunks/3757.js +0 -1
- package/.next/server/chunks/3776.js +0 -1
- package/.next/server/chunks/4188.js +0 -1
- package/.next/server/chunks/443.js +0 -32
- package/.next/server/chunks/6454.js +0 -28
- package/.next/server/chunks/7075.js +0 -1
- package/.next/server/chunks/7129.js +0 -6
- package/.next/server/chunks/7527.js +0 -1
- package/.next/server/chunks/8213.js +0 -1
- package/.next/server/chunks/8875.js +0 -2
- package/.next/server/chunks/9071.js +0 -1
- package/.next/server/chunks/951.js +0 -8
- package/.next/server/chunks/9784.js +0 -2
- package/.next/server/chunks/9883.js +0 -2
- package/.next/static/Y_GKPks6Yv2rUhwcLuaB0/_buildManifest.js +0 -1
- package/.next/static/chunks/5531-66b1a21ff1c52081.js +0 -1
- package/.next/static/chunks/9780-3a70190d23b25b10.js +0 -1
- package/.next/static/chunks/app/_global-error/page-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/about/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/bash-output/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/agent-settings/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/attachments/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/auth/ui-session/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/cwd/browse/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/cwd/validate/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/git/diff/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/git/status/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/home/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/models/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/runtime/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/runtime/switch/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/archive/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/info/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/state/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/sessions/search/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/skills/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/subagent-runs/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/update/apply/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/update/check/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/app/page-36437a35f2251063.js +0 -25
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-81852e4fa8c48c17.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-81852e4fa8c48c17.js +0 -1
- /package/.next/static/{Y_GKPks6Yv2rUhwcLuaB0 → q1mexPd6cs-PRLAbDhEQK}/_ssgManifest.js +0 -0
|
@@ -79,4 +79,4 @@ Make sure that all grammar rule definitions are done before 'performSelfAnalysis
|
|
|
79
79
|
`;return d+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
80
80
|
For Further details.`}function sG(a){if(a instanceof ll)return"SUBRULE";if(a instanceof lo)return"OPTION";if(a instanceof lt)return"OR";if(a instanceof lp)return"AT_LEAST_ONE";if(a instanceof lq)return"AT_LEAST_ONE_SEP";else if(a instanceof ls)return"MANY_SEP";else if(a instanceof lr)return"MANY";else if(a instanceof lu)return"CONSUME";else throw Error("non exhaustive match")}function sH(a,b,c){return{actualToken:c,possibleTokenTypes:sl(sb(b.configs.elements,a=>a.state.transitions).filter(a=>a instanceof rD).map(a=>a.tokenType),a=>a.tokenTypeIdx),tokenPath:a}}function sI(a,b){return a.edges[b.tokenTypeIdx]}function sJ(a,b,c){let d,e=new r3,f=[];for(let d of a.elements){if(!1===c.is(d.alt))continue;if(7===d.state.type){f.push(d);continue}let a=d.state.transitions.length;for(let c=0;c<a;c++){let a=sK(d.state.transitions[c],b);void 0!==a&&e.add({state:a,alt:d.alt,stack:d.stack})}}if(0===f.length&&1===e.size&&(d=e),void 0===d)for(let a of(d=new r3,e.elements))sQ(a,d);if(f.length>0&&!sS(d))for(let a of f)d.add(a);return d}function sK(a,b){if(a instanceof rD&&m2(b,a.tokenType))return a.target}function sL(a,b){let c;for(let d of a.elements)if(!0===b.is(d.alt)){if(void 0===c)c=d.alt;else if(c!==d.alt)return}return c}function sM(a){return{configs:a,edges:{},isAcceptState:!1,prediction:-1}}function sN(a,b,c,d){return d=sO(a,d),b.edges[c.tokenTypeIdx]=d,d}function sO(a,b){if(b===r2)return b;let c=b.configs.key,d=a.states[c];return void 0!==d?d:(b.configs.finalize(),a.states[c]=b,b)}function sP(a){let b=new r3,c=a.transitions.length;for(let d=0;d<c;d++)sQ({state:a.transitions[d].target,alt:d,stack:[]},b);return b}function sQ(a,b){let c=a.state;if(7===c.type){if(a.stack.length>0){let c=[...a.stack];sQ({state:c.pop(),alt:a.alt,stack:c},b)}else b.add(a);return}c.epsilonOnlyTransitions||b.add(a);let d=c.transitions.length;for(let e=0;e<d;e++){let d=sR(a,c.transitions[e]);void 0!==d&&sQ(d,b)}}function sR(a,b){if(b instanceof rE)return{state:b.target,alt:a.alt,stack:a.stack};if(b instanceof rF){let c=[...a.stack,b.followState];return{state:b.target,alt:a.alt,stack:c}}}function sS(a){for(let b of a.elements)if(7===b.state.type)return!0;return!1}function sT(a){for(let b of a.elements)if(7!==b.state.type)return!1;return!0}function sU(a){if(sT(a))return!0;let b=sV(a.elements);return sW(b)&&!sX(b)}function sV(a){let b=new Map;for(let c of a){let a=r4(c,!1),d=b.get(a);void 0===d&&(d={},b.set(a,d)),d[c.alt]=!0}return b}function sW(a){for(let b of Array.from(a.values()))if(Object.keys(b).length>1)return!0;return!1}function sX(a){for(let b of Array.from(a.values()))if(1===Object.keys(b).length)return!0;return!1}bJ(sz,"isLL1Sequence"),bJ(sA,"initATNSimulator"),bJ(sB,"adaptivePredict"),bJ(sC,"performLookahead"),bJ(sD,"computeLookaheadTarget"),bJ(sE,"reportLookaheadAmbiguity"),bJ(sF,"buildAmbiguityError"),bJ(sG,"getProductionDslName"),bJ(sH,"buildAdaptivePredictError"),bJ(sI,"getExistingTargetState"),bJ(sJ,"computeReachSet"),bJ(sK,"getReachableTarget"),bJ(sL,"getUniqueAlt"),bJ(sM,"newDFAState"),bJ(sN,"addDFAEdge"),bJ(sO,"addDFAState"),bJ(sP,"computeStartState"),bJ(sQ,"closure"),bJ(sR,"getEpsilonTarget"),bJ(sS,"hasConfigInRuleStopState"),bJ(sT,"allConfigsInRuleStopStates"),bJ(sU,"hasConflictTerminatingPrediction"),bJ(sV,"getConflictingAltSets"),bJ(sW,"hasConflictingAltSet"),bJ(sX,"hasStateAssociatedWithOneAlt"),bR();var sY=class{static{bJ(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(a){return this.rootNode=new s1(a),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(a){let b=new s_;return b.grammarSource=a,b.root=this.rootNode,this.current.content.push(b),this.nodeStack.push(b),b}buildLeafNode(a,b){let c=new s$(a.startOffset,a.image.length,eO(a),a.tokenType,!b);return c.grammarSource=b,c.root=this.rootNode,this.current.content.push(c),c}removeNode(a){let b=a.container;if(b){let c=b.content.indexOf(a);c>=0&&b.content.splice(c,1)}}addHiddenNodes(a){let b=[];for(let c of a){let a=new s$(c.startOffset,c.image.length,eO(c),c.tokenType,!0);a.root=this.rootNode,b.push(a)}let c=this.current,d=!1;if(c.content.length>0)return void c.content.push(...b);for(;c.container;){let a=c.container.content.indexOf(c);if(a>0){c.container.content.splice(a,0,...b),d=!0;break}c=c.container}d||this.rootNode.content.unshift(...b)}construct(a){let b=this.current;"string"!=typeof a.$type||a.$infix||(this.current.astNode=a),a.$cstNode=b;let c=this.nodeStack.pop();c?.content.length===0&&this.removeNode(c)}},sZ=class{static{bJ(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let a="string"==typeof this._astNode?.$type?this._astNode:this.container?.astNode;if(!a)throw Error("This node has no associated AST element");return a}set astNode(a){this._astNode=a}get text(){return this.root.fullText.substring(this.offset,this.end)}},s$=class extends sZ{static{bJ(this,"LeafCstNodeImpl")}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(a,b,c,d,e=!1){super(),this._hidden=e,this._offset=a,this._tokenType=d,this._length=b,this._range=c}},s_=class extends sZ{static{bJ(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new s0(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let a=this.firstNonHiddenNode,b=this.lastNonHiddenNode;if(!a||!b)return{start:u.create(0,0),end:u.create(0,0)};if(void 0===this._rangeCache){let{range:c}=a,{range:d}=b;this._rangeCache={start:c.start,end:d.end.line<c.start.line?c.start:d.end}}return this._rangeCache}get firstNonHiddenNode(){for(let a of this.content)if(!a.hidden)return a;return this.content[0]}get lastNonHiddenNode(){for(let a=this.content.length-1;a>=0;a--){let b=this.content[a];if(!b.hidden)return b}return this.content[this.content.length-1]}},s0=class a extends Array{static{bJ(this,"CstNodeContainer")}constructor(b){super(),this.parent=b,Object.setPrototypeOf(this,a.prototype)}push(...a){return this.addParents(a),super.push(...a)}unshift(...a){return this.addParents(a),super.unshift(...a)}splice(a,b,...c){return this.addParents(c),super.splice(a,b,...c)}addParents(a){for(let b of a)b.container=this.parent}},s1=class extends s_{static{bJ(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(a){super(),this._text="",this._text=a??""}},s2=Symbol("Datatype");function s3(a){return a.$type===s2}bJ(s3,"isDataTypeNode");var s4=bJ(a=>a.endsWith("")?a:a+"","withRuleSuffix"),s5=class{static{bJ(this,"AbstractLangiumParser")}constructor(a){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=a.parser.Lexer;const b=this.lexer.definition,c="production"===a.LanguageMetaData.mode;a.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new tc(b,{...a.parser.ParserConfig,skipValidations:c,errorMessageProvider:a.parser.ParserErrorMessageProvider},a.shared.profilers.LangiumProfiler.createTask("parsing",a.LanguageMetaData.languageId)):this.wrapper=new tb(b,{...a.parser.ParserConfig,skipValidations:c,errorMessageProvider:a.parser.ParserErrorMessageProvider})}alternatives(a,b){this.wrapper.wrapOr(a,b)}optional(a,b){this.wrapper.wrapOption(a,b)}many(a,b){this.wrapper.wrapMany(a,b)}atLeastOne(a,b){this.wrapper.wrapAtLeastOne(a,b)}getRule(a){return this.allRules.get(a)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},s6=class extends s5{static{bJ(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(a){super(a),this.nodeBuilder=new sY,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=a.references.Linker,this.converter=a.parser.ValueConverter,this.astReflection=a.shared.AstReflection}rule(a,b){let c,d=this.computeRuleType(a);dL(a)&&(c=a.name,this.registerPrecedenceMap(a));let e=this.wrapper.DEFINE_RULE(s4(a.name),this.startImplementation(d,c,b).bind(this));return this.allRules.set(a.name,e),d5(a)&&a.entry&&(this.mainRule=e),e}registerPrecedenceMap(a){let b=a.name,c=new Map;for(let b=0;b<a.operators.precedences.length;b++){let d=a.operators.precedences[b];for(let a of d.operators)c.set(a.value,{precedence:b,rightAssoc:"right"===d.associativity})}this.operatorPrecedence.set(b,c)}computeRuleType(a){if(dL(a))return fV(a);if(!a.fragment)if(fQ(a))return s2;else return fV(a)}parse(a,b={}){this.nodeBuilder.buildRootNode(a);let c=this.lexerResult=this.lexer.tokenize(a);this.wrapper.input=c.tokens;let d=b.rule?this.allRules.get(b.rule):this.mainRule;if(!d)throw Error(b.rule?`No rule found with name '${b.rule}'`:"No main rule available.");let e=this.doParse(d);return this.nodeBuilder.addHiddenNodes(c.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,cR(e,{deep:!0}),{value:e,lexerErrors:c.errors,lexerReport:c.report,parserErrors:this.wrapper.errors}}doParse(a){let b=this.wrapper.rule(a);if(this.stack.length>0&&(b=this.construct()),void 0===b)throw Error("No result from parser");if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return b}startImplementation(a,b,c){return d=>{let e=!this.isRecording()&&void 0!==a;if(e){let c={$type:a};this.stack.push(c),a===s2?c.value="":void 0!==b&&(c.$infixName=b)}return c(d),e?this.construct():void 0}}extractHiddenTokens(a){let b=this.lexerResult.hidden;if(!b.length)return[];let c=a.startOffset;for(let a=0;a<b.length;a++)if(b[a].startOffset>c)return b.splice(0,a);return b.splice(0,b.length)}consume(a,b,c){let d=this.wrapper.wrapConsume(a,b);if(!this.isRecording()&&this.isValidToken(d)){let a=this.extractHiddenTokens(d);this.nodeBuilder.addHiddenNodes(a);let b=this.nodeBuilder.buildLeafNode(d,c),{assignment:e,crossRef:f}=this.getAssignment(c),g=this.current;if(e){let a=dT(c)?d.image:this.converter.convert(d.image,b);this.assign(e.operator,e.feature,a,b,f)}else if(s3(g)){let a=d.image;dT(c)||(a=this.converter.convert(a,b).toString()),g.value+=a}}}isValidToken(a){return!a.isInsertedInRecovery&&!isNaN(a.startOffset)&&"number"==typeof a.endOffset&&!isNaN(a.endOffset)}subrule(a,b,c,d,e){let f,g;this.isRecording()||c||(f=this.nodeBuilder.buildCompositeNode(d));try{g=this.wrapper.wrapSubrule(a,b,e)}finally{!this.isRecording()&&(void 0!==g||c||(g=this.construct()),void 0!==g&&f&&f.length>0&&this.performSubruleAssignment(g,d,f))}}performSubruleAssignment(a,b,c){let{assignment:d,crossRef:e}=this.getAssignment(b);if(d)this.assign(d.operator,d.feature,a,c,e);else if(!d){let b=this.current;if(s3(b))b.value+=a.toString();else if("object"==typeof a&&a){let c=this.assignWithoutOverride(a,b);this.stack.pop(),this.stack.push(c)}}}action(a,b){if(!this.isRecording()){let c=this.current;b.feature&&b.operator?(c=this.construct(),this.nodeBuilder.removeNode(c.$cstNode),this.nodeBuilder.buildCompositeNode(b).content.push(c.$cstNode),this.stack.push({$type:a}),this.assign(b.operator,b.feature,c,c.$cstNode)):c.$type=a}}construct(){if(this.isRecording())return;let a=this.stack.pop();return(this.nodeBuilder.construct(a),"$infixName"in a)?this.constructInfix(a,this.operatorPrecedence.get(a.$infixName)):s3(a)?this.converter.convert(a.value,a.$cstNode):(c0(this.astReflection,a),a)}constructInfix(a,b){let c=a.parts;if(!Array.isArray(c)||0===c.length)return;let d=a.operators;if(!Array.isArray(d)||c.length<2)return c[0];let e=0,f=-1;for(let a=0;a<d.length;a++){let c=d[a],g=b.get(c)??{precedence:1/0,rightAssoc:!1};g.precedence>f?(f=g.precedence,e=a):g.precedence!==f||g.rightAssoc||(e=a)}let g=d.slice(0,e),h=d.slice(e+1),i=c.slice(0,e+1),j=c.slice(e+1),k={$infixName:a.$infixName,$type:a.$type,$cstNode:a.$cstNode,parts:i,operators:g},l={$infixName:a.$infixName,$type:a.$type,$cstNode:a.$cstNode,parts:j,operators:h},m=this.constructInfix(k,b),n=this.constructInfix(l,b);return{$type:a.$type,$cstNode:a.$cstNode,left:m,operator:d[e],right:n}}getAssignment(a){if(!this.assignmentMap.has(a)){let b=cS(a,dm);this.assignmentMap.set(a,{assignment:b,crossRef:b&&dx(b.terminal)?b.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(a)}assign(a,b,c,d,e){let f,g=this.current;switch(f="single"===e&&"string"==typeof c?this.linker.buildReference(g,b,d,c):"multi"===e&&"string"==typeof c?this.linker.buildMultiReference(g,b,d,c):c,a){case"=":g[b]=f;break;case"?=":g[b]=!0;break;case"+=":Array.isArray(g[b])||(g[b]=[]),g[b].push(f)}}assignWithoutOverride(a,b){for(let[c,d]of Object.entries(b)){let b=a[c];void 0===b?a[c]=d:Array.isArray(b)&&Array.isArray(d)&&(d.push(...b),a[c]=d)}let c=a.$cstNode;return c&&(c.astNode=void 0,a.$cstNode=void 0),a}get definitionErrors(){return this.wrapper.definitionErrors}},s7=class{static{bJ(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(a){return m3.buildMismatchTokenMessage(a)}buildNotAllInputParsedMessage(a){return m3.buildNotAllInputParsedMessage(a)}buildNoViableAltMessage(a){return m3.buildNoViableAltMessage(a)}buildEarlyExitMessage(a){return m3.buildEarlyExitMessage(a)}},s8=class extends s7{static{bJ(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:a,actual:b}){let c=a.LABEL?"`"+a.LABEL+"`":a.name.endsWith(":KW")?`keyword '${a.name.substring(0,a.name.length-3)}'`:`token of type '${a.name}'`;return`Expecting ${c} but found \`${b.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:a}){return`Expecting end of file but found \`${a.image}\`.`}},s9=class extends s5{static{bJ(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(a){this.resetState();let b=this.lexer.tokenize(a,{mode:"partial"});return this.tokens=b.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(a,b){let c=this.wrapper.DEFINE_RULE(s4(a.name),this.startImplementation(b).bind(this));return this.allRules.set(a.name,c),a.entry&&(this.mainRule=c),c}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(a){return b=>{let c=this.keepStackSize();try{a(b)}finally{this.resetStackSize(c)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let a=this.elementStack.length;return this.stackSize=a,a}resetStackSize(a){this.removeUnexpectedElements(),this.stackSize=a}consume(a,b,c){this.wrapper.wrapConsume(a,b),this.isRecording()||(this.lastElementStack=[...this.elementStack,c],this.nextTokenIndex=this.currIdx+1)}subrule(a,b,c,d,e){this.before(d),this.wrapper.wrapSubrule(a,b,e),this.after(d)}before(a){this.isRecording()||this.elementStack.push(a)}after(a){if(!this.isRecording()){let b=this.elementStack.lastIndexOf(a);b>=0&&this.elementStack.splice(b)}}get currIdx(){return this.wrapper.currIdx}},ta={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new s8},tb=class extends oJ{static{bJ(this,"ChevrotainWrapper")}constructor(a,b){const c=b&&"maxLookahead"in b;super(a,{...ta,lookaheadStrategy:c?new n9({maxLookahead:b.maxLookahead}):new sy({logging:b.skipValidations?()=>{}:void 0}),...b})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(a,b,c){return this.RULE(a,b,c)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(a,b){return this.consume(a,b,void 0)}wrapSubrule(a,b,c){return this.subrule(a,b,{ARGS:[c]})}wrapOr(a,b){this.or(a,b)}wrapOption(a,b){this.option(a,b)}wrapMany(a,b){this.many(a,b)}wrapAtLeastOne(a,b){this.atLeastOne(a,b)}rule(a){return a.call(this,{})}},tc=class extends tb{static{bJ(this,"ProfilerWrapper")}constructor(a,b,c){super(a,b),this.task=c}rule(a){this.task.start(),this.task.startSubTask(this.ruleName(a));try{return super.rule(a)}finally{this.task.stopSubTask(this.ruleName(a)),this.task.stop()}}ruleName(a){return a.ruleName}subrule(a,b,c){this.task.startSubTask(this.ruleName(b));try{return super.subrule(a,b,c)}finally{this.task.stopSubTask(this.ruleName(b))}}};function td(a,b,c){return te({parser:b,tokens:c,ruleNames:new Map},a),b}function te(a,b){let c=fy(b,!1);for(let d of cO(b.rules).filter(d5).filter(a=>c.has(a))){let b={...a,consume:1,optional:1,subrule:1,many:1,or:1};a.parser.rule(d,tg(b,d.definition))}for(let d of cO(b.rules).filter(dL).filter(a=>c.has(a)))a.parser.rule(d,tf(a,d))}function tf(a,b){let c,d=b.call.rule.ref;if(!d)throw Error("Could not resolve reference to infix operator rule: "+b.call.rule.$refText);if(ep(d))throw Error("Cannot use terminal rule in infix expression");let e=b.operators.precedences.flatMap(a=>a.operators),f={$type:"Group",elements:[]},g={$container:f,$type:"Assignment",feature:"parts",operator:"+=",terminal:b.call},h={$container:f,$type:"Group",elements:[],cardinality:"*"};f.elements.push(g,h);let i={$container:h,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:e}},j={...g,$container:h};h.elements.push(i,j);let k=e.map(b=>a.tokens[b.value]).map((b,c)=>({ALT:bJ(()=>a.parser.consume(c,b,i),"ALT")}));return b=>{c??(c=ts(a,d)),a.parser.subrule(0,c,!1,g,b),a.parser.many(0,{DEF:bJ(()=>{a.parser.alternatives(0,k),a.parser.subrule(1,c,!1,j,b)},"DEF")})}}function tg(a,b,c=!1){let d;if(dT(b))d=tq(a,b);else if(de(b))d=th(a,b);else if(dm(b))d=tg(a,b.terminal);else if(dx(b))d=tp(a,b);else if(ed(b))d=ti(a,b);else if(dg(b))d=tl(a,b);else if(eB(b))d=tm(a,b);else if(dH(b))d=tn(a,b);else if(dB(b)){let c=a.consume++;d=bJ(()=>a.parser.consume(c,m0,b),"method")}else throw new e4(b.$cstNode,`Unexpected element type: ${b.$type}`);return tr(a,c?void 0:to(b),d,b.cardinality)}function th(a,b){let c=fV(b);return()=>a.parser.action(c,b)}function ti(a,b){let c=b.rule.ref;if(c8(c)){let d,e=a.subrule++,f=d5(c)&&c.fragment,g=b.arguments.length>0?tj(c,b.arguments):()=>({});return h=>{d??(d=ts(a,c)),a.parser.subrule(e,d,f,b,g(h))}}if(ep(c)){let d=a.consume++,e=tu(a,c.name);return()=>a.parser.consume(d,e,b)}if(c)e5(c);else throw new e4(b.$cstNode,`Undefined rule: ${b.rule.$refText}`)}function tj(a,b){if(b.some(a=>a.calledByName)){let a=b.map(a=>({parameterName:a.parameter?.ref?.name,predicate:tk(a.value)}));return b=>{let c={};for(let{parameterName:d,predicate:e}of a)d&&(c[d]=e(b));return c}}{let c=b.map(a=>tk(a.value));return b=>{let d={};for(let e=0;e<c.length;e++)if(e<a.parameters.length){let f=a.parameters[e].name,g=c[e];d[f]=g(b)}return d}}}function tk(a){if(dz(a)){let b=tk(a.left),c=tk(a.right);return a=>b(a)||c(a)}if(dv(a)){let b=tk(a.left),c=tk(a.right);return a=>b(a)&&c(a)}if(dZ(a)){let b=tk(a.value);return a=>!b(a)}if(d3(a)){let b=a.parameter.ref.name;return a=>void 0!==a&&!0===a[b]}if(dp(a)){let b=!!a.true;return()=>b}e5(a)}function tl(a,b){if(1===b.elements.length)return tg(a,b.elements[0]);{let c=[];for(let d of b.elements){let b={ALT:tg(a,d,!0)},e=to(d);e&&(b.GATE=tk(e)),c.push(b)}let d=a.or++;return b=>a.parser.alternatives(d,c.map(a=>{let c={ALT:bJ(()=>a.ALT(b),"ALT")},d=a.GATE;return d&&(c.GATE=()=>d(b)),c}))}}function tm(a,b){if(1===b.elements.length)return tg(a,b.elements[0]);let c=[];for(let d of b.elements){let b={ALT:tg(a,d,!0)},e=to(d);e&&(b.GATE=tk(e)),c.push(b)}let d=a.or++,e=bJ((a,b)=>{let c=b.getRuleStack().join("-");return`uGroup_${a}_${c}`},"idFunc"),f=bJ(b=>a.parser.alternatives(d,c.map((c,f)=>{let g={ALT:bJ(()=>!0,"ALT")},h=a.parser;g.ALT=()=>{if(c.ALT(b),!h.isRecording()){let a=e(d,h);h.unorderedGroups.get(a)||h.unorderedGroups.set(a,[]);let b=h.unorderedGroups.get(a);void 0===b?.[f]&&(b[f]=!0)}};let i=c.GATE;return i?g.GATE=()=>i(b):g.GATE=()=>{let a=h.unorderedGroups.get(e(d,h));return!a?.[f]},g})),"alternatives"),g=tr(a,to(b),f,"*");return b=>{g(b),a.parser.isRecording()||a.parser.unorderedGroups.delete(e(d,a.parser))}}function tn(a,b){let c=b.elements.map(b=>tg(a,b));return a=>c.forEach(b=>b(a))}function to(a){if(dH(a))return a.guardCondition}function tp(a,b,c=b.terminal){if(c)if(ed(c)&&d5(c.rule.ref)){let d,e=c.rule.ref,f=a.subrule++;return c=>{d??(d=ts(a,e)),a.parser.subrule(f,d,!1,b,c)}}else if(ed(c)&&ep(c.rule.ref)){let d=a.consume++,e=tu(a,c.rule.ref.name);return()=>a.parser.consume(d,e,b)}else if(dT(c)){let d=a.consume++,e=tu(a,c.value);return()=>a.parser.consume(d,e,b)}else throw Error("Could not build cross reference parser");{if(!b.type.ref)throw Error("Could not resolve reference to type: "+b.type.$refText);let c=fK(b.type.ref),d=c?.terminal;if(!d)throw Error("Could not find name assignment for type: "+fV(b.type.ref));return tp(a,b,d)}}function tq(a,b){let c=a.consume++,d=a.tokens[b.value];if(!d)throw Error("Could not find token for keyword: "+b.value);return()=>a.parser.consume(c,d,b)}function tr(a,b,c,d){let e=b&&tk(b);if(!d)if(!e)return c;else{let b=a.or++;return d=>a.parser.alternatives(b,[{ALT:bJ(()=>c(d),"ALT"),GATE:bJ(()=>e(d),"GATE")},{ALT:oH(),GATE:bJ(()=>!e(d),"GATE")}])}if("*"===d){let b=a.many++;return d=>a.parser.many(b,{DEF:bJ(()=>c(d),"DEF"),GATE:e?()=>e(d):void 0})}if("+"===d){let b=a.many++;if(!e)return d=>a.parser.atLeastOne(b,{DEF:bJ(()=>c(d),"DEF")});{let d=a.or++;return f=>a.parser.alternatives(d,[{ALT:bJ(()=>a.parser.atLeastOne(b,{DEF:bJ(()=>c(f),"DEF")}),"ALT"),GATE:bJ(()=>e(f),"GATE")},{ALT:oH(),GATE:bJ(()=>!e(f),"GATE")}])}}if("?"===d){let b=a.optional++;return d=>a.parser.optional(b,{DEF:bJ(()=>c(d),"DEF"),GATE:e?()=>e(d):void 0})}e5(d)}function ts(a,b){let c=tt(a,b),d=a.parser.getRule(c);if(!d)throw Error(`Rule "${c}" not found."`);return d}function tt(a,b){if(c8(b))return b.name;{if(a.ruleNames.has(b))return a.ruleNames.get(b);let c=b,d=c.$container,e=b.$type;for(;!d5(d);)(dH(d)||dg(d)||eB(d))&&(e=d.elements.indexOf(c).toString()+":"+e),c=d,d=d.$container;return e=d.name+":"+e,a.ruleNames.set(b,e),e}}function tu(a,b){let c=a.tokens[b];if(!c)throw Error(`Token "${b}" not found."`);return c}function tv(a){let b=a.Grammar,c=a.parser.Lexer,d=new s9(a);return td(b,d,c.definition),d.finalize(),d}function tw(a){let b=tx(a);return b.finalize(),b}function tx(a){let b=a.Grammar,c=a.parser.Lexer;return td(b,new s6(a),c.definition)}bJ(td,"createParser"),bJ(te,"buildRules"),bJ(tf,"buildInfixRule"),bJ(tg,"buildElement"),bJ(th,"buildAction"),bJ(ti,"buildRuleCall"),bJ(tj,"buildRuleCallPredicate"),bJ(tk,"buildPredicate"),bJ(tl,"buildAlternatives"),bJ(tm,"buildUnorderedGroup"),bJ(tn,"buildGroup"),bJ(to,"getGuardCondition"),bJ(tp,"buildCrossReference"),bJ(tq,"buildKeyword"),bJ(tr,"wrap"),bJ(ts,"getRule"),bJ(tt,"getRuleName"),bJ(tu,"getToken"),bJ(tv,"createCompletionParser"),bJ(tw,"createLangiumParser"),bJ(tx,"prepareLangiumParser");var ty=class{static{bJ(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(a,b){let c=cO(fy(a,!1)),d=this.buildTerminalTokens(c),e=this.buildKeywordTokens(c,d,b);return e.push(...d),e}flushLexingReport(a){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let a=[...this.diagnostics];return this.diagnostics=[],a}buildTerminalTokens(a){return a.filter(ep).filter(a=>!a.fragment).map(a=>this.buildTerminalToken(a)).toArray()}buildTerminalToken(a){let b=fZ(a),c=this.requiresCustomPattern(b)?this.regexPatternFunction(b):b,d={name:a.name,PATTERN:c};return"function"==typeof c&&(d.LINE_BREAKS=!0),a.hidden&&(d.GROUP=fs(b)?mP.SKIPPED:"hidden"),d}requiresCustomPattern(a){return!!(a.flags.includes("u")||a.flags.includes("s"))}regexPatternFunction(a){let b=RegExp(a,a.flags+"y");return(a,c)=>(b.lastIndex=c,b.exec(a))}buildKeywordTokens(a,b,c){return a.filter(c8).flatMap(a=>cY(a).filter(dT)).distinct(a=>a.value).toArray().sort((a,b)=>b.value.length-a.value.length).map(a=>this.buildKeywordToken(a,b,!!c?.caseInsensitive))}buildKeywordToken(a,b,c){let d=this.buildKeywordPattern(a,c),e={name:a.value,PATTERN:d,LONGER_ALT:this.findLongerAlt(a,b)};return"function"==typeof d&&(e.LINE_BREAKS=!0),e}buildKeywordPattern(a,b){return b?RegExp(ft(a.value),"i"):a.value}findLongerAlt(a,b){return b.reduce((b,c)=>{let d=c?.PATTERN;return d?.source&&fu("^"+d.source+"$",a.value)&&b.push(c),b},[])}},tz=class{static{bJ(this,"DefaultValueConverter")}convert(a,b){let c=b.grammarSource;if(dx(c)&&(c=fB(c)),ed(c)){let d=c.rule.ref;if(!d)throw Error("This cst node was not parsed by a rule.");return this.runConverter(d,a,b)}return a}runConverter(a,b,c){switch(a.name.toUpperCase()){case"INT":return a_.convertInt(b);case"STRING":return a_.convertString(b);case"ID":return a_.convertID(b)}switch(fY(a)?.toLowerCase()){case"number":return a_.convertNumber(b);case"boolean":return a_.convertBoolean(b);case"bigint":return a_.convertBigint(b);case"date":return a_.convertDate(b);default:return b}}};!function(a){function b(a){let b="";for(let d=1;d<a.length-1;d++){let e=a.charAt(d);"\\"===e?b+=c(a.charAt(++d)):b+=e}return b}function c(a){switch(a){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 a}}function d(a){return"^"===a.charAt(0)?a.substring(1):a}function e(a){return parseInt(a)}function f(a){return BigInt(a)}function g(a){return new Date(a)}function h(a){return Number(a)}function i(a){return"true"===a.toLowerCase()}bJ(b,"convertString"),a.convertString=b,bJ(c,"convertEscapeCharacter"),bJ(d,"convertID"),a.convertID=d,bJ(e,"convertInt"),a.convertInt=e,bJ(f,"convertBigint"),a.convertBigint=f,bJ(g,"convertDate"),a.convertDate=g,bJ(h,"convertNumber"),a.convertNumber=h,bJ(i,"convertBoolean"),a.convertBoolean=i}(a_||(a_={}));var tA={};function tB(){return new Promise(a=>{"u"<typeof setImmediate?setTimeout(a,0):setImmediate(a)})}bN(tA,bO(bV(),1)),bJ(tB,"delayNextTick");var tC=0,tD=10;function tE(){return tC=performance.now(),new tA.CancellationTokenSource}function tF(a){tD=a}bJ(tE,"startCancelableOperation"),bJ(tF,"setInterruptionPeriod");var tG=Symbol("OperationCancelled");function tH(a){return a===tG}async function tI(a){if(a===tA.CancellationToken.None)return;let b=performance.now();if(b-tC>=tD&&(tC=b,await tB(),tC=performance.now()),a.isCancellationRequested)throw tG}bJ(tH,"isOperationCancelled"),bJ(tI,"interruptAndCheck");var tJ=class{static{bJ(this,"Deferred")}constructor(){this.promise=new Promise((a,b)=>{this.resolve=b=>(a(b),this),this.reject=a=>(b(a),this)})}},tK=class a{static{bJ(this,"FullTextDocument")}constructor(a,b,c,d){this._uri=a,this._languageId=b,this._version=c,this._content=d,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(a){if(a){let b=this.offsetAt(a.start),c=this.offsetAt(a.end);return this._content.substring(b,c)}return this._content}update(b,c){for(let c of b)if(a.isIncremental(c)){let a=tO(c.range),b=this.offsetAt(a.start),d=this.offsetAt(a.end);this._content=this._content.substring(0,b)+c.text+this._content.substring(d,this._content.length);let e=Math.max(a.start.line,0),f=Math.max(a.end.line,0),g=this._lineOffsets,h=tM(c.text,!1,b);if(f-e===h.length)for(let a=0,b=h.length;a<b;a++)g[a+e+1]=h[a];else h.length<1e4?g.splice(e+1,f-e,...h):this._lineOffsets=g=g.slice(0,e+1).concat(h,g.slice(f+1));let i=c.text.length-(d-b);if(0!==i)for(let a=e+1+h.length,b=g.length;a<b;a++)g[a]=g[a]+i}else if(a.isFull(c))this._content=c.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=c}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=tM(this._content,!0)),this._lineOffsets}positionAt(a){a=Math.max(Math.min(a,this._content.length),0);let b=this.getLineOffsets(),c=0,d=b.length;if(0===d)return{line:0,character:a};for(;c<d;){let e=Math.floor((c+d)/2);b[e]>a?d=e:c=e+1}let e=c-1;return a=this.ensureBeforeEOL(a,b[e]),{line:e,character:a-b[e]}}offsetAt(a){let b=this.getLineOffsets();if(a.line>=b.length)return this._content.length;if(a.line<0)return 0;let c=b[a.line];if(a.character<=0)return c;let d=a.line+1<b.length?b[a.line+1]:this._content.length,e=Math.min(c+a.character,d);return this.ensureBeforeEOL(e,c)}ensureBeforeEOL(a,b){for(;a>b&&tN(this._content.charCodeAt(a-1));)a--;return a}get lineCount(){return this.getLineOffsets().length}static isIncremental(a){return null!=a&&"string"==typeof a.text&&void 0!==a.range&&(void 0===a.rangeLength||"number"==typeof a.rangeLength)}static isFull(a){return null!=a&&"string"==typeof a.text&&void 0===a.range&&void 0===a.rangeLength}};function tL(a,b){if(a.length<=1)return a;let c=a.length/2|0,d=a.slice(0,c),e=a.slice(c);tL(d,b),tL(e,b);let f=0,g=0,h=0;for(;f<d.length&&g<e.length;)0>=b(d[f],e[g])?a[h++]=d[f++]:a[h++]=e[g++];for(;f<d.length;)a[h++]=d[f++];for(;g<e.length;)a[h++]=e[g++];return a}function tM(a,b,c=0){let d=b?[c]:[];for(let b=0;b<a.length;b++){let e=a.charCodeAt(b);tN(e)&&(13===e&&b+1<a.length&&10===a.charCodeAt(b+1)&&b++,d.push(c+b+1))}return d}function tN(a){return 13===a||10===a}function tO(a){let b=a.start,c=a.end;return b.line>c.line||b.line===c.line&&b.character>c.character?{start:c,end:b}:a}function tP(a){let b=tO(a.range);return b!==a.range?{newText:a.newText,range:b}:a}!function(a){function b(a,b,c,d){return new tK(a,b,c,d)}function c(a,b,c){if(a instanceof tK)return a.update(b,c),a;throw Error("TextDocument.update: document must be created by TextDocument.create")}function d(a,b){let c=a.getText(),d=tL(b.map(tP),(a,b)=>{let c=a.range.start.line-b.range.start.line;return 0===c?a.range.start.character-b.range.start.character:c}),e=0,f=[];for(let b of d){let d=a.offsetAt(b.range.start);if(d<e)throw Error("Overlapping edit");d>e&&f.push(c.substring(e,d)),b.newText.length&&f.push(b.newText),e=a.offsetAt(b.range.end)}return f.push(c.substr(e)),f.join("")}bJ(b,"create"),a.create=b,bJ(c,"update"),a.update=c,bJ(d,"applyEdits"),a.applyEdits=d}(a0||(a0={})),bJ(tL,"mergeSort"),bJ(tM,"computeLineOffsets"),bJ(tN,"isEOL"),bJ(tO,"getWellformedRange"),bJ(tP,"getWellformedEdit"),(()=>{let a;var b,c,d={975:a=>{function b(a){if("string"!=typeof a)throw TypeError("Path must be a string. Received "+JSON.stringify(a))}function c(a,b){for(var c,d="",e=0,f=-1,g=0,h=0;h<=a.length;++h){if(h<a.length)c=a.charCodeAt(h);else{if(47===c)break;c=47}if(47===c){if(f===h-1||1===g);else if(f!==h-1&&2===g){if(d.length<2||2!==e||46!==d.charCodeAt(d.length-1)||46!==d.charCodeAt(d.length-2)){if(d.length>2){var i=d.lastIndexOf("/");if(i!==d.length-1){-1===i?(d="",e=0):e=(d=d.slice(0,i)).length-1-d.lastIndexOf("/"),f=h,g=0;continue}}else if(2===d.length||1===d.length){d="",e=0,f=h,g=0;continue}}b&&(d.length>0?d+="/..":d="..",e=2)}else d.length>0?d+="/"+a.slice(f+1,h):d=a.slice(f+1,h),e=h-f-1;f=h,g=0}else 46===c&&-1!==g?++g:g=-1}return d}bJ(b,"e"),bJ(c,"r");var d={resolve:bJ(function(){for(var a,d,e="",f=!1,g=arguments.length-1;g>=-1&&!f;g--)g>=0?a=arguments[g]:(void 0===d&&(d=process.cwd()),a=d),b(a),0!==a.length&&(e=a+"/"+e,f=47===a.charCodeAt(0));return e=c(e,!f),f?e.length>0?"/"+e:"/":e.length>0?e:"."},"resolve"),normalize:bJ(function(a){if(b(a),0===a.length)return".";var d=47===a.charCodeAt(0),e=47===a.charCodeAt(a.length-1);return 0!==(a=c(a,!d)).length||d||(a="."),a.length>0&&e&&(a+="/"),d?"/"+a:a},"normalize"),isAbsolute:bJ(function(a){return b(a),a.length>0&&47===a.charCodeAt(0)},"isAbsolute"),join:bJ(function(){if(0==arguments.length)return".";for(var a,c=0;c<arguments.length;++c){var e=arguments[c];b(e),e.length>0&&(void 0===a?a=e:a+="/"+e)}return void 0===a?".":d.normalize(a)},"join"),relative:bJ(function(a,c){if(b(a),b(c),a===c||(a=d.resolve(a))===(c=d.resolve(c)))return"";for(var e=1;e<a.length&&47===a.charCodeAt(e);++e);for(var f=a.length,g=f-e,h=1;h<c.length&&47===c.charCodeAt(h);++h);for(var i=c.length-h,j=g<i?g:i,k=-1,l=0;l<=j;++l){if(l===j){if(i>j){if(47===c.charCodeAt(h+l))return c.slice(h+l+1);if(0===l)return c.slice(h+l)}else g>j&&(47===a.charCodeAt(e+l)?k=l:0===l&&(k=0));break}var m=a.charCodeAt(e+l);if(m!==c.charCodeAt(h+l))break;47===m&&(k=l)}var n="";for(l=e+k+1;l<=f;++l)l!==f&&47!==a.charCodeAt(l)||(0===n.length?n+="..":n+="/..");return n.length>0?n+c.slice(h+k):(h+=k,47===c.charCodeAt(h)&&++h,c.slice(h))},"relative"),_makeLong:bJ(function(a){return a},"_makeLong"),dirname:bJ(function(a){if(b(a),0===a.length)return".";for(var c=a.charCodeAt(0),d=47===c,e=-1,f=!0,g=a.length-1;g>=1;--g)if(47===(c=a.charCodeAt(g))){if(!f){e=g;break}}else f=!1;return -1===e?d?"/":".":d&&1===e?"//":a.slice(0,e)},"dirname"),basename:bJ(function(a,c){if(void 0!==c&&"string"!=typeof c)throw TypeError('"ext" argument must be a string');b(a);var d,e=0,f=-1,g=!0;if(void 0!==c&&c.length>0&&c.length<=a.length){if(c.length===a.length&&c===a)return"";var h=c.length-1,i=-1;for(d=a.length-1;d>=0;--d){var j=a.charCodeAt(d);if(47===j){if(!g){e=d+1;break}}else -1===i&&(g=!1,i=d+1),h>=0&&(j===c.charCodeAt(h)?-1==--h&&(f=d):(h=-1,f=i))}return e===f?f=i:-1===f&&(f=a.length),a.slice(e,f)}for(d=a.length-1;d>=0;--d)if(47===a.charCodeAt(d)){if(!g){e=d+1;break}}else -1===f&&(g=!1,f=d+1);return -1===f?"":a.slice(e,f)},"basename"),extname:bJ(function(a){b(a);for(var c=-1,d=0,e=-1,f=!0,g=0,h=a.length-1;h>=0;--h){var i=a.charCodeAt(h);if(47!==i)-1===e&&(f=!1,e=h+1),46===i?-1===c?c=h:1!==g&&(g=1):-1!==c&&(g=-1);else if(!f){d=h+1;break}}return -1===c||-1===e||0===g||1===g&&c===e-1&&c===d+1?"":a.slice(c,e)},"extname"),format:bJ(function(a){var b,c;if(null===a||"object"!=typeof a)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof a);return b=a.dir||a.root,c=a.base||(a.name||"")+(a.ext||""),b?b===a.root?b+c:b+"/"+c:c},"format"),parse:bJ(function(a){b(a);var c={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return c;var d,e=a.charCodeAt(0),f=47===e;f?(c.root="/",d=1):d=0;for(var g=-1,h=0,i=-1,j=!0,k=a.length-1,l=0;k>=d;--k)if(47!==(e=a.charCodeAt(k)))-1===i&&(j=!1,i=k+1),46===e?-1===g?g=k:1!==l&&(l=1):-1!==g&&(l=-1);else if(!j){h=k+1;break}return -1===g||-1===i||0===l||1===l&&g===i-1&&g===h+1?-1!==i&&(c.base=c.name=0===h&&f?a.slice(1,i):a.slice(h,i)):(0===h&&f?(c.name=a.slice(1,g),c.base=a.slice(1,i)):(c.name=a.slice(h,g),c.base=a.slice(h,i)),c.ext=a.slice(g,i)),h>0?c.dir=a.slice(0,h-1):f&&(c.dir="/"),c},"parse"),sep:"/",delimiter:":",win32:null,posix:null};d.posix=d,a.exports=d}},e={};function f(a){var b=e[a];if(void 0!==b)return b.exports;var c=e[a]={exports:{}};return d[a](c,c.exports,f),c.exports}bJ(f,"r"),f.d=(a,b)=>{for(var c in b)f.o(b,c)&&!f.o(a,c)&&Object.defineProperty(a,c,{enumerable:!0,get:b[c]})},f.o=(a,b)=>Object.prototype.hasOwnProperty.call(a,b),f.r=a=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})};var g={};(f.r(g),f.d(g,{URI:bJ(()=>m,"URI"),Utils:bJ(()=>c,"Utils")}),"object"==typeof process)?a="win32"===process.platform:"object"==typeof navigator&&(a=navigator.userAgent.indexOf("Windows")>=0);let h=/^\w[\w\d+.-]*$/,i=/^\//,j=/^\/\//;function k(a,b){if(!a.scheme&&b)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${a.authority}", path: "${a.path}", query: "${a.query}", fragment: "${a.fragment}"}`);if(a.scheme&&!h.test(a.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(a.path){if(a.authority){if(!i.test(a.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(j.test(a.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}bJ(k,"a");let l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class m{static{bJ(this,"l")}static isUri(a){return a instanceof m||!!a&&"string"==typeof a.authority&&"string"==typeof a.fragment&&"string"==typeof a.path&&"string"==typeof a.query&&"string"==typeof a.scheme&&"string"==typeof a.fsPath&&"function"==typeof a.with&&"function"==typeof a.toString}scheme;authority;path;query;fragment;constructor(a,b,c,d,e,f=!1){"object"==typeof a?(this.scheme=a.scheme||"",this.authority=a.authority||"",this.path=a.path||"",this.query=a.query||"",this.fragment=a.fragment||""):(this.scheme=function(a,b){return a||b?a:"file"}(a,f),this.authority=b||"",this.path=function(a,b){switch(a){case"https":case"http":case"file":b?"/"!==b[0]&&(b="/"+b):b="/"}return b}(this.scheme,c||""),this.query=d||"",this.fragment=e||"",k(this,f))}get fsPath(){return s(this,!1)}with(a){if(!a)return this;let{scheme:b,authority:c,path:d,query:e,fragment:f}=a;return void 0===b?b=this.scheme:null===b&&(b=""),void 0===c?c=this.authority:null===c&&(c=""),void 0===d?d=this.path:null===d&&(d=""),void 0===e?e=this.query:null===e&&(e=""),void 0===f?f=this.fragment:null===f&&(f=""),b===this.scheme&&c===this.authority&&d===this.path&&e===this.query&&f===this.fragment?this:new o(b,c,d,e,f)}static parse(a,b=!1){let c=l.exec(a);return c?new o(c[2]||"",w(c[4]||""),w(c[5]||""),w(c[7]||""),w(c[9]||""),b):new o("","","","","")}static file(b){let c="";if(a&&(b=b.replace(/\\/g,"/")),"/"===b[0]&&"/"===b[1]){let a=b.indexOf("/",2);-1===a?(c=b.substring(2),b="/"):(c=b.substring(2,a),b=b.substring(a)||"/")}return new o("file",c,b,"","")}static from(a){let b=new o(a.scheme,a.authority,a.path,a.query,a.fragment);return k(b,!0),b}toString(a=!1){return t(this,a)}toJSON(){return this}static revive(a){if(a){if(a instanceof m)return a;{let b=new o(a);return b._formatted=a.external,b._fsPath=a._sep===n?a.fsPath:null,b}}return a}}let n=a?1:void 0;class o extends m{static{bJ(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=s(this,!1)),this._fsPath}toString(a=!1){return a?t(this,!0):(this._formatted||(this._formatted=t(this,!1)),this._formatted)}toJSON(){let a={$mid:1};return this._fsPath&&(a.fsPath=this._fsPath,a._sep=n),this._formatted&&(a.external=this._formatted),this.path&&(a.path=this.path),this.scheme&&(a.scheme=this.scheme),this.authority&&(a.authority=this.authority),this.query&&(a.query=this.query),this.fragment&&(a.fragment=this.fragment),a}}let p={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 q(a,b,c){let d,e=-1;for(let f=0;f<a.length;f++){let g=a.charCodeAt(f);if(g>=97&&g<=122||g>=65&&g<=90||g>=48&&g<=57||45===g||46===g||95===g||126===g||b&&47===g||c&&91===g||c&&93===g||c&&58===g)-1!==e&&(d+=encodeURIComponent(a.substring(e,f)),e=-1),void 0!==d&&(d+=a.charAt(f));else{void 0===d&&(d=a.substr(0,f));let b=p[g];void 0!==b?(-1!==e&&(d+=encodeURIComponent(a.substring(e,f)),e=-1),d+=b):-1===e&&(e=f)}}return -1!==e&&(d+=encodeURIComponent(a.substring(e))),void 0!==d?d:a}function r(a){let b;for(let c=0;c<a.length;c++){let d=a.charCodeAt(c);35===d||63===d?(void 0===b&&(b=a.substr(0,c)),b+=p[d]):void 0!==b&&(b+=a[c])}return void 0!==b?b:a}function s(b,c){let d;return d=b.authority&&b.path.length>1&&"file"===b.scheme?`//${b.authority}${b.path}`:47===b.path.charCodeAt(0)&&(b.path.charCodeAt(1)>=65&&90>=b.path.charCodeAt(1)||b.path.charCodeAt(1)>=97&&122>=b.path.charCodeAt(1))&&58===b.path.charCodeAt(2)?c?b.path.substr(1):b.path[1].toLowerCase()+b.path.substr(2):b.path,a&&(d=d.replace(/\//g,"\\")),d}function t(a,b){let c=b?r:q,d="",{scheme:e,authority:f,path:g,query:h,fragment:i}=a;if(e&&(d+=e,d+=":"),(f||"file"===e)&&(d+="/",d+="/"),f){let a=f.indexOf("@");if(-1!==a){let b=f.substr(0,a);f=f.substr(a+1),-1===(a=b.lastIndexOf(":"))?d+=c(b,!1,!1):(d+=c(b.substr(0,a),!1,!1),d+=":",d+=c(b.substr(a+1),!1,!0)),d+="@"}-1===(a=(f=f.toLowerCase()).lastIndexOf(":"))?d+=c(f,!1,!0):(d+=c(f.substr(0,a),!1,!0),d+=f.substr(a))}if(g){if(g.length>=3&&47===g.charCodeAt(0)&&58===g.charCodeAt(2)){let a=g.charCodeAt(1);a>=65&&a<=90&&(g=`/${String.fromCharCode(a+32)}:${g.substr(3)}`)}else if(g.length>=2&&58===g.charCodeAt(1)){let a=g.charCodeAt(0);a>=65&&a<=90&&(g=`${String.fromCharCode(a+32)}:${g.substr(2)}`)}d+=c(g,!0,!1)}return h&&(d+="?",d+=c(h,!1,!1)),i&&(d+="#",d+=b?i:q(i,!1,!1)),d}function u(a){try{return decodeURIComponent(a)}catch{return a.length>3?a.substr(0,3)+u(a.substr(3)):a}}bJ(q,"m"),bJ(r,"y"),bJ(s,"v"),bJ(t,"b"),bJ(u,"C");let v=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function w(a){return a.match(v)?a.replace(v,a=>u(a)):a}bJ(w,"w");var x=f(975);let y=x.posix||x;(b=c||(c={})).joinPath=function(a,...b){return a.with({path:y.join(a.path,...b)})},b.resolvePath=function(a,...b){let c=a.path,d=!1;"/"!==c[0]&&(c="/"+c,d=!0);let e=y.resolve(c,...b);return d&&"/"===e[0]&&!a.authority&&(e=e.substring(1)),a.with({path:e})},b.dirname=function(a){if(0===a.path.length||"/"===a.path)return a;let b=y.dirname(a.path);return 1===b.length&&46===b.charCodeAt(0)&&(b=""),a.with({path:b})},b.basename=function(a){return y.basename(a.path)},b.extname=function(a){return y.extname(a.path)},a1=g})();var{URI:tQ,Utils:tR}=a1;!function(a){a.basename=tR.basename,a.dirname=tR.dirname,a.extname=tR.extname,a.joinPath=tR.joinPath,a.resolvePath=tR.resolvePath;let b="object"==typeof process&&process?.platform==="win32";function c(a,b){return a?.toString()===b?.toString()}function d(a,c){let d="string"==typeof a?tQ.parse(a).path:a.path,e="string"==typeof c?tQ.parse(c).path:c.path,f=d.split("/").filter(a=>a.length>0),g=e.split("/").filter(a=>a.length>0);if(b){let a=/^[A-Z]:$/;if(f[0]&&a.test(f[0])&&(f[0]=f[0].toLowerCase()),g[0]&&a.test(g[0])&&(g[0]=g[0].toLowerCase()),f[0]!==g[0])return e.substring(1)}let h=0;for(;h<f.length&&f[h]===g[h];h++);return"../".repeat(f.length-h)+g.slice(h).join("/")}function e(a){return tQ.parse(a.toString()).toString()}function f(a,b){let c="string"==typeof a?a:a.path,d="string"==typeof b?b:b.path;return"/"===d.charAt(d.length-1)&&(d=d.slice(0,-1)),"/"===c.charAt(c.length-1)&&(c=c.slice(0,-1)),d===c||!(d.length<c.length)&&"/"===d.charAt(c.length)&&d.startsWith(c)}bJ(c,"equals"),a.equals=c,bJ(d,"relative"),a.relative=d,bJ(e,"normalize"),a.normalize=e,bJ(f,"contains"),a.contains=f}(a2||(a2={}));var tS=class{static{bJ(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(a){return a2.normalize(a)}clear(){this.root.children.clear()}insert(a,b){this.getNode(this.normalizeUri(a),!0).element=b}delete(a){let b=this.getNode(this.normalizeUri(a),!1);b?.parent&&b.parent.children.delete(b.name)}has(a){return this.getNode(this.normalizeUri(a),!1)?.element!==void 0}hasNode(a){return void 0!==this.getNode(this.normalizeUri(a),!1)}find(a){return this.getNode(this.normalizeUri(a),!1)?.element}findNode(a){let b=this.normalizeUri(a),c=this.getNode(b,!1);if(c)return{name:c.name,uri:a2.joinPath(tQ.parse(b),c.name).toString(),element:c.element}}findChildren(a){let b=this.normalizeUri(a),c=this.getNode(b,!1);return c?Array.from(c.children.values()).map(a=>({name:a.name,uri:a2.joinPath(tQ.parse(b),a.name).toString(),element:a.element})):[]}all(){return this.collectValues(this.root)}findAll(a){let b=this.getNode(a2.normalize(a),!1);return b?this.collectValues(b):[]}getNode(a,b){let c=a.split("/");"/"===a.charAt(a.length-1)&&c.pop();let d=this.root;for(let a of c){let c=d.children.get(a);if(!c)if(!b)return;else c={name:a,children:new Map,parent:d},d.children.set(a,c);d=c}return d}collectValues(a){let b=[];for(let c of(a.element&&b.push(a.element),a.children.values()))b.push(...this.collectValues(c));return b}};(m=a3||(a3={}))[m.Changed=0]="Changed",m[m.Parsed=1]="Parsed",m[m.IndexedContent=2]="IndexedContent",m[m.ComputedScopes=3]="ComputedScopes",m[m.Linked=4]="Linked",m[m.IndexedReferences=5]="IndexedReferences",m[m.Validated=6]="Validated";var tT=class{static{bJ(this,"DefaultLangiumDocumentFactory")}constructor(a){this.serviceRegistry=a.ServiceRegistry,this.textDocuments=a.workspace.TextDocuments,this.fileSystemProvider=a.workspace.FileSystemProvider}async fromUri(a,b=tA.CancellationToken.None){let c=await this.fileSystemProvider.readFile(a);return this.createAsync(a,c,b)}fromTextDocument(a,b,c){return(b=b??tQ.parse(a.uri),tA.CancellationToken.is(c))?this.createAsync(b,a,c):this.create(b,a,c)}fromString(a,b,c){return tA.CancellationToken.is(c)?this.createAsync(b,a,c):this.create(b,a,c)}fromModel(a,b){return this.create(b,{$model:a})}create(a,b,c){if("string"==typeof b){let d=this.parse(a,b,c);return this.createLangiumDocument(d,a,void 0,b)}if("$model"in b){let c={value:b.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(c,a)}{let d=this.parse(a,b.getText(),c);return this.createLangiumDocument(d,a,b)}}async createAsync(a,b,c){if("string"==typeof b){let d=await this.parseAsync(a,b,c);return this.createLangiumDocument(d,a,void 0,b)}{let d=await this.parseAsync(a,b.getText(),c);return this.createLangiumDocument(d,a,b)}}createLangiumDocument(a,b,c,d){let e;if(c)e={parseResult:a,uri:b,state:a3.Parsed,references:[],textDocument:c};else{let c=this.createTextDocumentGetter(b,d);e={parseResult:a,uri:b,state:a3.Parsed,references:[],get textDocument(){return c()}}}return a.value.$document=e,e}async update(a,b){let c=a.parseResult.value.$cstNode?.root.fullText,d=this.textDocuments?.get(a.uri.toString()),e=d?d.getText():await this.fileSystemProvider.readFile(a.uri);if(d)Object.defineProperty(a,"textDocument",{value:d});else{let b=this.createTextDocumentGetter(a.uri,e);Object.defineProperty(a,"textDocument",{get:b})}return c!==e&&(a.parseResult=await this.parseAsync(a.uri,e,b),a.parseResult.value.$document=a),a.state=a3.Parsed,a}parse(a,b,c){return this.serviceRegistry.getServices(a).parser.LangiumParser.parse(b,c)}parseAsync(a,b,c){return this.serviceRegistry.getServices(a).parser.AsyncParser.parse(b,c)}createTextDocumentGetter(a,b){let c,d=this.serviceRegistry;return()=>c??(c=a0.create(a.toString(),d.getServices(a).LanguageMetaData.languageId,0,b??""))}},tU=class{static{bJ(this,"DefaultLangiumDocuments")}constructor(a){this.documentTrie=new tS,this.services=a,this.langiumDocumentFactory=a.workspace.LangiumDocumentFactory,this.documentBuilder=()=>a.workspace.DocumentBuilder}get all(){return cO(this.documentTrie.all())}addDocument(a){let b=a.uri.toString();if(this.documentTrie.has(b))throw Error(`A document with the URI '${b}' is already present.`);this.documentTrie.insert(b,a)}getDocument(a){let b=a.toString();return this.documentTrie.find(b)}getDocuments(a){let b=a.toString();return this.documentTrie.findAll(b)}async getOrCreateDocument(a,b){let c=this.getDocument(a);return c||(c=await this.langiumDocumentFactory.fromUri(a,b),this.addDocument(c)),c}createDocument(a,b,c){if(c)return this.langiumDocumentFactory.fromString(b,a,c).then(a=>(this.addDocument(a),a));{let c=this.langiumDocumentFactory.fromString(b,a);return this.addDocument(c),c}}hasDocument(a){return this.documentTrie.has(a.toString())}invalidateDocument(a){let b=a.toString(),c=this.documentTrie.find(b);return c&&this.documentBuilder().resetToState(c,a3.Changed),c}deleteDocument(a){let b=a.toString(),c=this.documentTrie.find(b);return c&&(c.state=a3.Changed,this.documentTrie.delete(b)),c}deleteDocuments(a){let b=a.toString(),c=this.documentTrie.findAll(b);for(let a of c)a.state=a3.Changed;return this.documentTrie.delete(b),c}},tV=Symbol("RefResolving"),tW=class{static{bJ(this,"DefaultLinker")}constructor(a){this.reflection=a.shared.AstReflection,this.langiumDocuments=()=>a.shared.workspace.LangiumDocuments,this.scopeProvider=a.references.ScopeProvider,this.astNodeLocator=a.workspace.AstNodeLocator,this.profiler=a.shared.profilers.LangiumProfiler,this.languageId=a.LanguageMetaData.languageId}async link(a,b=tA.CancellationToken.None){if(this.profiler?.isActive("linking")){let c=this.profiler.createTask("linking",this.languageId);c.start();try{for(let d of cZ(a.parseResult.value))await tI(b),c_(d).forEach(b=>{let e=`${d.$type}:${b.property}`;c.startSubTask(e);try{this.doLink(b,a)}finally{c.stopSubTask(e)}})}finally{c.stop()}}else for(let c of cZ(a.parseResult.value))await tI(b),c_(c).forEach(b=>this.doLink(b,a))}doLink(a,b){let c=a.reference;if("_ref"in c&&void 0===c._ref){c._ref=tV;try{let b=this.getCandidate(a);cE(b)?c._ref=b:(c._nodeDescription=b,c._ref=this.loadAstNode(b)??this.createLinkingError(a,b))}catch(d){console.error(`An error occurred while resolving reference to '${c.$refText}':`,d);let b=d.message??String(d);c._ref={info:a,message:`An error occurred while resolving reference to '${c.$refText}': ${b}`}}b.references.push(c)}else if("_items"in c&&void 0===c._items){c._items=tV;try{let b=this.getCandidates(a),d=[];if(cE(b))c._linkingError=b;else for(let a of b){let b=this.loadAstNode(a);b&&d.push({ref:b,$nodeDescription:a})}c._items=d}catch(b){c._linkingError={info:a,message:`An error occurred while resolving reference to '${c.$refText}': ${b}`},c._items=[]}b.references.push(c)}}unlink(a){for(let b of a.references)"_ref"in b?(b._ref=void 0,delete b._nodeDescription):"_items"in b&&(b._items=void 0,delete b._linkingError);a.references=[]}getCandidate(a){return this.scopeProvider.getScope(a).getElement(a.reference.$refText)??this.createLinkingError(a)}getCandidates(a){let b=this.scopeProvider.getScope(a).getElements(a.reference.$refText).distinct(a=>`${a.documentUri}#${a.path}`).toArray();return b.length>0?b:this.createLinkingError(a)}buildReference(a,b,c,d){let e=this,f={$refNode:c,$refText:d,_ref:void 0,get ref(){if(cA(this._ref))return this._ref;if(cD(this._nodeDescription)){let c=e.loadAstNode(this._nodeDescription);this._ref=c??e.createLinkingError({reference:f,container:a,property:b},this._nodeDescription)}else if(void 0===this._ref){this._ref=tV;let c=cV(a).$document,d=e.getLinkedNode({reference:f,container:a,property:b});if(d.error&&c&&c.state<a3.ComputedScopes)return this._ref=void 0;this._ref=d.node??d.error,this._nodeDescription=d.descr,c?.references.push(this)}else this._ref===tV&&e.throwCyclicReferenceError(a,b,d);return cA(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return cE(this._ref)?this._ref:void 0}};return f}buildMultiReference(a,b,c,d){let e=this,f={$refNode:c,$refText:d,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(void 0===this._items){this._items=tV;let c=cV(a).$document,d=e.getCandidates({reference:f,container:a,property:b}),g=[];if(cE(d))this._linkingError=d;else for(let a of d){let b=e.loadAstNode(a);b&&g.push({ref:b,$nodeDescription:a})}this._items=g,c?.references.push(this)}else this._items===tV&&e.throwCyclicReferenceError(a,b,d);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(this.items.length>0)return;return this._linkingError=e.createLinkingError({reference:f,container:a,property:b})}};return f}throwCyclicReferenceError(a,b,c){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(a)}/${b} (symbol '${c}')`)}getLinkedNode(a){try{let b=this.getCandidate(a);if(cE(b))return{error:b};let c=this.loadAstNode(b);if(c)return{node:c,descr:b};return{descr:b,error:this.createLinkingError(a,b)}}catch(c){console.error(`An error occurred while resolving reference to '${a.reference.$refText}':`,c);let b=c.message??String(c);return{error:{info:a,message:`An error occurred while resolving reference to '${a.reference.$refText}': ${b}`}}}}loadAstNode(a){if(a.node)return a.node;let b=this.langiumDocuments().getDocument(a.documentUri);if(b)return this.astNodeLocator.getAstNode(b.parseResult.value,a.path)}createLinkingError(a,b){let c=cV(a.container).$document;c&&c.state<a3.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${c.uri}).`);let d=this.reflection.getReferenceType(a);return{info:a,message:`Could not resolve reference to ${d} named '${a.reference.$refText}'.`,targetDescription:b}}};function tX(a){return"string"==typeof a.name}bJ(tX,"isNamed");var tY=class{static{bJ(this,"DefaultNameProvider")}getName(a){if(tX(a))return a.name}getNameNode(a){return fE(a.$cstNode,"name")}},tZ=class{static{bJ(this,"DefaultReferences")}constructor(a){this.nameProvider=a.references.NameProvider,this.index=a.shared.workspace.IndexManager,this.nodeLocator=a.workspace.AstNodeLocator,this.documents=a.shared.workspace.LangiumDocuments,this.hasMultiReference=cZ(a.Grammar).some(a=>dx(a)&&a.isMulti)}findDeclarations(a){if(a){let b=fJ(a),c=a.astNode;if(b&&c){let d=c[b.feature];if(cB(d)||cC(d))return cW(d);if(Array.isArray(d)){for(let b of d)if((cB(b)||cC(b))&&b.$refNode&&b.$refNode.offset<=a.offset&&b.$refNode.end>=a.end)return cW(b)}}if(c){let b=this.nameProvider.getNameNode(c);if(b&&(b===a||eN(a,b)))return this.getSelfNodes(c)}}return[]}getSelfNodes(a){if(!this.hasMultiReference)return[a];{let b=this.index.findAllReferences(a,this.nodeLocator.getAstNodePath(a)),c=this.getNodeFromReferenceDescription(b.head());if(c){for(let b of c_(c))if(cC(b.reference)&&b.reference.items.some(b=>b.ref===a))return b.reference.items.map(a=>a.ref)}return[a]}}getNodeFromReferenceDescription(a){if(!a)return;let b=this.documents.getDocument(a.sourceUri);if(b)return this.nodeLocator.getAstNode(b.parseResult.value,a.sourcePath)}findDeclarationNodes(a){let b=this.findDeclarations(a),c=[];for(let a of b){let b=this.nameProvider.getNameNode(a)??a.$cstNode;b&&c.push(b)}return c}findReferences(a,b){let c=[];b.includeDeclaration&&c.push(...this.getSelfReferences(a));let d=this.index.findAllReferences(a,this.nodeLocator.getAstNodePath(a));return b.documentUri&&(d=d.filter(a=>a2.equals(a.sourceUri,b.documentUri))),c.push(...d),cO(c)}getSelfReferences(a){let b=this.getSelfNodes(a),c=[];for(let a of b){let b=this.nameProvider.getNameNode(a);if(b){let d=cU(a),e=this.nodeLocator.getAstNodePath(a);c.push({sourceUri:d.uri,sourcePath:e,targetUri:d.uri,targetPath:e,segment:eP(b),local:!0})}}return c}},t$=class{static{bJ(this,"MultiMap")}constructor(a){if(this.map=new Map,a)for(const[b,c]of a)this.add(b,c)}get size(){return aV.sum(cO(this.map.values()).map(a=>a.length))}clear(){this.map.clear()}delete(a,b){if(void 0===b)return this.map.delete(a);{let c=this.map.get(a);if(c){let d=c.indexOf(b);if(d>=0)return 1===c.length?this.map.delete(a):c.splice(d,1),!0}return!1}}get(a){return this.map.get(a)??[]}getStream(a){let b=this.map.get(a);return b?cO(b):cM}has(a,b){if(void 0===b)return this.map.has(a);{let c=this.map.get(a);return!!c&&c.indexOf(b)>=0}}add(a,b){return this.map.has(a)?this.map.get(a).push(b):this.map.set(a,[b]),this}addAll(a,b){return this.map.has(a)?this.map.get(a).push(...b):this.map.set(a,Array.from(b)),this}forEach(a){this.map.forEach((b,c)=>b.forEach(b=>a(b,c,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return cO(this.map.entries()).flatMap(([a,b])=>b.map(b=>[a,b]))}keys(){return cO(this.map.keys())}values(){return cO(this.map.values()).flat()}entriesGroupedByKey(){return cO(this.map.entries())}},t_=class{static{bJ(this,"BiMap")}get size(){return this.map.size}constructor(a){if(this.map=new Map,this.inverse=new Map,a)for(const[b,c]of a)this.set(b,c)}clear(){this.map.clear(),this.inverse.clear()}set(a,b){return this.map.set(a,b),this.inverse.set(b,a),this}get(a){return this.map.get(a)}getKey(a){return this.inverse.get(a)}delete(a){let b=this.map.get(a);return void 0!==b&&(this.map.delete(a),this.inverse.delete(b),!0)}},t0=class{static{bJ(this,"DefaultScopeComputation")}constructor(a){this.nameProvider=a.references.NameProvider,this.descriptions=a.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(a,b=tA.CancellationToken.None){return this.collectExportedSymbolsForNode(a.parseResult.value,a,void 0,b)}async collectExportedSymbolsForNode(a,b,c=cX,d=tA.CancellationToken.None){let e=[];for(let f of(this.addExportedSymbol(a,e,b),c(a)))await tI(d),this.addExportedSymbol(f,e,b);return e}addExportedSymbol(a,b,c){let d=this.nameProvider.getName(a);d&&b.push(this.descriptions.createDescription(a,d,c))}async collectLocalSymbols(a,b=tA.CancellationToken.None){let c=a.parseResult.value,d=new t$;for(let e of cY(c))await tI(b),this.addLocalSymbol(e,a,d);return d}addLocalSymbol(a,b,c){let d=a.$container;if(d){let e=this.nameProvider.getName(a);e&&c.add(d,this.descriptions.createDescription(a,e,b))}}},t1=class{static{bJ(this,"StreamScope")}constructor(a,b,c){this.elements=a,this.outerScope=b,this.caseInsensitive=c?.caseInsensitive??!1,this.concatOuterScope=c?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.caseInsensitive?this.elements.find(a=>a.name.toLowerCase()===b):this.elements.find(b=>b.name===a);return c||(this.outerScope?this.outerScope.getElement(a):void 0)}getElements(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.caseInsensitive?this.elements.filter(a=>a.name.toLowerCase()===b):this.elements.filter(b=>b.name===a);return(this.concatOuterScope||c.isEmpty())&&this.outerScope?c.concat(this.outerScope.getElements(a)):c}},t2=class{static{bJ(this,"MapScope")}constructor(a,b,c){for(const b of(this.elements=new Map,this.caseInsensitive=c?.caseInsensitive??!1,this.concatOuterScope=c?.concatOuterScope??!0,a)){const a=this.caseInsensitive?b.name.toLowerCase():b.name;this.elements.set(a,b)}this.outerScope=b}getElement(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.elements.get(b);return c||(this.outerScope?this.outerScope.getElement(a):void 0)}getElements(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.elements.get(b),d=c?[c]:[];return(this.concatOuterScope||d.length>0)&&this.outerScope?cO(d).concat(this.outerScope.getElements(a)):cO(d)}getAllElements(){let a=cO(this.elements.values());return this.outerScope&&(a=a.concat(this.outerScope.getAllElements())),a}},t3=class{static{bJ(this,"MultiMapScope")}constructor(a,b,c){for(const b of(this.elements=new t$,this.caseInsensitive=c?.caseInsensitive??!1,this.concatOuterScope=c?.concatOuterScope??!0,a)){const a=this.caseInsensitive?b.name.toLowerCase():b.name;this.elements.add(a,b)}this.outerScope=b}getElement(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.elements.get(b)[0];return c||(this.outerScope?this.outerScope.getElement(a):void 0)}getElements(a){let b=this.caseInsensitive?a.toLowerCase():a,c=this.elements.get(b);return(this.concatOuterScope||0===c.length)&&this.outerScope?cO(c).concat(this.outerScope.getElements(a)):cO(c)}getAllElements(){let a=cO(this.elements.values());return this.outerScope&&(a=a.concat(this.outerScope.getAllElements())),a}},t4={getElement(){},getElements:()=>cM,getAllElements:()=>cM},t5=class{static{bJ(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(a){this.toDispose.push(a)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(a=>a.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},t6=class extends t5{static{bJ(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(a){return this.throwIfDisposed(),this.cache.has(a)}set(a,b){this.throwIfDisposed(),this.cache.set(a,b)}get(a,b){if(this.throwIfDisposed(),this.cache.has(a))return this.cache.get(a);if(b){let c=b();return this.cache.set(a,c),c}}delete(a){return this.throwIfDisposed(),this.cache.delete(a)}clear(){this.throwIfDisposed(),this.cache.clear()}},t7=class extends t5{static{bJ(this,"ContextCache")}constructor(a){super(),this.cache=new Map,this.converter=a??(a=>a)}has(a,b){return this.throwIfDisposed(),this.cacheForContext(a).has(b)}set(a,b,c){this.throwIfDisposed(),this.cacheForContext(a).set(b,c)}get(a,b,c){this.throwIfDisposed();let d=this.cacheForContext(a);if(d.has(b))return d.get(b);if(c){let a=c();return d.set(b,a),a}}delete(a,b){return this.throwIfDisposed(),this.cacheForContext(a).delete(b)}clear(a){if(this.throwIfDisposed(),a){let b=this.converter(a);this.cache.delete(b)}else this.cache.clear()}cacheForContext(a){let b=this.converter(a),c=this.cache.get(b);return c||(c=new Map,this.cache.set(b,c)),c}},t8=class extends t7{static{bJ(this,"DocumentCache")}constructor(a,b){super(a=>a.toString()),b?(this.toDispose.push(a.workspace.DocumentBuilder.onDocumentPhase(b,a=>{this.clear(a.uri.toString())})),this.toDispose.push(a.workspace.DocumentBuilder.onUpdate((a,b)=>{for(let a of b)this.clear(a)}))):this.toDispose.push(a.workspace.DocumentBuilder.onUpdate((a,b)=>{for(let c of a.concat(b))this.clear(c)}))}},t9=class extends t6{static{bJ(this,"WorkspaceCache")}constructor(a,b){super(),b?(this.toDispose.push(a.workspace.DocumentBuilder.onBuildPhase(b,()=>{this.clear()})),this.toDispose.push(a.workspace.DocumentBuilder.onUpdate((a,b)=>{b.length>0&&this.clear()}))):this.toDispose.push(a.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},ua=class{static{bJ(this,"DefaultScopeProvider")}constructor(a){this.reflection=a.shared.AstReflection,this.nameProvider=a.references.NameProvider,this.descriptions=a.workspace.AstNodeDescriptionProvider,this.indexManager=a.shared.workspace.IndexManager,this.globalScopeCache=new t9(a.shared)}getScope(a){let b=[],c=this.reflection.getReferenceType(a),d=cU(a.container).localSymbols;if(d){let e=a.container;do d.has(e)&&b.push(d.getStream(e).filter(a=>this.reflection.isSubtype(a.type,c))),e=e.$container;while(e)}let e=this.getGlobalScope(c,a);for(let a=b.length-1;a>=0;a--)e=this.createScope(b[a],e);return e}createScope(a,b,c){return new t1(cO(a),b,c)}createScopeForNodes(a,b,c){return new t1(cO(a).map(a=>{let b=this.nameProvider.getName(a);if(b)return this.descriptions.createDescription(a,b)}).nonNullable(),b,c)}getGlobalScope(a,b){return this.globalScopeCache.get(a,()=>new t3(this.indexManager.allElements(a)))}};function ub(a){return"string"==typeof a.$comment}function uc(a){return"object"==typeof a&&!!a&&("$ref"in a||"$error"in a)}bJ(ub,"isAstNodeWithComment"),bJ(uc,"isIntermediateReference");var ud=class{static{bJ(this,"DefaultJsonSerializer")}constructor(a){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=a.shared.workspace.LangiumDocuments,this.astNodeLocator=a.workspace.AstNodeLocator,this.nameProvider=a.references.NameProvider,this.commentProvider=a.documentation.CommentProvider}serialize(a,b){let c=b??{},d=b?.replacer,e=bJ((a,b)=>this.replacer(a,b,c),"defaultReplacer"),f=d?(a,b)=>d(a,b,e):e;try{return this.currentDocument=cU(a),JSON.stringify(a,f,b?.space)}finally{this.currentDocument=void 0}}deserialize(a,b){let c=JSON.parse(a);return this.linkNode(c,c,b??{}),c}replacer(a,b,{refText:c,sourceText:d,textRegions:e,comments:f,uriConverter:g}){if(!this.ignoreProperties.has(a)){if(cB(b)){let a=b.ref,d=c?b.$refText:void 0;if(!a)return{$error:b.error?.message??"Could not resolve reference",$refText:d};{let b=cU(a),c="";this.currentDocument&&this.currentDocument!==b&&(c=g?g(b.uri,a):b.uri.toString());let e=this.astNodeLocator.getAstNodePath(a);return{$ref:`${c}#${e}`,$refText:d}}}if(cC(b)){let a=c?b.$refText:void 0,d=[];for(let a of b.items){let b=a.ref,c=cU(a.ref),e="";this.currentDocument&&this.currentDocument!==c&&(e=g?g(c.uri,b):c.uri.toString());let f=this.astNodeLocator.getAstNodePath(b);d.push(`${e}#${f}`)}return{$refs:d,$refText:a}}{let c;if(!cA(b))return b;if(e&&(c=this.addAstNodeRegionWithAssignmentsTo({...b}),(!a||b.$document)&&c?.$textRegion&&(c.$textRegion.documentURI=this.currentDocument?.uri.toString())),d&&!a&&(c??(c={...b}),c.$sourceText=b.$cstNode?.text),f){c??(c={...b});let a=this.commentProvider.getComment(b);a&&(c.$comment=a.replace(/\r/g,""))}return c??b}}}addAstNodeRegionWithAssignmentsTo(a){let b=bJ(a=>({offset:a.offset,end:a.end,length:a.length,range:a.range}),"createDocumentSegment");if(a.$cstNode){let c=(a.$textRegion=b(a.$cstNode)).assignments={};return Object.keys(a).filter(a=>!a.startsWith("$")).forEach(d=>{let e=fD(a.$cstNode,d).map(b);0!==e.length&&(c[d]=e)}),a}}linkNode(a,b,c,d,e,f){for(let[d,e]of Object.entries(a))if(Array.isArray(e))for(let f=0;f<e.length;f++){let g=e[f];uc(g)?e[f]=this.reviveReference(a,d,b,g,c):cA(g)&&this.linkNode(g,b,c,a,d,f)}else uc(e)?a[d]=this.reviveReference(a,d,b,e,c):cA(e)&&this.linkNode(e,b,c,a,d);a.$container=d,a.$containerProperty=e,a.$containerIndex=f}reviveReference(a,b,c,d,e){let f,g=d.$refText,h=d.$error;if(d.$ref){let a=this.getRefNode(c,d.$ref,e.uriConverter);if(cA(a))return g||(g=this.nameProvider.getName(a)),{$refText:g??"",ref:a};h=a}else if(d.$refs){let a=[];for(let b of d.$refs){let d=this.getRefNode(c,b,e.uriConverter);cA(d)&&a.push({ref:d})}if(0!==a.length)return{$refText:g??"",items:a};f={$refText:g??"",items:a},h??(h="Could not resolve multi-reference")}return h?(f??(f={$refText:g??"",ref:void 0}),f.error={info:{container:a,property:b,reference:f},message:h},f):void 0}getRefNode(a,b,c){try{let d=b.indexOf("#");if(0===d){let c=this.astNodeLocator.getAstNode(a,b.substring(1));if(!c)return"Could not resolve path: "+b;return c}if(d<0){let a=c?c(b):tQ.parse(b),d=this.langiumDocuments.getDocument(a);if(!d)return"Could not find document for URI: "+b;return d.parseResult.value}let e=c?c(b.substring(0,d)):tQ.parse(b.substring(0,d)),f=this.langiumDocuments.getDocument(e);if(!f)return"Could not find document for URI: "+b;if(d===b.length-1)return f.parseResult.value;let g=this.astNodeLocator.getAstNode(f.parseResult.value,b.substring(d+1));if(!g)return"Could not resolve URI: "+b;return g}catch(a){return String(a)}}},ue=class{static{bJ(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(a){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=a?.workspace.TextDocuments}register(a){let b=a.LanguageMetaData;for(let c of b.fileExtensions)this.fileExtensionMap.has(c)&&console.warn(`The file extension ${c} is used by multiple languages. It is now assigned to '${b.languageId}'.`),this.fileExtensionMap.set(c,a);if(b.fileNames)for(let c of b.fileNames)this.fileNameMap.has(c)&&console.warn(`The file name ${c} is used by multiple languages. It is now assigned to '${b.languageId}'.`),this.fileNameMap.set(c,a);this.languageIdMap.set(b.languageId,a)}getServices(a){if(0===this.languageIdMap.size)throw Error("The service registry is empty. Use `register` to register the services of a language.");let b=this.textDocuments?.get(a)?.languageId;if(void 0!==b){let a=this.languageIdMap.get(b);if(a)return a}let c=a2.extname(a),d=a2.basename(a),e=this.fileNameMap.get(d)??this.fileExtensionMap.get(c);if(!e)if(b)throw Error(`The service registry contains no services for the extension '${c}' for language '${b}'.`);else throw Error(`The service registry contains no services for the extension '${c}'.`);return e}hasServices(a){try{return this.getServices(a),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function uf(a){return{code:a}}bJ(uf,"diagnosticData"),(n=a4||(a4={})).defaults=["fast","slow","built-in"],n.all=n.defaults;var ug=class{static{bJ(this,"ValidationRegistry")}constructor(a){this.entries=new t$,this.knownCategories=new Set(a4.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=a.shared.AstReflection}register(a,b=this,c="fast"){if("built-in"===c)throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[d,e]of(this.knownCategories.add(c),Object.entries(a)))if(Array.isArray(e))for(let a of e){let e={check:this.wrapValidationException(a,b),category:c};this.addEntry(d,e)}else if("function"==typeof e){let a={check:this.wrapValidationException(e,b),category:c};this.addEntry(d,a)}else e5(e)}wrapValidationException(a,b){return async(c,d,e)=>{await this.handleException(()=>a.call(b,c,d,e),"An error occurred during validation",d,c)}}async handleException(a,b,c,d){try{await a()}catch(e){if(tH(e))throw e;console.error(`${b}:`,e),e instanceof Error&&e.stack&&console.error(e.stack);let a=e instanceof Error?e.message:String(e);c("error",`${b}: ${a}`,{node:d})}}addEntry(a,b){if("AstNode"===a)return void this.entries.add("AstNode",b);for(let c of this.reflection.getAllSubTypes(a))this.entries.add(c,b)}getChecks(a,b){let c=cO(this.entries.get(a)).concat(this.entries.get("AstNode"));return b&&(c=c.filter(a=>b.includes(a.category))),c.map(a=>a.check)}registerBeforeDocument(a,b=this){this.entriesBefore.push(this.wrapPreparationException(a,"An error occurred during set-up of the validation",b))}registerAfterDocument(a,b=this){this.entriesAfter.push(this.wrapPreparationException(a,"An error occurred during tear-down of the validation",b))}wrapPreparationException(a,b,c){return async(d,e,f,g)=>{await this.handleException(()=>a.call(c,d,e,f,g),b,e,d)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(a){return this.knownCategories}},uh=Object.freeze({validateNode:!0,validateChildren:!0}),ui=class{static{bJ(this,"DefaultDocumentValidator")}constructor(a){this.validationRegistry=a.validation.ValidationRegistry,this.metadata=a.LanguageMetaData,this.profiler=a.shared.profilers.LangiumProfiler,this.languageId=a.LanguageMetaData.languageId}async validateDocument(a,b={},c=tA.CancellationToken.None){let d=a.parseResult,e=[];if((await tI(c),!b.categories||b.categories.includes("built-in"))&&(this.processLexingErrors(d,e,b),b.stopAfterLexingErrors&&e.some(a=>a.data?.code===a5.LexingError)||(this.processParsingErrors(d,e,b),b.stopAfterParsingErrors&&e.some(a=>a.data?.code===a5.ParsingError))||(this.processLinkingErrors(a,e,b),b.stopAfterLinkingErrors&&e.some(a=>a.data?.code===a5.LinkingError))))return e;try{e.push(...await this.validateAst(d.value,b,c))}catch(a){if(tH(a))throw a;console.error("An error occurred during validation:",a)}return await tI(c),e}processLexingErrors(a,b,c){for(let c of[...a.lexerErrors,...a.lexerReport?.diagnostics??[]]){let a=c.severity??"error",d={severity:uk(a),range:{start:{line:c.line-1,character:c.column-1},end:{line:c.line-1,character:c.column+c.length-1}},message:c.message,data:ul(a),source:this.getSource()};b.push(d)}}processParsingErrors(a,b,c){for(let c of a.parserErrors){let a;if(isNaN(c.token.startOffset)){if("previousToken"in c){let b=c.previousToken;if(isNaN(b.startOffset)){let b={line:0,character:0};a={start:b,end:b}}else{let c={line:b.endLine-1,character:b.endColumn};a={start:c,end:c}}}}else a=eO(c.token);if(a){let d={severity:uk("error"),range:a,message:c.message,data:uf(a5.ParsingError),source:this.getSource()};b.push(d)}}}processLinkingErrors(a,b,c){for(let c of a.references){let a=c.error;if(a){let d={node:a.info.container,range:c.$refNode?.range,property:a.info.property,index:a.info.index,data:{code:a5.LinkingError,containerType:a.info.container.$type,property:a.info.property,refText:a.info.reference.$refText}};b.push(this.toDiagnostic("error",a.message,d))}}}async validateAst(a,b,c=tA.CancellationToken.None){let d=[],e=bJ((a,b,c)=>{d.push(this.toDiagnostic(a,b,c))},"acceptor");return await this.validateAstBefore(a,b,e,c),await this.validateAstNodes(a,b,e,c),await this.validateAstAfter(a,b,e,c),d}async validateAstBefore(a,b,c,d=tA.CancellationToken.None){for(let e of this.validationRegistry.checksBefore)await tI(d),await e(a,c,b.categories??[],d)}async validateAstNodes(a,b,c,d=tA.CancellationToken.None){if(this.profiler?.isActive("validating")){let e=this.profiler.createTask("validating",this.languageId);e.start();try{let f=cZ(a).iterator();for(let a of f){e.startSubTask(a.$type);let g=this.validateSingleNodeOptions(a,b);if(g.validateNode)try{for(let e of this.validationRegistry.getChecks(a.$type,b.categories))await e(a,c,d)}finally{e.stopSubTask(a.$type)}g.validateChildren||f.prune()}}finally{e.stop()}}else{let e=cZ(a).iterator();for(let a of e){await tI(d);let f=this.validateSingleNodeOptions(a,b);if(f.validateNode)for(let e of this.validationRegistry.getChecks(a.$type,b.categories))await e(a,c,d);f.validateChildren||e.prune()}}}validateSingleNodeOptions(a,b){return uh}async validateAstAfter(a,b,c,d=tA.CancellationToken.None){for(let e of this.validationRegistry.checksAfter)await tI(d),await e(a,c,b.categories??[],d)}toDiagnostic(a,b,c){return{message:b,range:uj(c),severity:uk(a),code:c.code,codeDescription:c.codeDescription,tags:c.tags,relatedInformation:c.relatedInformation,data:c.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function uj(a){let b;return a.range?a.range:("string"==typeof a.property?b=fE(a.node.$cstNode,a.property,a.index):"string"==typeof a.keyword&&(b=fH(a.node.$cstNode,a.keyword,a.index)),b??(b=a.node.$cstNode),b)?b.range:{start:{line:0,character:0},end:{line:0,character:0}}}function uk(a){switch(a){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+a)}}function ul(a){switch(a){case"error":return uf(a5.LexingError);case"warning":return uf(a5.LexingWarning);case"info":return uf(a5.LexingInfo);case"hint":return uf(a5.LexingHint);default:throw Error("Invalid diagnostic severity: "+a)}}bJ(uj,"getDiagnosticRange"),bJ(uk,"toDiagnosticSeverity"),bJ(ul,"toDiagnosticData"),(o=a5||(a5={})).LexingError="lexing-error",o.LexingWarning="lexing-warning",o.LexingInfo="lexing-info",o.LexingHint="lexing-hint",o.ParsingError="parsing-error",o.LinkingError="linking-error";var um=class{static{bJ(this,"DefaultAstNodeDescriptionProvider")}constructor(a){this.astNodeLocator=a.workspace.AstNodeLocator,this.nameProvider=a.references.NameProvider}createDescription(a,b,c){let d,e=c??cU(a);b??(b=this.nameProvider.getName(a));let f=this.astNodeLocator.getAstNodePath(a);if(!b)throw Error(`Node at path ${f} has no name.`);let g=bJ(()=>d??(d=eP(this.nameProvider.getNameNode(a)??a.$cstNode)),"nameSegmentGetter");return{node:a,name:b,get nameSegment(){return g()},selectionSegment:eP(a.$cstNode),type:a.$type,documentUri:e.uri,path:f}}},un=class{static{bJ(this,"DefaultReferenceDescriptionProvider")}constructor(a){this.nodeLocator=a.workspace.AstNodeLocator}async createDescriptions(a,b=tA.CancellationToken.None){let c=[];for(let d of cZ(a.parseResult.value))await tI(b),c_(d).forEach(a=>{a.reference.error||c.push(...this.createInfoDescriptions(a))});return c}createInfoDescriptions(a){let b=a.reference;if(b.error||!b.$refNode)return[];let c=[];cB(b)&&b.$nodeDescription?c=[b.$nodeDescription]:cC(b)&&(c=b.items.map(a=>a.$nodeDescription).filter(a=>void 0!==a));let d=cU(a.container).uri,e=this.nodeLocator.getAstNodePath(a.container),f=[],g=eP(b.$refNode);for(let a of c)f.push({sourceUri:d,sourcePath:e,targetUri:a.documentUri,targetPath:a.path,segment:g,local:a2.equals(a.documentUri,d)});return f}},uo=class{static{bJ(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(a){if(a.$container){let b=this.getAstNodePath(a.$container),c=this.getPathSegment(a);return b+this.segmentSeparator+c}return""}getPathSegment({$containerProperty:a,$containerIndex:b}){if(!a)throw Error("Missing '$containerProperty' in AST node.");return void 0!==b?a+this.indexSeparator+b:a}getAstNode(a,b){return b.split(this.segmentSeparator).reduce((a,b)=>{if(!a||0===b.length)return a;let c=b.indexOf(this.indexSeparator);if(c>0){let d=b.substring(0,c),e=parseInt(b.substring(c+1)),f=a[d];return f?.[e]}return a[b]},a)}},up={};bN(up,bO(bU(),1));var uq=class{static{bJ(this,"DefaultConfigurationProvider")}constructor(a){this._ready=new tJ,this.onConfigurationSectionUpdateEmitter=new up.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=a.ServiceRegistry}get ready(){return this._ready.promise}initialize(a){this.workspaceConfig=a.capabilities.workspace?.configuration??!1}async initialized(a){if(this.workspaceConfig){if(a.register){let b=this.serviceRegistry.all;a.register({section:b.map(a=>this.toSectionName(a.LanguageMetaData.languageId))})}if(a.fetchConfiguration){let b=this.serviceRegistry.all.map(a=>({section:this.toSectionName(a.LanguageMetaData.languageId)})),c=await a.fetchConfiguration(b);b.forEach((a,b)=>{this.updateSectionConfiguration(a.section,c[b])})}}this._ready.resolve()}updateConfiguration(a){"object"==typeof a.settings&&null!==a.settings&&Object.entries(a.settings).forEach(([a,b])=>{this.updateSectionConfiguration(a,b),this.onConfigurationSectionUpdateEmitter.fire({section:a,configuration:b})})}updateSectionConfiguration(a,b){this.settings[a]=b}async getConfiguration(a,b){await this.ready;let c=this.toSectionName(a);if(this.settings[c])return this.settings[c][b]}toSectionName(a){return`${a}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},ur=bO(cx(),1),us=a6||(a6={});function ut(a){return{dispose:bJ(async()=>await a(),"dispose")}}bJ(ut,"create"),us.create=ut;var uu=class{static{bJ(this,"DefaultDocumentBuilder")}constructor(a){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new t$,this.documentPhaseListeners=new t$,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=a3.Changed,this.langiumDocuments=a.workspace.LangiumDocuments,this.langiumDocumentFactory=a.workspace.LangiumDocumentFactory,this.textDocuments=a.workspace.TextDocuments,this.indexManager=a.workspace.IndexManager,this.fileSystemProvider=a.workspace.FileSystemProvider,this.workspaceManager=()=>a.workspace.WorkspaceManager,this.serviceRegistry=a.ServiceRegistry}async build(a,b={},c=tA.CancellationToken.None){for(let c of a){let a=c.uri.toString();if(c.state===a3.Validated){if("boolean"==typeof b.validation&&b.validation)this.resetToState(c,a3.IndexedReferences);else if("object"==typeof b.validation){let d=this.findMissingValidationCategories(c,b);d.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:d}},result:this.buildState.get(a)?.result}),c.state=a3.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=a3.Changed,await this.emitUpdate(a.map(a=>a.uri),[]),await this.buildDocuments(a,b,c)}async update(a,b,c=tA.CancellationToken.None){this.currentState=a3.Changed;let d=[];for(let a of b)for(let b of this.langiumDocuments.deleteDocuments(a))d.push(b.uri),this.cleanUpDeleted(b);let e=(await Promise.all(a.map(a=>this.findChangedUris(a)))).flat();for(let a of e){let b=this.langiumDocuments.getDocument(a);void 0===b&&((b=this.langiumDocumentFactory.fromModel({$type:"INVALID"},a)).state=a3.Changed,this.langiumDocuments.addDocument(b)),this.resetToState(b,a3.Changed)}let f=cO(e).concat(d).map(a=>a.toString()).toSet();this.langiumDocuments.all.filter(a=>!f.has(a.uri.toString())&&this.shouldRelink(a,f)).forEach(a=>this.resetToState(a,a3.ComputedScopes)),await this.emitUpdate(e,d),await tI(c);let g=this.sortDocuments(this.langiumDocuments.all.filter(a=>a.state<a3.Validated||!this.buildState.get(a.uri.toString())?.completed||this.resultsAreIncomplete(a,this.updateBuildOptions)).toArray());await this.buildDocuments(g,this.updateBuildOptions,c)}resultsAreIncomplete(a,b){return this.findMissingValidationCategories(a,b).length>=1}findMissingValidationCategories(a,b){let c=this.buildState.get(a.uri.toString()),d=this.serviceRegistry.getServices(a.uri).validation.ValidationRegistry.getAllValidationCategories(a),e=c?.result?.validationChecks?new Set(c?.result?.validationChecks):c?.completed?d:new Set;return cO(void 0===b||!0===b.validation?d:"object"==typeof b.validation?b.validation.categories??d:[]).filter(a=>!e.has(a)).toArray()}async findChangedUris(a){if(this.langiumDocuments.getDocument(a)??this.textDocuments?.get(a))return[a];try{let b=await this.fileSystemProvider.stat(a);if(b.isDirectory)return await this.workspaceManager().searchFolder(a);if(this.workspaceManager().shouldIncludeEntry(b))return[a]}catch{}return[]}async emitUpdate(a,b){await Promise.all(this.updateListeners.map(c=>c(a,b)))}sortDocuments(a){let b=0,c=a.length-1;for(;b<c;){for(;b<a.length&&this.hasTextDocument(a[b]);)b++;for(;c>=0&&!this.hasTextDocument(a[c]);)c--;b<c&&([a[b],a[c]]=[a[c],a[b]])}return a}hasTextDocument(a){return!!this.textDocuments?.get(a.uri)}shouldRelink(a,b){return!!a.references.some(a=>void 0!==a.error)||this.indexManager.isAffected(a,b)}onUpdate(a){return this.updateListeners.push(a),a6.create(()=>{let b=this.updateListeners.indexOf(a);b>=0&&this.updateListeners.splice(b,1)})}resetToState(a,b){switch(b){case a3.Changed:case a3.Parsed:this.indexManager.removeContent(a.uri);case a3.IndexedContent:a.localSymbols=void 0;case a3.ComputedScopes:this.serviceRegistry.getServices(a.uri).references.Linker.unlink(a);case a3.Linked:this.indexManager.removeReferences(a.uri);case a3.IndexedReferences:a.diagnostics=void 0,this.buildState.delete(a.uri.toString());case a3.Validated:}a.state>b&&(a.state=b)}cleanUpDeleted(a){this.buildState.delete(a.uri.toString()),this.indexManager.remove(a.uri),a.state=a3.Changed}async buildDocuments(a,b,c){this.prepareBuild(a,b),await this.runCancelable(a,a3.Parsed,c,a=>this.langiumDocumentFactory.update(a,c)),await this.runCancelable(a,a3.IndexedContent,c,a=>this.indexManager.updateContent(a,c)),await this.runCancelable(a,a3.ComputedScopes,c,async a=>{let b=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.localSymbols=await b.collectLocalSymbols(a,c)});let d=a.filter(a=>this.shouldLink(a));await this.runCancelable(d,a3.Linked,c,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,c)),await this.runCancelable(d,a3.IndexedReferences,c,a=>this.indexManager.updateReferences(a,c));let e=a.filter(a=>!!this.shouldValidate(a)||(this.markAsCompleted(a),!1));await this.runCancelable(e,a3.Validated,c,async a=>{await this.validate(a,c),this.markAsCompleted(a)})}markAsCompleted(a){let b=this.buildState.get(a.uri.toString());b&&(b.completed=!0)}prepareBuild(a,b){for(let c of a){let a=c.uri.toString(),d=this.buildState.get(a);(!d||d.completed)&&this.buildState.set(a,{completed:!1,options:b,result:d?.result})}}async runCancelable(a,b,c,d){for(let e of a)e.state<b&&(await tI(c),await d(e),e.state=b,await this.notifyDocumentPhase(e,b,c));let e=a.filter(a=>a.state===b);await this.notifyBuildPhase(e,b,c),this.currentState=b}onBuildPhase(a,b){return this.buildPhaseListeners.add(a,b),a6.create(()=>{this.buildPhaseListeners.delete(a,b)})}onDocumentPhase(a,b){return this.documentPhaseListeners.add(a,b),a6.create(()=>{this.documentPhaseListeners.delete(a,b)})}waitUntil(a,b,c){let d;return(b&&"path"in b?d=b:c=b,c??(c=tA.CancellationToken.None),d)?this.awaitDocumentState(a,d,c):this.awaitBuilderState(a,c)}awaitDocumentState(a,b,c){let d=this.langiumDocuments.getDocument(b);return d?d.state>=a?Promise.resolve(b):c.isCancellationRequested?Promise.reject(tG):this.currentState>=a&&a>d.state?Promise.reject(new ur.ResponseError(ur.LSPErrorCodes.RequestFailed,`Document state of ${b.toString()} is ${a3[d.state]}, requiring ${a3[a]}, but workspace state is already ${a3[this.currentState]}. Returning undefined.`)):new Promise((d,e)=>{let f=this.onDocumentPhase(a,a=>{a2.equals(a.uri,b)&&(f.dispose(),g.dispose(),d(a.uri))}),g=c.onCancellationRequested(()=>{f.dispose(),g.dispose(),e(tG)})}):Promise.reject(new ur.ResponseError(ur.LSPErrorCodes.ServerCancelled,`No document found for URI: ${b.toString()}`))}awaitBuilderState(a,b){return this.currentState>=a?Promise.resolve():b.isCancellationRequested?Promise.reject(tG):new Promise((c,d)=>{let e=this.onBuildPhase(a,()=>{e.dispose(),f.dispose(),c()}),f=b.onCancellationRequested(()=>{e.dispose(),f.dispose(),d(tG)})})}async notifyDocumentPhase(a,b,c){for(let d of this.documentPhaseListeners.get(b).slice())try{await tI(c),await d(a,c)}catch(a){if(!tH(a))throw a}}async notifyBuildPhase(a,b,c){if(0!==a.length)for(let d of this.buildPhaseListeners.get(b).slice())await tI(c),await d(a,c)}shouldLink(a){return this.getBuildOptions(a).eagerLinking??!0}shouldValidate(a){return!!this.getBuildOptions(a).validation}async validate(a,b){let c=this.serviceRegistry.getServices(a.uri).validation.DocumentValidator,d=this.getBuildOptions(a),e="object"==typeof d.validation?{...d.validation}:{};e.categories=this.findMissingValidationCategories(a,d);let f=await c.validateDocument(a,e,b);a.diagnostics?a.diagnostics.push(...f):a.diagnostics=f;let g=this.buildState.get(a.uri.toString());g&&(g.result??(g.result={}),g.result.validationChecks?g.result.validationChecks=cO(g.result.validationChecks).concat(e.categories).distinct().toArray():g.result.validationChecks=[...e.categories])}getBuildOptions(a){return this.buildState.get(a.uri.toString())?.options??{}}},uv=class{static{bJ(this,"DefaultIndexManager")}constructor(a){this.symbolIndex=new Map,this.symbolByTypeIndex=new t7,this.referenceIndex=new Map,this.documents=a.workspace.LangiumDocuments,this.serviceRegistry=a.ServiceRegistry,this.astReflection=a.AstReflection}findAllReferences(a,b){let c=cU(a).uri,d=[];return this.referenceIndex.forEach(a=>{a.forEach(a=>{a2.equals(a.targetUri,c)&&a.targetPath===b&&d.push(a)})}),cO(d)}allElements(a,b){let c=cO(this.symbolIndex.keys());return b&&(c=c.filter(a=>!b||b.has(a))),c.map(b=>this.getFileDescriptions(b,a)).flat()}getFileDescriptions(a,b){return b?this.symbolByTypeIndex.get(a,b,()=>(this.symbolIndex.get(a)??[]).filter(a=>this.astReflection.isSubtype(a.type,b))):this.symbolIndex.get(a)??[]}remove(a){this.removeContent(a),this.removeReferences(a)}removeContent(a){let b=a.toString();this.symbolIndex.delete(b),this.symbolByTypeIndex.clear(b)}removeReferences(a){let b=a.toString();this.referenceIndex.delete(b)}async updateContent(a,b=tA.CancellationToken.None){let c=this.serviceRegistry.getServices(a.uri),d=await c.references.ScopeComputation.collectExportedSymbols(a,b),e=a.uri.toString();this.symbolIndex.set(e,d),this.symbolByTypeIndex.clear(e)}async updateReferences(a,b=tA.CancellationToken.None){let c=this.serviceRegistry.getServices(a.uri),d=await c.workspace.ReferenceDescriptionProvider.createDescriptions(a,b);this.referenceIndex.set(a.uri.toString(),d)}isAffected(a,b){let c=this.referenceIndex.get(a.uri.toString());return!!c&&c.some(a=>!a.local&&b.has(a.targetUri.toString()))}},uw=class{static{bJ(this,"DefaultWorkspaceManager")}constructor(a){this.initialBuildOptions={},this._ready=new tJ,this.serviceRegistry=a.ServiceRegistry,this.langiumDocuments=a.workspace.LangiumDocuments,this.documentBuilder=a.workspace.DocumentBuilder,this.fileSystemProvider=a.workspace.FileSystemProvider,this.mutex=a.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(a){this.folders=a.workspaceFolders??void 0}initialized(a){return this.mutex.write(a=>this.initializeWorkspace(this.folders??[],a))}async initializeWorkspace(a,b=tA.CancellationToken.None){let c=await this.performStartup(a);await tI(b),await this.documentBuilder.build(c,this.initialBuildOptions,b)}async performStartup(a){let b=[],c=bJ(a=>{b.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");await this.loadAdditionalDocuments(a,c);let d=[];await Promise.all(a.map(a=>this.getRootFolder(a)).map(async a=>this.traverseFolder(a,d)));let e=cO(d).distinct(a=>a.toString()).filter(a=>!this.langiumDocuments.hasDocument(a));return await this.loadWorkspaceDocuments(e,c),this._ready.resolve(),b}async loadWorkspaceDocuments(a,b){await Promise.all(a.map(async a=>{b(await this.langiumDocuments.getOrCreateDocument(a))}))}loadAdditionalDocuments(a,b){return Promise.resolve()}getRootFolder(a){return tQ.parse(a.uri)}async traverseFolder(a,b){try{let c=await this.fileSystemProvider.readDirectory(a);await Promise.all(c.map(async a=>{this.shouldIncludeEntry(a)&&(a.isDirectory?await this.traverseFolder(a.uri,b):a.isFile&&b.push(a.uri))}))}catch(b){console.error("Failure to read directory content of "+a.toString(!0),b)}}async searchFolder(a){let b=[];return await this.traverseFolder(a,b),b}shouldIncludeEntry(a){let b=a2.basename(a.uri);return!b.startsWith(".")&&(a.isDirectory?"node_modules"!==b&&"out"!==b:!!a.isFile&&this.serviceRegistry.hasServices(a.uri))}},ux=class{static{bJ(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(a,b,c,d,e){return mN.buildUnexpectedCharactersMessage(a,b,c,d,e)}buildUnableToPopLexerModeMessage(a){return mN.buildUnableToPopLexerModeMessage(a)}},uy={mode:"full"},uz=class{static{bJ(this,"DefaultLexer")}constructor(a){this.errorMessageProvider=a.parser.LexerErrorMessageProvider,this.tokenBuilder=a.parser.TokenBuilder;const b=this.tokenBuilder.buildTokens(a.Grammar,{caseInsensitive:a.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(b);const c=uC(b)?Object.values(b):b,d="production"===a.LanguageMetaData.mode;this.chevrotainLexer=new mP(c,{positionTracking:"full",skipValidations:d,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(a,b=uy){let c=this.chevrotainLexer.tokenize(a);return{tokens:c.tokens,errors:c.errors,hidden:c.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(a)}}toTokenTypeDictionary(a){if(uC(a))return a;let b=uB(a)?Object.values(a.modes).flat():a,c={};return b.forEach(a=>c[a.name]=a),c}};function uA(a){return Array.isArray(a)&&(0===a.length||"name"in a[0])}function uB(a){return a&&"modes"in a&&"defaultMode"in a}function uC(a){return!uA(a)&&!uB(a)}function uD(a,b,c){let d,e;return"string"==typeof a?(e=b,d=c):(e=a.range.start,d=b),e||(e=u.create(0,0)),uO({index:0,tokens:uI({lines:uF(a),position:e,options:uV(d)}),position:e})}function uE(a,b){let c=uV(b),d=uF(a);if(0===d.length)return!1;let e=d[0],f=d[d.length-1],g=c.start,h=c.end;return!!g?.exec(e)&&!!h?.exec(f)}function uF(a){return("string"==typeof a?a:a.text).split(fm)}bJ(uA,"isTokenTypeArray"),bJ(uB,"isIMultiModeLexerDefinition"),bJ(uC,"isTokenTypeDictionary"),bR(),bJ(uD,"parseJSDoc"),bJ(uE,"isJSDoc"),bJ(uF,"getLines");var uG=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,uH=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function uI(a){let b=[],c=a.position.line,d=a.position.character;for(let e=0;e<a.lines.length;e++){let f=0===e,g=e===a.lines.length-1,h=a.lines[e],i=0;if(f&&a.options.start){let b=a.options.start?.exec(h);b&&(i=b.index+b[0].length)}else{let b=a.options.line?.exec(h);b&&(i=b.index+b[0].length)}if(g){let b=a.options.end?.exec(h);b&&(h=h.substring(0,b.index))}if(uM(h=h.substring(0,uN(h)),i)>=h.length){if(b.length>0){let a=u.create(c,d);b.push({type:"break",content:"",range:v.create(a,a)})}}else{uG.lastIndex=i;let a=uG.exec(h);if(a){let e=a[0],f=a[1],g=u.create(c,d+i),j=u.create(c,d+i+e.length);b.push({type:"tag",content:f,range:v.create(g,j)}),i+=e.length,i=uM(h,i)}if(i<h.length){let a=h.substring(i),e=Array.from(a.matchAll(uH));b.push(...uJ(e,a,c,d+i))}}c++,d=0}return b.length>0&&"break"===b[b.length-1].type?b.slice(0,-1):b}function uJ(a,b,c,d){let e=[];if(0===a.length){let a=u.create(c,d),f=u.create(c,d+b.length);e.push({type:"text",content:b,range:v.create(a,f)})}else{let f=0;for(let g of a){let a=g.index,h=b.substring(f,a);h.length>0&&e.push({type:"text",content:b.substring(f,a),range:v.create(u.create(c,f+d),u.create(c,a+d))});let i=h.length+1,j=g[1];if(e.push({type:"inline-tag",content:j,range:v.create(u.create(c,f+i+d),u.create(c,f+i+j.length+d))}),i+=j.length,4===g.length){i+=g[2].length;let a=g[3];e.push({type:"text",content:a,range:v.create(u.create(c,f+i+d),u.create(c,f+i+a.length+d))})}else e.push({type:"text",content:"",range:v.create(u.create(c,f+i+d),u.create(c,f+i+d))});f=a+g[0].length}let g=b.substring(f);g.length>0&&e.push({type:"text",content:g,range:v.create(u.create(c,f+d),u.create(c,f+d+g.length))})}return e}bJ(uI,"tokenize"),bJ(uJ,"buildInlineTokens");var uK=/\S/,uL=/\s*$/;function uM(a,b){let c=a.substring(b).match(uK);return c?b+c.index:a.length}function uN(a){let b=a.match(uL);if(b&&"number"==typeof b.index)return b.index}function uO(a){let b=u.create(a.position.line,a.position.character);if(0===a.tokens.length)return new uX([],v.create(b,b));let c=[];for(;a.index<a.tokens.length;){let b=uP(a,c[c.length-1]);b&&c.push(b)}let d=c[0]?.range.start??b,e=c[c.length-1]?.range.end??b;return new uX(c,v.create(d,e))}function uP(a,b){let c=a.tokens[a.index];return"tag"===c.type?uT(a,!1):"text"===c.type||"inline-tag"===c.type?uR(a):(uQ(c,b),void a.index++)}function uQ(a,b){if(b){let c=new u0("",a.range);"inlines"in b?b.inlines.push(c):b.content.inlines.push(c)}}function uR(a){let b=a.tokens[a.index],c=b,d=b,e=[];for(;b&&"break"!==b.type&&"tag"!==b.type;)e.push(uS(a)),d=b,b=a.tokens[a.index];return new u_(e,v.create(c.range.start,d.range.end))}function uS(a){return"inline-tag"===a.tokens[a.index].type?uT(a,!0):uU(a)}function uT(a,b){let c=a.tokens[a.index++],d=c.content.substring(1),e=a.tokens[a.index];if(e?.type==="text")if(b){let e=uU(a);return new uY(d,new u_([e],e.range),b,v.create(c.range.start,e.range.end))}else{let e=uR(a);return new uY(d,e,b,v.create(c.range.start,e.range.end))}{let a=c.range;return new uY(d,new u_([],a),b,a)}}function uU(a){let b=a.tokens[a.index++];return new u0(b.content,b.range)}function uV(a){if(!a)return uV({start:"/**",end:"*/",line:"*"});let{start:b,end:c,line:d}=a;return{start:uW(b,!0),end:uW(c,!1),line:uW(d,!0)}}function uW(a,b){if("string"!=typeof a&&"object"!=typeof a)return a;{let c="string"==typeof a?ft(a):a.source;return b?RegExp(`^\\s*${c}`):RegExp(`\\s*${c}\\s*$`)}}bJ(uM,"skipWhitespace"),bJ(uN,"lastCharacter"),bJ(uO,"parseJSDocComment"),bJ(uP,"parseJSDocElement"),bJ(uQ,"appendEmptyLine"),bJ(uR,"parseJSDocText"),bJ(uS,"parseJSDocInline"),bJ(uT,"parseJSDocTag"),bJ(uU,"parseJSDocLine"),bJ(uV,"normalizeOptions"),bJ(uW,"normalizeOption");var uX=class{static{bJ(this,"JSDocCommentImpl")}constructor(a,b){this.elements=a,this.range=b}getTag(a){return this.getAllTags().find(b=>b.name===a)}getTags(a){return this.getAllTags().filter(b=>b.name===a)}getAllTags(){return this.elements.filter(a=>"name"in a)}toString(){let a="";for(let b of this.elements)if(0===a.length)a=b.toString();else{let c=b.toString();a+=u1(a)+c}return a.trim()}toMarkdown(a){let b="";for(let c of this.elements)if(0===b.length)b=c.toMarkdown(a);else{let d=c.toMarkdown(a);b+=u1(b)+d}return b.trim()}},uY=class{static{bJ(this,"JSDocTagImpl")}constructor(a,b,c,d){this.name=a,this.content=b,this.inline=c,this.range=d}toString(){let a=`@${this.name}`,b=this.content.toString();return(1===this.content.inlines.length?a=`${a} ${b}`:this.content.inlines.length>1&&(a=`${a}
|
|
81
81
|
${b}`),this.inline)?`{${a}}`:a}toMarkdown(a){return a?.renderTag?.(this)??this.toMarkdownDefault(a)}toMarkdownDefault(a){let b=this.content.toMarkdown(a);if(this.inline){let c=uZ(this.name,b,a??{});if("string"==typeof c)return c}let c="";a?.tag==="italic"||a?.tag===void 0?c="*":a?.tag==="bold"?c="**":a?.tag==="bold-italic"&&(c="***");let d=`${c}@${this.name}${c}`;return(1===this.content.inlines.length?d=`${d} \u2014 ${b}`:this.content.inlines.length>1&&(d=`${d}
|
|
82
|
-
${b}`),this.inline)?`{${d}}`:d}};function uZ(a,b,c){if("linkplain"===a||"linkcode"===a||"link"===a){let d=b.indexOf(" "),e=b;if(d>0){let a=uM(b,d);e=b.substring(a),b=b.substring(0,d)}return("linkcode"===a||"link"===a&&"code"===c.link)&&(e=`\`${e}\``),c.renderLink?.(b,e)??u$(b,e)}}function u$(a,b){try{return tQ.parse(a,!0),`[${b}](${a})`}catch{return a}}bJ(uZ,"renderInlineTag"),bJ(u$,"renderLinkDefault");var u_=class{static{bJ(this,"JSDocTextImpl")}constructor(a,b){this.inlines=a,this.range=b}toString(){let a="";for(let b=0;b<this.inlines.length;b++){let c=this.inlines[b],d=this.inlines[b+1];a+=c.toString(),d&&d.range.start.line>c.range.start.line&&(a+="\n")}return a}toMarkdown(a){let b="";for(let c=0;c<this.inlines.length;c++){let d=this.inlines[c],e=this.inlines[c+1];b+=d.toMarkdown(a),e&&e.range.start.line>d.range.start.line&&(b+="\n")}return b}},u0=class{static{bJ(this,"JSDocLineImpl")}constructor(a,b){this.text=a,this.range=b}toString(){return this.text}toMarkdown(){return this.text}};function u1(a){return a.endsWith("\n")?"\n":"\n\n"}bJ(u1,"fillNewlines");var u2=class{static{bJ(this,"JSDocDocumentationProvider")}constructor(a){this.indexManager=a.shared.workspace.IndexManager,this.commentProvider=a.documentation.CommentProvider}getDocumentation(a){let b=this.commentProvider.getComment(a);if(b&&uE(b))return uD(b).toMarkdown({renderLink:bJ((b,c)=>this.documentationLinkRenderer(a,b,c),"renderLink"),renderTag:bJ(b=>this.documentationTagRenderer(a,b),"renderTag")})}documentationLinkRenderer(a,b,c){let d=this.findNameInLocalSymbols(a,b)??this.findNameInGlobalScope(a,b);if(d&&d.nameSegment){let a=d.nameSegment.range.start.line+1,b=d.nameSegment.range.start.character+1,e=d.documentUri.with({fragment:`L${a},${b}`});return`[${c}](${e.toString()})`}}documentationTagRenderer(a,b){}findNameInLocalSymbols(a,b){let c=cU(a).localSymbols;if(!c)return;let d=a;do{let a=c.getStream(d).find(a=>a.name===b);if(a)return a;d=d.$container}while(d)}findNameInGlobalScope(a,b){return this.indexManager.allElements().find(a=>a.name===b)}},u3=class{static{bJ(this,"DefaultCommentProvider")}constructor(a){this.grammarConfig=()=>a.parser.GrammarConfig}getComment(a){return ub(a)?a.$comment:eU(a.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},u4=class{static{bJ(this,"DefaultAsyncParser")}constructor(a){this.syncParser=a.parser.LangiumParser}parse(a,b){return Promise.resolve(this.syncParser.parse(a))}},u5=class{static{bJ(this,"AbstractThreadedAsyncParser")}constructor(a){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=a.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let a=this.createWorker();a.onReady(()=>{if(this.queue.length>0){let b=this.queue.shift();b&&(a.lock(),b.resolve(a))}}),this.workerPool.push(a)}}async parse(a,b){let c,d=await this.acquireParserWorker(b),e=new tJ,f=b.onCancellationRequested(()=>{c=setTimeout(()=>{this.terminateWorker(d)},this.terminationDelay)});return d.parse(a).then(a=>{let b=this.hydrator.hydrate(a);e.resolve(b)}).catch(a=>{e.reject(a)}).finally(()=>{f.dispose(),clearTimeout(c)}),e.promise}terminateWorker(a){a.terminate();let b=this.workerPool.indexOf(a);b>=0&&this.workerPool.splice(b,1)}async acquireParserWorker(a){for(let a of(this.initializeWorkers(),this.workerPool))if(a.ready)return a.lock(),a;let b=new tJ;return a.onCancellationRequested(()=>{let a=this.queue.indexOf(b);a>=0&&this.queue.splice(a,1),b.reject(tG)}),this.queue.push(b),b.promise}},u6=class{static{bJ(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(a,b,c,d){this.onReadyEmitter=new up.Emitter,this.deferred=new tJ,this._ready=!0,this._parsing=!1,this.sendMessage=a,this._terminate=d,b(a=>{this.deferred.resolve(a),this.unlock()}),c(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(tG),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(a){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new tJ,this.sendMessage(a),this.deferred.promise}},u7=class{static{bJ(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new tA.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(a){this.cancelWrite();let b=tE();return this.previousTokenSource=b,this.enqueue(this.writeQueue,a,b.token)}read(a){return this.enqueue(this.readQueue,a)}enqueue(a,b,c=tA.CancellationToken.None){let d=new tJ;return a.push({action:b,deferred:d,cancellationToken:c}),this.performNextOperation(),d.promise}async performNextOperation(){if(!this.done)return;let a=[];if(this.writeQueue.length>0)a.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;a.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(a.map(async({action:a,deferred:b,cancellationToken:c})=>{try{let d=await Promise.resolve().then(()=>a(c));b.resolve(d)}catch(a){tH(a)?b.resolve(void 0):b.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},u8=class{static{bJ(this,"DefaultHydrator")}constructor(a){this.grammarElementIdMap=new t_,this.tokenTypeIdMap=new t_,this.grammar=a.Grammar,this.lexer=a.parser.Lexer,this.linker=a.references.Linker}dehydrate(a){return{lexerErrors:a.lexerErrors,lexerReport:a.lexerReport?this.dehydrateLexerReport(a.lexerReport):void 0,parserErrors:a.parserErrors.map(a=>({...a,message:a.message})),value:this.dehydrateAstNode(a.value,this.createDehyrationContext(a.value))}}dehydrateLexerReport(a){return a}createDehyrationContext(a){let b=new Map,c=new Map;for(let c of cZ(a))b.set(c,{});if(a.$cstNode)for(let b of eL(a.$cstNode))c.set(b,{});return{astNodes:b,cstNodes:c}}dehydrateAstNode(a,b){let c=b.astNodes.get(a);for(let[d,e]of(c.$type=a.$type,c.$containerIndex=a.$containerIndex,c.$containerProperty=a.$containerProperty,void 0!==a.$cstNode&&(c.$cstNode=this.dehydrateCstNode(a.$cstNode,b)),Object.entries(a)))if(!d.startsWith("$"))if(Array.isArray(e)){let a=[];for(let f of(c[d]=a,e))cA(f)?a.push(this.dehydrateAstNode(f,b)):cB(f)?a.push(this.dehydrateReference(f,b)):a.push(f)}else cA(e)?c[d]=this.dehydrateAstNode(e,b):cB(e)?c[d]=this.dehydrateReference(e,b):void 0!==e&&(c[d]=e);return c}dehydrateReference(a,b){let c={};return c.$refText=a.$refText,a.$refNode&&(c.$refNode=b.cstNodes.get(a.$refNode)),c}dehydrateCstNode(a,b){let c=b.cstNodes.get(a);return cI(a)?c.fullText=a.fullText:c.grammarSource=this.getGrammarElementId(a.grammarSource),c.hidden=a.hidden,c.astNode=b.astNodes.get(a.astNode),cG(a)?c.content=a.content.map(a=>this.dehydrateCstNode(a,b)):cH(a)&&(c.tokenType=a.tokenType.name,c.offset=a.offset,c.length=a.length,c.startLine=a.range.start.line,c.startColumn=a.range.start.character,c.endLine=a.range.end.line,c.endColumn=a.range.end.character),c}hydrate(a){let b=a.value,c=this.createHydrationContext(b);return"$cstNode"in b&&this.hydrateCstNode(b.$cstNode,c),{lexerErrors:a.lexerErrors,lexerReport:a.lexerReport,parserErrors:a.parserErrors,value:this.hydrateAstNode(b,c)}}createHydrationContext(a){let b,c=new Map,d=new Map;for(let b of cZ(a))c.set(b,{});if(a.$cstNode)for(let c of eL(a.$cstNode)){let a;"fullText"in c?b=a=new s1(c.fullText):"content"in c?a=new s_:"tokenType"in c&&(a=this.hydrateCstLeafNode(c)),a&&(d.set(c,a),a.root=b)}return{astNodes:c,cstNodes:d}}hydrateAstNode(a,b){let c=b.astNodes.get(a);for(let[d,e]of(c.$type=a.$type,c.$containerIndex=a.$containerIndex,c.$containerProperty=a.$containerProperty,a.$cstNode&&(c.$cstNode=b.cstNodes.get(a.$cstNode)),Object.entries(a)))if(!d.startsWith("$"))if(Array.isArray(e)){let a=[];for(let f of(c[d]=a,e))cA(f)?a.push(this.setParent(this.hydrateAstNode(f,b),c)):cB(f)?a.push(this.hydrateReference(f,c,d,b)):a.push(f)}else cA(e)?c[d]=this.setParent(this.hydrateAstNode(e,b),c):cB(e)?c[d]=this.hydrateReference(e,c,d,b):void 0!==e&&(c[d]=e);return c}setParent(a,b){return a.$container=b,a}hydrateReference(a,b,c,d){return this.linker.buildReference(b,c,d.cstNodes.get(a.$refNode),a.$refText)}hydrateCstNode(a,b,c=0){let d=b.cstNodes.get(a);if("number"==typeof a.grammarSource&&(d.grammarSource=this.getGrammarElement(a.grammarSource)),d.astNode=b.astNodes.get(a.astNode),cG(d))for(let e of a.content){let a=this.hydrateCstNode(e,b,c++);d.content.push(a)}return d}hydrateCstLeafNode(a){let b=this.getTokenType(a.tokenType);return new s$(a.offset,a.length,{start:{line:a.startLine,character:a.startColumn},end:{line:a.endLine,character:a.endColumn}},b,a.hidden)}getTokenType(a){return this.lexer.definition[a]}getGrammarElementId(a){if(a)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(a)}getGrammarElement(a){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(a)}createGrammarElementIdMap(){let a=0;for(let b of cZ(this.grammar))c6(b)&&this.grammarElementIdMap.set(b,a++)}};function u9(a){return{documentation:{CommentProvider:bJ(a=>new u3(a),"CommentProvider"),DocumentationProvider:bJ(a=>new u2(a),"DocumentationProvider")},parser:{AsyncParser:bJ(a=>new u4(a),"AsyncParser"),GrammarConfig:bJ(a=>f7(a),"GrammarConfig"),LangiumParser:bJ(a=>tw(a),"LangiumParser"),CompletionParser:bJ(a=>tv(a),"CompletionParser"),ValueConverter:bJ(()=>new tz,"ValueConverter"),TokenBuilder:bJ(()=>new ty,"TokenBuilder"),Lexer:bJ(a=>new uz(a),"Lexer"),ParserErrorMessageProvider:bJ(()=>new s8,"ParserErrorMessageProvider"),LexerErrorMessageProvider:bJ(()=>new ux,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:bJ(()=>new uo,"AstNodeLocator"),AstNodeDescriptionProvider:bJ(a=>new um(a),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:bJ(a=>new un(a),"ReferenceDescriptionProvider")},references:{Linker:bJ(a=>new tW(a),"Linker"),NameProvider:bJ(()=>new tY,"NameProvider"),ScopeProvider:bJ(a=>new ua(a),"ScopeProvider"),ScopeComputation:bJ(a=>new t0(a),"ScopeComputation"),References:bJ(a=>new tZ(a),"References")},serializer:{Hydrator:bJ(a=>new u8(a),"Hydrator"),JsonSerializer:bJ(a=>new ud(a),"JsonSerializer")},validation:{DocumentValidator:bJ(a=>new ui(a),"DocumentValidator"),ValidationRegistry:bJ(a=>new ug(a),"ValidationRegistry")},shared:bJ(()=>a.shared,"shared")}}function va(a){return{ServiceRegistry:bJ(a=>new ue(a),"ServiceRegistry"),workspace:{LangiumDocuments:bJ(a=>new tU(a),"LangiumDocuments"),LangiumDocumentFactory:bJ(a=>new tT(a),"LangiumDocumentFactory"),DocumentBuilder:bJ(a=>new uu(a),"DocumentBuilder"),IndexManager:bJ(a=>new uv(a),"IndexManager"),WorkspaceManager:bJ(a=>new uw(a),"WorkspaceManager"),FileSystemProvider:bJ(b=>a.fileSystemProvider(b),"FileSystemProvider"),WorkspaceLock:bJ(()=>new u7,"WorkspaceLock"),ConfigurationProvider:bJ(a=>new uq(a),"ConfigurationProvider")},profilers:{}}}function vb(a,b,c,d,e,f,g,h,i){return ve([a,b,c,d,e,f,g,h,i].reduce(vh,{}))}bJ(u9,"createDefaultCoreModule"),bJ(va,"createDefaultSharedCoreModule"),(a7||(a7={})).merge=(a,b)=>vh(vh({},a),b),bJ(vb,"inject");var vc=Symbol("isProxy");function vd(a){if(a&&a[vc])for(let b of Object.values(a))vd(b);return a}function ve(a,b){let c=new Proxy({},{deleteProperty:bJ(()=>!1,"deleteProperty"),set:bJ(()=>{throw Error("Cannot set property on injected service container")},"set"),get:bJ((d,e)=>e===vc||vg(d,e,a,b||c),"get"),getOwnPropertyDescriptor:bJ((d,e)=>(vg(d,e,a,b||c),Object.getOwnPropertyDescriptor(d,e)),"getOwnPropertyDescriptor"),has:bJ((b,c)=>c in a,"has"),ownKeys:bJ(()=>[...Object.getOwnPropertyNames(a)],"ownKeys")});return c}bJ(vd,"eagerLoad"),bJ(ve,"_inject");var vf=Symbol();function vg(a,b,c,d){if(b in a){if(a[b]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+a[b]);if(a[b]===vf)throw Error('Cycle detected. Please make "'+String(b)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return a[b]}if(b in c){let e=c[b];a[b]=vf;try{a[b]="function"==typeof e?e(d):ve(e,d)}catch(c){throw a[b]=c instanceof Error?c:void 0,c}return a[b]}}function vh(a,b){if(b){for(let[c,d]of Object.entries(b))if(null!=d)if("object"==typeof d){let b=a[c];"object"==typeof b&&null!==b?a[c]=vh(b,d):a[c]=vh({},d)}else a[c]=d}return a}bJ(vg,"_resolve"),bJ(vh,"_merge");var vi={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(p=a8||(a8={})).REGULAR="indentation-sensitive",p.IGNORE_INDENTATION="ignore-indentation";var vj=class extends ty{static{bJ(this,"IndentationAwareTokenBuilder")}constructor(a=vi){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...vi,...a},this.indentTokenType=m$({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=m$({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(a,b){let c,d,e,f=super.buildTokens(a,b);if(!uA(f))throw Error("Invalid tokens built by default builder");let{indentTokenName:g,dedentTokenName:h,whitespaceTokenName:i,ignoreIndentationDelimiters:j}=this.options,k=[];for(let a of f){for(let[b,c]of j)a.name===b?a.PUSH_MODE=a8.IGNORE_INDENTATION:a.name===c&&(a.POP_MODE=!0);a.name===h?c=a:a.name===g?d=a:a.name===i?e=a:k.push(a)}if(!c||!d||!e)throw Error("Some indentation/whitespace tokens not found!");return j.length>0?{modes:{[a8.REGULAR]:[c,d,...k,e],[a8.IGNORE_INDENTATION]:[...k,e]},defaultMode:a8.REGULAR}:[c,d,e,...k]}flushLexingReport(a){return{...super.flushLexingReport(a),remainingDedents:this.flushRemainingDedents(a)}}isStartOfLine(a,b){return 0===b||"\r\n".includes(a[b-1])}matchWhitespace(a,b,c,d){this.whitespaceRegExp.lastIndex=b;let e=this.whitespaceRegExp.exec(a);return{currIndentLevel:e?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:e}}createIndentationTokenInstance(a,b,c,d){let e=this.getLineNumber(b,d);return m1(a,c,d,d+c.length,e,e,1,c.length)}getLineNumber(a,b){return a.substring(0,b).split(/\r\n|\r|\n/).length}indentMatcher(a,b,c,d){if(!this.isStartOfLine(a,b))return null;let{currIndentLevel:e,prevIndentLevel:f,match:g}=this.matchWhitespace(a,b,c,d);return e<=f?null:(this.indentationStack.push(e),g)}dedentMatcher(a,b,c,d){if(!this.isStartOfLine(a,b))return null;let{currIndentLevel:e,prevIndentLevel:f,match:g}=this.matchWhitespace(a,b,c,d);if(e>=f)return null;let h=this.indentationStack.lastIndexOf(e);if(-1===h)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${e} at offset: ${b}. Current indentation stack: ${this.indentationStack}`,offset:b,length:g?.[0]?.length??0,line:this.getLineNumber(a,b),column:1}),null;let i=this.indentationStack.length-h-1,j=a.substring(0,b).match(/[\r\n]+$/)?.[0].length??1;for(let d=0;d<i;d++){let d=this.createIndentationTokenInstance(this.dedentTokenType,a,"",b-(j-1));c.push(d),this.indentationStack.pop()}return null}buildTerminalToken(a){let b=super.buildTerminalToken(a),{indentTokenName:c,dedentTokenName:d,whitespaceTokenName:e}=this.options;return b.name===c?this.indentTokenType:b.name===d?this.dedentTokenType:b.name===e?m$({name:e,pattern:this.whitespaceRegExp,group:mP.SKIPPED}):b}flushRemainingDedents(a){let b=[];for(;this.indentationStack.length>1;)b.push(this.createIndentationTokenInstance(this.dedentTokenType,a,"",a.length)),this.indentationStack.pop();return this.indentationStack=[0],b}},vk=class extends uz{static{bJ(this,"IndentationAwareLexer")}constructor(a){if(super(a),a.parser.TokenBuilder instanceof vj)this.indentationTokenBuilder=a.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(a,b=uy){let c=super.tokenize(a),d=c.report;b?.mode==="full"&&c.tokens.push(...d.remainingDedents),d.remainingDedents=[];let{indentTokenType:e,dedentTokenType:f}=this.indentationTokenBuilder,g=e.tokenTypeIdx,h=f.tokenTypeIdx,i=[],j=c.tokens.length-1;for(let a=0;a<j;a++){let b=c.tokens[a],d=c.tokens[a+1];if(b.tokenTypeIdx===g&&d.tokenTypeIdx===h){a++;continue}i.push(b)}return j>=0&&i.push(c.tokens[j]),c.tokens=i,c}},vl={};bL(vl,{AstUtils:()=>cQ,BiMap:()=>t_,Cancellation:()=>tA,ContextCache:()=>t7,CstUtils:()=>cz,DONE_RESULT:()=>cN,Deferred:()=>tJ,Disposable:()=>a6,DisposableCache:()=>t5,DocumentCache:()=>t8,EMPTY_STREAM:()=>cM,ErrorWithLocation:()=>e4,GrammarUtils:()=>e3,MultiMap:()=>t$,OperationCancelled:()=>tG,Reduction:()=>aV,RegExpUtils:()=>e7,SimpleCache:()=>t6,StreamImpl:()=>cJ,TreeStreamImpl:()=>cP,URI:()=>tQ,UriTrie:()=>tS,UriUtils:()=>a2,WorkspaceCache:()=>t9,assertCondition:()=>e6,assertUnreachable:()=>e5,delayNextTick:()=>tB,interruptAndCheck:()=>tI,isOperationCancelled:()=>tH,loadGrammarFromJson:()=>vr,setInterruptionPeriod:()=>tF,startCancelableOperation:()=>tE,stream:()=>cO}),bN(vl,up);var vm=class{static{bJ(this,"EmptyFileSystemProvider")}stat(a){throw Error("No file system is available.")}statSync(a){throw Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw Error("No file system is available.")}readBinarySync(){throw Error("No file system is available.")}readFile(){throw Error("No file system is available.")}readFileSync(){throw Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},vn={fileSystemProvider:bJ(()=>new vm,"fileSystemProvider")},vo={Grammar:bJ(()=>void 0,"Grammar"),LanguageMetaData:bJ(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},vp={AstReflection:bJ(()=>new eI,"AstReflection")};function vq(){let a=vb(va(vn),vp),b=vb(u9({shared:a}),vo);return a.ServiceRegistry.register(b),b}function vr(a){let b=vq(),c=b.serializer.JsonSerializer.deserialize(a);return b.shared.workspace.LangiumDocumentFactory.fromModel(c,tQ.parse(`memory:/${c.name??"grammar"}.langium`)),c}bJ(vq,"createMinimalGrammarServices"),bJ(vr,"loadGrammarFromJson"),bN(cy,vl);var vs=class{static{bJ(this,"DefaultLangiumProfiler")}constructor(a){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=a??new Set(this.allCategories),this.records=new t$}isActive(a){return this.activeCategories.has(a)}start(...a){a?a.forEach(a=>this.activeCategories.add(a)):this.activeCategories=new Set(this.allCategories)}stop(...a){a?a.forEach(a=>this.activeCategories.delete(a)):this.activeCategories.clear()}createTask(a,b){if(!this.isActive(a))throw Error(`Category "${a}" is not active.`);return console.log(`Creating profiling task for '${a}.${b}'.`),new vt(b=>this.records.add(a,this.dumpRecord(a,b)),b)}dumpRecord(a,b){console.info(`Task ${a}.${b.identifier} executed in ${b.duration.toFixed(2)}ms and ended at ${b.date.toISOString()}`);let c=[];for(let a of b.entries.keys()){let d=b.entries.get(a),e=d.reduce((a,b)=>a+b);c.push({name:`${b.identifier}.${a}`,count:d.length,duration:e})}let d=b.duration-c.map(a=>a.duration).reduce((a,b)=>a+b,0);function e(a){return Math.round(100*a)/100}return c.push({name:b.identifier,count:1,duration:d}),c.sort((a,b)=>b.duration-a.duration),bJ(e,"Round"),console.table(c.map(a=>({Element:a.name,Count:a.count,"Self %":e(100*a.duration/b.duration),"Time (ms)":e(a.duration)}))),b}getRecords(...a){return 0===a.length?this.records.values():this.records.entries().filter(b=>a.some(a=>a===b[0])).flatMap(a=>a[1])}},vt=class{static{bJ(this,"ProfilingTask")}constructor(a,b){this.stack=[],this.entries=new t$,this.addRecord=a,this.identifier=b}start(){if(void 0!==this.startTime)throw Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(void 0===this.startTime)throw Error(`Task "${this.identifier}" was not started.`);if(0!==this.stack.length)throw Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(a=>a.id).join(", ")}.`);let a={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(a),this.startTime=void 0,this.entries.clear()}startSubTask(a){this.stack.push({id:a,start:performance.now(),content:0})}stopSubTask(a){let b=this.stack.pop();if(!b)throw Error(`Task "${this.identifier}.${a}" was not started.`);if(b.id!==a)throw Error(`Sub-Task "${b.id}" is not already stopped.`);let c=performance.now()-b.start;void 0!==this.stack.at(-1)&&(this.stack[this.stack.length-1].content+=c);let d=c-b.content;this.entries.add(a,d)}};(a9||(a9={})).Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[\w ]+)\]/},(ba||(ba={})).Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bb||(bb={})).Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/},(bc||(bc={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/},(bd||(bd={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(be||(be={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bf||(bf={})).Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bg||(bg={})).Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bh||(bh={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/},(bi||(bi={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/},(bj||(bj={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//},(bk||(bk={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/},(bl||(bl={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/},(bm||(bm={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/},(bn||(bn={})).Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},a9.Terminals,ba.Terminals,bb.Terminals,bc.Terminals,bd.Terminals,be.Terminals,bf.Terminals,bg.Terminals,bh.Terminals,bi.Terminals,bj.Terminals,bk.Terminals,bm.Terminals,bl.Terminals,bn.Terminals;var vu="AbnfPrimary",vv="Architecture";bJ(function(a){return v_.isInstance(a,vv)},"isArchitecture");var vw="Axis",vx="Branch";bJ(function(a){return v_.isInstance(a,vx)},"isBranch");var vy="Commit";bJ(function(a){return v_.isInstance(a,vy)},"isCommit");var vz="Cynefin";bJ(function(a){return v_.isInstance(a,vz)},"isCynefin");var vA="DomainBlock";bJ(function(a){return v_.isInstance(a,vA)},"isDomainBlock");var vB="DomainItem";bJ(function(a){return v_.isInstance(a,vB)},"isDomainItem");var vC="EbnfPostfix",vD="EbnfPrimary",vE="EmDataEntity",vF="EmFrame",vG="EmModelEntity";bJ(function(a){return"rmo"===a||"readmodel"===a||"ui"===a||"cmd"===a||"command"===a||"evt"===a||"event"===a||"pcr"===a||"processor"===a},"isEmModelEntityType");var vH="EmResetFrame";function vI(a){return v_.isInstance(a,vH)}bJ(vI,"isEmResetFrame");var vJ="GitGraph";bJ(function(a){return v_.isInstance(a,vJ)},"isGitGraph");var vK="Info";bJ(function(a){return v_.isInstance(a,vK)},"isInfo");var vL="Item",vM="Merge";bJ(function(a){return v_.isInstance(a,vM)},"isMerge");var vN="Packet";bJ(function(a){return v_.isInstance(a,vN)},"isPacket");var vO="PacketBlock";bJ(function(a){return v_.isInstance(a,vO)},"isPacketBlock");var vP="PegPrimary";bJ(function(a){return v_.isInstance(a,"Pie")},"isPie");var vQ="PieSection";bJ(function(a){return v_.isInstance(a,vQ)},"isPieSection");var vR="Railroad";bJ(function(a){return v_.isInstance(a,vR)},"isRailroad");var vS="RailroadAbnf";bJ(function(a){return v_.isInstance(a,vS)},"isRailroadAbnf");var vT="RailroadEbnf";bJ(function(a){return v_.isInstance(a,vT)},"isRailroadEbnf");var vU="RailroadExpression",vV="RailroadPeg";bJ(function(a){return v_.isInstance(a,vV)},"isRailroadPeg");var vW="Statement",vX="Transition";bJ(function(a){return v_.isInstance(a,vX)},"isTransition");var vY="Treemap";bJ(function(a){return v_.isInstance(a,vY)},"isTreemap");var vZ="Wardley";bJ(function(a){return v_.isInstance(a,vZ)},"isWardley");var v$=class extends cF{constructor(){super(...arguments),this.types={AbnfAlternation:{name:"AbnfAlternation",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:"AbnfConcatenation",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},AbnfElement:{name:"AbnfElement",properties:{primary:{name:"primary"},repeat:{name:"repeat"}},superTypes:[]},AbnfGroup:{name:"AbnfGroup",properties:{element:{name:"element"}},superTypes:[vu]},AbnfNumVal:{name:"AbnfNumVal",properties:{value:{name:"value"}},superTypes:[vu]},AbnfOptionalGroup:{name:"AbnfOptionalGroup",properties:{element:{name:"element"}},superTypes:[vu]},AbnfPrimary:{name:vu,properties:{},superTypes:[]},AbnfRule:{name:"AbnfRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},AbnfRuleName:{name:"AbnfRuleName",properties:{name:{name:"name"}},superTypes:[vu]},AbnfStringLiteral:{name:"AbnfStringLiteral",properties:{value:{name:"value"}},superTypes:[vu]},Accelerator:{name:"Accelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Alignment:{name:"Alignment",properties:{direction:{name:"direction"},members:{name:"members",defaultValue:[]}},superTypes:[]},Anchor:{name:"Anchor",properties:{evolution:{name:"evolution"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Annotation:{name:"Annotation",properties:{number:{name:"number"},text:{name:"text"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Annotations:{name:"Annotations",properties:{x:{name:"x"},y:{name:"y"}},superTypes:[]},Architecture:{name:vv,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},alignments:{name:"alignments",defaultValue:[]},edges:{name:"edges",defaultValue:[]},groups:{name:"groups",defaultValue:[]},junctions:{name:"junctions",defaultValue:[]},services:{name:"services",defaultValue:[]},title:{name:"title"}},superTypes:[]},Axis:{name:vw,properties:{label:{name:"label"},name:{name:"name"}},superTypes:[]},Branch:{name:vx,properties:{name:{name:"name"},order:{name:"order"}},superTypes:[vW]},Checkout:{name:"Checkout",properties:{branch:{name:"branch"}},superTypes:[vW]},CherryPicking:{name:"CherryPicking",properties:{id:{name:"id"},parent:{name:"parent"},tags:{name:"tags",defaultValue:[]}},superTypes:[vW]},ClassDefStatement:{name:"ClassDefStatement",properties:{className:{name:"className"},styleText:{name:"styleText"}},superTypes:[]},Commit:{name:vy,properties:{id:{name:"id"},message:{name:"message"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vW]},Common:{name:"Common",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Component:{name:"Component",properties:{decorator:{name:"decorator"},evolution:{name:"evolution"},inertia:{name:"inertia",defaultValue:!1},label:{name:"label"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Curve:{name:"Curve",properties:{entries:{name:"entries",defaultValue:[]},label:{name:"label"},name:{name:"name"}},superTypes:[]},Cynefin:{name:vz,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},domains:{name:"domains",defaultValue:[]},title:{name:"title"},transitions:{name:"transitions",defaultValue:[]}},superTypes:[]},Deaccelerator:{name:"Deaccelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Decorator:{name:"Decorator",properties:{strategy:{name:"strategy"}},superTypes:[]},Direction:{name:"Direction",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},dir:{name:"dir"},statements:{name:"statements",defaultValue:[]},title:{name:"title"}},superTypes:[vJ]},DomainBlock:{name:vA,properties:{domain:{name:"domain"},items:{name:"items",defaultValue:[]}},superTypes:[]},DomainItem:{name:vB,properties:{label:{name:"label"}},superTypes:[]},EbnfChoice:{name:"EbnfChoice",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:"EbnfExceptionPostfix",properties:{except:{name:"except"}},superTypes:[vC]},EbnfGroup:{name:"EbnfGroup",properties:{element:{name:"element"}},superTypes:[vD]},EbnfNonTerminal:{name:"EbnfNonTerminal",properties:{name:{name:"name"}},superTypes:[vD]},EbnfOneOrMorePostfix:{name:"EbnfOneOrMorePostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},EbnfOptional:{name:"EbnfOptional",properties:{element:{name:"element"}},superTypes:[vD]},EbnfOptionalPostfix:{name:"EbnfOptionalPostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},EbnfPostfix:{name:vC,properties:{},superTypes:[]},EbnfPrimary:{name:vD,properties:{},superTypes:[]},EbnfRepetition:{name:"EbnfRepetition",properties:{element:{name:"element"}},superTypes:[vD]},EbnfRule:{name:"EbnfRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},EbnfSequence:{name:"EbnfSequence",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:"EbnfSpecial",properties:{text:{name:"text"}},superTypes:[vD]},EbnfTerm:{name:"EbnfTerm",properties:{base:{name:"base"},postfixes:{name:"postfixes",defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:"EbnfTerminal",properties:{value:{name:"value"}},superTypes:[vD]},EbnfZeroOrMorePostfix:{name:"EbnfZeroOrMorePostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},Edge:{name:"Edge",properties:{lhsDir:{name:"lhsDir"},lhsGroup:{name:"lhsGroup",defaultValue:!1},lhsId:{name:"lhsId"},lhsInto:{name:"lhsInto",defaultValue:!1},rhsDir:{name:"rhsDir"},rhsGroup:{name:"rhsGroup",defaultValue:!1},rhsId:{name:"rhsId"},rhsInto:{name:"rhsInto",defaultValue:!1},title:{name:"title"}},superTypes:[]},EmDataEntity:{name:vE,properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},name:{name:"name"}},superTypes:[]},EmFrame:{name:vF,properties:{},superTypes:[]},EmGwt:{name:"EmGwt",properties:{givenStatements:{name:"givenStatements",defaultValue:[]},sourceFrame:{name:"sourceFrame",referenceType:vF},thenStatements:{name:"thenStatements",defaultValue:[]},whenStatements:{name:"whenStatements",defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:"EmGwtStatement",properties:{entityIdentifier:{name:"entityIdentifier",referenceType:vG}},superTypes:[]},EmModelEntity:{name:vG,properties:{name:{name:"name"}},superTypes:[]},EmNoteEntity:{name:"EmNoteEntity",properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},sourceFrame:{name:"sourceFrame",referenceType:vF}},superTypes:[]},EmResetFrame:{name:vH,properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vE},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vF}},superTypes:[vF]},EmTimeFrame:{name:"EmTimeFrame",properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vE},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vF}},superTypes:[vF]},Entry:{name:"Entry",properties:{axis:{name:"axis",referenceType:vw},value:{name:"value"}},superTypes:[]},EventModel:{name:"EventModel",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},dataEntities:{name:"dataEntities",defaultValue:[]},frames:{name:"frames",defaultValue:[]},gwtEntities:{name:"gwtEntities",defaultValue:[]},modelEntities:{name:"modelEntities",defaultValue:[]},noteEntities:{name:"noteEntities",defaultValue:[]},title:{name:"title"}},superTypes:[]},Evolution:{name:"Evolution",properties:{stages:{name:"stages",defaultValue:[]}},superTypes:[]},EvolutionStage:{name:"EvolutionStage",properties:{boundary:{name:"boundary"},name:{name:"name"},secondName:{name:"secondName"}},superTypes:[]},Evolve:{name:"Evolve",properties:{component:{name:"component"},target:{name:"target"}},superTypes:[]},GitGraph:{name:vJ,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},statements:{name:"statements",defaultValue:[]},title:{name:"title"}},superTypes:[]},Group:{name:"Group",properties:{icon:{name:"icon"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Info:{name:vK,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Item:{name:vL,properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[]},Junction:{name:"Junction",properties:{id:{name:"id"},in:{name:"in"}},superTypes:[]},Label:{name:"Label",properties:{negX:{name:"negX",defaultValue:!1},negY:{name:"negY",defaultValue:!1},offsetX:{name:"offsetX"},offsetY:{name:"offsetY"}},superTypes:[]},Leaf:{name:"Leaf",properties:{classSelector:{name:"classSelector"},name:{name:"name"},value:{name:"value"}},superTypes:[vL]},Link:{name:"Link",properties:{arrow:{name:"arrow"},from:{name:"from"},fromPort:{name:"fromPort"},linkLabel:{name:"linkLabel"},to:{name:"to"},toPort:{name:"toPort"}},superTypes:[]},Merge:{name:vM,properties:{branch:{name:"branch"},id:{name:"id"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vW]},Note:{name:"Note",properties:{evolution:{name:"evolution"},text:{name:"text"},visibility:{name:"visibility"}},superTypes:[]},Option:{name:"Option",properties:{name:{name:"name"},value:{name:"value",defaultValue:!1}},superTypes:[]},Packet:{name:vN,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},blocks:{name:"blocks",defaultValue:[]},title:{name:"title"}},superTypes:[]},PacketBlock:{name:vO,properties:{bits:{name:"bits"},end:{name:"end"},label:{name:"label"},start:{name:"start"}},superTypes:[]},PegAny:{name:"PegAny",properties:{dot:{name:"dot"}},superTypes:[vP]},PegGroup:{name:"PegGroup",properties:{element:{name:"element"}},superTypes:[vP]},PegIdentifier:{name:"PegIdentifier",properties:{name:{name:"name"}},superTypes:[vP]},PegLiteral:{name:"PegLiteral",properties:{value:{name:"value"}},superTypes:[vP]},PegOrderedChoice:{name:"PegOrderedChoice",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},PegPrefix:{name:"PegPrefix",properties:{operator:{name:"operator"},suffix:{name:"suffix"}},superTypes:[]},PegPrimary:{name:vP,properties:{},superTypes:[]},PegRule:{name:"PegRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},PegSequence:{name:"PegSequence",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},PegSuffix:{name:"PegSuffix",properties:{operator:{name:"operator"},primary:{name:"primary"}},superTypes:[]},Pie:{name:"Pie",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},sections:{name:"sections",defaultValue:[]},showData:{name:"showData",defaultValue:!1},title:{name:"title"}},superTypes:[]},PieSection:{name:vQ,properties:{label:{name:"label"},value:{name:"value"}},superTypes:[]},Pipeline:{name:"Pipeline",properties:{components:{name:"components",defaultValue:[]},parent:{name:"parent"}},superTypes:[]},PipelineComponent:{name:"PipelineComponent",properties:{evolution:{name:"evolution"},label:{name:"label"},name:{name:"name"}},superTypes:[]},Radar:{name:"Radar",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},axes:{name:"axes",defaultValue:[]},curves:{name:"curves",defaultValue:[]},options:{name:"options",defaultValue:[]},title:{name:"title"}},superTypes:[]},Railroad:{name:vR,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadAbnf:{name:vS,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadChoiceExpr:{name:"RailroadChoiceExpr",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[vU]},RailroadEbnf:{name:vT,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadExpression:{name:vU,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:"RailroadNonTerminalExpr",properties:{name:{name:"name"}},superTypes:[vU]},RailroadOneOrMoreExpr:{name:"RailroadOneOrMoreExpr",properties:{element:{name:"element"}},superTypes:[vU]},RailroadOptionalExpr:{name:"RailroadOptionalExpr",properties:{element:{name:"element"}},superTypes:[vU]},RailroadPeg:{name:vV,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadRule:{name:"RailroadRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},RailroadSequenceExpr:{name:"RailroadSequenceExpr",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[vU]},RailroadSpecialExpr:{name:"RailroadSpecialExpr",properties:{text:{name:"text"}},superTypes:[vU]},RailroadTerminalExpr:{name:"RailroadTerminalExpr",properties:{value:{name:"value"}},superTypes:[vU]},RailroadZeroOrMoreExpr:{name:"RailroadZeroOrMoreExpr",properties:{element:{name:"element"}},superTypes:[vU]},Section:{name:"Section",properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[vL]},Service:{name:"Service",properties:{icon:{name:"icon"},iconText:{name:"iconText"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Size:{name:"Size",properties:{height:{name:"height"},width:{name:"width"}},superTypes:[]},Statement:{name:vW,properties:{},superTypes:[]},Transition:{name:vX,properties:{from:{name:"from"},label:{name:"label"},to:{name:"to"}},superTypes:[]},TreeNode:{name:"TreeNode",properties:{classAnnotation:{name:"classAnnotation"},descAnnotation:{name:"descAnnotation"},iconAnnotation:{name:"iconAnnotation"},indent:{name:"indent"},name:{name:"name"}},superTypes:[]},TreeView:{name:"TreeView",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},nodes:{name:"nodes",defaultValue:[]},title:{name:"title"}},superTypes:[]},Treemap:{name:vY,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"},TreemapRows:{name:"TreemapRows",defaultValue:[]}},superTypes:[]},TreemapRow:{name:"TreemapRow",properties:{indent:{name:"indent"},item:{name:"item"}},superTypes:[]},Wardley:{name:vZ,properties:{accDescr:{name:"accDescr"},accelerators:{name:"accelerators",defaultValue:[]},accTitle:{name:"accTitle"},anchors:{name:"anchors",defaultValue:[]},annotation:{name:"annotation",defaultValue:[]},annotations:{name:"annotations",defaultValue:[]},components:{name:"components",defaultValue:[]},deaccelerators:{name:"deaccelerators",defaultValue:[]},evolution:{name:"evolution"},evolves:{name:"evolves",defaultValue:[]},links:{name:"links",defaultValue:[]},notes:{name:"notes",defaultValue:[]},pipelines:{name:"pipelines",defaultValue:[]},size:{name:"size"},title:{name:"title"}},superTypes:[]}}}static{bJ(this,"MermaidAstReflection")}},v_=new v$,v0=bJ(()=>bo??(bo=vr('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$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@12"},"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@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),v1=bJ(()=>bp??(bp=vr('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"--\x3e"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),v2=bJ(()=>bq??(bq=vr('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),v3=bJ(()=>br??(br=vr('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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"}]}},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),v4=bJ(()=>bs??(bs=vr('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","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":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),v5=bJ(()=>bt??(bt=vr('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),v6=bJ(()=>bu??(bu=vr('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),v7=bJ(()=>bv??(bv=vr('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":"]"}]},"entry":false,"parameters":[]},{"$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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"*"}]}]},"entry":false,"parameters":[]},{"$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,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),v8=bJ(()=>bw??(bw=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),v9=bJ(()=>bx??(bx=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),wa=bJ(()=>by??(by=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),wb=bJ(()=>bz??(bz=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),wc=bJ(()=>bA??(bA=vr('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"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@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"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]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$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@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"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@15"}}},"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":[]}],"imports":[],"types":[],"$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 */"}')),"TreemapGrammarGrammar"),wd=bJ(()=>bB??(bB=vr('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","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":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),we=bJ(()=>bC??(bC=vr('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"--\x3e"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),wf={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wg={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wh={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wi={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wj={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wk={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wl={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wm={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wn={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wo={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wp={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wq={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wr={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ws={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wt={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wu={AstReflection:bJ(()=>new v$,"AstReflection")},wv={Grammar:bJ(()=>v0(),"Grammar"),LanguageMetaData:bJ(()=>wf,"LanguageMetaData"),parser:{}},ww={Grammar:bJ(()=>v1(),"Grammar"),LanguageMetaData:bJ(()=>wg,"LanguageMetaData"),parser:{}},wx={Grammar:bJ(()=>v2(),"Grammar"),LanguageMetaData:bJ(()=>wh,"LanguageMetaData"),parser:{}},wy={Grammar:bJ(()=>v3(),"Grammar"),LanguageMetaData:bJ(()=>wi,"LanguageMetaData"),parser:{}},wz={Grammar:bJ(()=>v4(),"Grammar"),LanguageMetaData:bJ(()=>wj,"LanguageMetaData"),parser:{}},wA={Grammar:bJ(()=>v5(),"Grammar"),LanguageMetaData:bJ(()=>wk,"LanguageMetaData"),parser:{}},wB={Grammar:bJ(()=>v6(),"Grammar"),LanguageMetaData:bJ(()=>wl,"LanguageMetaData"),parser:{}},wC={Grammar:bJ(()=>v7(),"Grammar"),LanguageMetaData:bJ(()=>wm,"LanguageMetaData"),parser:{}},wD={Grammar:bJ(()=>v8(),"Grammar"),LanguageMetaData:bJ(()=>wn,"LanguageMetaData"),parser:{}},wE={Grammar:bJ(()=>v9(),"Grammar"),LanguageMetaData:bJ(()=>wo,"LanguageMetaData"),parser:{}},wF={Grammar:bJ(()=>wa(),"Grammar"),LanguageMetaData:bJ(()=>wp,"LanguageMetaData"),parser:{}},wG={Grammar:bJ(()=>wb(),"Grammar"),LanguageMetaData:bJ(()=>wq,"LanguageMetaData"),parser:{}},wH={Grammar:bJ(()=>wc(),"Grammar"),LanguageMetaData:bJ(()=>wr,"LanguageMetaData"),parser:{}},wI={Grammar:bJ(()=>wd(),"Grammar"),LanguageMetaData:bJ(()=>ws,"LanguageMetaData"),parser:{}},wJ={Grammar:bJ(()=>we(),"Grammar"),LanguageMetaData:bJ(()=>wt,"LanguageMetaData"),parser:{}},wK={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},wL=class extends tz{static{bJ(this,"AbstractMermaidValueConverter")}runConverter(a,b,c){let d=this.runCommonConverter(a,b,c);return(void 0===d&&(d=this.runCustomConverter(a,b,c)),void 0===d)?super.runConverter(a,b,c):d}runCommonConverter(a,b,c){let d=wK[a.name];if(void 0===d)return;let e=d.exec(b);if(null!==e){if(void 0!==e[1])return e[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==e[2])return e[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},wM=class extends wL{static{bJ(this,"CommonValueConverter")}runCustomConverter(a,b,c){}},wN=class extends ty{static{bJ(this,"AbstractMermaidTokenBuilder")}constructor(a){super(),this.keywords=new Set(a)}buildKeywordTokens(a,b,c){let d=super.buildKeywordTokens(a,b,c);return d.forEach(a=>{this.keywords.has(a.name)&&void 0!==a.PATTERN&&(a.PATTERN=RegExp(a.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),d}};(class extends wN{static{bJ(this,"CommonTokenBuilder")}})},8903:(a,b,c)=>{c.d(b,{S:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},f=class extends d.dg{static{(0,d.K2)(this,"ArchitectureValueConverter")}runCustomConverter(a,b,c){if("ARCH_ICON"===a.name)return b.replace(/[()]/g,"").trim();if("ARCH_TEXT_ICON"===a.name)return b.replace(/["()]/g,"");if("ARCH_TITLE"===a.name){let a=b.replace(/^\[|]$/g,"").trim();return(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))&&(a=(a=a.slice(1,-1)).replace(/\\"/g,'"').replace(/\\'/g,"'")),a.trim()}}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.wV,g);return b.ServiceRegistry.register(c),{shared:b,Architecture:c}}(0,d.K2)(h,"createArchitectureServices")},11377:(a,b,c)=>{c.d(b,{I:()=>h});var d=c(7274),e=class extends d.dg{static{(0,d.K2)(this,"TreeViewValueConverter")}runCustomConverter(a,b,c){if("INDENTATION"===a.name)return b?.length||0;if("QUOTED_NAME"===a.name)return b.substring(1,b.length-1);if("BARE_NAME"===a.name)return b.replace(/[\t ]+$/,"");if("CLASS_ANNOTATION"===a.name)return b.trim().substring(3).trim();if("ICON_ANNOTATION"===a.name){let a=b.trim();return a.substring(5,a.length-1)}if("DESC_ANNOTATION"===a.name)return b.trim().substring(2).trim()}},f=class extends d.mR{static{(0,d.K2)(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},g={parser:{TokenBuilder:(0,d.K2)(()=>new f,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new e,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.CZ,g);return b.ServiceRegistry.register(c),{shared:b,TreeView:c}}(0,d.K2)(h,"createTreeViewServices")},17693:(a,b,c)=>{c.d(b,{s:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},f=class extends d.dg{static{(0,d.K2)(this,"RailroadAbnfValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return a.slice(1,-1)}return d}runCustomConverter(a,b,c){if("ABNF_STRING"===a.name)return b.slice(1,-1)}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.oI,g);return b.ServiceRegistry.register(c),{shared:b,RailroadAbnf:c}}(0,d.K2)(h,"createRailroadAbnfServices")},19144:(a,b,c)=>{c.d(b,{$:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.p5,f);return b.ServiceRegistry.register(c),{shared:b,Packet:c}}(0,d.K2)(g,"createPacketServices")},28097:(a,b,c)=>{c.d(b,{f:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Bg,f);return b.ServiceRegistry.register(c),{shared:b,Radar:c}}(0,d.K2)(g,"createRadarServices")},29518:(a,b,c)=>{c.d(b,{P:()=>i});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},f=(0,d.K2)(a=>{let b=a.slice(1,-1),c="";for(let a=0;a<b.length;a++){let d=b[a];if("\\"===d&&a+1<b.length){let d=b[++a];switch(d){case"n":c+="\n";break;case"r":c+="\r";break;case"t":c+=" ";break;default:c+=d}continue}c+=d}return c},"decodeEscapedString"),g=class extends d.dg{static{(0,d.K2)(this,"RailroadPegValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return f(a)}return d}runCustomConverter(a,b,c){if("PEG_STRING"===a.name)return f(b)}},h={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")}};function i(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.dj,h);return b.ServiceRegistry.register(c),{shared:b,RailroadPeg:c}}(0,d.K2)(i,"createRailroadPegServices")},42067:(a,b,c)=>{c.d(b,{g:()=>n});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},f=new Set(["cmd","command"]),g=new Set(["evt","event"]),h=new Set(["rmo","readmodel"]),i=new Set(["pcr","processor"]),j=new Set(["ui"]);function k(a){let b=a.validation.EventModelingValidator,c=a.validation.ValidationRegistry;if(c){let a={EmTimeFrame:b.checkSourceFrameTypes.bind(b),EmResetFrame:b.checkSourceFrameTypes.bind(b)};c.register(a,b)}}(0,d.K2)(k,"registerValidationChecks");var l=class{static{(0,d.K2)(this,"EventModelingValidator")}checkSourceFrameTypes(a,b){0!==a.sourceFrames.length&&(f.has(a.modelEntityType)?this.validateSources(a,new Set([...j,...i]),"command","ui or processor",b):g.has(a.modelEntityType)?this.validateSources(a,f,"event","command",b):h.has(a.modelEntityType)?this.validateSources(a,g,"read model","event",b):i.has(a.modelEntityType)?this.validateSources(a,h,"processor","read model",b):j.has(a.modelEntityType)&&this.validateSources(a,h,"ui","read model",b))}validateSources(a,b,c,d,e){for(let f of a.sourceFrames){let g=f.ref;void 0===g||b.has(g.modelEntityType)||e("error",`A ${c} can only receive input from a ${d}, not from '${g.modelEntityType}'.`,{node:a,property:"sourceFrames"})}}},m={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")},validation:{EventModelingValidator:(0,d.K2)(()=>new l,"EventModelingValidator")}};function n(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.x0,m);return b.ServiceRegistry.register(c),k(c),{shared:b,EventModel:c}}(0,d.K2)(n,"createEventModelingServices")},70304:(a,b,c)=>{c.d(b,{t:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Jn,f);return b.ServiceRegistry.register(c),{shared:b,Cynefin:c}}(0,d.K2)(g,"createCynefinServices")},77547:(a,b,c)=>{c.d(b,{b:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.d$,f);return b.ServiceRegistry.register(c),{shared:b,GitGraph:c}}(0,d.K2)(g,"createGitGraphServices")},78539:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(7274),e=class extends d.dg{static{(0,d.K2)(this,"WardleyValueConverter")}runCustomConverter(a,b,c){return"LINK_LABEL"===a.name.toUpperCase()?b.substring(1).trim():void 0}},f={parser:{ValueConverter:(0,d.K2)(()=>new e,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Xr,f);return b.ServiceRegistry.register(c),{shared:b,Wardley:c}}(0,d.K2)(g,"createWardleyServices")},87633:(a,b,c)=>{c.d(b,{v:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.FZ,f);return b.ServiceRegistry.register(c),{shared:b,Info:c}}(0,d.K2)(g,"createInfoServices")},87974:(a,b,c)=>{c.d(b,{W:()=>i});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},f=(0,d.K2)(a=>{let b=a.slice(1,-1),c="";for(let a=0;a<b.length;a++){let d=b[a];if("\\"===d&&a+1<b.length){let d=b[++a];switch(d){case"n":c+="\n";break;case"r":c+="\r";break;case"t":c+=" ";break;default:c+=d}continue}c+=d}return c},"decodeEscapedString"),g=class extends d.dg{static{(0,d.K2)(this,"RailroadEbnfValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return f(a)}return d}runCustomConverter(a,b,c){return"EBNF_STRING"===a.name?f(b):"EBNF_SPECIAL_SEQUENCE"===a.name?b.slice(1,-1).trim():void 0}},h={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")}};function i(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.U4,h);return b.ServiceRegistry.register(c),{shared:b,RailroadEbnf:c}}(0,d.K2)(i,"createRailroadEbnfServices")},92325:(a,b,c)=>{c.d(b,{F5:()=>h.F5,Pz:()=>g.P,WG:()=>e.W,lz:()=>d.l,qg:()=>k,sB:()=>f.s,zg:()=>l}),c(28097);var d=c(4231),e=c(87974),f=c(17693),g=c(29518);c(93401),c(78539),c(70304),c(77547),c(87633),c(19144),c(96729),c(11377),c(8903),c(42067);var h=c(7274),i={},j={info:(0,h.K2)(async()=>{let{createInfoServices:a}=await c.e(7233).then(c.bind(c,7233));i.info=a().Info.parser.LangiumParser},"info"),packet:(0,h.K2)(async()=>{let{createPacketServices:a}=await c.e(7561).then(c.bind(c,37561));i.packet=a().Packet.parser.LangiumParser},"packet"),pie:(0,h.K2)(async()=>{let{createPieServices:a}=await c.e(3894).then(c.bind(c,23894));i.pie=a().Pie.parser.LangiumParser},"pie"),treeView:(0,h.K2)(async()=>{let{createTreeViewServices:a}=await c.e(2744).then(c.bind(c,82744));i.treeView=a().TreeView.parser.LangiumParser},"treeView"),architecture:(0,h.K2)(async()=>{let{createArchitectureServices:a}=await c.e(2106).then(c.bind(c,12106));i.architecture=a().Architecture.parser.LangiumParser},"architecture"),gitGraph:(0,h.K2)(async()=>{let{createGitGraphServices:a}=await c.e(9486).then(c.bind(c,19486));i.gitGraph=a().GitGraph.parser.LangiumParser},"gitGraph"),eventmodeling:(0,h.K2)(async()=>{let{createEventModelingServices:a}=await c.e(2903).then(c.bind(c,12903));i.eventmodeling=a().EventModel.parser.LangiumParser},"eventmodeling"),radar:(0,h.K2)(async()=>{let{createRadarServices:a}=await c.e(4372).then(c.bind(c,54372));i.radar=a().Radar.parser.LangiumParser},"radar"),railroad:(0,h.K2)(async()=>{let{createRailroadServices:a}=await c.e(8294).then(c.bind(c,8294));i.railroad=a().Railroad.parser.LangiumParser},"railroad"),railroadEbnf:(0,h.K2)(async()=>{let{createRailroadEbnfServices:a}=await c.e(1515).then(c.bind(c,41515));i.railroadEbnf=a().RailroadEbnf.parser.LangiumParser},"railroadEbnf"),railroadAbnf:(0,h.K2)(async()=>{let{createRailroadAbnfServices:a}=await c.e(9509).then(c.bind(c,49509));i.railroadAbnf=a().RailroadAbnf.parser.LangiumParser},"railroadAbnf"),railroadPeg:(0,h.K2)(async()=>{let{createRailroadPegServices:a}=await c.e(2190).then(c.bind(c,62190));i.railroadPeg=a().RailroadPeg.parser.LangiumParser},"railroadPeg"),treemap:(0,h.K2)(async()=>{let{createTreemapServices:a}=await c.e(5029).then(c.bind(c,5029));i.treemap=a().Treemap.parser.LangiumParser},"treemap"),wardley:(0,h.K2)(async()=>{let{createWardleyServices:a}=await c.e(7872).then(c.bind(c,57872));i.wardley=a().Wardley.parser.LangiumParser},"wardley"),cynefin:(0,h.K2)(async()=>{let{createCynefinServices:a}=await c.e(835).then(c.bind(c,40835));i.cynefin=a().Cynefin.parser.LangiumParser},"cynefin")};async function k(a,b){let c=j[a];if(!c)throw Error(`Unknown diagram type: ${a}`);i[a]||await c();let d=i[a].parse(b);if(d.lexerErrors.length>0||d.parserErrors.length>0)throw new l(d);return d.value}(0,h.K2)(k,"parse");var l=class extends Error{constructor(a){const b=a.lexerErrors.map(a=>{let b=void 0===a.line||isNaN(a.line)?"?":a.line,c=void 0===a.column||isNaN(a.column)?"?":a.column;return`Lexer error on line ${b}, column ${c}: ${a.message}`}).join("\n"),c=a.parserErrors.map(a=>{let b=void 0===a.token.startLine||isNaN(a.token.startLine)?"?":a.token.startLine,c=void 0===a.token.startColumn||isNaN(a.token.startColumn)?"?":a.token.startColumn;return`Parse error on line ${b}, column ${c}: ${a.message}`}).join("\n");super(`Parsing failed: ${b} ${c}`),this.result=a}static{(0,h.K2)(this,"MermaidParseError")}}},93401:(a,b,c)=>{c.d(b,{d:()=>k});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},f=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,g=class extends d.dg{static{(0,d.K2)(this,"TreemapValueConverter")}runCustomConverter(a,b,c){if("NUMBER2"===a.name)return parseFloat(b.replace(/,/g,""));if("SEPARATOR"===a.name)return b.substring(1,b.length-1);if("STRING2"===a.name)return b.substring(1,b.length-1);if("INDENTATION"===a.name)return b.length;if("ClassDef"===a.name){if("string"!=typeof b)return b;let a=f.exec(b);if(a)return{$type:"ClassDefStatement",className:a[1],styleText:a[2]||void 0}}}};function h(a){let b=a.validation.TreemapValidator,c=a.validation.ValidationRegistry;if(c){let a={Treemap:b.checkSingleRoot.bind(b)};c.register(a,b)}}(0,d.K2)(h,"registerValidationChecks");var i=class{static{(0,d.K2)(this,"TreemapValidator")}checkSingleRoot(a,b){let c;for(let d of a.TreemapRows)d.item&&(void 0===c&&void 0===d.indent?c=0:void 0===d.indent?b("error","Multiple root nodes are not allowed in a treemap.",{node:d,property:"item"}):void 0!==c&&c>=parseInt(d.indent,10)&&b("error","Multiple root nodes are not allowed in a treemap.",{node:d,property:"item"}))}},j={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")},validation:{TreemapValidator:(0,d.K2)(()=>new i,"TreemapValidator")}};function k(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.XE,j);return b.ServiceRegistry.register(c),h(c),{shared:b,Treemap:c}}(0,d.K2)(k,"createTreemapServices")},96729:(a,b,c)=>{c.d(b,{f:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},f=class extends d.dg{static{(0,d.K2)(this,"PieValueConverter")}runCustomConverter(a,b,c){if("PIE_SECTION_LABEL"===a.name)return b.replace(/"/g,"").trim()}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.D_,g);return b.ServiceRegistry.register(c),{shared:b,Pie:c}}(0,d.K2)(h,"createPieServices")}};
|
|
82
|
+
${b}`),this.inline)?`{${d}}`:d}};function uZ(a,b,c){if("linkplain"===a||"linkcode"===a||"link"===a){let d=b.indexOf(" "),e=b;if(d>0){let a=uM(b,d);e=b.substring(a),b=b.substring(0,d)}return("linkcode"===a||"link"===a&&"code"===c.link)&&(e=`\`${e}\``),c.renderLink?.(b,e)??u$(b,e)}}function u$(a,b){try{return tQ.parse(a,!0),`[${b}](${a})`}catch{return a}}bJ(uZ,"renderInlineTag"),bJ(u$,"renderLinkDefault");var u_=class{static{bJ(this,"JSDocTextImpl")}constructor(a,b){this.inlines=a,this.range=b}toString(){let a="";for(let b=0;b<this.inlines.length;b++){let c=this.inlines[b],d=this.inlines[b+1];a+=c.toString(),d&&d.range.start.line>c.range.start.line&&(a+="\n")}return a}toMarkdown(a){let b="";for(let c=0;c<this.inlines.length;c++){let d=this.inlines[c],e=this.inlines[c+1];b+=d.toMarkdown(a),e&&e.range.start.line>d.range.start.line&&(b+="\n")}return b}},u0=class{static{bJ(this,"JSDocLineImpl")}constructor(a,b){this.text=a,this.range=b}toString(){return this.text}toMarkdown(){return this.text}};function u1(a){return a.endsWith("\n")?"\n":"\n\n"}bJ(u1,"fillNewlines");var u2=class{static{bJ(this,"JSDocDocumentationProvider")}constructor(a){this.indexManager=a.shared.workspace.IndexManager,this.commentProvider=a.documentation.CommentProvider}getDocumentation(a){let b=this.commentProvider.getComment(a);if(b&&uE(b))return uD(b).toMarkdown({renderLink:bJ((b,c)=>this.documentationLinkRenderer(a,b,c),"renderLink"),renderTag:bJ(b=>this.documentationTagRenderer(a,b),"renderTag")})}documentationLinkRenderer(a,b,c){let d=this.findNameInLocalSymbols(a,b)??this.findNameInGlobalScope(a,b);if(d&&d.nameSegment){let a=d.nameSegment.range.start.line+1,b=d.nameSegment.range.start.character+1,e=d.documentUri.with({fragment:`L${a},${b}`});return`[${c}](${e.toString()})`}}documentationTagRenderer(a,b){}findNameInLocalSymbols(a,b){let c=cU(a).localSymbols;if(!c)return;let d=a;do{let a=c.getStream(d).find(a=>a.name===b);if(a)return a;d=d.$container}while(d)}findNameInGlobalScope(a,b){return this.indexManager.allElements().find(a=>a.name===b)}},u3=class{static{bJ(this,"DefaultCommentProvider")}constructor(a){this.grammarConfig=()=>a.parser.GrammarConfig}getComment(a){return ub(a)?a.$comment:eU(a.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},u4=class{static{bJ(this,"DefaultAsyncParser")}constructor(a){this.syncParser=a.parser.LangiumParser}parse(a,b){return Promise.resolve(this.syncParser.parse(a))}},u5=class{static{bJ(this,"AbstractThreadedAsyncParser")}constructor(a){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=a.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let a=this.createWorker();a.onReady(()=>{if(this.queue.length>0){let b=this.queue.shift();b&&(a.lock(),b.resolve(a))}}),this.workerPool.push(a)}}async parse(a,b){let c,d=await this.acquireParserWorker(b),e=new tJ,f=b.onCancellationRequested(()=>{c=setTimeout(()=>{this.terminateWorker(d)},this.terminationDelay)});return d.parse(a).then(a=>{let b=this.hydrator.hydrate(a);e.resolve(b)}).catch(a=>{e.reject(a)}).finally(()=>{f.dispose(),clearTimeout(c)}),e.promise}terminateWorker(a){a.terminate();let b=this.workerPool.indexOf(a);b>=0&&this.workerPool.splice(b,1)}async acquireParserWorker(a){for(let a of(this.initializeWorkers(),this.workerPool))if(a.ready)return a.lock(),a;let b=new tJ;return a.onCancellationRequested(()=>{let a=this.queue.indexOf(b);a>=0&&this.queue.splice(a,1),b.reject(tG)}),this.queue.push(b),b.promise}},u6=class{static{bJ(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(a,b,c,d){this.onReadyEmitter=new up.Emitter,this.deferred=new tJ,this._ready=!0,this._parsing=!1,this.sendMessage=a,this._terminate=d,b(a=>{this.deferred.resolve(a),this.unlock()}),c(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(tG),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(a){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new tJ,this.sendMessage(a),this.deferred.promise}},u7=class{static{bJ(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new tA.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(a){this.cancelWrite();let b=tE();return this.previousTokenSource=b,this.enqueue(this.writeQueue,a,b.token)}read(a){return this.enqueue(this.readQueue,a)}enqueue(a,b,c=tA.CancellationToken.None){let d=new tJ;return a.push({action:b,deferred:d,cancellationToken:c}),this.performNextOperation(),d.promise}async performNextOperation(){if(!this.done)return;let a=[];if(this.writeQueue.length>0)a.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;a.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(a.map(async({action:a,deferred:b,cancellationToken:c})=>{try{let d=await Promise.resolve().then(()=>a(c));b.resolve(d)}catch(a){tH(a)?b.resolve(void 0):b.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},u8=class{static{bJ(this,"DefaultHydrator")}constructor(a){this.grammarElementIdMap=new t_,this.tokenTypeIdMap=new t_,this.grammar=a.Grammar,this.lexer=a.parser.Lexer,this.linker=a.references.Linker}dehydrate(a){return{lexerErrors:a.lexerErrors,lexerReport:a.lexerReport?this.dehydrateLexerReport(a.lexerReport):void 0,parserErrors:a.parserErrors.map(a=>({...a,message:a.message})),value:this.dehydrateAstNode(a.value,this.createDehyrationContext(a.value))}}dehydrateLexerReport(a){return a}createDehyrationContext(a){let b=new Map,c=new Map;for(let c of cZ(a))b.set(c,{});if(a.$cstNode)for(let b of eL(a.$cstNode))c.set(b,{});return{astNodes:b,cstNodes:c}}dehydrateAstNode(a,b){let c=b.astNodes.get(a);for(let[d,e]of(c.$type=a.$type,c.$containerIndex=a.$containerIndex,c.$containerProperty=a.$containerProperty,void 0!==a.$cstNode&&(c.$cstNode=this.dehydrateCstNode(a.$cstNode,b)),Object.entries(a)))if(!d.startsWith("$"))if(Array.isArray(e)){let a=[];for(let f of(c[d]=a,e))cA(f)?a.push(this.dehydrateAstNode(f,b)):cB(f)?a.push(this.dehydrateReference(f,b)):a.push(f)}else cA(e)?c[d]=this.dehydrateAstNode(e,b):cB(e)?c[d]=this.dehydrateReference(e,b):void 0!==e&&(c[d]=e);return c}dehydrateReference(a,b){let c={};return c.$refText=a.$refText,a.$refNode&&(c.$refNode=b.cstNodes.get(a.$refNode)),c}dehydrateCstNode(a,b){let c=b.cstNodes.get(a);return cI(a)?c.fullText=a.fullText:c.grammarSource=this.getGrammarElementId(a.grammarSource),c.hidden=a.hidden,c.astNode=b.astNodes.get(a.astNode),cG(a)?c.content=a.content.map(a=>this.dehydrateCstNode(a,b)):cH(a)&&(c.tokenType=a.tokenType.name,c.offset=a.offset,c.length=a.length,c.startLine=a.range.start.line,c.startColumn=a.range.start.character,c.endLine=a.range.end.line,c.endColumn=a.range.end.character),c}hydrate(a){let b=a.value,c=this.createHydrationContext(b);return"$cstNode"in b&&this.hydrateCstNode(b.$cstNode,c),{lexerErrors:a.lexerErrors,lexerReport:a.lexerReport,parserErrors:a.parserErrors,value:this.hydrateAstNode(b,c)}}createHydrationContext(a){let b,c=new Map,d=new Map;for(let b of cZ(a))c.set(b,{});if(a.$cstNode)for(let c of eL(a.$cstNode)){let a;"fullText"in c?b=a=new s1(c.fullText):"content"in c?a=new s_:"tokenType"in c&&(a=this.hydrateCstLeafNode(c)),a&&(d.set(c,a),a.root=b)}return{astNodes:c,cstNodes:d}}hydrateAstNode(a,b){let c=b.astNodes.get(a);for(let[d,e]of(c.$type=a.$type,c.$containerIndex=a.$containerIndex,c.$containerProperty=a.$containerProperty,a.$cstNode&&(c.$cstNode=b.cstNodes.get(a.$cstNode)),Object.entries(a)))if(!d.startsWith("$"))if(Array.isArray(e)){let a=[];for(let f of(c[d]=a,e))cA(f)?a.push(this.setParent(this.hydrateAstNode(f,b),c)):cB(f)?a.push(this.hydrateReference(f,c,d,b)):a.push(f)}else cA(e)?c[d]=this.setParent(this.hydrateAstNode(e,b),c):cB(e)?c[d]=this.hydrateReference(e,c,d,b):void 0!==e&&(c[d]=e);return c}setParent(a,b){return a.$container=b,a}hydrateReference(a,b,c,d){return this.linker.buildReference(b,c,d.cstNodes.get(a.$refNode),a.$refText)}hydrateCstNode(a,b,c=0){let d=b.cstNodes.get(a);if("number"==typeof a.grammarSource&&(d.grammarSource=this.getGrammarElement(a.grammarSource)),d.astNode=b.astNodes.get(a.astNode),cG(d))for(let e of a.content){let a=this.hydrateCstNode(e,b,c++);d.content.push(a)}return d}hydrateCstLeafNode(a){let b=this.getTokenType(a.tokenType);return new s$(a.offset,a.length,{start:{line:a.startLine,character:a.startColumn},end:{line:a.endLine,character:a.endColumn}},b,a.hidden)}getTokenType(a){return this.lexer.definition[a]}getGrammarElementId(a){if(a)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(a)}getGrammarElement(a){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(a)}createGrammarElementIdMap(){let a=0;for(let b of cZ(this.grammar))c6(b)&&this.grammarElementIdMap.set(b,a++)}};function u9(a){return{documentation:{CommentProvider:bJ(a=>new u3(a),"CommentProvider"),DocumentationProvider:bJ(a=>new u2(a),"DocumentationProvider")},parser:{AsyncParser:bJ(a=>new u4(a),"AsyncParser"),GrammarConfig:bJ(a=>f7(a),"GrammarConfig"),LangiumParser:bJ(a=>tw(a),"LangiumParser"),CompletionParser:bJ(a=>tv(a),"CompletionParser"),ValueConverter:bJ(()=>new tz,"ValueConverter"),TokenBuilder:bJ(()=>new ty,"TokenBuilder"),Lexer:bJ(a=>new uz(a),"Lexer"),ParserErrorMessageProvider:bJ(()=>new s8,"ParserErrorMessageProvider"),LexerErrorMessageProvider:bJ(()=>new ux,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:bJ(()=>new uo,"AstNodeLocator"),AstNodeDescriptionProvider:bJ(a=>new um(a),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:bJ(a=>new un(a),"ReferenceDescriptionProvider")},references:{Linker:bJ(a=>new tW(a),"Linker"),NameProvider:bJ(()=>new tY,"NameProvider"),ScopeProvider:bJ(a=>new ua(a),"ScopeProvider"),ScopeComputation:bJ(a=>new t0(a),"ScopeComputation"),References:bJ(a=>new tZ(a),"References")},serializer:{Hydrator:bJ(a=>new u8(a),"Hydrator"),JsonSerializer:bJ(a=>new ud(a),"JsonSerializer")},validation:{DocumentValidator:bJ(a=>new ui(a),"DocumentValidator"),ValidationRegistry:bJ(a=>new ug(a),"ValidationRegistry")},shared:bJ(()=>a.shared,"shared")}}function va(a){return{ServiceRegistry:bJ(a=>new ue(a),"ServiceRegistry"),workspace:{LangiumDocuments:bJ(a=>new tU(a),"LangiumDocuments"),LangiumDocumentFactory:bJ(a=>new tT(a),"LangiumDocumentFactory"),DocumentBuilder:bJ(a=>new uu(a),"DocumentBuilder"),IndexManager:bJ(a=>new uv(a),"IndexManager"),WorkspaceManager:bJ(a=>new uw(a),"WorkspaceManager"),FileSystemProvider:bJ(b=>a.fileSystemProvider(b),"FileSystemProvider"),WorkspaceLock:bJ(()=>new u7,"WorkspaceLock"),ConfigurationProvider:bJ(a=>new uq(a),"ConfigurationProvider")},profilers:{}}}function vb(a,b,c,d,e,f,g,h,i){return ve([a,b,c,d,e,f,g,h,i].reduce(vh,{}))}bJ(u9,"createDefaultCoreModule"),bJ(va,"createDefaultSharedCoreModule"),(a7||(a7={})).merge=(a,b)=>vh(vh({},a),b),bJ(vb,"inject");var vc=Symbol("isProxy");function vd(a){if(a&&a[vc])for(let b of Object.values(a))vd(b);return a}function ve(a,b){let c=new Proxy({},{deleteProperty:bJ(()=>!1,"deleteProperty"),set:bJ(()=>{throw Error("Cannot set property on injected service container")},"set"),get:bJ((d,e)=>e===vc||vg(d,e,a,b||c),"get"),getOwnPropertyDescriptor:bJ((d,e)=>(vg(d,e,a,b||c),Object.getOwnPropertyDescriptor(d,e)),"getOwnPropertyDescriptor"),has:bJ((b,c)=>c in a,"has"),ownKeys:bJ(()=>[...Object.getOwnPropertyNames(a)],"ownKeys")});return c}bJ(vd,"eagerLoad"),bJ(ve,"_inject");var vf=Symbol();function vg(a,b,c,d){if(b in a){if(a[b]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+a[b]);if(a[b]===vf)throw Error('Cycle detected. Please make "'+String(b)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return a[b]}if(b in c){let e=c[b];a[b]=vf;try{a[b]="function"==typeof e?e(d):ve(e,d)}catch(c){throw a[b]=c instanceof Error?c:void 0,c}return a[b]}}function vh(a,b){if(b){for(let[c,d]of Object.entries(b))if(null!=d)if("object"==typeof d){let b=a[c];"object"==typeof b&&null!==b?a[c]=vh(b,d):a[c]=vh({},d)}else a[c]=d}return a}bJ(vg,"_resolve"),bJ(vh,"_merge");var vi={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(p=a8||(a8={})).REGULAR="indentation-sensitive",p.IGNORE_INDENTATION="ignore-indentation";var vj=class extends ty{static{bJ(this,"IndentationAwareTokenBuilder")}constructor(a=vi){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...vi,...a},this.indentTokenType=m$({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=m$({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(a,b){let c,d,e,f=super.buildTokens(a,b);if(!uA(f))throw Error("Invalid tokens built by default builder");let{indentTokenName:g,dedentTokenName:h,whitespaceTokenName:i,ignoreIndentationDelimiters:j}=this.options,k=[];for(let a of f){for(let[b,c]of j)a.name===b?a.PUSH_MODE=a8.IGNORE_INDENTATION:a.name===c&&(a.POP_MODE=!0);a.name===h?c=a:a.name===g?d=a:a.name===i?e=a:k.push(a)}if(!c||!d||!e)throw Error("Some indentation/whitespace tokens not found!");return j.length>0?{modes:{[a8.REGULAR]:[c,d,...k,e],[a8.IGNORE_INDENTATION]:[...k,e]},defaultMode:a8.REGULAR}:[c,d,e,...k]}flushLexingReport(a){return{...super.flushLexingReport(a),remainingDedents:this.flushRemainingDedents(a)}}isStartOfLine(a,b){return 0===b||"\r\n".includes(a[b-1])}matchWhitespace(a,b,c,d){this.whitespaceRegExp.lastIndex=b;let e=this.whitespaceRegExp.exec(a);return{currIndentLevel:e?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:e}}createIndentationTokenInstance(a,b,c,d){let e=this.getLineNumber(b,d);return m1(a,c,d,d+c.length,e,e,1,c.length)}getLineNumber(a,b){return a.substring(0,b).split(/\r\n|\r|\n/).length}indentMatcher(a,b,c,d){if(!this.isStartOfLine(a,b))return null;let{currIndentLevel:e,prevIndentLevel:f,match:g}=this.matchWhitespace(a,b,c,d);return e<=f?null:(this.indentationStack.push(e),g)}dedentMatcher(a,b,c,d){if(!this.isStartOfLine(a,b))return null;let{currIndentLevel:e,prevIndentLevel:f,match:g}=this.matchWhitespace(a,b,c,d);if(e>=f)return null;let h=this.indentationStack.lastIndexOf(e);if(-1===h)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${e} at offset: ${b}. Current indentation stack: ${this.indentationStack}`,offset:b,length:g?.[0]?.length??0,line:this.getLineNumber(a,b),column:1}),null;let i=this.indentationStack.length-h-1,j=a.substring(0,b).match(/[\r\n]+$/)?.[0].length??1;for(let d=0;d<i;d++){let d=this.createIndentationTokenInstance(this.dedentTokenType,a,"",b-(j-1));c.push(d),this.indentationStack.pop()}return null}buildTerminalToken(a){let b=super.buildTerminalToken(a),{indentTokenName:c,dedentTokenName:d,whitespaceTokenName:e}=this.options;return b.name===c?this.indentTokenType:b.name===d?this.dedentTokenType:b.name===e?m$({name:e,pattern:this.whitespaceRegExp,group:mP.SKIPPED}):b}flushRemainingDedents(a){let b=[];for(;this.indentationStack.length>1;)b.push(this.createIndentationTokenInstance(this.dedentTokenType,a,"",a.length)),this.indentationStack.pop();return this.indentationStack=[0],b}},vk=class extends uz{static{bJ(this,"IndentationAwareLexer")}constructor(a){if(super(a),a.parser.TokenBuilder instanceof vj)this.indentationTokenBuilder=a.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(a,b=uy){let c=super.tokenize(a),d=c.report;b?.mode==="full"&&c.tokens.push(...d.remainingDedents),d.remainingDedents=[];let{indentTokenType:e,dedentTokenType:f}=this.indentationTokenBuilder,g=e.tokenTypeIdx,h=f.tokenTypeIdx,i=[],j=c.tokens.length-1;for(let a=0;a<j;a++){let b=c.tokens[a],d=c.tokens[a+1];if(b.tokenTypeIdx===g&&d.tokenTypeIdx===h){a++;continue}i.push(b)}return j>=0&&i.push(c.tokens[j]),c.tokens=i,c}},vl={};bL(vl,{AstUtils:()=>cQ,BiMap:()=>t_,Cancellation:()=>tA,ContextCache:()=>t7,CstUtils:()=>cz,DONE_RESULT:()=>cN,Deferred:()=>tJ,Disposable:()=>a6,DisposableCache:()=>t5,DocumentCache:()=>t8,EMPTY_STREAM:()=>cM,ErrorWithLocation:()=>e4,GrammarUtils:()=>e3,MultiMap:()=>t$,OperationCancelled:()=>tG,Reduction:()=>aV,RegExpUtils:()=>e7,SimpleCache:()=>t6,StreamImpl:()=>cJ,TreeStreamImpl:()=>cP,URI:()=>tQ,UriTrie:()=>tS,UriUtils:()=>a2,WorkspaceCache:()=>t9,assertCondition:()=>e6,assertUnreachable:()=>e5,delayNextTick:()=>tB,interruptAndCheck:()=>tI,isOperationCancelled:()=>tH,loadGrammarFromJson:()=>vr,setInterruptionPeriod:()=>tF,startCancelableOperation:()=>tE,stream:()=>cO}),bN(vl,up);var vm=class{static{bJ(this,"EmptyFileSystemProvider")}stat(a){throw Error("No file system is available.")}statSync(a){throw Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw Error("No file system is available.")}readBinarySync(){throw Error("No file system is available.")}readFile(){throw Error("No file system is available.")}readFileSync(){throw Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},vn={fileSystemProvider:bJ(()=>new vm,"fileSystemProvider")},vo={Grammar:bJ(()=>void 0,"Grammar"),LanguageMetaData:bJ(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},vp={AstReflection:bJ(()=>new eI,"AstReflection")};function vq(){let a=vb(va(vn),vp),b=vb(u9({shared:a}),vo);return a.ServiceRegistry.register(b),b}function vr(a){let b=vq(),c=b.serializer.JsonSerializer.deserialize(a);return b.shared.workspace.LangiumDocumentFactory.fromModel(c,tQ.parse(`memory:/${c.name??"grammar"}.langium`)),c}bJ(vq,"createMinimalGrammarServices"),bJ(vr,"loadGrammarFromJson"),bN(cy,vl);var vs=class{static{bJ(this,"DefaultLangiumProfiler")}constructor(a){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=a??new Set(this.allCategories),this.records=new t$}isActive(a){return this.activeCategories.has(a)}start(...a){a?a.forEach(a=>this.activeCategories.add(a)):this.activeCategories=new Set(this.allCategories)}stop(...a){a?a.forEach(a=>this.activeCategories.delete(a)):this.activeCategories.clear()}createTask(a,b){if(!this.isActive(a))throw Error(`Category "${a}" is not active.`);return console.log(`Creating profiling task for '${a}.${b}'.`),new vt(b=>this.records.add(a,this.dumpRecord(a,b)),b)}dumpRecord(a,b){console.info(`Task ${a}.${b.identifier} executed in ${b.duration.toFixed(2)}ms and ended at ${b.date.toISOString()}`);let c=[];for(let a of b.entries.keys()){let d=b.entries.get(a),e=d.reduce((a,b)=>a+b);c.push({name:`${b.identifier}.${a}`,count:d.length,duration:e})}let d=b.duration-c.map(a=>a.duration).reduce((a,b)=>a+b,0);function e(a){return Math.round(100*a)/100}return c.push({name:b.identifier,count:1,duration:d}),c.sort((a,b)=>b.duration-a.duration),bJ(e,"Round"),console.table(c.map(a=>({Element:a.name,Count:a.count,"Self %":e(100*a.duration/b.duration),"Time (ms)":e(a.duration)}))),b}getRecords(...a){return 0===a.length?this.records.values():this.records.entries().filter(b=>a.some(a=>a===b[0])).flatMap(a=>a[1])}},vt=class{static{bJ(this,"ProfilingTask")}constructor(a,b){this.stack=[],this.entries=new t$,this.addRecord=a,this.identifier=b}start(){if(void 0!==this.startTime)throw Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(void 0===this.startTime)throw Error(`Task "${this.identifier}" was not started.`);if(0!==this.stack.length)throw Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(a=>a.id).join(", ")}.`);let a={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(a),this.startTime=void 0,this.entries.clear()}startSubTask(a){this.stack.push({id:a,start:performance.now(),content:0})}stopSubTask(a){let b=this.stack.pop();if(!b)throw Error(`Task "${this.identifier}.${a}" was not started.`);if(b.id!==a)throw Error(`Sub-Task "${b.id}" is not already stopped.`);let c=performance.now()-b.start;void 0!==this.stack.at(-1)&&(this.stack[this.stack.length-1].content+=c);let d=c-b.content;this.entries.add(a,d)}};(a9||(a9={})).Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[\w ]+)\]/},(ba||(ba={})).Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bb||(bb={})).Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/},(bc||(bc={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/},(bd||(bd={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(be||(be={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bf||(bf={})).Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bg||(bg={})).Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(bh||(bh={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/},(bi||(bi={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/},(bj||(bj={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//},(bk||(bk={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/},(bl||(bl={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/},(bm||(bm={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/},(bn||(bn={})).Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},a9.Terminals,ba.Terminals,bb.Terminals,bc.Terminals,bd.Terminals,be.Terminals,bf.Terminals,bg.Terminals,bh.Terminals,bi.Terminals,bj.Terminals,bk.Terminals,bm.Terminals,bl.Terminals,bn.Terminals;var vu="AbnfPrimary",vv="Architecture";bJ(function(a){return v_.isInstance(a,vv)},"isArchitecture");var vw="Axis",vx="Branch";bJ(function(a){return v_.isInstance(a,vx)},"isBranch");var vy="Commit";bJ(function(a){return v_.isInstance(a,vy)},"isCommit");var vz="Cynefin";bJ(function(a){return v_.isInstance(a,vz)},"isCynefin");var vA="DomainBlock";bJ(function(a){return v_.isInstance(a,vA)},"isDomainBlock");var vB="DomainItem";bJ(function(a){return v_.isInstance(a,vB)},"isDomainItem");var vC="EbnfPostfix",vD="EbnfPrimary",vE="EmDataEntity",vF="EmFrame",vG="EmModelEntity";bJ(function(a){return"rmo"===a||"readmodel"===a||"ui"===a||"cmd"===a||"command"===a||"evt"===a||"event"===a||"pcr"===a||"processor"===a},"isEmModelEntityType");var vH="EmResetFrame";function vI(a){return v_.isInstance(a,vH)}bJ(vI,"isEmResetFrame");var vJ="GitGraph";bJ(function(a){return v_.isInstance(a,vJ)},"isGitGraph");var vK="Info";bJ(function(a){return v_.isInstance(a,vK)},"isInfo");var vL="Item",vM="Merge";bJ(function(a){return v_.isInstance(a,vM)},"isMerge");var vN="Packet";bJ(function(a){return v_.isInstance(a,vN)},"isPacket");var vO="PacketBlock";bJ(function(a){return v_.isInstance(a,vO)},"isPacketBlock");var vP="PegPrimary";bJ(function(a){return v_.isInstance(a,"Pie")},"isPie");var vQ="PieSection";bJ(function(a){return v_.isInstance(a,vQ)},"isPieSection");var vR="Railroad";bJ(function(a){return v_.isInstance(a,vR)},"isRailroad");var vS="RailroadAbnf";bJ(function(a){return v_.isInstance(a,vS)},"isRailroadAbnf");var vT="RailroadEbnf";bJ(function(a){return v_.isInstance(a,vT)},"isRailroadEbnf");var vU="RailroadExpression",vV="RailroadPeg";bJ(function(a){return v_.isInstance(a,vV)},"isRailroadPeg");var vW="Statement",vX="Transition";bJ(function(a){return v_.isInstance(a,vX)},"isTransition");var vY="Treemap";bJ(function(a){return v_.isInstance(a,vY)},"isTreemap");var vZ="Wardley";bJ(function(a){return v_.isInstance(a,vZ)},"isWardley");var v$=class extends cF{constructor(){super(...arguments),this.types={AbnfAlternation:{name:"AbnfAlternation",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:"AbnfConcatenation",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},AbnfElement:{name:"AbnfElement",properties:{primary:{name:"primary"},repeat:{name:"repeat"}},superTypes:[]},AbnfGroup:{name:"AbnfGroup",properties:{element:{name:"element"}},superTypes:[vu]},AbnfNumVal:{name:"AbnfNumVal",properties:{value:{name:"value"}},superTypes:[vu]},AbnfOptionalGroup:{name:"AbnfOptionalGroup",properties:{element:{name:"element"}},superTypes:[vu]},AbnfPrimary:{name:vu,properties:{},superTypes:[]},AbnfRule:{name:"AbnfRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},AbnfRuleName:{name:"AbnfRuleName",properties:{name:{name:"name"}},superTypes:[vu]},AbnfStringLiteral:{name:"AbnfStringLiteral",properties:{value:{name:"value"}},superTypes:[vu]},Accelerator:{name:"Accelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Alignment:{name:"Alignment",properties:{direction:{name:"direction"},members:{name:"members",defaultValue:[]}},superTypes:[]},Anchor:{name:"Anchor",properties:{evolution:{name:"evolution"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Annotation:{name:"Annotation",properties:{number:{name:"number"},text:{name:"text"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Annotations:{name:"Annotations",properties:{x:{name:"x"},y:{name:"y"}},superTypes:[]},Architecture:{name:vv,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},alignments:{name:"alignments",defaultValue:[]},edges:{name:"edges",defaultValue:[]},groups:{name:"groups",defaultValue:[]},junctions:{name:"junctions",defaultValue:[]},services:{name:"services",defaultValue:[]},title:{name:"title"}},superTypes:[]},Axis:{name:vw,properties:{label:{name:"label"},name:{name:"name"}},superTypes:[]},Branch:{name:vx,properties:{name:{name:"name"},order:{name:"order"}},superTypes:[vW]},Checkout:{name:"Checkout",properties:{branch:{name:"branch"}},superTypes:[vW]},CherryPicking:{name:"CherryPicking",properties:{id:{name:"id"},parent:{name:"parent"},tags:{name:"tags",defaultValue:[]}},superTypes:[vW]},ClassDefStatement:{name:"ClassDefStatement",properties:{className:{name:"className"},styleText:{name:"styleText"}},superTypes:[]},Commit:{name:vy,properties:{id:{name:"id"},message:{name:"message"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vW]},Common:{name:"Common",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Component:{name:"Component",properties:{decorator:{name:"decorator"},evolution:{name:"evolution"},inertia:{name:"inertia",defaultValue:!1},label:{name:"label"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Curve:{name:"Curve",properties:{entries:{name:"entries",defaultValue:[]},label:{name:"label"},name:{name:"name"}},superTypes:[]},Cynefin:{name:vz,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},domains:{name:"domains",defaultValue:[]},title:{name:"title"},transitions:{name:"transitions",defaultValue:[]}},superTypes:[]},Deaccelerator:{name:"Deaccelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Decorator:{name:"Decorator",properties:{strategy:{name:"strategy"}},superTypes:[]},Direction:{name:"Direction",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},dir:{name:"dir"},statements:{name:"statements",defaultValue:[]},title:{name:"title"}},superTypes:[vJ]},DomainBlock:{name:vA,properties:{domain:{name:"domain"},items:{name:"items",defaultValue:[]}},superTypes:[]},DomainItem:{name:vB,properties:{label:{name:"label"}},superTypes:[]},EbnfChoice:{name:"EbnfChoice",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:"EbnfExceptionPostfix",properties:{except:{name:"except"}},superTypes:[vC]},EbnfGroup:{name:"EbnfGroup",properties:{element:{name:"element"}},superTypes:[vD]},EbnfNonTerminal:{name:"EbnfNonTerminal",properties:{name:{name:"name"}},superTypes:[vD]},EbnfOneOrMorePostfix:{name:"EbnfOneOrMorePostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},EbnfOptional:{name:"EbnfOptional",properties:{element:{name:"element"}},superTypes:[vD]},EbnfOptionalPostfix:{name:"EbnfOptionalPostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},EbnfPostfix:{name:vC,properties:{},superTypes:[]},EbnfPrimary:{name:vD,properties:{},superTypes:[]},EbnfRepetition:{name:"EbnfRepetition",properties:{element:{name:"element"}},superTypes:[vD]},EbnfRule:{name:"EbnfRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},EbnfSequence:{name:"EbnfSequence",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:"EbnfSpecial",properties:{text:{name:"text"}},superTypes:[vD]},EbnfTerm:{name:"EbnfTerm",properties:{base:{name:"base"},postfixes:{name:"postfixes",defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:"EbnfTerminal",properties:{value:{name:"value"}},superTypes:[vD]},EbnfZeroOrMorePostfix:{name:"EbnfZeroOrMorePostfix",properties:{operator:{name:"operator"}},superTypes:[vC]},Edge:{name:"Edge",properties:{lhsDir:{name:"lhsDir"},lhsGroup:{name:"lhsGroup",defaultValue:!1},lhsId:{name:"lhsId"},lhsInto:{name:"lhsInto",defaultValue:!1},rhsDir:{name:"rhsDir"},rhsGroup:{name:"rhsGroup",defaultValue:!1},rhsId:{name:"rhsId"},rhsInto:{name:"rhsInto",defaultValue:!1},title:{name:"title"}},superTypes:[]},EmDataEntity:{name:vE,properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},name:{name:"name"}},superTypes:[]},EmFrame:{name:vF,properties:{},superTypes:[]},EmGwt:{name:"EmGwt",properties:{givenStatements:{name:"givenStatements",defaultValue:[]},sourceFrame:{name:"sourceFrame",referenceType:vF},thenStatements:{name:"thenStatements",defaultValue:[]},whenStatements:{name:"whenStatements",defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:"EmGwtStatement",properties:{entityIdentifier:{name:"entityIdentifier",referenceType:vG}},superTypes:[]},EmModelEntity:{name:vG,properties:{name:{name:"name"}},superTypes:[]},EmNoteEntity:{name:"EmNoteEntity",properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},sourceFrame:{name:"sourceFrame",referenceType:vF}},superTypes:[]},EmResetFrame:{name:vH,properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vE},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vF}},superTypes:[vF]},EmTimeFrame:{name:"EmTimeFrame",properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vE},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vF}},superTypes:[vF]},Entry:{name:"Entry",properties:{axis:{name:"axis",referenceType:vw},value:{name:"value"}},superTypes:[]},EventModel:{name:"EventModel",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},dataEntities:{name:"dataEntities",defaultValue:[]},frames:{name:"frames",defaultValue:[]},gwtEntities:{name:"gwtEntities",defaultValue:[]},modelEntities:{name:"modelEntities",defaultValue:[]},noteEntities:{name:"noteEntities",defaultValue:[]},title:{name:"title"}},superTypes:[]},Evolution:{name:"Evolution",properties:{stages:{name:"stages",defaultValue:[]}},superTypes:[]},EvolutionStage:{name:"EvolutionStage",properties:{boundary:{name:"boundary"},name:{name:"name"},secondName:{name:"secondName"}},superTypes:[]},Evolve:{name:"Evolve",properties:{component:{name:"component"},target:{name:"target"}},superTypes:[]},GitGraph:{name:vJ,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},statements:{name:"statements",defaultValue:[]},title:{name:"title"}},superTypes:[]},Group:{name:"Group",properties:{icon:{name:"icon"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Info:{name:vK,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Item:{name:vL,properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[]},Junction:{name:"Junction",properties:{id:{name:"id"},in:{name:"in"}},superTypes:[]},Label:{name:"Label",properties:{negX:{name:"negX",defaultValue:!1},negY:{name:"negY",defaultValue:!1},offsetX:{name:"offsetX"},offsetY:{name:"offsetY"}},superTypes:[]},Leaf:{name:"Leaf",properties:{classSelector:{name:"classSelector"},name:{name:"name"},value:{name:"value"}},superTypes:[vL]},Link:{name:"Link",properties:{arrow:{name:"arrow"},from:{name:"from"},fromPort:{name:"fromPort"},linkLabel:{name:"linkLabel"},to:{name:"to"},toPort:{name:"toPort"}},superTypes:[]},Merge:{name:vM,properties:{branch:{name:"branch"},id:{name:"id"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vW]},Note:{name:"Note",properties:{evolution:{name:"evolution"},text:{name:"text"},visibility:{name:"visibility"}},superTypes:[]},Option:{name:"Option",properties:{name:{name:"name"},value:{name:"value",defaultValue:!1}},superTypes:[]},Packet:{name:vN,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},blocks:{name:"blocks",defaultValue:[]},title:{name:"title"}},superTypes:[]},PacketBlock:{name:vO,properties:{bits:{name:"bits"},end:{name:"end"},label:{name:"label"},start:{name:"start"}},superTypes:[]},PegAny:{name:"PegAny",properties:{dot:{name:"dot"}},superTypes:[vP]},PegGroup:{name:"PegGroup",properties:{element:{name:"element"}},superTypes:[vP]},PegIdentifier:{name:"PegIdentifier",properties:{name:{name:"name"}},superTypes:[vP]},PegLiteral:{name:"PegLiteral",properties:{value:{name:"value"}},superTypes:[vP]},PegOrderedChoice:{name:"PegOrderedChoice",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[]},PegPrefix:{name:"PegPrefix",properties:{operator:{name:"operator"},suffix:{name:"suffix"}},superTypes:[]},PegPrimary:{name:vP,properties:{},superTypes:[]},PegRule:{name:"PegRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},PegSequence:{name:"PegSequence",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[]},PegSuffix:{name:"PegSuffix",properties:{operator:{name:"operator"},primary:{name:"primary"}},superTypes:[]},Pie:{name:"Pie",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},sections:{name:"sections",defaultValue:[]},showData:{name:"showData",defaultValue:!1},title:{name:"title"}},superTypes:[]},PieSection:{name:vQ,properties:{label:{name:"label"},value:{name:"value"}},superTypes:[]},Pipeline:{name:"Pipeline",properties:{components:{name:"components",defaultValue:[]},parent:{name:"parent"}},superTypes:[]},PipelineComponent:{name:"PipelineComponent",properties:{evolution:{name:"evolution"},label:{name:"label"},name:{name:"name"}},superTypes:[]},Radar:{name:"Radar",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},axes:{name:"axes",defaultValue:[]},curves:{name:"curves",defaultValue:[]},options:{name:"options",defaultValue:[]},title:{name:"title"}},superTypes:[]},Railroad:{name:vR,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadAbnf:{name:vS,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadChoiceExpr:{name:"RailroadChoiceExpr",properties:{alternatives:{name:"alternatives",defaultValue:[]}},superTypes:[vU]},RailroadEbnf:{name:vT,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadExpression:{name:vU,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:"RailroadNonTerminalExpr",properties:{name:{name:"name"}},superTypes:[vU]},RailroadOneOrMoreExpr:{name:"RailroadOneOrMoreExpr",properties:{element:{name:"element"}},superTypes:[vU]},RailroadOptionalExpr:{name:"RailroadOptionalExpr",properties:{element:{name:"element"}},superTypes:[vU]},RailroadPeg:{name:vV,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},rules:{name:"rules",defaultValue:[]},title:{name:"title"}},superTypes:[]},RailroadRule:{name:"RailroadRule",properties:{definition:{name:"definition"},name:{name:"name"}},superTypes:[]},RailroadSequenceExpr:{name:"RailroadSequenceExpr",properties:{elements:{name:"elements",defaultValue:[]}},superTypes:[vU]},RailroadSpecialExpr:{name:"RailroadSpecialExpr",properties:{text:{name:"text"}},superTypes:[vU]},RailroadTerminalExpr:{name:"RailroadTerminalExpr",properties:{value:{name:"value"}},superTypes:[vU]},RailroadZeroOrMoreExpr:{name:"RailroadZeroOrMoreExpr",properties:{element:{name:"element"}},superTypes:[vU]},Section:{name:"Section",properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[vL]},Service:{name:"Service",properties:{icon:{name:"icon"},iconText:{name:"iconText"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Size:{name:"Size",properties:{height:{name:"height"},width:{name:"width"}},superTypes:[]},Statement:{name:vW,properties:{},superTypes:[]},Transition:{name:vX,properties:{from:{name:"from"},label:{name:"label"},to:{name:"to"}},superTypes:[]},TreeNode:{name:"TreeNode",properties:{classAnnotation:{name:"classAnnotation"},descAnnotation:{name:"descAnnotation"},iconAnnotation:{name:"iconAnnotation"},indent:{name:"indent"},name:{name:"name"}},superTypes:[]},TreeView:{name:"TreeView",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},nodes:{name:"nodes",defaultValue:[]},title:{name:"title"}},superTypes:[]},Treemap:{name:vY,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"},TreemapRows:{name:"TreemapRows",defaultValue:[]}},superTypes:[]},TreemapRow:{name:"TreemapRow",properties:{indent:{name:"indent"},item:{name:"item"}},superTypes:[]},Wardley:{name:vZ,properties:{accDescr:{name:"accDescr"},accelerators:{name:"accelerators",defaultValue:[]},accTitle:{name:"accTitle"},anchors:{name:"anchors",defaultValue:[]},annotation:{name:"annotation",defaultValue:[]},annotations:{name:"annotations",defaultValue:[]},components:{name:"components",defaultValue:[]},deaccelerators:{name:"deaccelerators",defaultValue:[]},evolution:{name:"evolution"},evolves:{name:"evolves",defaultValue:[]},links:{name:"links",defaultValue:[]},notes:{name:"notes",defaultValue:[]},pipelines:{name:"pipelines",defaultValue:[]},size:{name:"size"},title:{name:"title"}},superTypes:[]}}}static{bJ(this,"MermaidAstReflection")}},v_=new v$,v0=bJ(()=>bo??(bo=vr('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$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@12"},"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@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),v1=bJ(()=>bp??(bp=vr('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"--\x3e"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),v2=bJ(()=>bq??(bq=vr('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),v3=bJ(()=>br??(br=vr('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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"}]}},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),v4=bJ(()=>bs??(bs=vr('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","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":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),v5=bJ(()=>bt??(bt=vr('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),v6=bJ(()=>bu??(bu=vr('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),v7=bJ(()=>bv??(bv=vr('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","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":"*"}]},"fragment":false,"parameters":[]},{"$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":"]"}]},"entry":false,"parameters":[]},{"$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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"*"}]}]},"entry":false,"parameters":[]},{"$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,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$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":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),v8=bJ(()=>bw??(bw=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),v9=bJ(()=>bx??(bx=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),wa=bJ(()=>by??(by=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),wb=bJ(()=>bz??(bz=vr('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$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"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),wc=bJ(()=>bA??(bA=vr('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","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":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"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@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"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]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$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@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"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":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"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@15"}}},"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":[]}],"imports":[],"types":[],"$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 */"}')),"TreemapGrammarGrammar"),wd=bJ(()=>bB??(bB=vr('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","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":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),we=bJ(()=>bC??(bC=vr('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"--\x3e"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),wf={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wg={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wh={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wi={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wj={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wk={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wl={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wm={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wn={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wo={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wp={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wq={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wr={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ws={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wt={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wu={AstReflection:bJ(()=>new v$,"AstReflection")},wv={Grammar:bJ(()=>v0(),"Grammar"),LanguageMetaData:bJ(()=>wf,"LanguageMetaData"),parser:{}},ww={Grammar:bJ(()=>v1(),"Grammar"),LanguageMetaData:bJ(()=>wg,"LanguageMetaData"),parser:{}},wx={Grammar:bJ(()=>v2(),"Grammar"),LanguageMetaData:bJ(()=>wh,"LanguageMetaData"),parser:{}},wy={Grammar:bJ(()=>v3(),"Grammar"),LanguageMetaData:bJ(()=>wi,"LanguageMetaData"),parser:{}},wz={Grammar:bJ(()=>v4(),"Grammar"),LanguageMetaData:bJ(()=>wj,"LanguageMetaData"),parser:{}},wA={Grammar:bJ(()=>v5(),"Grammar"),LanguageMetaData:bJ(()=>wk,"LanguageMetaData"),parser:{}},wB={Grammar:bJ(()=>v6(),"Grammar"),LanguageMetaData:bJ(()=>wl,"LanguageMetaData"),parser:{}},wC={Grammar:bJ(()=>v7(),"Grammar"),LanguageMetaData:bJ(()=>wm,"LanguageMetaData"),parser:{}},wD={Grammar:bJ(()=>v8(),"Grammar"),LanguageMetaData:bJ(()=>wn,"LanguageMetaData"),parser:{}},wE={Grammar:bJ(()=>v9(),"Grammar"),LanguageMetaData:bJ(()=>wo,"LanguageMetaData"),parser:{}},wF={Grammar:bJ(()=>wa(),"Grammar"),LanguageMetaData:bJ(()=>wp,"LanguageMetaData"),parser:{}},wG={Grammar:bJ(()=>wb(),"Grammar"),LanguageMetaData:bJ(()=>wq,"LanguageMetaData"),parser:{}},wH={Grammar:bJ(()=>wc(),"Grammar"),LanguageMetaData:bJ(()=>wr,"LanguageMetaData"),parser:{}},wI={Grammar:bJ(()=>wd(),"Grammar"),LanguageMetaData:bJ(()=>ws,"LanguageMetaData"),parser:{}},wJ={Grammar:bJ(()=>we(),"Grammar"),LanguageMetaData:bJ(()=>wt,"LanguageMetaData"),parser:{}},wK={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},wL=class extends tz{static{bJ(this,"AbstractMermaidValueConverter")}runConverter(a,b,c){let d=this.runCommonConverter(a,b,c);return(void 0===d&&(d=this.runCustomConverter(a,b,c)),void 0===d)?super.runConverter(a,b,c):d}runCommonConverter(a,b,c){let d=wK[a.name];if(void 0===d)return;let e=d.exec(b);if(null!==e){if(void 0!==e[1])return e[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==e[2])return e[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},wM=class extends wL{static{bJ(this,"CommonValueConverter")}runCustomConverter(a,b,c){}},wN=class extends ty{static{bJ(this,"AbstractMermaidTokenBuilder")}constructor(a){super(),this.keywords=new Set(a)}buildKeywordTokens(a,b,c){let d=super.buildKeywordTokens(a,b,c);return d.forEach(a=>{this.keywords.has(a.name)&&void 0!==a.PATTERN&&(a.PATTERN=RegExp(a.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),d}};(class extends wN{static{bJ(this,"CommonTokenBuilder")}})},8903:(a,b,c)=>{c.d(b,{S:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},f=class extends d.dg{static{(0,d.K2)(this,"ArchitectureValueConverter")}runCustomConverter(a,b,c){if("ARCH_ICON"===a.name)return b.replace(/[()]/g,"").trim();if("ARCH_TEXT_ICON"===a.name)return b.replace(/["()]/g,"");if("ARCH_TITLE"===a.name){let a=b.replace(/^\[|]$/g,"").trim();return(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))&&(a=(a=a.slice(1,-1)).replace(/\\"/g,'"').replace(/\\'/g,"'")),a.trim()}}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.wV,g);return b.ServiceRegistry.register(c),{shared:b,Architecture:c}}(0,d.K2)(h,"createArchitectureServices")},11377:(a,b,c)=>{c.d(b,{I:()=>h});var d=c(7274),e=class extends d.dg{static{(0,d.K2)(this,"TreeViewValueConverter")}runCustomConverter(a,b,c){if("INDENTATION"===a.name)return b?.length||0;if("QUOTED_NAME"===a.name)return b.substring(1,b.length-1);if("BARE_NAME"===a.name)return b.replace(/[\t ]+$/,"");if("CLASS_ANNOTATION"===a.name)return b.trim().substring(3).trim();if("ICON_ANNOTATION"===a.name){let a=b.trim();return a.substring(5,a.length-1)}if("DESC_ANNOTATION"===a.name)return b.trim().substring(2).trim()}},f=class extends d.mR{static{(0,d.K2)(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},g={parser:{TokenBuilder:(0,d.K2)(()=>new f,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new e,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.CZ,g);return b.ServiceRegistry.register(c),{shared:b,TreeView:c}}(0,d.K2)(h,"createTreeViewServices")},17693:(a,b,c)=>{c.d(b,{s:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},f=class extends d.dg{static{(0,d.K2)(this,"RailroadAbnfValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return a.slice(1,-1)}return d}runCustomConverter(a,b,c){if("ABNF_STRING"===a.name)return b.slice(1,-1)}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.oI,g);return b.ServiceRegistry.register(c),{shared:b,RailroadAbnf:c}}(0,d.K2)(h,"createRailroadAbnfServices")},28097:(a,b,c)=>{c.d(b,{f:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Bg,f);return b.ServiceRegistry.register(c),{shared:b,Radar:c}}(0,d.K2)(g,"createRadarServices")},29518:(a,b,c)=>{c.d(b,{P:()=>i});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},f=(0,d.K2)(a=>{let b=a.slice(1,-1),c="";for(let a=0;a<b.length;a++){let d=b[a];if("\\"===d&&a+1<b.length){let d=b[++a];switch(d){case"n":c+="\n";break;case"r":c+="\r";break;case"t":c+=" ";break;default:c+=d}continue}c+=d}return c},"decodeEscapedString"),g=class extends d.dg{static{(0,d.K2)(this,"RailroadPegValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return f(a)}return d}runCustomConverter(a,b,c){if("PEG_STRING"===a.name)return f(b)}},h={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")}};function i(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.dj,h);return b.ServiceRegistry.register(c),{shared:b,RailroadPeg:c}}(0,d.K2)(i,"createRailroadPegServices")},42067:(a,b,c)=>{c.d(b,{g:()=>n});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},f=new Set(["cmd","command"]),g=new Set(["evt","event"]),h=new Set(["rmo","readmodel"]),i=new Set(["pcr","processor"]),j=new Set(["ui"]);function k(a){let b=a.validation.EventModelingValidator,c=a.validation.ValidationRegistry;if(c){let a={EmTimeFrame:b.checkSourceFrameTypes.bind(b),EmResetFrame:b.checkSourceFrameTypes.bind(b)};c.register(a,b)}}(0,d.K2)(k,"registerValidationChecks");var l=class{static{(0,d.K2)(this,"EventModelingValidator")}checkSourceFrameTypes(a,b){0!==a.sourceFrames.length&&(f.has(a.modelEntityType)?this.validateSources(a,new Set([...j,...i]),"command","ui or processor",b):g.has(a.modelEntityType)?this.validateSources(a,f,"event","command",b):h.has(a.modelEntityType)?this.validateSources(a,g,"read model","event",b):i.has(a.modelEntityType)?this.validateSources(a,h,"processor","read model",b):j.has(a.modelEntityType)&&this.validateSources(a,h,"ui","read model",b))}validateSources(a,b,c,d,e){for(let f of a.sourceFrames){let g=f.ref;void 0===g||b.has(g.modelEntityType)||e("error",`A ${c} can only receive input from a ${d}, not from '${g.modelEntityType}'.`,{node:a,property:"sourceFrames"})}}},m={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")},validation:{EventModelingValidator:(0,d.K2)(()=>new l,"EventModelingValidator")}};function n(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.x0,m);return b.ServiceRegistry.register(c),k(c),{shared:b,EventModel:c}}(0,d.K2)(n,"createEventModelingServices")},70304:(a,b,c)=>{c.d(b,{t:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Jn,f);return b.ServiceRegistry.register(c),{shared:b,Cynefin:c}}(0,d.K2)(g,"createCynefinServices")},77547:(a,b,c)=>{c.d(b,{b:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.d$,f);return b.ServiceRegistry.register(c),{shared:b,GitGraph:c}}(0,d.K2)(g,"createGitGraphServices")},78539:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(7274),e=class extends d.dg{static{(0,d.K2)(this,"WardleyValueConverter")}runCustomConverter(a,b,c){return"LINK_LABEL"===a.name.toUpperCase()?b.substring(1).trim():void 0}},f={parser:{ValueConverter:(0,d.K2)(()=>new e,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.Xr,f);return b.ServiceRegistry.register(c),{shared:b,Wardley:c}}(0,d.K2)(g,"createWardleyServices")},87633:(a,b,c)=>{c.d(b,{v:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.FZ,f);return b.ServiceRegistry.register(c),{shared:b,Info:c}}(0,d.K2)(g,"createInfoServices")},87974:(a,b,c)=>{c.d(b,{W:()=>i});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},f=(0,d.K2)(a=>{let b=a.slice(1,-1),c="";for(let a=0;a<b.length;a++){let d=b[a];if("\\"===d&&a+1<b.length){let d=b[++a];switch(d){case"n":c+="\n";break;case"r":c+="\r";break;case"t":c+=" ";break;default:c+=d}continue}c+=d}return c},"decodeEscapedString"),g=class extends d.dg{static{(0,d.K2)(this,"RailroadEbnfValueConverter")}runConverter(a,b,c){let d=super.runConverter(a,b,c);if("TITLE"===a.name&&"string"==typeof d){let a=d.trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))return f(a)}return d}runCustomConverter(a,b,c){return"EBNF_STRING"===a.name?f(b):"EBNF_SPECIAL_SEQUENCE"===a.name?b.slice(1,-1).trim():void 0}},h={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")}};function i(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.U4,h);return b.ServiceRegistry.register(c),{shared:b,RailroadEbnf:c}}(0,d.K2)(i,"createRailroadEbnfServices")},92325:(a,b,c)=>{c.d(b,{F5:()=>h.F5,Pz:()=>g.P,WG:()=>e.W,lz:()=>d.l,qg:()=>k,sB:()=>f.s,zg:()=>l}),c(28097);var d=c(4231),e=c(87974),f=c(17693),g=c(29518);c(93401),c(78539),c(70304),c(77547),c(87633),c(96763),c(96729),c(11377),c(8903),c(42067);var h=c(7274),i={},j={info:(0,h.K2)(async()=>{let{createInfoServices:a}=await c.e(7233).then(c.bind(c,7233));i.info=a().Info.parser.LangiumParser},"info"),packet:(0,h.K2)(async()=>{let{createPacketServices:a}=await c.e(7561).then(c.bind(c,37561));i.packet=a().Packet.parser.LangiumParser},"packet"),pie:(0,h.K2)(async()=>{let{createPieServices:a}=await c.e(3894).then(c.bind(c,23894));i.pie=a().Pie.parser.LangiumParser},"pie"),treeView:(0,h.K2)(async()=>{let{createTreeViewServices:a}=await c.e(2744).then(c.bind(c,82744));i.treeView=a().TreeView.parser.LangiumParser},"treeView"),architecture:(0,h.K2)(async()=>{let{createArchitectureServices:a}=await c.e(2106).then(c.bind(c,12106));i.architecture=a().Architecture.parser.LangiumParser},"architecture"),gitGraph:(0,h.K2)(async()=>{let{createGitGraphServices:a}=await c.e(9486).then(c.bind(c,19486));i.gitGraph=a().GitGraph.parser.LangiumParser},"gitGraph"),eventmodeling:(0,h.K2)(async()=>{let{createEventModelingServices:a}=await c.e(2903).then(c.bind(c,12903));i.eventmodeling=a().EventModel.parser.LangiumParser},"eventmodeling"),radar:(0,h.K2)(async()=>{let{createRadarServices:a}=await c.e(4372).then(c.bind(c,54372));i.radar=a().Radar.parser.LangiumParser},"radar"),railroad:(0,h.K2)(async()=>{let{createRailroadServices:a}=await c.e(8294).then(c.bind(c,8294));i.railroad=a().Railroad.parser.LangiumParser},"railroad"),railroadEbnf:(0,h.K2)(async()=>{let{createRailroadEbnfServices:a}=await c.e(1515).then(c.bind(c,41515));i.railroadEbnf=a().RailroadEbnf.parser.LangiumParser},"railroadEbnf"),railroadAbnf:(0,h.K2)(async()=>{let{createRailroadAbnfServices:a}=await c.e(9509).then(c.bind(c,49509));i.railroadAbnf=a().RailroadAbnf.parser.LangiumParser},"railroadAbnf"),railroadPeg:(0,h.K2)(async()=>{let{createRailroadPegServices:a}=await c.e(2190).then(c.bind(c,62190));i.railroadPeg=a().RailroadPeg.parser.LangiumParser},"railroadPeg"),treemap:(0,h.K2)(async()=>{let{createTreemapServices:a}=await c.e(5029).then(c.bind(c,5029));i.treemap=a().Treemap.parser.LangiumParser},"treemap"),wardley:(0,h.K2)(async()=>{let{createWardleyServices:a}=await c.e(7872).then(c.bind(c,57872));i.wardley=a().Wardley.parser.LangiumParser},"wardley"),cynefin:(0,h.K2)(async()=>{let{createCynefinServices:a}=await c.e(835).then(c.bind(c,40835));i.cynefin=a().Cynefin.parser.LangiumParser},"cynefin")};async function k(a,b){let c=j[a];if(!c)throw Error(`Unknown diagram type: ${a}`);i[a]||await c();let d=i[a].parse(b);if(d.lexerErrors.length>0||d.parserErrors.length>0)throw new l(d);return d.value}(0,h.K2)(k,"parse");var l=class extends Error{constructor(a){const b=a.lexerErrors.map(a=>{let b=void 0===a.line||isNaN(a.line)?"?":a.line,c=void 0===a.column||isNaN(a.column)?"?":a.column;return`Lexer error on line ${b}, column ${c}: ${a.message}`}).join("\n"),c=a.parserErrors.map(a=>{let b=void 0===a.token.startLine||isNaN(a.token.startLine)?"?":a.token.startLine,c=void 0===a.token.startColumn||isNaN(a.token.startColumn)?"?":a.token.startColumn;return`Parse error on line ${b}, column ${c}: ${a.message}`}).join("\n");super(`Parsing failed: ${b} ${c}`),this.result=a}static{(0,h.K2)(this,"MermaidParseError")}}},93401:(a,b,c)=>{c.d(b,{d:()=>k});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},f=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,g=class extends d.dg{static{(0,d.K2)(this,"TreemapValueConverter")}runCustomConverter(a,b,c){if("NUMBER2"===a.name)return parseFloat(b.replace(/,/g,""));if("SEPARATOR"===a.name)return b.substring(1,b.length-1);if("STRING2"===a.name)return b.substring(1,b.length-1);if("INDENTATION"===a.name)return b.length;if("ClassDef"===a.name){if("string"!=typeof b)return b;let a=f.exec(b);if(a)return{$type:"ClassDefStatement",className:a[1],styleText:a[2]||void 0}}}};function h(a){let b=a.validation.TreemapValidator,c=a.validation.ValidationRegistry;if(c){let a={Treemap:b.checkSingleRoot.bind(b)};c.register(a,b)}}(0,d.K2)(h,"registerValidationChecks");var i=class{static{(0,d.K2)(this,"TreemapValidator")}checkSingleRoot(a,b){let c;for(let d of a.TreemapRows)d.item&&(void 0===c&&void 0===d.indent?c=0:void 0===d.indent?b("error","Multiple root nodes are not allowed in a treemap.",{node:d,property:"item"}):void 0!==c&&c>=parseInt(d.indent,10)&&b("error","Multiple root nodes are not allowed in a treemap.",{node:d,property:"item"}))}},j={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new g,"ValueConverter")},validation:{TreemapValidator:(0,d.K2)(()=>new i,"TreemapValidator")}};function k(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.XE,j);return b.ServiceRegistry.register(c),h(c),{shared:b,Treemap:c}}(0,d.K2)(k,"createTreemapServices")},96729:(a,b,c)=>{c.d(b,{f:()=>h});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},f=class extends d.dg{static{(0,d.K2)(this,"PieValueConverter")}runCustomConverter(a,b,c){if("PIE_SECTION_LABEL"===a.name)return b.replace(/"/g,"").trim()}},g={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new f,"ValueConverter")}};function h(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.D_,g);return b.ServiceRegistry.register(c),{shared:b,Pie:c}}(0,d.K2)(h,"createPieServices")},96763:(a,b,c)=>{c.d(b,{$:()=>g});var d=c(7274),e=class extends d.mR{static{(0,d.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},f={parser:{TokenBuilder:(0,d.K2)(()=>new e,"TokenBuilder"),ValueConverter:(0,d.K2)(()=>new d.Tm,"ValueConverter")}};function g(a=d.DD){let b=(0,d.WQ)((0,d.uM)(a),d.sr),c=(0,d.WQ)((0,d.tG)({shared:b}),d.p5,f);return b.ServiceRegistry.register(c),{shared:b,Packet:c}}(0,d.K2)(g,"createPacketServices")}};
|