@seqyuan/annovibe 0.8.12
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 -0
- package/.next/app-path-routes-manifest.json +40 -0
- package/.next/build-manifest.json +20 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +138 -0
- package/.next/react-loadable-manifest.json +2320 -0
- package/.next/required-server-files.js +343 -0
- package/.next/required-server-files.json +343 -0
- package/.next/routes-manifest.json +292 -0
- package/.next/server/app/_global-error/page.js +32 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +16 -0
- package/.next/server/app/_global-error.rsc +14 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +16 -0
- package/.next/server/app/_not-found.rsc +18 -0
- package/.next/server/app/_not-found.segments/_full.segment.rsc +18 -0
- package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
- package/.next/server/app/_not-found.segments/_index.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/api/agent/[id]/events/route.js +3 -0
- package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/[id]/route.js +1 -0
- package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/new/route.js +1 -0
- package/.next/server/app/api/agent/new/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/all-providers/route.js +1 -0
- package/.next/server/app/api/auth/all-providers/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/login/[provider]/route.js +3 -0
- package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/login/route.js +1 -0
- package/.next/server/app/api/auth/login/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/providers/route.js +1 -0
- package/.next/server/app/api/auth/providers/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/status/route.js +1 -0
- package/.next/server/app/api/auth/status/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/default-cwd/route.js +1 -0
- package/.next/server/app/api/default-cwd/route.js.nft.json +1 -0
- package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/files/[...path]/route.js +6 -0
- package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -0
- package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/harness/route.js +1 -0
- package/.next/server/app/api/harness/route.js.nft.json +1 -0
- package/.next/server/app/api/harness/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/home/route.js +1 -0
- package/.next/server/app/api/home/route.js.nft.json +1 -0
- package/.next/server/app/api/home/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models/route.js +1 -0
- package/.next/server/app/api/models/route.js.nft.json +1 -0
- package/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/discover/route.js +1 -0
- package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/route.js +1 -0
- package/.next/server/app/api/models-config/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/test/route.js +1 -0
- package/.next/server/app/api/models-config/test/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plot-kernels/route.js +1 -0
- package/.next/server/app/api/plot-kernels/route.js.nft.json +1 -0
- package/.next/server/app/api/plot-kernels/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plot-kernels/status/route.js +1 -0
- package/.next/server/app/api/plot-kernels/status/route.js.nft.json +1 -0
- package/.next/server/app/api/plot-kernels/status/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plot-kernels/stop/route.js +1 -0
- package/.next/server/app/api/plot-kernels/stop/route.js.nft.json +1 -0
- package/.next/server/app/api/plot-kernels/stop/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/reports/[id]/route.js +9 -0
- package/.next/server/app/api/reports/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/reports/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/search/route.js +3 -0
- package/.next/server/app/api/search/route.js.nft.json +1 -0
- package/.next/server/app/api/search/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/context/route.js +3 -0
- package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/new/route.js +1 -0
- package/.next/server/app/api/sessions/new/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/new/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/route.js +3 -0
- package/.next/server/app/api/sessions/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/settings/route.js +1 -0
- package/.next/server/app/api/settings/route.js.nft.json +1 -0
- package/.next/server/app/api/settings/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/install/route.js +1 -0
- package/.next/server/app/api/skills/install/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/route.js +6 -0
- package/.next/server/app/api/skills/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/search/route.js +1 -0
- package/.next/server/app/api/skills/search/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/soul/route.js +1 -0
- package/.next/server/app/api/soul/route.js.nft.json +1 -0
- package/.next/server/app/api/soul/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/version/route.js +1 -0
- package/.next/server/app/api/version/route.js.nft.json +1 -0
- package/.next/server/app/api/version/route_client-reference-manifest.js +1 -0
- package/.next/server/app/favicon.ico/route.js +1 -0
- package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
- package/.next/server/app/favicon.ico.body +0 -0
- package/.next/server/app/favicon.ico.meta +1 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +14 -0
- package/.next/server/app/index.rsc +17 -0
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
- package/.next/server/app/index.segments/_full.segment.rsc +17 -0
- package/.next/server/app/index.segments/_head.segment.rsc +6 -0
- package/.next/server/app/index.segments/_index.segment.rsc +5 -0
- package/.next/server/app/index.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/login/page.js +2 -0
- package/.next/server/app/login/page.js.nft.json +1 -0
- package/.next/server/app/login/page_client-reference-manifest.js +1 -0
- package/.next/server/app/login.html +1 -0
- package/.next/server/app/login.meta +15 -0
- package/.next/server/app/login.rsc +22 -0
- package/.next/server/app/login.segments/_full.segment.rsc +22 -0
- package/.next/server/app/login.segments/_head.segment.rsc +6 -0
- package/.next/server/app/login.segments/_index.segment.rsc +5 -0
- package/.next/server/app/login.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +9 -0
- package/.next/server/app/login.segments/login.segment.rsc +5 -0
- package/.next/server/app/page.js +271 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +40 -0
- package/.next/server/chunks/1048.js +1 -0
- package/.next/server/chunks/1367.js +77 -0
- package/.next/server/chunks/1381.js +1 -0
- package/.next/server/chunks/165.js +1 -0
- package/.next/server/chunks/1681.js +215 -0
- package/.next/server/chunks/1703.js +79 -0
- package/.next/server/chunks/1712.js +43 -0
- package/.next/server/chunks/1813.js +1 -0
- package/.next/server/chunks/2325.js +80 -0
- package/.next/server/chunks/258.js +1 -0
- package/.next/server/chunks/2671.js +287 -0
- package/.next/server/chunks/2778.js +1 -0
- package/.next/server/chunks/2943.js +1 -0
- package/.next/server/chunks/3031.js +226 -0
- package/.next/server/chunks/3181.js +1 -0
- package/.next/server/chunks/3451.js +1 -0
- package/.next/server/chunks/3493.js +1 -0
- package/.next/server/chunks/3672.js +1 -0
- package/.next/server/chunks/3701.js +104 -0
- package/.next/server/chunks/4013.js +1 -0
- package/.next/server/chunks/4035.js +80 -0
- package/.next/server/chunks/4248.js +153 -0
- package/.next/server/chunks/4367.js +1 -0
- package/.next/server/chunks/4406.js +141 -0
- package/.next/server/chunks/4741.js +18 -0
- package/.next/server/chunks/4858.js +148 -0
- package/.next/server/chunks/4980.js +1 -0
- package/.next/server/chunks/5155.js +5 -0
- package/.next/server/chunks/5193.js +73 -0
- package/.next/server/chunks/5293.js +166 -0
- package/.next/server/chunks/5409.js +1 -0
- package/.next/server/chunks/5797.js +93 -0
- package/.next/server/chunks/5851.js +36 -0
- package/.next/server/chunks/6206.js +1 -0
- package/.next/server/chunks/6296.js +1 -0
- package/.next/server/chunks/63.js +45 -0
- package/.next/server/chunks/6346.js +1 -0
- package/.next/server/chunks/6406.js +23 -0
- package/.next/server/chunks/642.js +1 -0
- package/.next/server/chunks/6729.js +64 -0
- package/.next/server/chunks/6907.js +115 -0
- package/.next/server/chunks/6980.js +1 -0
- package/.next/server/chunks/7073.js +24 -0
- package/.next/server/chunks/7233.js +24 -0
- package/.next/server/chunks/7270.js +45 -0
- package/.next/server/chunks/7307.js +1 -0
- package/.next/server/chunks/7362.js +9 -0
- package/.next/server/chunks/7567.js +29 -0
- package/.next/server/chunks/7601.js +129 -0
- package/.next/server/chunks/7765.js +1 -0
- package/.next/server/chunks/7890.js +1 -0
- package/.next/server/chunks/8065.js +1 -0
- package/.next/server/chunks/8238.js +34 -0
- package/.next/server/chunks/8276.js +1 -0
- package/.next/server/chunks/8336.js +1 -0
- package/.next/server/chunks/8490.js +1 -0
- package/.next/server/chunks/8916.js +1 -0
- package/.next/server/chunks/9280.js +252 -0
- package/.next/server/chunks/9315.js +1 -0
- package/.next/server/chunks/9537.js +90 -0
- package/.next/server/chunks/966.js +1 -0
- package/.next/server/chunks/9818.js +21 -0
- package/.next/server/chunks/static/media/pdf.worker.min.9df6854a.mjs +6 -0
- package/.next/server/functions-config-manifest.json +14 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/middleware.js +18 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +4 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/chunks/0b9a0da7.9075af772487e743.js +62 -0
- package/.next/static/chunks/1413.922d232de90c0c41.js +115 -0
- package/.next/static/chunks/1643.467a526a1f24f54d.js +24 -0
- package/.next/static/chunks/1852.5543122f11aa7fed.js +1 -0
- package/.next/static/chunks/1960.b1e26436d7a5f586.js +1 -0
- package/.next/static/chunks/2170a4aa.4213bb2183c9cdf9.js +1 -0
- package/.next/static/chunks/2274.6cd173f80a1405a2.js +21 -0
- package/.next/static/chunks/2419.347fdfe3c170854d.js +166 -0
- package/.next/static/chunks/2619.9aac8983f30c7c8a.js +1 -0
- package/.next/static/chunks/2623.d20fabd8e18197c6.js +287 -0
- package/.next/static/chunks/2729.f5365061a849d659.js +34 -0
- package/.next/static/chunks/2821.934bcf60fbdc28c6.js +1 -0
- package/.next/static/chunks/2918becc.abff2ece1de37bc1.js +153 -0
- package/.next/static/chunks/2947.114e51cb06d1c01a.js +23 -0
- package/.next/static/chunks/3079.4c511fa1144e3adf.js +79 -0
- package/.next/static/chunks/3274.208ca44844cd7d95.js +148 -0
- package/.next/static/chunks/3308.465a94263d04bfea.js +73 -0
- package/.next/static/chunks/3325.e4bfe1ca657f3b5b.js +80 -0
- package/.next/static/chunks/3506.2a7eaa08b9f55337.js +90 -0
- package/.next/static/chunks/363642f4-043c1475ab9af70e.js +1 -0
- package/.next/static/chunks/3794-123fdf632563f469.js +32 -0
- package/.next/static/chunks/3837.a755ccfe6f9c1c1c.js +5 -0
- package/.next/static/chunks/394.91597771688df6d0.js +1 -0
- package/.next/static/chunks/3997.1009c06025691712.js +1 -0
- package/.next/static/chunks/4453.91a357dc43c21745.js +1 -0
- package/.next/static/chunks/4491.44fdf20580ac72bd.js +24 -0
- package/.next/static/chunks/4829.cf1d50e43e6d9db5.js +1 -0
- package/.next/static/chunks/498.fe1d9da9ecad6c36.js +1 -0
- package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +1 -0
- package/.next/static/chunks/5019.b5a1a2b8daf17525.js +1 -0
- package/.next/static/chunks/5034.8f16c3fa3ce75411.js +1 -0
- package/.next/static/chunks/5074.d16651da01ec4e02.js +1 -0
- package/.next/static/chunks/532.5956ed631aff722b.js +9 -0
- package/.next/static/chunks/5326.69460442bdcd6cd3.js +1 -0
- package/.next/static/chunks/5403.ff110bf5bf600758.js +64 -0
- package/.next/static/chunks/547.902a733488cfe3f7.js +77 -0
- package/.next/static/chunks/5567.540d7fc108ad6ee5.js +215 -0
- package/.next/static/chunks/5590.ef62922166d308b4.js +1 -0
- package/.next/static/chunks/5690.9d6eb1edb1399995.js +1 -0
- package/.next/static/chunks/5749.25faee4a1e55b854.js +226 -0
- package/.next/static/chunks/58bb9007.1ccb6bba34b4c635.js +80 -0
- package/.next/static/chunks/6121.f3f43f1896ea0cd9.js +1 -0
- package/.next/static/chunks/6600.583c88eef37aa524.js +1 -0
- package/.next/static/chunks/6696.a41aec266e657d54.js +141 -0
- package/.next/static/chunks/6922.42148793782d2fe7.js +1 -0
- package/.next/static/chunks/7006.e191611ffc2b9528.js +43 -0
- package/.next/static/chunks/7343.9fbb58204d8ac681.js +1 -0
- package/.next/static/chunks/7355-29eaa714eb390050.js +1 -0
- package/.next/static/chunks/73972abe.25a4cffa03b2bcef.js +119 -0
- package/.next/static/chunks/7547.58bda8a2aabba0d4.js +93 -0
- package/.next/static/chunks/7648.4ae2f183b4db0353.js +1 -0
- package/.next/static/chunks/7874.8db6929b94cdf697.js +1 -0
- package/.next/static/chunks/7959.1f20a35df316216a.js +104 -0
- package/.next/static/chunks/83.85d62d7fc9850b75.js +29 -0
- package/.next/static/chunks/8436.cab94b59cca0a8ff.js +1 -0
- package/.next/static/chunks/8451.542eda09d2171474.js +1 -0
- package/.next/static/chunks/8489.45f22859734f514f.js +36 -0
- package/.next/static/chunks/8568.f85d8b36fc9a9037.js +1 -0
- package/.next/static/chunks/8863.be51033a67436277.js +1 -0
- package/.next/static/chunks/90542734.dc1a2723e4f6affb.js +1 -0
- package/.next/static/chunks/9500.1488aec06ee78127.js +1 -0
- package/.next/static/chunks/9633.155548b5fca6e580.js +1 -0
- package/.next/static/chunks/9779.673004a62d70e36a.js +1 -0
- package/.next/static/chunks/9b0008ae.2918095672924572.js +45 -0
- package/.next/static/chunks/app/_global-error/page-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/_not-found/page-96eb50fac9e7a68c.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/harness/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/home/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/models/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/status/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/stop/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/reports/[id]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/search/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/sessions/new/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/settings/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/skills/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/soul/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/api/version/route-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/app/layout-827e06e39e1e6b05.js +1 -0
- package/.next/static/chunks/app/login/page-9450bfc0d502f432.js +1 -0
- package/.next/static/chunks/app/page-dc03bbb33a1d438c.js +270 -0
- package/.next/static/chunks/d3ac728e.7964f816a1ca64e5.js +1 -0
- package/.next/static/chunks/framework-711ef29bc66f648c.js +1 -0
- package/.next/static/chunks/main-app-ecfccace02c7aaed.js +1 -0
- package/.next/static/chunks/main-f74964b7ae52493e.js +5 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/global-error-cd03d084301c1bc9.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3edd3886076a73cb.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-5e677f60fa366b60.js +1 -0
- package/.next/static/css/d830cdea1c9a03c6.css +3 -0
- package/.next/static/ixA4-CDguO8ne_SD2W8sd/_buildManifest.js +1 -0
- package/.next/static/ixA4-CDguO8ne_SD2W8sd/_ssgManifest.js +1 -0
- package/.next/static/media/15605e25b523335c-s.woff2 +0 -0
- package/.next/static/media/1a3dce5cfb5f7760-s.woff2 +0 -0
- package/.next/static/media/1cdd02902f937a18-s.woff2 +0 -0
- package/.next/static/media/4c4b3b30b6bcb2be-s.woff2 +0 -0
- package/.next/static/media/641a7b8a5800ee0e-s.woff2 +0 -0
- package/.next/static/media/7deddc85b7ffd1dc-s.p.woff2 +0 -0
- package/.next/static/media/ec14413c594b3356-s.p.woff2 +0 -0
- package/.next/static/media/pdf.worker.min.5f98222a.mjs +6 -0
- package/.next/trace +74 -0
- package/.next/trace-build +1 -0
- package/.next/types/app/api/agent/[id]/events/route.ts +351 -0
- package/.next/types/app/api/agent/[id]/route.ts +351 -0
- package/.next/types/app/api/agent/new/route.ts +351 -0
- package/.next/types/app/api/auth/all-providers/route.ts +351 -0
- package/.next/types/app/api/auth/api-key/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/login/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/login/route.ts +351 -0
- package/.next/types/app/api/auth/logout/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/providers/route.ts +351 -0
- package/.next/types/app/api/auth/status/route.ts +351 -0
- package/.next/types/app/api/default-cwd/route.ts +351 -0
- package/.next/types/app/api/files/[...path]/route.ts +351 -0
- package/.next/types/app/api/harness/route.ts +351 -0
- package/.next/types/app/api/home/route.ts +351 -0
- package/.next/types/app/api/models/route.ts +351 -0
- package/.next/types/app/api/models-config/discover/route.ts +351 -0
- package/.next/types/app/api/models-config/route.ts +351 -0
- package/.next/types/app/api/models-config/test/route.ts +351 -0
- package/.next/types/app/api/plot-kernels/route.ts +351 -0
- package/.next/types/app/api/plot-kernels/status/route.ts +351 -0
- package/.next/types/app/api/plot-kernels/stop/route.ts +351 -0
- package/.next/types/app/api/reports/[id]/route.ts +351 -0
- package/.next/types/app/api/search/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/context/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/route.ts +351 -0
- package/.next/types/app/api/sessions/new/route.ts +351 -0
- package/.next/types/app/api/sessions/route.ts +351 -0
- package/.next/types/app/api/settings/route.ts +351 -0
- package/.next/types/app/api/skills/install/route.ts +351 -0
- package/.next/types/app/api/skills/route.ts +351 -0
- package/.next/types/app/api/skills/search/route.ts +351 -0
- package/.next/types/app/api/soul/route.ts +351 -0
- package/.next/types/app/api/version/route.ts +351 -0
- package/.next/types/app/layout.ts +87 -0
- package/.next/types/app/login/page.ts +87 -0
- package/.next/types/app/page.ts +87 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +106 -0
- package/.next/types/validator.ts +376 -0
- package/LICENSE +21 -0
- package/README.md +90 -0
- package/bin/pi-web.js +825 -0
- package/lib/default-soul.md +42 -0
- package/lib/visualization-harness.md +113 -0
- package/next.config.ts +15 -0
- package/package.json +77 -0
- package/public/file.svg +1 -0
- package/public/globe.svg +1 -0
- package/public/next.svg +1 -0
- package/public/vercel.svg +1 -0
- package/public/window.svg +1 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";exports.id=2325,exports.ids=[2325],exports.modules={18419:(a,b,c)=>{c.d(b,{d:()=>k});var d=c(90280),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")},20493:(a,b,c)=>{c.d(b,{v:()=>g});var d=c(90280),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")},28070:(a,b,c)=>{c.d(b,{g:()=>n});var d=c(90280),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")},36035:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(90280),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")},47966:(a,b,c)=>{c.d(b,{f:()=>h});var d=c(90280),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")},62576:(a,b,c)=>{c.d(b,{b:()=>g});var d=c(90280),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")},65170:(a,b,c)=>{c.d(b,{S:()=>h});var d=c(90280),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")},66854:(a,b,c)=>{c.d(b,{f:()=>g});var d=c(90280),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")},82010:(a,b,c)=>{c.d(b,{$:()=>g});var d=c(90280),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")},84952:(a,b,c)=>{c.d(b,{I:()=>h});var d=c(90280),e=class extends d.dg{static{(0,d.K2)(this,"TreeViewValueConverter")}runCustomConverter(a,b,c){return"INDENTATION"===a.name?b?.length||0:"STRING2"===a.name?b.substring(1,b.length-1):void 0}},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")},90280:(a,b,c)=>{let d,e;c.d(b,{Bg:()=>v6,CZ:()=>v8,DD:()=>vf,D_:()=>v5,F5:()=>vu,FZ:()=>v3,K2:()=>bz,Tm:()=>wc,WQ:()=>u3,XE:()=>v7,Xr:()=>v9,d$:()=>v2,dg:()=>wb,mR:()=>wd,p5:()=>v4,sr:()=>v_,tG:()=>u1,uM:()=>u2,wV:()=>v0,x0:()=>v1});var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,aA,aB,aC,aD,aE,aF,aG,aH,aI,aJ,aK,aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU,aV,aW,aX,aY,aZ,a$,a_,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt=Object.create,bu=Object.defineProperty,bv=Object.getOwnPropertyDescriptor,bw=Object.getOwnPropertyNames,bx=Object.getPrototypeOf,by=Object.prototype.hasOwnProperty,bz=(a,b)=>bu(a,"name",{value:b,configurable:!0}),bA=(a,b)=>function(){return b||(0,a[bw(a)[0]])((b={exports:{}}).exports,b),b.exports},bB=(a,b)=>{for(var c in b)bu(a,c,{get:b[c],enumerable:!0})},bC=(a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let e of bw(b))by.call(a,e)||e===c||bu(a,e,{get:()=>b[e],enumerable:!(d=bv(b,e))||d.enumerable});return a},bD=(a,b,c)=>(bC(a,b,"default"),c&&bC(c,b,"default")),bE=(a,b,c)=>(c=null!=a?bt(bx(a)):{},bC(!b&&a&&a.__esModule?c:bu(c,"default",{value:a,enumerable:!0}),a)),bF=a=>bC(bu({},"__esModule",{value:!0}),a),bG={};bB(bG,{AnnotatedTextEdit:()=>M,ChangeAnnotation:()=>K,ChangeAnnotationIdentifier:()=>L,CodeAction:()=>av,CodeActionContext:()=>au,CodeActionKind:()=>as,CodeActionTriggerKind:()=>at,CodeDescription:()=>G,CodeLens:()=>aw,Color:()=>y,ColorInformation:()=>z,ColorPresentation:()=>A,Command:()=>I,CompletionItem:()=>af,CompletionItemKind:()=>_,CompletionItemLabelDetails:()=>ae,CompletionItemTag:()=>ab,CompletionList:()=>ag,CreateFile:()=>O,DeleteFile:()=>Q,Diagnostic:()=>H,DiagnosticRelatedInformation:()=>D,DiagnosticSeverity:()=>E,DiagnosticTag:()=>F,DocumentHighlight:()=>am,DocumentHighlightKind:()=>al,DocumentLink:()=>ay,DocumentSymbol:()=>ar,DocumentUri:()=>q,EOL:()=>aR,FoldingRange:()=>C,FoldingRangeKind:()=>B,FormattingOptions:()=>ax,Hover:()=>ai,InlayHint:()=>aJ,InlayHintKind:()=>aH,InlayHintLabelPart:()=>aI,InlineCompletionContext:()=>aP,InlineCompletionItem:()=>aL,InlineCompletionList:()=>aM,InlineCompletionTriggerKind:()=>aN,InlineValueContext:()=>aG,InlineValueEvaluatableExpression:()=>aF,InlineValueText:()=>aD,InlineValueVariableLookup:()=>aE,InsertReplaceEdit:()=>ac,InsertTextFormat:()=>aa,InsertTextMode:()=>ad,Location:()=>w,LocationLink:()=>x,MarkedString:()=>ah,MarkupContent:()=>$,MarkupKind:()=>Z,OptionalVersionedTextDocumentIdentifier:()=>X,ParameterInformation:()=>aj,Position:()=>u,Range:()=>v,RenameFile:()=>P,SelectedCompletionInfo:()=>aO,SelectionRange:()=>az,SemanticTokenModifiers:()=>aB,SemanticTokenTypes:()=>aA,SemanticTokens:()=>aC,SignatureInformation:()=>ak,StringValue:()=>aK,SymbolInformation:()=>ap,SymbolKind:()=>an,SymbolTag:()=>ao,TextDocument:()=>aS,TextDocumentEdit:()=>N,TextDocumentIdentifier:()=>V,TextDocumentItem:()=>Y,TextEdit:()=>J,URI:()=>r,VersionedTextDocumentIdentifier:()=>W,WorkspaceChange:()=>U,WorkspaceEdit:()=>R,WorkspaceFolder:()=>aQ,WorkspaceSymbol:()=>aq,integer:()=>s,uinteger:()=>t});var bH=(d={"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n=q||(q={});function o(a){return"string"==typeof a}bz(o,"is"),n.is=o;var p=r||(r={});function aV(a){return"string"==typeof a}bz(aV,"is"),p.is=aV;var aW=s||(s={});function aX(a){return"number"==typeof a&&aW.MIN_VALUE<=a&&a<=aW.MAX_VALUE}aW.MIN_VALUE=-0x80000000,aW.MAX_VALUE=0x7fffffff,bz(aX,"is"),aW.is=aX;var aY=t||(t={});function aZ(a){return"number"==typeof a&&aY.MIN_VALUE<=a&&a<=aY.MAX_VALUE}aY.MIN_VALUE=0,aY.MAX_VALUE=0x7fffffff,bz(aZ,"is"),aY.is=aZ;var a$=u||(u={});function a_(a,b){return a===Number.MAX_VALUE&&(a=t.MAX_VALUE),b===Number.MAX_VALUE&&(b=t.MAX_VALUE),{line:a,character:b}}function a0(a){return aU.objectLiteral(a)&&aU.uinteger(a.line)&&aU.uinteger(a.character)}bz(a_,"create"),a$.create=a_,bz(a0,"is"),a$.is=a0;var a1=v||(v={});function a2(a,b,c,d){if(aU.uinteger(a)&&aU.uinteger(b)&&aU.uinteger(c)&&aU.uinteger(d))return{start:u.create(a,b),end:u.create(c,d)};if(u.is(a)&&u.is(b))return{start:a,end:b};throw Error(`Range#create called with invalid arguments[${a}, ${b}, ${c}, ${d}]`)}function a3(a){return aU.objectLiteral(a)&&u.is(a.start)&&u.is(a.end)}bz(a2,"create"),a1.create=a2,bz(a3,"is"),a1.is=a3;var a4=w||(w={});function a5(a,b){return{uri:a,range:b}}function a6(a){return aU.objectLiteral(a)&&v.is(a.range)&&(aU.string(a.uri)||aU.undefined(a.uri))}bz(a5,"create"),a4.create=a5,bz(a6,"is"),a4.is=a6;var a7=x||(x={});function a8(a,b,c,d){return{targetUri:a,targetRange:b,targetSelectionRange:c,originSelectionRange:d}}function a9(a){return aU.objectLiteral(a)&&v.is(a.targetRange)&&aU.string(a.targetUri)&&v.is(a.targetSelectionRange)&&(v.is(a.originSelectionRange)||aU.undefined(a.originSelectionRange))}bz(a8,"create"),a7.create=a8,bz(a9,"is"),a7.is=a9;var ba=y||(y={});function bb(a,b,c,d){return{red:a,green:b,blue:c,alpha:d}}function bc(a){return aU.objectLiteral(a)&&aU.numberRange(a.red,0,1)&&aU.numberRange(a.green,0,1)&&aU.numberRange(a.blue,0,1)&&aU.numberRange(a.alpha,0,1)}bz(bb,"create"),ba.create=bb,bz(bc,"is"),ba.is=bc;var bd=z||(z={});function be(a,b){return{range:a,color:b}}function bf(a){return aU.objectLiteral(a)&&v.is(a.range)&&y.is(a.color)}bz(be,"create"),bd.create=be,bz(bf,"is"),bd.is=bf;var bg=A||(A={});function bh(a,b,c){return{label:a,textEdit:b,additionalTextEdits:c}}function bi(a){return aU.objectLiteral(a)&&aU.string(a.label)&&(aU.undefined(a.textEdit)||J.is(a))&&(aU.undefined(a.additionalTextEdits)||aU.typedArray(a.additionalTextEdits,J.is))}bz(bh,"create"),bg.create=bh,bz(bi,"is"),bg.is=bi,(a=B||(B={})).Comment="comment",a.Imports="imports",a.Region="region";var bj=C||(C={});function bk(a,b,c,d,e,f){let g={startLine:a,endLine:b};return aU.defined(c)&&(g.startCharacter=c),aU.defined(d)&&(g.endCharacter=d),aU.defined(e)&&(g.kind=e),aU.defined(f)&&(g.collapsedText=f),g}function bl(a){return aU.objectLiteral(a)&&aU.uinteger(a.startLine)&&aU.uinteger(a.startLine)&&(aU.undefined(a.startCharacter)||aU.uinteger(a.startCharacter))&&(aU.undefined(a.endCharacter)||aU.uinteger(a.endCharacter))&&(aU.undefined(a.kind)||aU.string(a.kind))}bz(bk,"create"),bj.create=bk,bz(bl,"is"),bj.is=bl;var bm=D||(D={});function bn(a,b){return{location:a,message:b}}function bo(a){return aU.defined(a)&&w.is(a.location)&&aU.string(a.message)}bz(bn,"create"),bm.create=bn,bz(bo,"is"),bm.is=bo,(b=E||(E={})).Error=1,b.Warning=2,b.Information=3,b.Hint=4,(c=F||(F={})).Unnecessary=1,c.Deprecated=2;var bp=G||(G={});function bq(a){return aU.objectLiteral(a)&&aU.string(a.href)}bz(bq,"is"),bp.is=bq;var br=H||(H={});function bs(a,b,c,d,e,f){let g={range:a,message:b};return aU.defined(c)&&(g.severity=c),aU.defined(d)&&(g.code=d),aU.defined(e)&&(g.source=e),aU.defined(f)&&(g.relatedInformation=f),g}function bt(a){var b;return aU.defined(a)&&v.is(a.range)&&aU.string(a.message)&&(aU.number(a.severity)||aU.undefined(a.severity))&&(aU.integer(a.code)||aU.string(a.code)||aU.undefined(a.code))&&(aU.undefined(a.codeDescription)||aU.string(null==(b=a.codeDescription)?void 0:b.href))&&(aU.string(a.source)||aU.undefined(a.source))&&(aU.undefined(a.relatedInformation)||aU.typedArray(a.relatedInformation,D.is))}bz(bs,"create"),br.create=bs,bz(bt,"is"),br.is=bt;var bu=I||(I={});function bv(a,b,...c){let d={title:a,command:b};return aU.defined(c)&&c.length>0&&(d.arguments=c),d}function bw(a){return aU.defined(a)&&aU.string(a.title)&&aU.string(a.command)}bz(bv,"create"),bu.create=bv,bz(bw,"is"),bu.is=bw,function(a){function b(a,b){return{range:a,newText:b}}function c(a,b){return{range:{start:a,end:a},newText:b}}function d(a){return{range:a,newText:""}}function e(a){return aU.objectLiteral(a)&&aU.string(a.newText)&&v.is(a.range)}bz(b,"replace"),a.replace=b,bz(c,"insert"),a.insert=c,bz(d,"del"),a.del=d,bz(e,"is"),a.is=e}(J||(J={}));var bx=K||(K={});function by(a,b,c){let d={label:a};return void 0!==b&&(d.needsConfirmation=b),void 0!==c&&(d.description=c),d}function bA(a){return aU.objectLiteral(a)&&aU.string(a.label)&&(aU.boolean(a.needsConfirmation)||void 0===a.needsConfirmation)&&(aU.string(a.description)||void 0===a.description)}bz(by,"create"),bx.create=by,bz(bA,"is"),bx.is=bA;var bB=L||(L={});function bC(a){return aU.string(a)}bz(bC,"is"),bB.is=bC,function(a){function b(a,b,c){return{range:a,newText:b,annotationId:c}}function c(a,b,c){return{range:{start:a,end:a},newText:b,annotationId:c}}function d(a,b){return{range:a,newText:"",annotationId:b}}function e(a){return J.is(a)&&(K.is(a.annotationId)||L.is(a.annotationId))}bz(b,"replace"),a.replace=b,bz(c,"insert"),a.insert=c,bz(d,"del"),a.del=d,bz(e,"is"),a.is=e}(M||(M={}));var bD=N||(N={});function bE(a,b){return{textDocument:a,edits:b}}function bF(a){return aU.defined(a)&&X.is(a.textDocument)&&Array.isArray(a.edits)}bz(bE,"create"),bD.create=bE,bz(bF,"is"),bD.is=bF;var bG=O||(O={});function bH(a,b,c){let d={kind:"create",uri:a};return void 0!==b&&(void 0!==b.overwrite||void 0!==b.ignoreIfExists)&&(d.options=b),void 0!==c&&(d.annotationId=c),d}function bI(a){return a&&"create"===a.kind&&aU.string(a.uri)&&(void 0===a.options||(void 0===a.options.overwrite||aU.boolean(a.options.overwrite))&&(void 0===a.options.ignoreIfExists||aU.boolean(a.options.ignoreIfExists)))&&(void 0===a.annotationId||L.is(a.annotationId))}bz(bH,"create"),bG.create=bH,bz(bI,"is"),bG.is=bI;var bJ=P||(P={});function bK(a,b,c,d){let e={kind:"rename",oldUri:a,newUri:b};return void 0!==c&&(void 0!==c.overwrite||void 0!==c.ignoreIfExists)&&(e.options=c),void 0!==d&&(e.annotationId=d),e}function bL(a){return a&&"rename"===a.kind&&aU.string(a.oldUri)&&aU.string(a.newUri)&&(void 0===a.options||(void 0===a.options.overwrite||aU.boolean(a.options.overwrite))&&(void 0===a.options.ignoreIfExists||aU.boolean(a.options.ignoreIfExists)))&&(void 0===a.annotationId||L.is(a.annotationId))}bz(bK,"create"),bJ.create=bK,bz(bL,"is"),bJ.is=bL;var bM=Q||(Q={});function bN(a,b,c){let d={kind:"delete",uri:a};return void 0!==b&&(void 0!==b.recursive||void 0!==b.ignoreIfNotExists)&&(d.options=b),void 0!==c&&(d.annotationId=c),d}function bO(a){return a&&"delete"===a.kind&&aU.string(a.uri)&&(void 0===a.options||(void 0===a.options.recursive||aU.boolean(a.options.recursive))&&(void 0===a.options.ignoreIfNotExists||aU.boolean(a.options.ignoreIfNotExists)))&&(void 0===a.annotationId||L.is(a.annotationId))}bz(bN,"create"),bM.create=bN,bz(bO,"is"),bM.is=bO;var bP=R||(R={});function bQ(a){return a&&(void 0!==a.changes||void 0!==a.documentChanges)&&(void 0===a.documentChanges||a.documentChanges.every(a=>aU.string(a.kind)?O.is(a)||P.is(a)||Q.is(a):N.is(a)))}bz(bQ,"is"),bP.is=bQ,S=class{static{bz(this,"TextEditChangeImpl")}constructor(a,b){this.edits=a,this.changeAnnotations=b}insert(a,b,c){let d,e;if(void 0===c?d=J.insert(a,b):L.is(c)?(e=c,d=M.insert(a,b,c)):(this.assertChangeAnnotations(this.changeAnnotations),e=this.changeAnnotations.manage(c),d=M.insert(a,b,e)),this.edits.push(d),void 0!==e)return e}replace(a,b,c){let d,e;if(void 0===c?d=J.replace(a,b):L.is(c)?(e=c,d=M.replace(a,b,c)):(this.assertChangeAnnotations(this.changeAnnotations),e=this.changeAnnotations.manage(c),d=M.replace(a,b,e)),this.edits.push(d),void 0!==e)return e}delete(a,b){let c,d;if(void 0===b?c=J.del(a):L.is(b)?(d=b,c=M.del(a,b)):(this.assertChangeAnnotations(this.changeAnnotations),d=this.changeAnnotations.manage(b),c=M.del(a,d)),this.edits.push(c),void 0!==d)return d}add(a){this.edits.push(a)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(a){if(void 0===a)throw Error("Text edit change is not configured to manage change annotations.")}},T=class{static{bz(this,"ChangeAnnotations")}constructor(a){this._annotations=void 0===a?Object.create(null):a,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(a,b){let c;if(L.is(a)?c=a:(c=this.nextId(),b=a),void 0!==this._annotations[c])throw Error(`Id ${c} is already in use.`);if(void 0===b)throw Error(`No annotation provided for id ${c}`);return this._annotations[c]=b,this._size++,c}nextId(){return this._counter++,this._counter.toString()}},U=class{static{bz(this,"WorkspaceChange")}constructor(a){this._textEditChanges=Object.create(null),void 0!==a?(this._workspaceEdit=a,a.documentChanges?(this._changeAnnotations=new T(a.changeAnnotations),a.changeAnnotations=this._changeAnnotations.all(),a.documentChanges.forEach(a=>{if(N.is(a)){let b=new S(a.edits,this._changeAnnotations);this._textEditChanges[a.textDocument.uri]=b}})):a.changes&&Object.keys(a.changes).forEach(b=>{let c=new S(a.changes[b]);this._textEditChanges[b]=c})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),void 0!==this._changeAnnotations&&(0===this._changeAnnotations.size?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(a){if(X.is(a)){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");let b={uri:a.uri,version:a.version},c=this._textEditChanges[b.uri];if(!c){let a=[];this._workspaceEdit.documentChanges.push({textDocument:b,edits:a}),c=new S(a,this._changeAnnotations),this._textEditChanges[b.uri]=c}return c}{if(this.initChanges(),void 0===this._workspaceEdit.changes)throw Error("Workspace edit is not configured for normal text edit changes.");let b=this._textEditChanges[a];if(!b){let c=[];this._workspaceEdit.changes[a]=c,b=new S(c),this._textEditChanges[a]=b}return b}}initDocumentChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._changeAnnotations=new T,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._workspaceEdit.changes=Object.create(null))}createFile(a,b,c){let d,e,f;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(K.is(b)||L.is(b)?d=b:c=b,void 0===d?e=O.create(a,c):(f=L.is(d)?d:this._changeAnnotations.manage(d),e=O.create(a,c,f)),this._workspaceEdit.documentChanges.push(e),void 0!==f)return f}renameFile(a,b,c,d){let e,f,g;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(K.is(c)||L.is(c)?e=c:d=c,void 0===e?f=P.create(a,b,d):(g=L.is(e)?e:this._changeAnnotations.manage(e),f=P.create(a,b,d,g)),this._workspaceEdit.documentChanges.push(f),void 0!==g)return g}deleteFile(a,b,c){let d,e,f;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(K.is(b)||L.is(b)?d=b:c=b,void 0===d?e=Q.create(a,c):(f=L.is(d)?d:this._changeAnnotations.manage(d),e=Q.create(a,c,f)),this._workspaceEdit.documentChanges.push(e),void 0!==f)return f}};var bR=V||(V={});function bS(a){return{uri:a}}function bT(a){return aU.defined(a)&&aU.string(a.uri)}bz(bS,"create"),bR.create=bS,bz(bT,"is"),bR.is=bT;var bU=W||(W={});function bV(a,b){return{uri:a,version:b}}function bW(a){return aU.defined(a)&&aU.string(a.uri)&&aU.integer(a.version)}bz(bV,"create"),bU.create=bV,bz(bW,"is"),bU.is=bW;var bX=X||(X={});function bY(a,b){return{uri:a,version:b}}function bZ(a){return aU.defined(a)&&aU.string(a.uri)&&(null===a.version||aU.integer(a.version))}bz(bY,"create"),bX.create=bY,bz(bZ,"is"),bX.is=bZ;var b$=Y||(Y={});function b_(a,b,c,d){return{uri:a,languageId:b,version:c,text:d}}function b0(a){return aU.defined(a)&&aU.string(a.uri)&&aU.string(a.languageId)&&aU.integer(a.version)&&aU.string(a.text)}bz(b_,"create"),b$.create=b_,bz(b0,"is"),b$.is=b0;var b1=Z||(Z={});function b2(a){return a===b1.PlainText||a===b1.Markdown}b1.PlainText="plaintext",b1.Markdown="markdown",bz(b2,"is"),b1.is=b2;var b3=$||($={});function b4(a){return aU.objectLiteral(a)&&Z.is(a.kind)&&aU.string(a.value)}bz(b4,"is"),b3.is=b4,(d=_||(_={})).Text=1,d.Method=2,d.Function=3,d.Constructor=4,d.Field=5,d.Variable=6,d.Class=7,d.Interface=8,d.Module=9,d.Property=10,d.Unit=11,d.Value=12,d.Enum=13,d.Keyword=14,d.Snippet=15,d.Color=16,d.File=17,d.Reference=18,d.Folder=19,d.EnumMember=20,d.Constant=21,d.Struct=22,d.Event=23,d.Operator=24,d.TypeParameter=25,(e=aa||(aa={})).PlainText=1,e.Snippet=2,(ab||(ab={})).Deprecated=1;var b5=ac||(ac={});function b6(a,b,c){return{newText:a,insert:b,replace:c}}function b7(a){return a&&aU.string(a.newText)&&v.is(a.insert)&&v.is(a.replace)}bz(b6,"create"),b5.create=b6,bz(b7,"is"),b5.is=b7,(f=ad||(ad={})).asIs=1,f.adjustIndentation=2;var b8=ae||(ae={});function b9(a){return a&&(aU.string(a.detail)||void 0===a.detail)&&(aU.string(a.description)||void 0===a.description)}bz(b9,"is"),b8.is=b9;var ca=af||(af={});function cb(a){return{label:a}}bz(cb,"create"),ca.create=cb;var cc=ag||(ag={});function cd(a,b){return{items:a||[],isIncomplete:!!b}}bz(cd,"create"),cc.create=cd;var ce=ah||(ah={});function cf(a){return a.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}function cg(a){return aU.string(a)||aU.objectLiteral(a)&&aU.string(a.language)&&aU.string(a.value)}bz(cf,"fromPlainText"),ce.fromPlainText=cf,bz(cg,"is"),ce.is=cg;var ch=ai||(ai={});function ci(a){return!!a&&aU.objectLiteral(a)&&($.is(a.contents)||ah.is(a.contents)||aU.typedArray(a.contents,ah.is))&&(void 0===a.range||v.is(a.range))}bz(ci,"is"),ch.is=ci;var cj=aj||(aj={});function ck(a,b){return b?{label:a,documentation:b}:{label:a}}bz(ck,"create"),cj.create=ck;var cl=ak||(ak={});function cm(a,b,...c){let d={label:a};return aU.defined(b)&&(d.documentation=b),aU.defined(c)?d.parameters=c:d.parameters=[],d}bz(cm,"create"),cl.create=cm,(g=al||(al={})).Text=1,g.Read=2,g.Write=3;var cn=am||(am={});function co(a,b){let c={range:a};return aU.number(b)&&(c.kind=b),c}bz(co,"create"),cn.create=co,(h=an||(an={})).File=1,h.Module=2,h.Namespace=3,h.Package=4,h.Class=5,h.Method=6,h.Property=7,h.Field=8,h.Constructor=9,h.Enum=10,h.Interface=11,h.Function=12,h.Variable=13,h.Constant=14,h.String=15,h.Number=16,h.Boolean=17,h.Array=18,h.Object=19,h.Key=20,h.Null=21,h.EnumMember=22,h.Struct=23,h.Event=24,h.Operator=25,h.TypeParameter=26,(ao||(ao={})).Deprecated=1;var cp=ap||(ap={});function cq(a,b,c,d,e){let f={name:a,kind:b,location:{uri:d,range:c}};return e&&(f.containerName=e),f}bz(cq,"create"),cp.create=cq;var cr=aq||(aq={});function cs(a,b,c,d){return void 0!==d?{name:a,kind:b,location:{uri:c,range:d}}:{name:a,kind:b,location:{uri:c}}}bz(cs,"create"),cr.create=cs;var ct=ar||(ar={});function cu(a,b,c,d,e,f){let g={name:a,detail:b,kind:c,range:d,selectionRange:e};return void 0!==f&&(g.children=f),g}function cv(a){return a&&aU.string(a.name)&&aU.number(a.kind)&&v.is(a.range)&&v.is(a.selectionRange)&&(void 0===a.detail||aU.string(a.detail))&&(void 0===a.deprecated||aU.boolean(a.deprecated))&&(void 0===a.children||Array.isArray(a.children))&&(void 0===a.tags||Array.isArray(a.tags))}bz(cu,"create"),ct.create=cu,bz(cv,"is"),ct.is=cv,(i=as||(as={})).Empty="",i.QuickFix="quickfix",i.Refactor="refactor",i.RefactorExtract="refactor.extract",i.RefactorInline="refactor.inline",i.RefactorRewrite="refactor.rewrite",i.Source="source",i.SourceOrganizeImports="source.organizeImports",i.SourceFixAll="source.fixAll",(j=at||(at={})).Invoked=1,j.Automatic=2;var cw=au||(au={});function cx(a,b,c){let d={diagnostics:a};return null!=b&&(d.only=b),null!=c&&(d.triggerKind=c),d}function cy(a){return aU.defined(a)&&aU.typedArray(a.diagnostics,H.is)&&(void 0===a.only||aU.typedArray(a.only,aU.string))&&(void 0===a.triggerKind||a.triggerKind===at.Invoked||a.triggerKind===at.Automatic)}bz(cx,"create"),cw.create=cx,bz(cy,"is"),cw.is=cy;var cz=av||(av={});function cA(a,b,c){let d={title:a},e=!0;return"string"==typeof b?(e=!1,d.kind=b):I.is(b)?d.command=b:d.edit=b,e&&void 0!==c&&(d.kind=c),d}function cB(a){return a&&aU.string(a.title)&&(void 0===a.diagnostics||aU.typedArray(a.diagnostics,H.is))&&(void 0===a.kind||aU.string(a.kind))&&(void 0!==a.edit||void 0!==a.command)&&(void 0===a.command||I.is(a.command))&&(void 0===a.isPreferred||aU.boolean(a.isPreferred))&&(void 0===a.edit||R.is(a.edit))}bz(cA,"create"),cz.create=cA,bz(cB,"is"),cz.is=cB;var cC=aw||(aw={});function cD(a,b){let c={range:a};return aU.defined(b)&&(c.data=b),c}function cE(a){return aU.defined(a)&&v.is(a.range)&&(aU.undefined(a.command)||I.is(a.command))}bz(cD,"create"),cC.create=cD,bz(cE,"is"),cC.is=cE;var cF=ax||(ax={});function cG(a,b){return{tabSize:a,insertSpaces:b}}function cH(a){return aU.defined(a)&&aU.uinteger(a.tabSize)&&aU.boolean(a.insertSpaces)}bz(cG,"create"),cF.create=cG,bz(cH,"is"),cF.is=cH;var cI=ay||(ay={});function cJ(a,b,c){return{range:a,target:b,data:c}}function cK(a){return aU.defined(a)&&v.is(a.range)&&(aU.undefined(a.target)||aU.string(a.target))}bz(cJ,"create"),cI.create=cJ,bz(cK,"is"),cI.is=cK;var cL=az||(az={});function cM(a,b){return{range:a,parent:b}}function cN(a){return aU.objectLiteral(a)&&v.is(a.range)&&(void 0===a.parent||cL.is(a.parent))}bz(cM,"create"),cL.create=cM,bz(cN,"is"),cL.is=cN,(k=aA||(aA={})).namespace="namespace",k.type="type",k.class="class",k.enum="enum",k.interface="interface",k.struct="struct",k.typeParameter="typeParameter",k.parameter="parameter",k.variable="variable",k.property="property",k.enumMember="enumMember",k.event="event",k.function="function",k.method="method",k.macro="macro",k.keyword="keyword",k.modifier="modifier",k.comment="comment",k.string="string",k.number="number",k.regexp="regexp",k.operator="operator",k.decorator="decorator",(l=aB||(aB={})).declaration="declaration",l.definition="definition",l.readonly="readonly",l.static="static",l.deprecated="deprecated",l.abstract="abstract",l.async="async",l.modification="modification",l.documentation="documentation",l.defaultLibrary="defaultLibrary";var cO=aC||(aC={});function cP(a){return aU.objectLiteral(a)&&(void 0===a.resultId||"string"==typeof a.resultId)&&Array.isArray(a.data)&&(0===a.data.length||"number"==typeof a.data[0])}bz(cP,"is"),cO.is=cP;var cQ=aD||(aD={});function cR(a,b){return{range:a,text:b}}function cS(a){return null!=a&&v.is(a.range)&&aU.string(a.text)}bz(cR,"create"),cQ.create=cR,bz(cS,"is"),cQ.is=cS;var cT=aE||(aE={});function cU(a,b,c){return{range:a,variableName:b,caseSensitiveLookup:c}}function cV(a){return null!=a&&v.is(a.range)&&aU.boolean(a.caseSensitiveLookup)&&(aU.string(a.variableName)||void 0===a.variableName)}bz(cU,"create"),cT.create=cU,bz(cV,"is"),cT.is=cV;var cW=aF||(aF={});function cX(a,b){return{range:a,expression:b}}function cY(a){return null!=a&&v.is(a.range)&&(aU.string(a.expression)||void 0===a.expression)}bz(cX,"create"),cW.create=cX,bz(cY,"is"),cW.is=cY;var cZ=aG||(aG={});function c$(a,b){return{frameId:a,stoppedLocation:b}}function c_(a){return aU.defined(a)&&v.is(a.stoppedLocation)}bz(c$,"create"),cZ.create=c$,bz(c_,"is"),cZ.is=c_;var c0=aH||(aH={});function c1(a){return 1===a||2===a}c0.Type=1,c0.Parameter=2,bz(c1,"is"),c0.is=c1;var c2=aI||(aI={});function c3(a){return{value:a}}function c4(a){return aU.objectLiteral(a)&&(void 0===a.tooltip||aU.string(a.tooltip)||$.is(a.tooltip))&&(void 0===a.location||w.is(a.location))&&(void 0===a.command||I.is(a.command))}bz(c3,"create"),c2.create=c3,bz(c4,"is"),c2.is=c4;var c5=aJ||(aJ={});function c6(a,b,c){let d={position:a,label:b};return void 0!==c&&(d.kind=c),d}function c7(a){return aU.objectLiteral(a)&&u.is(a.position)&&(aU.string(a.label)||aU.typedArray(a.label,aI.is))&&(void 0===a.kind||aH.is(a.kind))&&void 0===a.textEdits||aU.typedArray(a.textEdits,J.is)&&(void 0===a.tooltip||aU.string(a.tooltip)||$.is(a.tooltip))&&(void 0===a.paddingLeft||aU.boolean(a.paddingLeft))&&(void 0===a.paddingRight||aU.boolean(a.paddingRight))}bz(c6,"create"),c5.create=c6,bz(c7,"is"),c5.is=c7;var c8=aK||(aK={});function c9(a){return{kind:"snippet",value:a}}bz(c9,"createSnippet"),c8.createSnippet=c9;var da=aL||(aL={});function db(a,b,c,d){return{insertText:a,filterText:b,range:c,command:d}}bz(db,"create"),da.create=db;var dc=aM||(aM={});function dd(a){return{items:a}}bz(dd,"create"),dc.create=dd,(m=aN||(aN={})).Invoked=0,m.Automatic=1;var de=aO||(aO={});function df(a,b){return{range:a,text:b}}bz(df,"create"),de.create=df;var dg=aP||(aP={});function dh(a,b){return{triggerKind:a,selectedCompletionInfo:b}}bz(dh,"create"),dg.create=dh;var di=aQ||(aQ={});function dj(a){return aU.objectLiteral(a)&&r.is(a.uri)&&aU.string(a.name)}bz(dj,"is"),di.is=dj,aR=["\n","\r\n","\r"],function(a){function b(a,b,c,d){return new aT(a,b,c,d)}function c(a){return!!(aU.defined(a)&&aU.string(a.uri)&&(aU.undefined(a.languageId)||aU.string(a.languageId))&&aU.uinteger(a.lineCount)&&aU.func(a.getText)&&aU.func(a.positionAt)&&aU.func(a.offsetAt))}function d(a,b){let c=a.getText(),d=e(b,(a,b)=>{let c=a.range.start.line-b.range.start.line;return 0===c?a.range.start.character-b.range.start.character:c}),f=c.length;for(let b=d.length-1;b>=0;b--){let e=d[b],g=a.offsetAt(e.range.start),h=a.offsetAt(e.range.end);if(h<=f)c=c.substring(0,g)+e.newText+c.substring(h,c.length);else throw Error("Overlapping edit");f=g}return c}function e(a,b){if(a.length<=1)return a;let c=a.length/2|0,d=a.slice(0,c),f=a.slice(c);e(d,b),e(f,b);let g=0,h=0,i=0;for(;g<d.length&&h<f.length;)0>=b(d[g],f[h])?a[i++]=d[g++]:a[i++]=f[h++];for(;g<d.length;)a[i++]=d[g++];for(;h<f.length;)a[i++]=f[h++];return a}bz(b,"create"),a.create=b,bz(c,"is"),a.is=c,bz(d,"applyEdits"),a.applyEdits=d,bz(e,"mergeSort")}(aS||(aS={})),aT=class{static{bz(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(a,b){this._content=a.text,this._version=b,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let a=[],b=this._content,c=!0;for(let d=0;d<b.length;d++){c&&(a.push(d),c=!1);let e=b.charAt(d);c="\r"===e||"\n"===e,"\r"===e&&d+1<b.length&&"\n"===b.charAt(d+1)&&d++}c&&b.length>0&&a.push(b.length),this._lineOffsets=a}return 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 u.create(0,a);for(;c<d;){let e=Math.floor((c+d)/2);b[e]>a?d=e:c=e+1}let e=c-1;return u.create(e,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],d=a.line+1<b.length?b[a.line+1]:this._content.length;return Math.max(Math.min(c+a.character,d),c)}get lineCount(){return this.getLineOffsets().length}},function(a){let b=Object.prototype.toString;function c(a){return void 0!==a}function d(a){return void 0===a}function e(a){return!0===a||!1===a}function f(a){return"[object String]"===b.call(a)}function g(a){return"[object Number]"===b.call(a)}function h(a,c,d){return"[object Number]"===b.call(a)&&c<=a&&a<=d}function i(a){return"[object Number]"===b.call(a)&&-0x80000000<=a&&a<=0x7fffffff}function j(a){return"[object Number]"===b.call(a)&&0<=a&&a<=0x7fffffff}function k(a){return"[object Function]"===b.call(a)}function l(a){return null!==a&&"object"==typeof a}function m(a,b){return Array.isArray(a)&&a.every(b)}bz(c,"defined"),a.defined=c,bz(d,"undefined"),a.undefined=d,bz(e,"boolean"),a.boolean=e,bz(f,"string"),a.string=f,bz(g,"number"),a.number=g,bz(h,"numberRange"),a.numberRange=h,bz(i,"integer"),a.integer=i,bz(j,"uinteger"),a.uinteger=j,bz(k,"func"),a.func=k,bz(l,"objectLiteral"),a.objectLiteral=l,bz(m,"typedArray"),a.typedArray=m}(aU||(aU={}))}},function(){return d&&(e=(0,d[bw(d)[0]])(d=0)),e}),bI=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(a){function b(){if(void 0===c)throw Error("No runtime abstraction layer installed");return c}Object.defineProperty(a,"__esModule",{value:!0}),bz(b,"RAL");var c,d=b||(b={});function e(a){if(void 0===a)throw Error("No runtime abstraction layer provided");c=a}bz(e,"install"),d.install=e,a.default=b}}),bJ=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(a){function b(a){return!0===a||!1===a}function c(a){return"string"==typeof a||a instanceof String}function d(a){return"number"==typeof a||a instanceof Number}function e(a){return a instanceof Error}function f(a){return"function"==typeof a}function g(a){return Array.isArray(a)}function h(a){return g(a)&&a.every(a=>c(a))}Object.defineProperty(a,"__esModule",{value:!0}),a.stringArray=a.array=a.func=a.error=a.number=a.string=a.boolean=void 0,bz(b,"boolean"),a.boolean=b,bz(c,"string"),a.string=c,bz(d,"number"),a.number=d,bz(e,"error"),a.error=e,bz(f,"func"),a.func=f,bz(g,"array"),a.array=g,bz(h,"stringArray"),a.stringArray=h}}),bK=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(a){let b;Object.defineProperty(a,"__esModule",{value:!0}),a.Emitter=a.Event=void 0;var c,d,e=bI();c=d||(a.Event=d={}),b={dispose(){}},c.None=function(){return b};var f=class{static{bz(this,"CallbackList")}add(a,b=null,c){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(a),this._contexts.push(b),Array.isArray(c)&&c.push({dispose:bz(()=>this.remove(a,b),"dispose")})}remove(a,b=null){if(!this._callbacks)return;let c=!1;for(let d=0,e=this._callbacks.length;d<e;d++)if(this._callbacks[d]===a)if(this._contexts[d]===b){this._callbacks.splice(d,1),this._contexts.splice(d,1);return}else c=!0;if(c)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...a){if(!this._callbacks)return[];let b=[],c=this._callbacks.slice(0),d=this._contexts.slice(0);for(let f=0,g=c.length;f<g;f++)try{b.push(c[f].apply(d[f],a))}catch(a){(0,e.default)().console.error(a)}return b}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}},g=class a{static{bz(this,"Emitter")}constructor(a){this._options=a}get event(){return this._event||(this._event=(b,c,d)=>{this._callbacks||(this._callbacks=new f),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(b,c);let e={dispose:bz(()=>{this._callbacks&&(this._callbacks.remove(b,c),e.dispose=a._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(d)&&d.push(e),e}),this._event}fire(a){this._callbacks&&this._callbacks.invoke.call(this._callbacks,a)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};a.Emitter=g,g._noop=function(){}}}),bL=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.CancellationTokenSource=a.CancellationToken=void 0;var b,c=bI(),d=bJ(),e=bK(),f=b||(a.CancellationToken=b={});function g(a){return a&&(a===f.None||a===f.Cancelled||d.boolean(a.isCancellationRequested)&&!!a.onCancellationRequested)}f.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:e.Event.None}),f.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:e.Event.None}),bz(g,"is"),f.is=g;var h=Object.freeze(function(a,b){let d=(0,c.default)().timer.setTimeout(a.bind(b),0);return{dispose(){d.dispose()}}}),i=class{static{bz(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?h:(this._emitter||(this._emitter=new e.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}};a.CancellationTokenSource=class{static{bz(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new i),this._token}cancel(){this._token?this._token.cancel():this._token=b.Cancelled}dispose(){this._token?this._token instanceof i&&this._token.dispose():this._token=b.None}}}}),bM=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.Message=a.NotificationType9=a.NotificationType8=a.NotificationType7=a.NotificationType6=a.NotificationType5=a.NotificationType4=a.NotificationType3=a.NotificationType2=a.NotificationType1=a.NotificationType0=a.NotificationType=a.RequestType9=a.RequestType8=a.RequestType7=a.RequestType6=a.RequestType5=a.RequestType4=a.RequestType3=a.RequestType2=a.RequestType1=a.RequestType=a.RequestType0=a.AbstractMessageSignature=a.ParameterStructures=a.ResponseError=a.ErrorCodes=void 0;var b,c,d,e=bJ();(b=c||(a.ErrorCodes=c={})).ParseError=-32700,b.InvalidRequest=-32600,b.MethodNotFound=-32601,b.InvalidParams=-32602,b.InternalError=-32603,b.jsonrpcReservedErrorRangeStart=-32099,b.serverErrorStart=-32099,b.MessageWriteError=-32099,b.MessageReadError=-32098,b.PendingResponseRejected=-32097,b.ConnectionInactive=-32096,b.ServerNotInitialized=-32002,b.UnknownErrorCode=-32001,b.jsonrpcReservedErrorRangeEnd=-32e3,b.serverErrorEnd=-32e3,a.ResponseError=class a extends Error{static{bz(this,"ResponseError")}constructor(b,d,f){super(d),this.code=e.number(b)?b:c.UnknownErrorCode,this.data=f,Object.setPrototypeOf(this,a.prototype)}toJson(){let a={code:this.code,message:this.message};return void 0!==this.data&&(a.data=this.data),a}};var f=class a{static{bz(this,"ParameterStructures")}constructor(a){this.kind=a}static is(b){return b===a.auto||b===a.byName||b===a.byPosition}toString(){return this.kind}};a.ParameterStructures=f,f.auto=new f("auto"),f.byPosition=new f("byPosition"),f.byName=new f("byName");var g=class{static{bz(this,"AbstractMessageSignature")}constructor(a,b){this.method=a,this.numberOfParams=b}get parameterStructures(){return f.auto}};a.AbstractMessageSignature=g,a.RequestType0=class extends g{static{bz(this,"RequestType0")}constructor(a){super(a,0)}},a.RequestType=class extends g{static{bz(this,"RequestType")}constructor(a,b=f.auto){super(a,1),this._parameterStructures=b}get parameterStructures(){return this._parameterStructures}},a.RequestType1=class extends g{static{bz(this,"RequestType1")}constructor(a,b=f.auto){super(a,1),this._parameterStructures=b}get parameterStructures(){return this._parameterStructures}},a.RequestType2=class extends g{static{bz(this,"RequestType2")}constructor(a){super(a,2)}},a.RequestType3=class extends g{static{bz(this,"RequestType3")}constructor(a){super(a,3)}},a.RequestType4=class extends g{static{bz(this,"RequestType4")}constructor(a){super(a,4)}},a.RequestType5=class extends g{static{bz(this,"RequestType5")}constructor(a){super(a,5)}},a.RequestType6=class extends g{static{bz(this,"RequestType6")}constructor(a){super(a,6)}},a.RequestType7=class extends g{static{bz(this,"RequestType7")}constructor(a){super(a,7)}},a.RequestType8=class extends g{static{bz(this,"RequestType8")}constructor(a){super(a,8)}},a.RequestType9=class extends g{static{bz(this,"RequestType9")}constructor(a){super(a,9)}},a.NotificationType=class extends g{static{bz(this,"NotificationType")}constructor(a,b=f.auto){super(a,1),this._parameterStructures=b}get parameterStructures(){return this._parameterStructures}},a.NotificationType0=class extends g{static{bz(this,"NotificationType0")}constructor(a){super(a,0)}},a.NotificationType1=class extends g{static{bz(this,"NotificationType1")}constructor(a,b=f.auto){super(a,1),this._parameterStructures=b}get parameterStructures(){return this._parameterStructures}},a.NotificationType2=class extends g{static{bz(this,"NotificationType2")}constructor(a){super(a,2)}},a.NotificationType3=class extends g{static{bz(this,"NotificationType3")}constructor(a){super(a,3)}},a.NotificationType4=class extends g{static{bz(this,"NotificationType4")}constructor(a){super(a,4)}},a.NotificationType5=class extends g{static{bz(this,"NotificationType5")}constructor(a){super(a,5)}},a.NotificationType6=class extends g{static{bz(this,"NotificationType6")}constructor(a){super(a,6)}},a.NotificationType7=class extends g{static{bz(this,"NotificationType7")}constructor(a){super(a,7)}},a.NotificationType8=class extends g{static{bz(this,"NotificationType8")}constructor(a){super(a,8)}},a.NotificationType9=class extends g{static{bz(this,"NotificationType9")}constructor(a){super(a,9)}},function(a){function b(a){return a&&e.string(a.method)&&(e.string(a.id)||e.number(a.id))}function c(a){return a&&e.string(a.method)&&void 0===a.id}function d(a){return a&&(void 0!==a.result||!!a.error)&&(e.string(a.id)||e.number(a.id)||null===a.id)}bz(b,"isRequest"),a.isRequest=b,bz(c,"isNotification"),a.isNotification=c,bz(d,"isResponse"),a.isResponse=d}(d||(a.Message=d={}))}}),bN=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.LRUCache=a.LinkedMap=a.Touch=void 0,(b=d||(a.Touch=d={})).None=0,b.First=1,b.AsOld=b.First,b.Last=2,b.AsNew=b.Last;var b,c,d,e=class{static{bz(this,"LinkedMap")}constructor(){this[c]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(a){return this._map.has(a)}get(a,b=d.None){let c=this._map.get(a);if(c)return b!==d.None&&this.touch(c,b),c.value}set(a,b,c=d.None){let e=this._map.get(a);if(e)e.value=b,c!==d.None&&this.touch(e,c);else{switch(e={key:a,value:b,next:void 0,previous:void 0},c){case d.None:this.addItemLast(e);break;case d.First:this.addItemFirst(e);break;case d.Last:default:this.addItemLast(e)}this._map.set(a,e),this._size++}return this}delete(a){return!!this.remove(a)}remove(a){let b=this._map.get(a);if(b)return this._map.delete(a),this.removeItem(b),this._size--,b.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let a=this._head;return this._map.delete(a.key),this.removeItem(a),this._size--,a.value}forEach(a,b){let c=this._state,d=this._head;for(;d;){if(b?a.bind(b)(d.value,d.key,this):a(d.value,d.key,this),this._state!==c)throw Error("LinkedMap got modified during iteration.");d=d.next}}keys(){let a=this._state,b=this._head,c={[Symbol.iterator]:()=>c,next:bz(()=>{if(this._state!==a)throw Error("LinkedMap got modified during iteration.");if(!b)return{value:void 0,done:!0};{let a={value:b.key,done:!1};return b=b.next,a}},"next")};return c}values(){let a=this._state,b=this._head,c={[Symbol.iterator]:()=>c,next:bz(()=>{if(this._state!==a)throw Error("LinkedMap got modified during iteration.");if(!b)return{value:void 0,done:!0};{let a={value:b.value,done:!1};return b=b.next,a}},"next")};return c}entries(){let a=this._state,b=this._head,c={[Symbol.iterator]:()=>c,next:bz(()=>{if(this._state!==a)throw Error("LinkedMap got modified during iteration.");if(!b)return{value:void 0,done:!0};{let a={value:[b.key,b.value],done:!1};return b=b.next,a}},"next")};return c}[(c=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(a){if(a>=this.size)return;if(0===a)return void this.clear();let b=this._head,c=this.size;for(;b&&c>a;)this._map.delete(b.key),b=b.next,c--;this._head=b,this._size=c,b&&(b.previous=void 0),this._state++}addItemFirst(a){if(this._head||this._tail)if(this._head)a.next=this._head,this._head.previous=a;else throw Error("Invalid list");else this._tail=a;this._head=a,this._state++}addItemLast(a){if(this._head||this._tail)if(this._tail)a.previous=this._tail,this._tail.next=a;else throw Error("Invalid list");else this._head=a;this._tail=a,this._state++}removeItem(a){if(a===this._head&&a===this._tail)this._head=void 0,this._tail=void 0;else if(a===this._head){if(!a.next)throw Error("Invalid list");a.next.previous=void 0,this._head=a.next}else if(a===this._tail){if(!a.previous)throw Error("Invalid list");a.previous.next=void 0,this._tail=a.previous}else{let b=a.next,c=a.previous;if(!b||!c)throw Error("Invalid list");b.previous=c,c.next=b}a.next=void 0,a.previous=void 0,this._state++}touch(a,b){if(!this._head||!this._tail)throw Error("Invalid list");if(b===d.First||b===d.Last){if(b===d.First){if(a===this._head)return;let b=a.next,c=a.previous;a===this._tail?(c.next=void 0,this._tail=c):(b.previous=c,c.next=b),a.previous=void 0,a.next=this._head,this._head.previous=a,this._head=a,this._state++}else if(b===d.Last){if(a===this._tail)return;let b=a.next,c=a.previous;a===this._head?(b.previous=void 0,this._head=b):(b.previous=c,c.next=b),a.next=void 0,a.previous=this._tail,this._tail.next=a,this._tail=a,this._state++}}}toJSON(){let a=[];return this.forEach((b,c)=>{a.push([c,b])}),a}fromJSON(a){for(let[b,c]of(this.clear(),a))this.set(b,c)}};a.LinkedMap=e,a.LRUCache=class extends e{static{bz(this,"LRUCache")}constructor(a,b=1){super(),this._limit=a,this._ratio=Math.min(Math.max(0,b),1)}get limit(){return this._limit}set limit(a){this._limit=a,this.checkTrim()}get ratio(){return this._ratio}set ratio(a){this._ratio=Math.min(Math.max(0,a),1),this.checkTrim()}get(a,b=d.AsNew){return super.get(a,b)}peek(a){return super.get(a,d.None)}set(a,b){return super.set(a,b,d.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}}}),bO=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.Disposable=void 0;var b,c=b||(a.Disposable=b={});function d(a){return{dispose:a}}bz(d,"create"),c.create=d}}),bP=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.SharedArrayReceiverStrategy=a.SharedArraySenderStrategy=void 0;var b,c,d=bL();(b=c||(c={})).Continue=0,b.Cancelled=1,a.SharedArraySenderStrategy=class{static{bz(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(a){if(null===a.id)return;let b=new SharedArrayBuffer(4);new Int32Array(b,0,1)[0]=c.Continue,this.buffers.set(a.id,b),a.$cancellationData=b}async sendCancellation(a,b){let d=this.buffers.get(b);if(void 0===d)return;let e=new Int32Array(d,0,1);Atomics.store(e,0,c.Cancelled)}cleanup(a){this.buffers.delete(a)}dispose(){this.buffers.clear()}};var e=class{static{bz(this,"SharedArrayBufferCancellationToken")}constructor(a){this.data=new Int32Array(a,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===c.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},f=class{static{bz(this,"SharedArrayBufferCancellationTokenSource")}constructor(a){this.token=new e(a)}cancel(){}dispose(){}};a.SharedArrayReceiverStrategy=class{static{bz(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(a){let b=a.$cancellationData;return void 0===b?new d.CancellationTokenSource:new f(b)}}}}),bQ=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.Semaphore=void 0;var b=bI();a.Semaphore=class{static{bz(this,"Semaphore")}constructor(a=1){if(a<=0)throw Error("Capacity must be greater than 0");this._capacity=a,this._active=0,this._waiting=[]}lock(a){return new Promise((b,c)=>{this._waiting.push({thunk:a,resolve:b,reject:c}),this.runNext()})}get active(){return this._active}runNext(){0!==this._waiting.length&&this._active!==this._capacity&&(0,b.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(0===this._waiting.length||this._active===this._capacity)return;let a=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let b=a.thunk();b instanceof Promise?b.then(b=>{this._active--,a.resolve(b),this.runNext()},b=>{this._active--,a.reject(b),this.runNext()}):(this._active--,a.resolve(b),this.runNext())}catch(b){this._active--,a.reject(b),this.runNext()}}}}}),bR=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ReadableStreamMessageReader=a.AbstractMessageReader=a.MessageReader=void 0;var b,c,d=bI(),e=bJ(),f=bK(),g=bQ(),h=b||(a.MessageReader=b={});function i(a){return a&&e.func(a.listen)&&e.func(a.dispose)&&e.func(a.onError)&&e.func(a.onClose)&&e.func(a.onPartialMessage)}bz(i,"is"),h.is=i;var j=class{static{bz(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new f.Emitter,this.closeEmitter=new f.Emitter,this.partialMessageEmitter=new f.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(a){this.errorEmitter.fire(this.asError(a))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(a){this.partialMessageEmitter.fire(a)}asError(a){return a instanceof Error?a:Error(`Reader received error. Reason: ${e.string(a.message)?a.message:"unknown"}`)}};a.AbstractMessageReader=j;var k=c||(c={});function l(a){let b,c,e,f=new Map,g=new Map;if(void 0===a||"string"==typeof a)b=a??"utf-8";else{if(b=a.charset??"utf-8",void 0!==a.contentDecoder&&(c=a.contentDecoder,f.set(c.name,c)),void 0!==a.contentDecoders)for(let b of a.contentDecoders)f.set(b.name,b);if(void 0!==a.contentTypeDecoder&&(e=a.contentTypeDecoder,g.set(e.name,e)),void 0!==a.contentTypeDecoders)for(let b of a.contentTypeDecoders)g.set(b.name,b)}return void 0===e&&(e=(0,d.default)().applicationJson.decoder,g.set(e.name,e)),{charset:b,contentDecoder:c,contentDecoders:f,contentTypeDecoder:e,contentTypeDecoders:g}}bz(l,"fromOptions"),k.fromOptions=l,a.ReadableStreamMessageReader=class extends j{static{bz(this,"ReadableStreamMessageReader")}constructor(a,b){super(),this.readable=a,this.options=c.fromOptions(b),this.buffer=(0,d.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new g.Semaphore(1)}set partialMessageTimeout(a){this._partialMessageTimeout=a}get partialMessageTimeout(){return this._partialMessageTimeout}listen(a){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=a;let b=this.readable.onData(a=>{this.onData(a)});return this.readable.onError(a=>this.fireError(a)),this.readable.onClose(()=>this.fireClose()),b}onData(a){try{for(this.buffer.append(a);;){if(-1===this.nextMessageLength){let a=this.buffer.tryReadHeaders(!0);if(!a)return;let b=a.get("content-length");if(!b)return void this.fireError(Error(`Header must provide a Content-Length property.
|
|
2
|
+
${JSON.stringify(Object.fromEntries(a))}`));let c=parseInt(b);if(isNaN(c))return void this.fireError(Error(`Content-Length value must be a number. Got ${b}`));this.nextMessageLength=c}let a=this.buffer.tryReadBody(this.nextMessageLength);if(void 0===a)return void this.setPartialMessageTimer();this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let b=void 0!==this.options.contentDecoder?await this.options.contentDecoder.decode(a):a,c=await this.options.contentTypeDecoder.decode(b,this.options);this.callback(c)}).catch(a=>{this.fireError(a)})}}catch(a){this.fireError(a)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),this._partialMessageTimeout<=0||(this.partialMessageTimer=(0,d.default)().timer.setTimeout((a,b)=>{this.partialMessageTimer=void 0,a===this.messageToken&&(this.firePartialMessage({messageToken:a,waitingTime:b}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}}}}),bS=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.WriteableStreamMessageWriter=a.AbstractMessageWriter=a.MessageWriter=void 0;var b,c,d=bI(),e=bJ(),f=bQ(),g=bK(),h=b||(a.MessageWriter=b={});function i(a){return a&&e.func(a.dispose)&&e.func(a.onClose)&&e.func(a.onError)&&e.func(a.write)}bz(i,"is"),h.is=i;var j=class{static{bz(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new g.Emitter,this.closeEmitter=new g.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(a,b,c){this.errorEmitter.fire([this.asError(a),b,c])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(a){return a instanceof Error?a:Error(`Writer received error. Reason: ${e.string(a.message)?a.message:"unknown"}`)}};a.AbstractMessageWriter=j;var k=c||(c={});function l(a){return void 0===a||"string"==typeof a?{charset:a??"utf-8",contentTypeEncoder:(0,d.default)().applicationJson.encoder}:{charset:a.charset??"utf-8",contentEncoder:a.contentEncoder,contentTypeEncoder:a.contentTypeEncoder??(0,d.default)().applicationJson.encoder}}bz(l,"fromOptions"),k.fromOptions=l,a.WriteableStreamMessageWriter=class extends j{static{bz(this,"WriteableStreamMessageWriter")}constructor(a,b){super(),this.writable=a,this.options=c.fromOptions(b),this.errorCount=0,this.writeSemaphore=new f.Semaphore(1),this.writable.onError(a=>this.fireError(a)),this.writable.onClose(()=>this.fireClose())}async write(a){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(a,this.options).then(a=>void 0!==this.options.contentEncoder?this.options.contentEncoder.encode(a):a).then(b=>{let c=[];return c.push("Content-Length: ",b.byteLength.toString(),"\r\n"),c.push("\r\n"),this.doWrite(a,c,b)},a=>{throw this.fireError(a),a}))}async doWrite(a,b,c){try{return await this.writable.write(b.join(""),"ascii"),this.writable.write(c)}catch(b){return this.handleError(b,a),Promise.reject(b)}}handleError(a,b){this.errorCount++,this.fireError(a,b,this.errorCount)}end(){this.writable.end()}}}}),bT=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.AbstractMessageBuffer=void 0,a.AbstractMessageBuffer=class{static{bz(this,"AbstractMessageBuffer")}constructor(a="utf-8"){this._encoding=a,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(a){let b="string"==typeof a?this.fromString(a,this._encoding):a;this._chunks.push(b),this._totalLength+=b.byteLength}tryReadHeaders(a=!1){if(0===this._chunks.length)return;let b=0,c=0,d=0,e=0;a:for(;c<this._chunks.length;){let a=this._chunks[c];for(d=0;d<a.length;){switch(a[d]){case 13:switch(b){case 0:b=1;break;case 2:b=3;break;default:b=0}break;case 10:switch(b){case 1:b=2;break;case 3:b=4,d++;break a;default:b=0}break;default:b=0}d++}e+=a.byteLength,c++}if(4!==b)return;let f=this._read(e+d),g=new Map,h=this.toString(f,"ascii").split("\r\n");if(h.length<2)return g;for(let b=0;b<h.length-2;b++){let c=h[b],d=c.indexOf(":");if(-1===d)throw Error(`Message header must separate key and value using ':'
|
|
3
|
+
${c}`);let e=c.substr(0,d),f=c.substr(d+1).trim();g.set(a?e.toLowerCase():e,f)}return g}tryReadBody(a){if(!(this._totalLength<a))return this._read(a)}get numberOfBytes(){return this._totalLength}_read(a){if(0===a)return this.emptyBuffer();if(a>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===a){let b=this._chunks[0];return this._chunks.shift(),this._totalLength-=a,this.asNative(b)}if(this._chunks[0].byteLength>a){let b=this._chunks[0],c=this.asNative(b,a);return this._chunks[0]=b.slice(a),this._totalLength-=a,c}let b=this.allocNative(a),c=0;for(;a>0;){let d=this._chunks[0];if(d.byteLength>a){let e=d.slice(0,a);b.set(e,c),c+=a,this._chunks[0]=d.slice(a),this._totalLength-=a,a-=a}else b.set(d,c),c+=d.byteLength,this._chunks.shift(),this._totalLength-=d.byteLength,a-=d.byteLength}return b}}}}),bU=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.createMessageConnection=a.ConnectionOptions=a.MessageStrategy=a.CancellationStrategy=a.CancellationSenderStrategy=a.CancellationReceiverStrategy=a.RequestCancellationReceiverStrategy=a.IdCancellationReceiverStrategy=a.ConnectionStrategy=a.ConnectionError=a.ConnectionErrors=a.LogTraceNotification=a.SetTraceNotification=a.TraceFormat=a.TraceValues=a.Trace=a.NullLogger=a.ProgressType=a.ProgressToken=void 0;var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z=bI(),A=bJ(),B=bM(),C=bN(),D=bK(),E=bL();(g||(g={})).type=new B.NotificationType("$/cancelRequest");var F=h||(a.ProgressToken=h={});function G(a){return"string"==typeof a||"number"==typeof a}bz(G,"is"),F.is=G,(i||(i={})).type=new B.NotificationType("$/progress"),a.ProgressType=class{static{bz(this,"ProgressType")}};var H=j||(j={});function I(a){return A.func(a)}bz(I,"is"),H.is=I,a.NullLogger=Object.freeze({error:bz(()=>{},"error"),warn:bz(()=>{},"warn"),info:bz(()=>{},"info"),log:bz(()=>{},"log")}),(b=k||(a.Trace=k={}))[b.Off=0]="Off",b[b.Messages=1]="Messages",b[b.Compact=2]="Compact",b[b.Verbose=3]="Verbose",(c=l||(a.TraceValues=l={})).Off="off",c.Messages="messages",c.Compact="compact",c.Verbose="verbose";var J=k||(a.Trace=k={});function K(a){if(!A.string(a))return J.Off;switch(a=a.toLowerCase()){case"off":default:return J.Off;case"messages":return J.Messages;case"compact":return J.Compact;case"verbose":return J.Verbose}}function L(a){switch(a){case J.Off:return"off";case J.Messages:return"messages";case J.Compact:return"compact";case J.Verbose:return"verbose";default:return"off"}}bz(K,"fromString"),J.fromString=K,bz(L,"toString"),J.toString=L,(d=m||(a.TraceFormat=m={})).Text="text",d.JSON="json";var M=m||(a.TraceFormat=m={});function N(a){return A.string(a)&&"json"===(a=a.toLowerCase())?M.JSON:M.Text}bz(N,"fromString"),M.fromString=N,(n||(a.SetTraceNotification=n={})).type=new B.NotificationType("$/setTrace"),(o||(a.LogTraceNotification=o={})).type=new B.NotificationType("$/logTrace"),(e=p||(a.ConnectionErrors=p={}))[e.Closed=1]="Closed",e[e.Disposed=2]="Disposed",e[e.AlreadyListening=3]="AlreadyListening";var O=class a extends Error{static{bz(this,"ConnectionError")}constructor(b,c){super(c),this.code=b,Object.setPrototypeOf(this,a.prototype)}};a.ConnectionError=O;var P=q||(a.ConnectionStrategy=q={});function Q(a){return a&&A.func(a.cancelUndispatched)}bz(Q,"is"),P.is=Q;var R=r||(a.IdCancellationReceiverStrategy=r={});function S(a){return a&&(void 0===a.kind||"id"===a.kind)&&A.func(a.createCancellationTokenSource)&&(void 0===a.dispose||A.func(a.dispose))}bz(S,"is"),R.is=S;var T=s||(a.RequestCancellationReceiverStrategy=s={});function U(a){return a&&"request"===a.kind&&A.func(a.createCancellationTokenSource)&&(void 0===a.dispose||A.func(a.dispose))}bz(U,"is"),T.is=U;var V=t||(a.CancellationReceiverStrategy=t={});function W(a){return r.is(a)||s.is(a)}V.Message=Object.freeze({createCancellationTokenSource:a=>new E.CancellationTokenSource}),bz(W,"is"),V.is=W;var X=u||(a.CancellationSenderStrategy=u={});function Y(a){return a&&A.func(a.sendCancellation)&&A.func(a.cleanup)}X.Message=Object.freeze({sendCancellation:(a,b)=>a.sendNotification(g.type,{id:b}),cleanup(a){}}),bz(Y,"is"),X.is=Y;var Z=v||(a.CancellationStrategy=v={});function $(a){return a&&t.is(a.receiver)&&u.is(a.sender)}Z.Message=Object.freeze({receiver:t.Message,sender:u.Message}),bz($,"is"),Z.is=$;var _=w||(a.MessageStrategy=w={});function aa(a){return a&&A.func(a.handleMessage)}bz(aa,"is"),_.is=aa;var ab=x||(a.ConnectionOptions=x={});function ac(a){return a&&(v.is(a.cancellationStrategy)||q.is(a.connectionStrategy)||w.is(a.messageStrategy))}function ad(b,c,d,e){let f,l,q,s,t=void 0!==d?d:a.NullLogger,u=0,x=0,F=0,G=new Map,H=new Map,I=new Map,J=new C.LinkedMap,K=new Map,L=new Set,M=new Map,N=k.Off,P=m.Text,Q=y.New,R=new D.Emitter,S=new D.Emitter,T=new D.Emitter,U=new D.Emitter,V=new D.Emitter,W=e&&e.cancellationStrategy?e.cancellationStrategy:v.Message;function X(a){if(null===a)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+a.toString()}function Y(a){return null===a?"res-unknown-"+(++F).toString():"res-"+a.toString()}function Z(){return"not-"+(++x).toString()}function $(a,b){B.Message.isRequest(b)?a.set(X(b.id),b):B.Message.isResponse(b)?a.set(Y(b.id),b):a.set(Z(),b)}function _(a){}function aa(){return Q===y.Listening}function ab(){return Q===y.Closed}function ac(){return Q===y.Disposed}function ad(){(Q===y.New||Q===y.Listening)&&(Q=y.Closed,S.fire(void 0))}function ae(a){R.fire([a,void 0,void 0])}function af(a){R.fire(a)}function ag(){f||0===J.size||(f=(0,z.default)().timer.setImmediate(()=>{f=void 0,ai()}))}function ah(a){B.Message.isRequest(a)?ak(a):B.Message.isNotification(a)?am(a):B.Message.isResponse(a)?al(a):an(a)}function ai(){if(0===J.size)return;let a=J.shift();try{let b=e?.messageStrategy;w.is(b)?b.handleMessage(a,ah):ah(a)}finally{ag()}}bz(X,"createRequestQueueKey"),bz(Y,"createResponseQueueKey"),bz(Z,"createNotificationQueueKey"),bz($,"addMessageToQueue"),bz(_,"cancelUndispatched"),bz(aa,"isListening"),bz(ab,"isClosed"),bz(ac,"isDisposed"),bz(ad,"closeHandler"),bz(ae,"readErrorHandler"),bz(af,"writeErrorHandler"),b.onClose(ad),b.onError(ae),c.onClose(ad),c.onError(af),bz(ag,"triggerMessageQueue"),bz(ah,"handleMessage"),bz(ai,"processMessageQueue");let aj=bz(a=>{try{if(B.Message.isNotification(a)&&a.method===g.type.method){let b=a.params.id,d=X(b),f=J.get(d);if(B.Message.isRequest(f)){let g=e?.connectionStrategy,h=g&&g.cancelUndispatched?g.cancelUndispatched(f,_):_(f);if(h&&(void 0!==h.error||void 0!==h.result)){J.delete(d),M.delete(b),h.id=f.id,ar(h,a.method,Date.now()),c.write(h).catch(()=>t.error("Sending response for canceled message failed."));return}}let g=M.get(b);if(void 0!==g){g.cancel(),at(a);return}L.add(b)}$(J,a)}finally{ag()}},"callback");function ak(a){let b,d;if(ac())return;function e(b,d,e){let f={jsonrpc:"2.0",id:a.id};b instanceof B.ResponseError?f.error=b.toJson():f.result=void 0===b?null:b,ar(f,d,e),c.write(f).catch(()=>t.error("Sending response failed."))}function f(b,d,e){let f={jsonrpc:"2.0",id:a.id,error:b.toJson()};ar(f,d,e),c.write(f).catch(()=>t.error("Sending response failed."))}function g(b,d,e){void 0===b&&(b=null);let f={jsonrpc:"2.0",id:a.id,result:b};ar(f,d,e),c.write(f).catch(()=>t.error("Sending response failed."))}bz(e,"reply"),bz(f,"replyError"),bz(g,"replySuccess"),as(a);let h=G.get(a.method);h&&(b=h.type,d=h.handler);let i=Date.now();if(d||q){let c=a.id??String(Date.now()),h=r.is(W.receiver)?W.receiver.createCancellationTokenSource(c):W.receiver.createCancellationTokenSource(a);null!==a.id&&L.has(a.id)&&h.cancel(),null!==a.id&&M.set(c,h);try{let j;if(d)if(void 0===a.params){if(void 0!==b&&0!==b.numberOfParams)return void f(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${a.method} defines ${b.numberOfParams} params but received none.`),a.method,i);j=d(h.token)}else if(Array.isArray(a.params)){if(void 0!==b&&b.parameterStructures===B.ParameterStructures.byName)return void f(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${a.method} defines parameters by name but received parameters by position`),a.method,i);j=d(...a.params,h.token)}else{if(void 0!==b&&b.parameterStructures===B.ParameterStructures.byPosition)return void f(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${a.method} defines parameters by position but received parameters by name`),a.method,i);j=d(a.params,h.token)}else q&&(j=q(a.method,a.params,h.token));let k=j;j?k.then?k.then(b=>{M.delete(c),e(b,a.method,i)},b=>{M.delete(c),b instanceof B.ResponseError?f(b,a.method,i):b&&A.string(b.message)?f(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${a.method} failed with message: ${b.message}`),a.method,i):f(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${a.method} failed unexpectedly without providing any details.`),a.method,i)}):(M.delete(c),e(j,a.method,i)):(M.delete(c),g(j,a.method,i))}catch(b){M.delete(c),b instanceof B.ResponseError?e(b,a.method,i):b&&A.string(b.message)?f(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${a.method} failed with message: ${b.message}`),a.method,i):f(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${a.method} failed unexpectedly without providing any details.`),a.method,i)}}else f(new B.ResponseError(B.ErrorCodes.MethodNotFound,`Unhandled method ${a.method}`),a.method,i)}function al(a){if(!ac())if(null===a.id)a.error?t.error(`Received response message without id: Error is:
|
|
4
|
+
${JSON.stringify(a.error,void 0,4)}`):t.error("Received response message without id. No further error information provided.");else{let b=a.id,c=K.get(b);if(au(a,c),void 0!==c){K.delete(b);try{if(a.error){let b=a.error;c.reject(new B.ResponseError(b.code,b.message,b.data))}else if(void 0!==a.result)c.resolve(a.result);else throw Error("Should never happen.")}catch(a){a.message?t.error(`Response handler '${c.method}' failed with message: ${a.message}`):t.error(`Response handler '${c.method}' failed unexpectedly.`)}}}}function am(a){let b,c;if(!ac()){if(a.method===g.type.method){let b=a.params.id;L.delete(b),at(a);return}{let d=H.get(a.method);d&&(b=d.handler,c=d.type)}if(b||s)try{if(at(a),b)if(void 0===a.params)void 0!==c&&0!==c.numberOfParams&&c.parameterStructures!==B.ParameterStructures.byName&&t.error(`Notification ${a.method} defines ${c.numberOfParams} params but received none.`),b();else if(Array.isArray(a.params)){let d=a.params;a.method===i.type.method&&2===d.length&&h.is(d[0])?b({token:d[0],value:d[1]}):(void 0!==c&&(c.parameterStructures===B.ParameterStructures.byName&&t.error(`Notification ${a.method} defines parameters by name but received parameters by position`),c.numberOfParams!==a.params.length&&t.error(`Notification ${a.method} defines ${c.numberOfParams} params but received ${d.length} arguments`)),b(...d))}else void 0!==c&&c.parameterStructures===B.ParameterStructures.byPosition&&t.error(`Notification ${a.method} defines parameters by position but received parameters by name`),b(a.params);else s&&s(a.method,a.params)}catch(b){b.message?t.error(`Notification handler '${a.method}' failed with message: ${b.message}`):t.error(`Notification handler '${a.method}' failed unexpectedly.`)}else T.fire(a)}}function an(a){if(!a)return void t.error("Received empty message.");if(t.error(`Received message which is neither a response nor a notification message:
|
|
5
|
+
${JSON.stringify(a,null,4)}`),A.string(a.id)||A.number(a.id)){let b=a.id,c=K.get(b);c&&c.reject(Error("The received response has neither a result nor an error property."))}}function ao(a){if(null!=a)switch(N){case k.Verbose:return JSON.stringify(a,null,4);case k.Compact:return JSON.stringify(a);default:return}}function ap(a){if(N!==k.Off&&l)if(P===m.Text){let b;(N===k.Verbose||N===k.Compact)&&a.params&&(b=`Params: ${ao(a.params)}
|
|
6
|
+
|
|
7
|
+
`),l.log(`Sending request '${a.method} - (${a.id})'.`,b)}else av("send-request",a)}function aq(a){if(N!==k.Off&&l)if(P===m.Text){let b;(N===k.Verbose||N===k.Compact)&&(b=a.params?`Params: ${ao(a.params)}
|
|
8
|
+
|
|
9
|
+
`:"No parameters provided.\n\n"),l.log(`Sending notification '${a.method}'.`,b)}else av("send-notification",a)}function ar(a,b,c){if(N!==k.Off&&l)if(P===m.Text){let d;(N===k.Verbose||N===k.Compact)&&(a.error&&a.error.data?d=`Error data: ${ao(a.error.data)}
|
|
10
|
+
|
|
11
|
+
`:a.result?d=`Result: ${ao(a.result)}
|
|
12
|
+
|
|
13
|
+
`:void 0===a.error&&(d="No result returned.\n\n")),l.log(`Sending response '${b} - (${a.id})'. Processing request took ${Date.now()-c}ms`,d)}else av("send-response",a)}function as(a){if(N!==k.Off&&l)if(P===m.Text){let b;(N===k.Verbose||N===k.Compact)&&a.params&&(b=`Params: ${ao(a.params)}
|
|
14
|
+
|
|
15
|
+
`),l.log(`Received request '${a.method} - (${a.id})'.`,b)}else av("receive-request",a)}function at(a){if(N!==k.Off&&l&&a.method!==o.type.method)if(P===m.Text){let b;(N===k.Verbose||N===k.Compact)&&(b=a.params?`Params: ${ao(a.params)}
|
|
16
|
+
|
|
17
|
+
`:"No parameters provided.\n\n"),l.log(`Received notification '${a.method}'.`,b)}else av("receive-notification",a)}function au(a,b){if(N!==k.Off&&l)if(P===m.Text){let c;if((N===k.Verbose||N===k.Compact)&&(a.error&&a.error.data?c=`Error data: ${ao(a.error.data)}
|
|
18
|
+
|
|
19
|
+
`:a.result?c=`Result: ${ao(a.result)}
|
|
20
|
+
|
|
21
|
+
`:void 0===a.error&&(c="No result returned.\n\n")),b){let d=a.error?` Request failed: ${a.error.message} (${a.error.code}).`:"";l.log(`Received response '${b.method} - (${a.id})' in ${Date.now()-b.timerStart}ms.${d}`,c)}else l.log(`Received response ${a.id} without active response promise.`,c)}else av("receive-response",a)}function av(a,b){if(!l||N===k.Off)return;let c={isLSPMessage:!0,type:a,message:b,timestamp:Date.now()};l.log(c)}function aw(){if(ab())throw new O(p.Closed,"Connection is closed.");if(ac())throw new O(p.Disposed,"Connection is disposed.")}function ax(){if(aa())throw new O(p.AlreadyListening,"Connection is already listening")}function ay(){if(!aa())throw Error("Call listen() first.")}function az(a){return void 0===a?null:a}function aA(a){if(null!==a)return a}function aB(a){return null!=a&&!Array.isArray(a)&&"object"==typeof a}function aC(a,b){switch(a){case B.ParameterStructures.auto:if(aB(b))return aA(b);return[az(b)];case B.ParameterStructures.byName:if(!aB(b))throw Error("Received parameters by name but param is not an object literal.");return aA(b);case B.ParameterStructures.byPosition:return[az(b)];default:throw Error(`Unknown parameter structure ${a.toString()}`)}}function aD(a,b){let c,d=a.numberOfParams;switch(d){case 0:c=void 0;break;case 1:c=aC(a.parameterStructures,b[0]);break;default:c=[];for(let a=0;a<b.length&&a<d;a++)c.push(az(b[a]));if(b.length<d)for(let a=b.length;a<d;a++)c.push(null)}return c}bz(ak,"handleRequest"),bz(al,"handleResponse"),bz(am,"handleNotification"),bz(an,"handleInvalidMessage"),bz(ao,"stringifyTrace"),bz(ap,"traceSendingRequest"),bz(aq,"traceSendingNotification"),bz(ar,"traceSendingResponse"),bz(as,"traceReceivedRequest"),bz(at,"traceReceivedNotification"),bz(au,"traceReceivedResponse"),bz(av,"logLSPMessage"),bz(aw,"throwIfClosedOrDisposed"),bz(ax,"throwIfListening"),bz(ay,"throwIfNotListening"),bz(az,"undefinedToNull"),bz(aA,"nullToUndefined"),bz(aB,"isNamedParam"),bz(aC,"computeSingleParam"),bz(aD,"computeMessageParams");let aE={sendNotification:bz((a,...b)=>{let d,e;if(aw(),A.string(a)){d=a;let c=b[0],f=0,g=B.ParameterStructures.auto;B.ParameterStructures.is(c)&&(f=1,g=c);let h=b.length,i=h-f;switch(i){case 0:e=void 0;break;case 1:e=aC(g,b[f]);break;default:if(g===B.ParameterStructures.byName)throw Error(`Received ${i} parameters for 'by Name' notification parameter structure.`);e=b.slice(f,h).map(a=>az(a))}}else d=a.method,e=aD(a,b);let f={jsonrpc:"2.0",method:d,params:e};return aq(f),c.write(f).catch(a=>{throw t.error("Sending notification failed."),a})},"sendNotification"),onNotification:bz((a,b)=>{let c;return aw(),A.func(a)?s=a:b&&(A.string(a)?(c=a,H.set(a,{type:void 0,handler:b})):(c=a.method,H.set(a.method,{type:a,handler:b}))),{dispose:bz(()=>{void 0!==c?H.delete(c):s=void 0},"dispose")}},"onNotification"),onProgress:bz((a,b,c)=>{if(I.has(b))throw Error(`Progress handler for token ${b} already registered`);return I.set(b,c),{dispose:bz(()=>{I.delete(b)},"dispose")}},"onProgress"),sendProgress:bz((a,b,c)=>aE.sendNotification(i.type,{token:b,value:c}),"sendProgress"),onUnhandledProgress:U.event,sendRequest:bz((a,...b)=>{let d,e,f,g;if(aw(),ay(),A.string(a)){d=a;let c=b[0],f=b[b.length-1],h=0,i=B.ParameterStructures.auto;B.ParameterStructures.is(c)&&(h=1,i=c);let j=b.length;E.CancellationToken.is(f)&&(j-=1,g=f);let k=j-h;switch(k){case 0:e=void 0;break;case 1:e=aC(i,b[h]);break;default:if(i===B.ParameterStructures.byName)throw Error(`Received ${k} parameters for 'by Name' request parameter structure.`);e=b.slice(h,j).map(a=>az(a))}}else{d=a.method,e=aD(a,b);let c=a.numberOfParams;g=E.CancellationToken.is(b[c])?b[c]:void 0}let h=u++;g&&(f=g.onCancellationRequested(()=>{let a=W.sender.sendCancellation(aE,h);return void 0===a?(t.log(`Received no promise from cancellation strategy when cancelling id ${h}`),Promise.resolve()):a.catch(()=>{t.log(`Sending cancellation messages for id ${h} failed`)})}));let i={jsonrpc:"2.0",id:h,method:d,params:e};return ap(i),"function"==typeof W.sender.enableCancellation&&W.sender.enableCancellation(i),new Promise(async(a,b)=>{let e=bz(b=>{a(b),W.sender.cleanup(h),f?.dispose()},"resolveWithCleanup"),g=bz(a=>{b(a),W.sender.cleanup(h),f?.dispose()},"rejectWithCleanup"),j={method:d,timerStart:Date.now(),resolve:e,reject:g};try{await c.write(i),K.set(h,j)}catch(a){throw t.error("Sending request failed."),j.reject(new B.ResponseError(B.ErrorCodes.MessageWriteError,a.message?a.message:"Unknown reason")),a}})},"sendRequest"),onRequest:bz((a,b)=>{aw();let c=null;return j.is(a)?(c=void 0,q=a):A.string(a)?(c=null,void 0!==b&&(c=a,G.set(a,{handler:b,type:void 0}))):void 0!==b&&(c=a.method,G.set(a.method,{type:a,handler:b})),{dispose:bz(()=>{null!==c&&(void 0!==c?G.delete(c):q=void 0)},"dispose")}},"onRequest"),hasPendingResponse:bz(()=>K.size>0,"hasPendingResponse"),trace:bz(async(a,b,c)=>{let d=!1,e=m.Text;void 0!==c&&(A.boolean(c)?d=c:(d=c.sendNotification||!1,e=c.traceFormat||m.Text)),N=a,P=e,l=N===k.Off?void 0:b,!d||ab()||ac()||await aE.sendNotification(n.type,{value:k.toString(a)})},"trace"),onError:R.event,onClose:S.event,onUnhandledNotification:T.event,onDispose:V.event,end:bz(()=>{c.end()},"end"),dispose:bz(()=>{if(ac())return;Q=y.Disposed,V.fire(void 0);let a=new B.ResponseError(B.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let b of K.values())b.reject(a);K=new Map,M=new Map,L=new Set,J=new C.LinkedMap,A.func(c.dispose)&&c.dispose(),A.func(b.dispose)&&b.dispose()},"dispose"),listen:bz(()=>{aw(),ax(),Q=y.Listening,b.listen(aj)},"listen"),inspect:bz(()=>{(0,z.default)().console.log("inspect")},"inspect")};return aE.onNotification(o.type,a=>{if(N===k.Off||!l)return;let b=N===k.Verbose||N===k.Compact;l.log(a.message,b?a.verbose:void 0)}),aE.onNotification(i.type,a=>{let b=I.get(a.token);b?b(a.value):U.fire(a)}),aE}bz(ac,"is"),ab.is=ac,(f=y||(y={}))[f.New=1]="New",f[f.Listening=2]="Listening",f[f.Closed=3]="Closed",f[f.Disposed=4]="Disposed",bz(ad,"createMessageConnection"),a.createMessageConnection=ad}}),bV=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ProgressType=a.ProgressToken=a.createMessageConnection=a.NullLogger=a.ConnectionOptions=a.ConnectionStrategy=a.AbstractMessageBuffer=a.WriteableStreamMessageWriter=a.AbstractMessageWriter=a.MessageWriter=a.ReadableStreamMessageReader=a.AbstractMessageReader=a.MessageReader=a.SharedArrayReceiverStrategy=a.SharedArraySenderStrategy=a.CancellationToken=a.CancellationTokenSource=a.Emitter=a.Event=a.Disposable=a.LRUCache=a.Touch=a.LinkedMap=a.ParameterStructures=a.NotificationType9=a.NotificationType8=a.NotificationType7=a.NotificationType6=a.NotificationType5=a.NotificationType4=a.NotificationType3=a.NotificationType2=a.NotificationType1=a.NotificationType0=a.NotificationType=a.ErrorCodes=a.ResponseError=a.RequestType9=a.RequestType8=a.RequestType7=a.RequestType6=a.RequestType5=a.RequestType4=a.RequestType3=a.RequestType2=a.RequestType1=a.RequestType0=a.RequestType=a.Message=a.RAL=void 0,a.MessageStrategy=a.CancellationStrategy=a.CancellationSenderStrategy=a.CancellationReceiverStrategy=a.ConnectionError=a.ConnectionErrors=a.LogTraceNotification=a.SetTraceNotification=a.TraceFormat=a.TraceValues=a.Trace=void 0;var b=bM();Object.defineProperty(a,"Message",{enumerable:!0,get:bz(function(){return b.Message},"get")}),Object.defineProperty(a,"RequestType",{enumerable:!0,get:bz(function(){return b.RequestType},"get")}),Object.defineProperty(a,"RequestType0",{enumerable:!0,get:bz(function(){return b.RequestType0},"get")}),Object.defineProperty(a,"RequestType1",{enumerable:!0,get:bz(function(){return b.RequestType1},"get")}),Object.defineProperty(a,"RequestType2",{enumerable:!0,get:bz(function(){return b.RequestType2},"get")}),Object.defineProperty(a,"RequestType3",{enumerable:!0,get:bz(function(){return b.RequestType3},"get")}),Object.defineProperty(a,"RequestType4",{enumerable:!0,get:bz(function(){return b.RequestType4},"get")}),Object.defineProperty(a,"RequestType5",{enumerable:!0,get:bz(function(){return b.RequestType5},"get")}),Object.defineProperty(a,"RequestType6",{enumerable:!0,get:bz(function(){return b.RequestType6},"get")}),Object.defineProperty(a,"RequestType7",{enumerable:!0,get:bz(function(){return b.RequestType7},"get")}),Object.defineProperty(a,"RequestType8",{enumerable:!0,get:bz(function(){return b.RequestType8},"get")}),Object.defineProperty(a,"RequestType9",{enumerable:!0,get:bz(function(){return b.RequestType9},"get")}),Object.defineProperty(a,"ResponseError",{enumerable:!0,get:bz(function(){return b.ResponseError},"get")}),Object.defineProperty(a,"ErrorCodes",{enumerable:!0,get:bz(function(){return b.ErrorCodes},"get")}),Object.defineProperty(a,"NotificationType",{enumerable:!0,get:bz(function(){return b.NotificationType},"get")}),Object.defineProperty(a,"NotificationType0",{enumerable:!0,get:bz(function(){return b.NotificationType0},"get")}),Object.defineProperty(a,"NotificationType1",{enumerable:!0,get:bz(function(){return b.NotificationType1},"get")}),Object.defineProperty(a,"NotificationType2",{enumerable:!0,get:bz(function(){return b.NotificationType2},"get")}),Object.defineProperty(a,"NotificationType3",{enumerable:!0,get:bz(function(){return b.NotificationType3},"get")}),Object.defineProperty(a,"NotificationType4",{enumerable:!0,get:bz(function(){return b.NotificationType4},"get")}),Object.defineProperty(a,"NotificationType5",{enumerable:!0,get:bz(function(){return b.NotificationType5},"get")}),Object.defineProperty(a,"NotificationType6",{enumerable:!0,get:bz(function(){return b.NotificationType6},"get")}),Object.defineProperty(a,"NotificationType7",{enumerable:!0,get:bz(function(){return b.NotificationType7},"get")}),Object.defineProperty(a,"NotificationType8",{enumerable:!0,get:bz(function(){return b.NotificationType8},"get")}),Object.defineProperty(a,"NotificationType9",{enumerable:!0,get:bz(function(){return b.NotificationType9},"get")}),Object.defineProperty(a,"ParameterStructures",{enumerable:!0,get:bz(function(){return b.ParameterStructures},"get")});var c=bN();Object.defineProperty(a,"LinkedMap",{enumerable:!0,get:bz(function(){return c.LinkedMap},"get")}),Object.defineProperty(a,"LRUCache",{enumerable:!0,get:bz(function(){return c.LRUCache},"get")}),Object.defineProperty(a,"Touch",{enumerable:!0,get:bz(function(){return c.Touch},"get")});var d=bO();Object.defineProperty(a,"Disposable",{enumerable:!0,get:bz(function(){return d.Disposable},"get")});var e=bK();Object.defineProperty(a,"Event",{enumerable:!0,get:bz(function(){return e.Event},"get")}),Object.defineProperty(a,"Emitter",{enumerable:!0,get:bz(function(){return e.Emitter},"get")});var f=bL();Object.defineProperty(a,"CancellationTokenSource",{enumerable:!0,get:bz(function(){return f.CancellationTokenSource},"get")}),Object.defineProperty(a,"CancellationToken",{enumerable:!0,get:bz(function(){return f.CancellationToken},"get")});var g=bP();Object.defineProperty(a,"SharedArraySenderStrategy",{enumerable:!0,get:bz(function(){return g.SharedArraySenderStrategy},"get")}),Object.defineProperty(a,"SharedArrayReceiverStrategy",{enumerable:!0,get:bz(function(){return g.SharedArrayReceiverStrategy},"get")});var h=bR();Object.defineProperty(a,"MessageReader",{enumerable:!0,get:bz(function(){return h.MessageReader},"get")}),Object.defineProperty(a,"AbstractMessageReader",{enumerable:!0,get:bz(function(){return h.AbstractMessageReader},"get")}),Object.defineProperty(a,"ReadableStreamMessageReader",{enumerable:!0,get:bz(function(){return h.ReadableStreamMessageReader},"get")});var i=bS();Object.defineProperty(a,"MessageWriter",{enumerable:!0,get:bz(function(){return i.MessageWriter},"get")}),Object.defineProperty(a,"AbstractMessageWriter",{enumerable:!0,get:bz(function(){return i.AbstractMessageWriter},"get")}),Object.defineProperty(a,"WriteableStreamMessageWriter",{enumerable:!0,get:bz(function(){return i.WriteableStreamMessageWriter},"get")});var j=bT();Object.defineProperty(a,"AbstractMessageBuffer",{enumerable:!0,get:bz(function(){return j.AbstractMessageBuffer},"get")});var k=bU();Object.defineProperty(a,"ConnectionStrategy",{enumerable:!0,get:bz(function(){return k.ConnectionStrategy},"get")}),Object.defineProperty(a,"ConnectionOptions",{enumerable:!0,get:bz(function(){return k.ConnectionOptions},"get")}),Object.defineProperty(a,"NullLogger",{enumerable:!0,get:bz(function(){return k.NullLogger},"get")}),Object.defineProperty(a,"createMessageConnection",{enumerable:!0,get:bz(function(){return k.createMessageConnection},"get")}),Object.defineProperty(a,"ProgressToken",{enumerable:!0,get:bz(function(){return k.ProgressToken},"get")}),Object.defineProperty(a,"ProgressType",{enumerable:!0,get:bz(function(){return k.ProgressType},"get")}),Object.defineProperty(a,"Trace",{enumerable:!0,get:bz(function(){return k.Trace},"get")}),Object.defineProperty(a,"TraceValues",{enumerable:!0,get:bz(function(){return k.TraceValues},"get")}),Object.defineProperty(a,"TraceFormat",{enumerable:!0,get:bz(function(){return k.TraceFormat},"get")}),Object.defineProperty(a,"SetTraceNotification",{enumerable:!0,get:bz(function(){return k.SetTraceNotification},"get")}),Object.defineProperty(a,"LogTraceNotification",{enumerable:!0,get:bz(function(){return k.LogTraceNotification},"get")}),Object.defineProperty(a,"ConnectionErrors",{enumerable:!0,get:bz(function(){return k.ConnectionErrors},"get")}),Object.defineProperty(a,"ConnectionError",{enumerable:!0,get:bz(function(){return k.ConnectionError},"get")}),Object.defineProperty(a,"CancellationReceiverStrategy",{enumerable:!0,get:bz(function(){return k.CancellationReceiverStrategy},"get")}),Object.defineProperty(a,"CancellationSenderStrategy",{enumerable:!0,get:bz(function(){return k.CancellationSenderStrategy},"get")}),Object.defineProperty(a,"CancellationStrategy",{enumerable:!0,get:bz(function(){return k.CancellationStrategy},"get")}),Object.defineProperty(a,"MessageStrategy",{enumerable:!0,get:bz(function(){return k.MessageStrategy},"get")}),a.RAL=bI().default}}),bW=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(a){Object.defineProperty(a,"__esModule",{value:!0});var b=bV(),c=class a extends b.AbstractMessageBuffer{static{bz(this,"MessageBuffer")}constructor(a="utf-8"){super(a),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return a.emptyBuffer}fromString(a,b){return new TextEncoder().encode(a)}toString(a,b){return"ascii"===b?this.asciiDecoder.decode(a):new TextDecoder(b).decode(a)}asNative(a,b){return void 0===b?a:a.slice(0,b)}allocNative(a){return new Uint8Array(a)}};c.emptyBuffer=new Uint8Array(0);var d=class{static{bz(this,"ReadableStreamWrapper")}constructor(a){this.socket=a,this._onData=new b.Emitter,this._messageListener=a=>{a.data.arrayBuffer().then(a=>{this._onData.fire(new Uint8Array(a))},()=>{(0,b.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(a){return this.socket.addEventListener("close",a),b.Disposable.create(()=>this.socket.removeEventListener("close",a))}onError(a){return this.socket.addEventListener("error",a),b.Disposable.create(()=>this.socket.removeEventListener("error",a))}onEnd(a){return this.socket.addEventListener("end",a),b.Disposable.create(()=>this.socket.removeEventListener("end",a))}onData(a){return this._onData.event(a)}},e=class{static{bz(this,"WritableStreamWrapper")}constructor(a){this.socket=a}onClose(a){return this.socket.addEventListener("close",a),b.Disposable.create(()=>this.socket.removeEventListener("close",a))}onError(a){return this.socket.addEventListener("error",a),b.Disposable.create(()=>this.socket.removeEventListener("error",a))}onEnd(a){return this.socket.addEventListener("end",a),b.Disposable.create(()=>this.socket.removeEventListener("end",a))}write(a,b){if("string"==typeof a){if(void 0!==b&&"utf-8"!==b)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${b}`);this.socket.send(a)}else this.socket.send(a);return Promise.resolve()}end(){this.socket.close()}},f=new TextEncoder,g=Object.freeze({messageBuffer:Object.freeze({create:bz(a=>new c(a),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:bz((a,b)=>{if("utf-8"!==b.charset)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${b.charset}`);return Promise.resolve(f.encode(JSON.stringify(a,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:bz((a,b)=>{if(!(a instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(b.charset).decode(a)))},"decode")})}),stream:Object.freeze({asReadableStream:bz(a=>new d(a),"asReadableStream"),asWritableStream:bz(a=>new e(a),"asWritableStream")}),console,timer:Object.freeze({setTimeout(a,b,...c){let d=setTimeout(a,b,...c);return{dispose:bz(()=>clearTimeout(d),"dispose")}},setImmediate(a,...b){let c=setTimeout(a,0,...b);return{dispose:bz(()=>clearTimeout(c),"dispose")}},setInterval(a,b,...c){let d=setInterval(a,b,...c);return{dispose:bz(()=>clearInterval(d),"dispose")}}})});function h(){return g}bz(h,"RIL");var i=h||(h={});function j(){b.RAL.install(g)}bz(j,"install"),i.install=j,a.default=h}}),bX=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(a){var b=a&&a.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:bz(function(){return b[c]},"get")}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),c=a&&a.__exportStar||function(a,c){for(var d in a)"default"===d||Object.prototype.hasOwnProperty.call(c,d)||b(c,a,d)};Object.defineProperty(a,"__esModule",{value:!0}),a.createMessageConnection=a.BrowserMessageWriter=a.BrowserMessageReader=void 0,bW().default.install();var d=bV();function e(a,b,c,e){return void 0===c&&(c=d.NullLogger),d.ConnectionStrategy.is(e)&&(e={connectionStrategy:e}),(0,d.createMessageConnection)(a,b,c,e)}c(bV(),a),a.BrowserMessageReader=class extends d.AbstractMessageReader{static{bz(this,"BrowserMessageReader")}constructor(a){super(),this._onData=new d.Emitter,this._messageListener=a=>{this._onData.fire(a.data)},a.addEventListener("error",a=>this.fireError(a)),a.onmessage=this._messageListener}listen(a){return this._onData.event(a)}},a.BrowserMessageWriter=class extends d.AbstractMessageWriter{static{bz(this,"BrowserMessageWriter")}constructor(a){super(),this.port=a,this.errorCount=0,a.addEventListener("error",a=>this.fireError(a))}write(a){try{return this.port.postMessage(a),Promise.resolve()}catch(b){return this.handleError(b,a),Promise.reject(b)}}handleError(a,b){this.errorCount++,this.fireError(a,b,this.errorCount)}end(){}},bz(e,"createMessageConnection"),a.createMessageConnection=e}}),bY=bA({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(a,b){b.exports=bX()}}),bZ=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ProtocolNotificationType=a.ProtocolNotificationType0=a.ProtocolRequestType=a.ProtocolRequestType0=a.RegistrationType=a.MessageDirection=void 0;var b,c,d=bX();(b=c||(a.MessageDirection=c={})).clientToServer="clientToServer",b.serverToClient="serverToClient",b.both="both",a.RegistrationType=class{static{bz(this,"RegistrationType")}constructor(a){this.method=a}},a.ProtocolRequestType0=class extends d.RequestType0{static{bz(this,"ProtocolRequestType0")}constructor(a){super(a)}},a.ProtocolRequestType=class extends d.RequestType{static{bz(this,"ProtocolRequestType")}constructor(a){super(a,d.ParameterStructures.byName)}},a.ProtocolNotificationType0=class extends d.NotificationType0{static{bz(this,"ProtocolNotificationType0")}constructor(a){super(a)}},a.ProtocolNotificationType=class extends d.NotificationType{static{bz(this,"ProtocolNotificationType")}constructor(a){super(a,d.ParameterStructures.byName)}}}}),b$=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(a){function b(a){return!0===a||!1===a}function c(a){return"string"==typeof a||a instanceof String}function d(a){return"number"==typeof a||a instanceof Number}function e(a){return a instanceof Error}function f(a){return"function"==typeof a}function g(a){return Array.isArray(a)}function h(a){return g(a)&&a.every(a=>c(a))}function i(a,b){return Array.isArray(a)&&a.every(b)}function j(a){return null!==a&&"object"==typeof a}Object.defineProperty(a,"__esModule",{value:!0}),a.objectLiteral=a.typedArray=a.stringArray=a.array=a.func=a.error=a.number=a.string=a.boolean=void 0,bz(b,"boolean"),a.boolean=b,bz(c,"string"),a.string=c,bz(d,"number"),a.number=d,bz(e,"error"),a.error=e,bz(f,"func"),a.func=f,bz(g,"array"),a.array=g,bz(h,"stringArray"),a.stringArray=h,bz(i,"typedArray"),a.typedArray=i,bz(j,"objectLiteral"),a.objectLiteral=j}}),b_=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ImplementationRequest=void 0;var b,c,d=bZ();(b=c||(a.ImplementationRequest=c={})).method="textDocument/implementation",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),b0=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.TypeDefinitionRequest=void 0;var b,c,d=bZ();(b=c||(a.TypeDefinitionRequest=c={})).method="textDocument/typeDefinition",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),b1=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.DidChangeWorkspaceFoldersNotification=a.WorkspaceFoldersRequest=void 0;var b,c,d,e,f=bZ();(b=d||(a.WorkspaceFoldersRequest=d={})).method="workspace/workspaceFolders",b.messageDirection=f.MessageDirection.serverToClient,b.type=new f.ProtocolRequestType0(b.method),(c=e||(a.DidChangeWorkspaceFoldersNotification=e={})).method="workspace/didChangeWorkspaceFolders",c.messageDirection=f.MessageDirection.clientToServer,c.type=new f.ProtocolNotificationType(c.method)}}),b2=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ConfigurationRequest=void 0;var b,c,d=bZ();(b=c||(a.ConfigurationRequest=c={})).method="workspace/configuration",b.messageDirection=d.MessageDirection.serverToClient,b.type=new d.ProtocolRequestType(b.method)}}),b3=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ColorPresentationRequest=a.DocumentColorRequest=void 0;var b,c,d,e,f=bZ();(b=d||(a.DocumentColorRequest=d={})).method="textDocument/documentColor",b.messageDirection=f.MessageDirection.clientToServer,b.type=new f.ProtocolRequestType(b.method),(c=e||(a.ColorPresentationRequest=e={})).method="textDocument/colorPresentation",c.messageDirection=f.MessageDirection.clientToServer,c.type=new f.ProtocolRequestType(c.method)}}),b4=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.FoldingRangeRefreshRequest=a.FoldingRangeRequest=void 0;var b,c,d,e,f=bZ();(b=d||(a.FoldingRangeRequest=d={})).method="textDocument/foldingRange",b.messageDirection=f.MessageDirection.clientToServer,b.type=new f.ProtocolRequestType(b.method),(c=e||(a.FoldingRangeRefreshRequest=e={})).method="workspace/foldingRange/refresh",c.messageDirection=f.MessageDirection.serverToClient,c.type=new f.ProtocolRequestType0(c.method)}}),b5=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.DeclarationRequest=void 0;var b,c,d=bZ();(b=c||(a.DeclarationRequest=c={})).method="textDocument/declaration",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),b6=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.SelectionRangeRequest=void 0;var b,c,d=bZ();(b=c||(a.SelectionRangeRequest=c={})).method="textDocument/selectionRange",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),b7=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.WorkDoneProgressCancelNotification=a.WorkDoneProgressCreateRequest=a.WorkDoneProgress=void 0;var b,c,d,e,f,g=bX(),h=bZ(),i=d||(a.WorkDoneProgress=d={});function j(a){return a===i.type}i.type=new g.ProgressType,bz(j,"is"),i.is=j,(b=e||(a.WorkDoneProgressCreateRequest=e={})).method="window/workDoneProgress/create",b.messageDirection=h.MessageDirection.serverToClient,b.type=new h.ProtocolRequestType(b.method),(c=f||(a.WorkDoneProgressCancelNotification=f={})).method="window/workDoneProgress/cancel",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolNotificationType(c.method)}}),b8=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.CallHierarchyOutgoingCallsRequest=a.CallHierarchyIncomingCallsRequest=a.CallHierarchyPrepareRequest=void 0;var b,c,d,e,f,g,h=bZ();(b=e||(a.CallHierarchyPrepareRequest=e={})).method="textDocument/prepareCallHierarchy",b.messageDirection=h.MessageDirection.clientToServer,b.type=new h.ProtocolRequestType(b.method),(c=f||(a.CallHierarchyIncomingCallsRequest=f={})).method="callHierarchy/incomingCalls",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolRequestType(c.method),(d=g||(a.CallHierarchyOutgoingCallsRequest=g={})).method="callHierarchy/outgoingCalls",d.messageDirection=h.MessageDirection.clientToServer,d.type=new h.ProtocolRequestType(d.method)}}),b9=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.SemanticTokensRefreshRequest=a.SemanticTokensRangeRequest=a.SemanticTokensDeltaRequest=a.SemanticTokensRequest=a.SemanticTokensRegistrationType=a.TokenFormat=void 0;var b,c,d,e,f,g,h,i,j,k,l,m=bZ();(g||(a.TokenFormat=g={})).Relative="relative",(b=h||(a.SemanticTokensRegistrationType=h={})).method="textDocument/semanticTokens",b.type=new m.RegistrationType(b.method),(c=i||(a.SemanticTokensRequest=i={})).method="textDocument/semanticTokens/full",c.messageDirection=m.MessageDirection.clientToServer,c.type=new m.ProtocolRequestType(c.method),c.registrationMethod=h.method,(d=j||(a.SemanticTokensDeltaRequest=j={})).method="textDocument/semanticTokens/full/delta",d.messageDirection=m.MessageDirection.clientToServer,d.type=new m.ProtocolRequestType(d.method),d.registrationMethod=h.method,(e=k||(a.SemanticTokensRangeRequest=k={})).method="textDocument/semanticTokens/range",e.messageDirection=m.MessageDirection.clientToServer,e.type=new m.ProtocolRequestType(e.method),e.registrationMethod=h.method,(f=l||(a.SemanticTokensRefreshRequest=l={})).method="workspace/semanticTokens/refresh",f.messageDirection=m.MessageDirection.serverToClient,f.type=new m.ProtocolRequestType0(f.method)}}),ca=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.ShowDocumentRequest=void 0;var b,c,d=bZ();(b=c||(a.ShowDocumentRequest=c={})).method="window/showDocument",b.messageDirection=d.MessageDirection.serverToClient,b.type=new d.ProtocolRequestType(b.method)}}),cb=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.LinkedEditingRangeRequest=void 0;var b,c,d=bZ();(b=c||(a.LinkedEditingRangeRequest=c={})).method="textDocument/linkedEditingRange",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),cc=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.WillDeleteFilesRequest=a.DidDeleteFilesNotification=a.DidRenameFilesNotification=a.WillRenameFilesRequest=a.DidCreateFilesNotification=a.WillCreateFilesRequest=a.FileOperationPatternKind=void 0;var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p=bZ();(b=i||(a.FileOperationPatternKind=i={})).file="file",b.folder="folder",(c=j||(a.WillCreateFilesRequest=j={})).method="workspace/willCreateFiles",c.messageDirection=p.MessageDirection.clientToServer,c.type=new p.ProtocolRequestType(c.method),(d=k||(a.DidCreateFilesNotification=k={})).method="workspace/didCreateFiles",d.messageDirection=p.MessageDirection.clientToServer,d.type=new p.ProtocolNotificationType(d.method),(e=l||(a.WillRenameFilesRequest=l={})).method="workspace/willRenameFiles",e.messageDirection=p.MessageDirection.clientToServer,e.type=new p.ProtocolRequestType(e.method),(f=m||(a.DidRenameFilesNotification=m={})).method="workspace/didRenameFiles",f.messageDirection=p.MessageDirection.clientToServer,f.type=new p.ProtocolNotificationType(f.method),(g=n||(a.DidDeleteFilesNotification=n={})).method="workspace/didDeleteFiles",g.messageDirection=p.MessageDirection.clientToServer,g.type=new p.ProtocolNotificationType(g.method),(h=o||(a.WillDeleteFilesRequest=o={})).method="workspace/willDeleteFiles",h.messageDirection=p.MessageDirection.clientToServer,h.type=new p.ProtocolRequestType(h.method)}}),cd=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.MonikerRequest=a.MonikerKind=a.UniquenessLevel=void 0;var b,c,d,e,f,g,h=bZ();(b=e||(a.UniquenessLevel=e={})).document="document",b.project="project",b.group="group",b.scheme="scheme",b.global="global",(c=f||(a.MonikerKind=f={})).$import="import",c.$export="export",c.local="local",(d=g||(a.MonikerRequest=g={})).method="textDocument/moniker",d.messageDirection=h.MessageDirection.clientToServer,d.type=new h.ProtocolRequestType(d.method)}}),ce=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.TypeHierarchySubtypesRequest=a.TypeHierarchySupertypesRequest=a.TypeHierarchyPrepareRequest=void 0;var b,c,d,e,f,g,h=bZ();(b=e||(a.TypeHierarchyPrepareRequest=e={})).method="textDocument/prepareTypeHierarchy",b.messageDirection=h.MessageDirection.clientToServer,b.type=new h.ProtocolRequestType(b.method),(c=f||(a.TypeHierarchySupertypesRequest=f={})).method="typeHierarchy/supertypes",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolRequestType(c.method),(d=g||(a.TypeHierarchySubtypesRequest=g={})).method="typeHierarchy/subtypes",d.messageDirection=h.MessageDirection.clientToServer,d.type=new h.ProtocolRequestType(d.method)}}),cf=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.InlineValueRefreshRequest=a.InlineValueRequest=void 0;var b,c,d,e,f=bZ();(b=d||(a.InlineValueRequest=d={})).method="textDocument/inlineValue",b.messageDirection=f.MessageDirection.clientToServer,b.type=new f.ProtocolRequestType(b.method),(c=e||(a.InlineValueRefreshRequest=e={})).method="workspace/inlineValue/refresh",c.messageDirection=f.MessageDirection.serverToClient,c.type=new f.ProtocolRequestType0(c.method)}}),cg=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.InlayHintRefreshRequest=a.InlayHintResolveRequest=a.InlayHintRequest=void 0;var b,c,d,e,f,g,h=bZ();(b=e||(a.InlayHintRequest=e={})).method="textDocument/inlayHint",b.messageDirection=h.MessageDirection.clientToServer,b.type=new h.ProtocolRequestType(b.method),(c=f||(a.InlayHintResolveRequest=f={})).method="inlayHint/resolve",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolRequestType(c.method),(d=g||(a.InlayHintRefreshRequest=g={})).method="workspace/inlayHint/refresh",d.messageDirection=h.MessageDirection.serverToClient,d.type=new h.ProtocolRequestType0(d.method)}}),ch=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.DiagnosticRefreshRequest=a.WorkspaceDiagnosticRequest=a.DocumentDiagnosticRequest=a.DocumentDiagnosticReportKind=a.DiagnosticServerCancellationData=void 0;var b,c,d,e,f,g,h,i,j,k=bX(),l=b$(),m=bZ(),n=f||(a.DiagnosticServerCancellationData=f={});function o(a){return a&&l.boolean(a.retriggerRequest)}bz(o,"is"),n.is=o,(b=g||(a.DocumentDiagnosticReportKind=g={})).Full="full",b.Unchanged="unchanged",(c=h||(a.DocumentDiagnosticRequest=h={})).method="textDocument/diagnostic",c.messageDirection=m.MessageDirection.clientToServer,c.type=new m.ProtocolRequestType(c.method),c.partialResult=new k.ProgressType,(d=i||(a.WorkspaceDiagnosticRequest=i={})).method="workspace/diagnostic",d.messageDirection=m.MessageDirection.clientToServer,d.type=new m.ProtocolRequestType(d.method),d.partialResult=new k.ProgressType,(e=j||(a.DiagnosticRefreshRequest=j={})).method="workspace/diagnostic/refresh",e.messageDirection=m.MessageDirection.serverToClient,e.type=new m.ProtocolRequestType0(e.method)}}),ci=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.DidCloseNotebookDocumentNotification=a.DidSaveNotebookDocumentNotification=a.DidChangeNotebookDocumentNotification=a.NotebookCellArrayChange=a.DidOpenNotebookDocumentNotification=a.NotebookDocumentSyncRegistrationType=a.NotebookDocument=a.NotebookCell=a.ExecutionSummary=a.NotebookCellKind=void 0;var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q=(bH(),bF(bG)),r=b$(),s=bZ(),t=g||(a.NotebookCellKind=g={});function u(a){return 1===a||2===a}t.Markup=1,t.Code=2,bz(u,"is"),t.is=u,function(a){function b(a,b){let c={executionOrder:a};return(!0===b||!1===b)&&(c.success=b),c}function c(a){return r.objectLiteral(a)&&q.uinteger.is(a.executionOrder)&&(void 0===a.success||r.boolean(a.success))}function d(a,b){return a===b||null!=a&&null!=b&&a.executionOrder===b.executionOrder&&a.success===b.success}bz(b,"create"),a.create=b,bz(c,"is"),a.is=c,bz(d,"equals"),a.equals=d}(h||(a.ExecutionSummary=h={})),function(a){function b(a,b){return{kind:a,document:b}}function c(a){return r.objectLiteral(a)&&g.is(a.kind)&&q.DocumentUri.is(a.document)&&(void 0===a.metadata||r.objectLiteral(a.metadata))}function d(a,b){let c=new Set;return a.document!==b.document&&c.add("document"),a.kind!==b.kind&&c.add("kind"),a.executionSummary!==b.executionSummary&&c.add("executionSummary"),void 0===a.metadata&&void 0===b.metadata||e(a.metadata,b.metadata)||c.add("metadata"),void 0===a.executionSummary&&void 0===b.executionSummary||h.equals(a.executionSummary,b.executionSummary)||c.add("executionSummary"),c}function e(a,b){if(a===b)return!0;if(null==a||null==b||typeof a!=typeof b||"object"!=typeof a)return!1;let c=Array.isArray(a),d=Array.isArray(b);if(c!==d)return!1;if(c&&d){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(!e(a[c],b[c]))return!1}if(r.objectLiteral(a)&&r.objectLiteral(b)){let c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length||(c.sort(),d.sort(),!e(c,d)))return!1;for(let d=0;d<c.length;d++){let f=c[d];if(!e(a[f],b[f]))return!1}}return!0}bz(b,"create"),a.create=b,bz(c,"is"),a.is=c,bz(d,"diff"),a.diff=d,bz(e,"equalsMetadata")}(i||(a.NotebookCell=i={}));var v=j||(a.NotebookDocument=j={});function w(a,b,c,d){return{uri:a,notebookType:b,version:c,cells:d}}function x(a){return r.objectLiteral(a)&&r.string(a.uri)&&q.integer.is(a.version)&&r.typedArray(a.cells,i.is)}bz(w,"create"),v.create=w,bz(x,"is"),v.is=x,(b=k||(a.NotebookDocumentSyncRegistrationType=k={})).method="notebookDocument/sync",b.messageDirection=s.MessageDirection.clientToServer,b.type=new s.RegistrationType(b.method),(c=l||(a.DidOpenNotebookDocumentNotification=l={})).method="notebookDocument/didOpen",c.messageDirection=s.MessageDirection.clientToServer,c.type=new s.ProtocolNotificationType(c.method),c.registrationMethod=k.method;var y=m||(a.NotebookCellArrayChange=m={});function z(a){return r.objectLiteral(a)&&q.uinteger.is(a.start)&&q.uinteger.is(a.deleteCount)&&(void 0===a.cells||r.typedArray(a.cells,i.is))}function A(a,b,c){let d={start:a,deleteCount:b};return void 0!==c&&(d.cells=c),d}bz(z,"is"),y.is=z,bz(A,"create"),y.create=A,(d=n||(a.DidChangeNotebookDocumentNotification=n={})).method="notebookDocument/didChange",d.messageDirection=s.MessageDirection.clientToServer,d.type=new s.ProtocolNotificationType(d.method),d.registrationMethod=k.method,(e=o||(a.DidSaveNotebookDocumentNotification=o={})).method="notebookDocument/didSave",e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolNotificationType(e.method),e.registrationMethod=k.method,(f=p||(a.DidCloseNotebookDocumentNotification=p={})).method="notebookDocument/didClose",f.messageDirection=s.MessageDirection.clientToServer,f.type=new s.ProtocolNotificationType(f.method),f.registrationMethod=k.method}}),cj=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.InlineCompletionRequest=void 0;var b,c,d=bZ();(b=c||(a.InlineCompletionRequest=c={})).method="textDocument/inlineCompletion",b.messageDirection=d.MessageDirection.clientToServer,b.type=new d.ProtocolRequestType(b.method)}}),ck=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.WorkspaceSymbolRequest=a.CodeActionResolveRequest=a.CodeActionRequest=a.DocumentSymbolRequest=a.DocumentHighlightRequest=a.ReferencesRequest=a.DefinitionRequest=a.SignatureHelpRequest=a.SignatureHelpTriggerKind=a.HoverRequest=a.CompletionResolveRequest=a.CompletionRequest=a.CompletionTriggerKind=a.PublishDiagnosticsNotification=a.WatchKind=a.RelativePattern=a.FileChangeType=a.DidChangeWatchedFilesNotification=a.WillSaveTextDocumentWaitUntilRequest=a.WillSaveTextDocumentNotification=a.TextDocumentSaveReason=a.DidSaveTextDocumentNotification=a.DidCloseTextDocumentNotification=a.DidChangeTextDocumentNotification=a.TextDocumentContentChangeEvent=a.DidOpenTextDocumentNotification=a.TextDocumentSyncKind=a.TelemetryEventNotification=a.LogMessageNotification=a.ShowMessageRequest=a.ShowMessageNotification=a.MessageType=a.DidChangeConfigurationNotification=a.ExitNotification=a.ShutdownRequest=a.InitializedNotification=a.InitializeErrorCodes=a.InitializeRequest=a.WorkDoneProgressOptions=a.TextDocumentRegistrationOptions=a.StaticRegistrationOptions=a.PositionEncodingKind=a.FailureHandlingKind=a.ResourceOperationKind=a.UnregistrationRequest=a.RegistrationRequest=a.DocumentSelector=a.NotebookCellTextDocumentFilter=a.NotebookDocumentFilter=a.TextDocumentFilter=void 0,a.MonikerRequest=a.MonikerKind=a.UniquenessLevel=a.WillDeleteFilesRequest=a.DidDeleteFilesNotification=a.WillRenameFilesRequest=a.DidRenameFilesNotification=a.WillCreateFilesRequest=a.DidCreateFilesNotification=a.FileOperationPatternKind=a.LinkedEditingRangeRequest=a.ShowDocumentRequest=a.SemanticTokensRegistrationType=a.SemanticTokensRefreshRequest=a.SemanticTokensRangeRequest=a.SemanticTokensDeltaRequest=a.SemanticTokensRequest=a.TokenFormat=a.CallHierarchyPrepareRequest=a.CallHierarchyOutgoingCallsRequest=a.CallHierarchyIncomingCallsRequest=a.WorkDoneProgressCancelNotification=a.WorkDoneProgressCreateRequest=a.WorkDoneProgress=a.SelectionRangeRequest=a.DeclarationRequest=a.FoldingRangeRefreshRequest=a.FoldingRangeRequest=a.ColorPresentationRequest=a.DocumentColorRequest=a.ConfigurationRequest=a.DidChangeWorkspaceFoldersNotification=a.WorkspaceFoldersRequest=a.TypeDefinitionRequest=a.ImplementationRequest=a.ApplyWorkspaceEditRequest=a.ExecuteCommandRequest=a.PrepareRenameRequest=a.RenameRequest=a.PrepareSupportDefaultBehavior=a.DocumentOnTypeFormattingRequest=a.DocumentRangesFormattingRequest=a.DocumentRangeFormattingRequest=a.DocumentFormattingRequest=a.DocumentLinkResolveRequest=a.DocumentLinkRequest=a.CodeLensRefreshRequest=a.CodeLensResolveRequest=a.CodeLensRequest=a.WorkspaceSymbolResolveRequest=void 0,a.InlineCompletionRequest=a.DidCloseNotebookDocumentNotification=a.DidSaveNotebookDocumentNotification=a.DidChangeNotebookDocumentNotification=a.NotebookCellArrayChange=a.DidOpenNotebookDocumentNotification=a.NotebookDocumentSyncRegistrationType=a.NotebookDocument=a.NotebookCell=a.ExecutionSummary=a.NotebookCellKind=a.DiagnosticRefreshRequest=a.WorkspaceDiagnosticRequest=a.DocumentDiagnosticRequest=a.DocumentDiagnosticReportKind=a.DiagnosticServerCancellationData=a.InlayHintRefreshRequest=a.InlayHintResolveRequest=a.InlayHintRequest=a.InlineValueRefreshRequest=a.InlineValueRequest=a.TypeHierarchySupertypesRequest=a.TypeHierarchySubtypesRequest=a.TypeHierarchyPrepareRequest=void 0;var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,aA,aB,aC,aD,aE,aF,aG,aH,aI,aJ,aK,aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU,aV,aW,aX,aY,aZ,a$,a_,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,ba,bb,bc=bZ(),bd=(bH(),bF(bG)),be=b$(),bf=b_();Object.defineProperty(a,"ImplementationRequest",{enumerable:!0,get:bz(function(){return bf.ImplementationRequest},"get")});var bg=b0();Object.defineProperty(a,"TypeDefinitionRequest",{enumerable:!0,get:bz(function(){return bg.TypeDefinitionRequest},"get")});var bh=b1();Object.defineProperty(a,"WorkspaceFoldersRequest",{enumerable:!0,get:bz(function(){return bh.WorkspaceFoldersRequest},"get")}),Object.defineProperty(a,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:bz(function(){return bh.DidChangeWorkspaceFoldersNotification},"get")});var bi=b2();Object.defineProperty(a,"ConfigurationRequest",{enumerable:!0,get:bz(function(){return bi.ConfigurationRequest},"get")});var bj=b3();Object.defineProperty(a,"DocumentColorRequest",{enumerable:!0,get:bz(function(){return bj.DocumentColorRequest},"get")}),Object.defineProperty(a,"ColorPresentationRequest",{enumerable:!0,get:bz(function(){return bj.ColorPresentationRequest},"get")});var bk=b4();Object.defineProperty(a,"FoldingRangeRequest",{enumerable:!0,get:bz(function(){return bk.FoldingRangeRequest},"get")}),Object.defineProperty(a,"FoldingRangeRefreshRequest",{enumerable:!0,get:bz(function(){return bk.FoldingRangeRefreshRequest},"get")});var bl=b5();Object.defineProperty(a,"DeclarationRequest",{enumerable:!0,get:bz(function(){return bl.DeclarationRequest},"get")});var bm=b6();Object.defineProperty(a,"SelectionRangeRequest",{enumerable:!0,get:bz(function(){return bm.SelectionRangeRequest},"get")});var bn=b7();Object.defineProperty(a,"WorkDoneProgress",{enumerable:!0,get:bz(function(){return bn.WorkDoneProgress},"get")}),Object.defineProperty(a,"WorkDoneProgressCreateRequest",{enumerable:!0,get:bz(function(){return bn.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(a,"WorkDoneProgressCancelNotification",{enumerable:!0,get:bz(function(){return bn.WorkDoneProgressCancelNotification},"get")});var bo=b8();Object.defineProperty(a,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:bz(function(){return bo.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(a,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:bz(function(){return bo.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(a,"CallHierarchyPrepareRequest",{enumerable:!0,get:bz(function(){return bo.CallHierarchyPrepareRequest},"get")});var bp=b9();Object.defineProperty(a,"TokenFormat",{enumerable:!0,get:bz(function(){return bp.TokenFormat},"get")}),Object.defineProperty(a,"SemanticTokensRequest",{enumerable:!0,get:bz(function(){return bp.SemanticTokensRequest},"get")}),Object.defineProperty(a,"SemanticTokensDeltaRequest",{enumerable:!0,get:bz(function(){return bp.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(a,"SemanticTokensRangeRequest",{enumerable:!0,get:bz(function(){return bp.SemanticTokensRangeRequest},"get")}),Object.defineProperty(a,"SemanticTokensRefreshRequest",{enumerable:!0,get:bz(function(){return bp.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(a,"SemanticTokensRegistrationType",{enumerable:!0,get:bz(function(){return bp.SemanticTokensRegistrationType},"get")});var bq=ca();Object.defineProperty(a,"ShowDocumentRequest",{enumerable:!0,get:bz(function(){return bq.ShowDocumentRequest},"get")});var br=cb();Object.defineProperty(a,"LinkedEditingRangeRequest",{enumerable:!0,get:bz(function(){return br.LinkedEditingRangeRequest},"get")});var bs=cc();Object.defineProperty(a,"FileOperationPatternKind",{enumerable:!0,get:bz(function(){return bs.FileOperationPatternKind},"get")}),Object.defineProperty(a,"DidCreateFilesNotification",{enumerable:!0,get:bz(function(){return bs.DidCreateFilesNotification},"get")}),Object.defineProperty(a,"WillCreateFilesRequest",{enumerable:!0,get:bz(function(){return bs.WillCreateFilesRequest},"get")}),Object.defineProperty(a,"DidRenameFilesNotification",{enumerable:!0,get:bz(function(){return bs.DidRenameFilesNotification},"get")}),Object.defineProperty(a,"WillRenameFilesRequest",{enumerable:!0,get:bz(function(){return bs.WillRenameFilesRequest},"get")}),Object.defineProperty(a,"DidDeleteFilesNotification",{enumerable:!0,get:bz(function(){return bs.DidDeleteFilesNotification},"get")}),Object.defineProperty(a,"WillDeleteFilesRequest",{enumerable:!0,get:bz(function(){return bs.WillDeleteFilesRequest},"get")});var bt=cd();Object.defineProperty(a,"UniquenessLevel",{enumerable:!0,get:bz(function(){return bt.UniquenessLevel},"get")}),Object.defineProperty(a,"MonikerKind",{enumerable:!0,get:bz(function(){return bt.MonikerKind},"get")}),Object.defineProperty(a,"MonikerRequest",{enumerable:!0,get:bz(function(){return bt.MonikerRequest},"get")});var bu=ce();Object.defineProperty(a,"TypeHierarchyPrepareRequest",{enumerable:!0,get:bz(function(){return bu.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(a,"TypeHierarchySubtypesRequest",{enumerable:!0,get:bz(function(){return bu.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(a,"TypeHierarchySupertypesRequest",{enumerable:!0,get:bz(function(){return bu.TypeHierarchySupertypesRequest},"get")});var bv=cf();Object.defineProperty(a,"InlineValueRequest",{enumerable:!0,get:bz(function(){return bv.InlineValueRequest},"get")}),Object.defineProperty(a,"InlineValueRefreshRequest",{enumerable:!0,get:bz(function(){return bv.InlineValueRefreshRequest},"get")});var bw=cg();Object.defineProperty(a,"InlayHintRequest",{enumerable:!0,get:bz(function(){return bw.InlayHintRequest},"get")}),Object.defineProperty(a,"InlayHintResolveRequest",{enumerable:!0,get:bz(function(){return bw.InlayHintResolveRequest},"get")}),Object.defineProperty(a,"InlayHintRefreshRequest",{enumerable:!0,get:bz(function(){return bw.InlayHintRefreshRequest},"get")});var bx=ch();Object.defineProperty(a,"DiagnosticServerCancellationData",{enumerable:!0,get:bz(function(){return bx.DiagnosticServerCancellationData},"get")}),Object.defineProperty(a,"DocumentDiagnosticReportKind",{enumerable:!0,get:bz(function(){return bx.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(a,"DocumentDiagnosticRequest",{enumerable:!0,get:bz(function(){return bx.DocumentDiagnosticRequest},"get")}),Object.defineProperty(a,"WorkspaceDiagnosticRequest",{enumerable:!0,get:bz(function(){return bx.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(a,"DiagnosticRefreshRequest",{enumerable:!0,get:bz(function(){return bx.DiagnosticRefreshRequest},"get")});var by=ci();Object.defineProperty(a,"NotebookCellKind",{enumerable:!0,get:bz(function(){return by.NotebookCellKind},"get")}),Object.defineProperty(a,"ExecutionSummary",{enumerable:!0,get:bz(function(){return by.ExecutionSummary},"get")}),Object.defineProperty(a,"NotebookCell",{enumerable:!0,get:bz(function(){return by.NotebookCell},"get")}),Object.defineProperty(a,"NotebookDocument",{enumerable:!0,get:bz(function(){return by.NotebookDocument},"get")}),Object.defineProperty(a,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:bz(function(){return by.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(a,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:bz(function(){return by.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(a,"NotebookCellArrayChange",{enumerable:!0,get:bz(function(){return by.NotebookCellArrayChange},"get")}),Object.defineProperty(a,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:bz(function(){return by.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(a,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:bz(function(){return by.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(a,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:bz(function(){return by.DidCloseNotebookDocumentNotification},"get")});var bA=cj();Object.defineProperty(a,"InlineCompletionRequest",{enumerable:!0,get:bz(function(){return bA.InlineCompletionRequest},"get")});var bB=ab||(a.TextDocumentFilter=ab={});function bC(a){return be.string(a)||be.string(a.language)||be.string(a.scheme)||be.string(a.pattern)}bz(bC,"is"),bB.is=bC;var bD=ac||(a.NotebookDocumentFilter=ac={});function bE(a){return be.objectLiteral(a)&&(be.string(a.notebookType)||be.string(a.scheme)||be.string(a.pattern))}bz(bE,"is"),bD.is=bE;var bI=ad||(a.NotebookCellTextDocumentFilter=ad={});function bJ(a){return be.objectLiteral(a)&&(be.string(a.notebook)||ac.is(a.notebook))&&(void 0===a.language||be.string(a.language))}bz(bJ,"is"),bI.is=bJ;var bK=ae||(a.DocumentSelector=ae={});function bL(a){if(!Array.isArray(a))return!1;for(let b of a)if(!be.string(b)&&!ab.is(b)&&!ad.is(b))return!1;return!0}bz(bL,"is"),bK.is=bL,(b=af||(a.RegistrationRequest=af={})).method="client/registerCapability",b.messageDirection=bc.MessageDirection.serverToClient,b.type=new bc.ProtocolRequestType(b.method),(c=ag||(a.UnregistrationRequest=ag={})).method="client/unregisterCapability",c.messageDirection=bc.MessageDirection.serverToClient,c.type=new bc.ProtocolRequestType(c.method),(d=ah||(a.ResourceOperationKind=ah={})).Create="create",d.Rename="rename",d.Delete="delete",(e=ai||(a.FailureHandlingKind=ai={})).Abort="abort",e.Transactional="transactional",e.TextOnlyTransactional="textOnlyTransactional",e.Undo="undo",(f=aj||(a.PositionEncodingKind=aj={})).UTF8="utf-8",f.UTF16="utf-16",f.UTF32="utf-32";var bM=ak||(a.StaticRegistrationOptions=ak={});function bN(a){return a&&be.string(a.id)&&a.id.length>0}bz(bN,"hasId"),bM.hasId=bN;var bO=al||(a.TextDocumentRegistrationOptions=al={});function bP(a){return a&&(null===a.documentSelector||ae.is(a.documentSelector))}bz(bP,"is"),bO.is=bP;var bQ=am||(a.WorkDoneProgressOptions=am={});function bR(a){return be.objectLiteral(a)&&(void 0===a.workDoneProgress||be.boolean(a.workDoneProgress))}function bS(a){return a&&be.boolean(a.workDoneProgress)}bz(bR,"is"),bQ.is=bR,bz(bS,"hasWorkDoneProgress"),bQ.hasWorkDoneProgress=bS,(g=an||(a.InitializeRequest=an={})).method="initialize",g.messageDirection=bc.MessageDirection.clientToServer,g.type=new bc.ProtocolRequestType(g.method),(ao||(a.InitializeErrorCodes=ao={})).unknownProtocolVersion=1,(h=ap||(a.InitializedNotification=ap={})).method="initialized",h.messageDirection=bc.MessageDirection.clientToServer,h.type=new bc.ProtocolNotificationType(h.method),(i=aq||(a.ShutdownRequest=aq={})).method="shutdown",i.messageDirection=bc.MessageDirection.clientToServer,i.type=new bc.ProtocolRequestType0(i.method),(j=ar||(a.ExitNotification=ar={})).method="exit",j.messageDirection=bc.MessageDirection.clientToServer,j.type=new bc.ProtocolNotificationType0(j.method),(k=as||(a.DidChangeConfigurationNotification=as={})).method="workspace/didChangeConfiguration",k.messageDirection=bc.MessageDirection.clientToServer,k.type=new bc.ProtocolNotificationType(k.method),(l=at||(a.MessageType=at={})).Error=1,l.Warning=2,l.Info=3,l.Log=4,l.Debug=5,(m=au||(a.ShowMessageNotification=au={})).method="window/showMessage",m.messageDirection=bc.MessageDirection.serverToClient,m.type=new bc.ProtocolNotificationType(m.method),(n=av||(a.ShowMessageRequest=av={})).method="window/showMessageRequest",n.messageDirection=bc.MessageDirection.serverToClient,n.type=new bc.ProtocolRequestType(n.method),(o=aw||(a.LogMessageNotification=aw={})).method="window/logMessage",o.messageDirection=bc.MessageDirection.serverToClient,o.type=new bc.ProtocolNotificationType(o.method),(p=ax||(a.TelemetryEventNotification=ax={})).method="telemetry/event",p.messageDirection=bc.MessageDirection.serverToClient,p.type=new bc.ProtocolNotificationType(p.method),(q=ay||(a.TextDocumentSyncKind=ay={})).None=0,q.Full=1,q.Incremental=2,(r=az||(a.DidOpenTextDocumentNotification=az={})).method="textDocument/didOpen",r.messageDirection=bc.MessageDirection.clientToServer,r.type=new bc.ProtocolNotificationType(r.method);var bT=aA||(a.TextDocumentContentChangeEvent=aA={});function bU(a){return null!=a&&"string"==typeof a.text&&void 0!==a.range&&(void 0===a.rangeLength||"number"==typeof a.rangeLength)}function bV(a){return null!=a&&"string"==typeof a.text&&void 0===a.range&&void 0===a.rangeLength}bz(bU,"isIncremental"),bT.isIncremental=bU,bz(bV,"isFull"),bT.isFull=bV,(s=aB||(a.DidChangeTextDocumentNotification=aB={})).method="textDocument/didChange",s.messageDirection=bc.MessageDirection.clientToServer,s.type=new bc.ProtocolNotificationType(s.method),(t=aC||(a.DidCloseTextDocumentNotification=aC={})).method="textDocument/didClose",t.messageDirection=bc.MessageDirection.clientToServer,t.type=new bc.ProtocolNotificationType(t.method),(u=aD||(a.DidSaveTextDocumentNotification=aD={})).method="textDocument/didSave",u.messageDirection=bc.MessageDirection.clientToServer,u.type=new bc.ProtocolNotificationType(u.method),(v=aE||(a.TextDocumentSaveReason=aE={})).Manual=1,v.AfterDelay=2,v.FocusOut=3,(w=aF||(a.WillSaveTextDocumentNotification=aF={})).method="textDocument/willSave",w.messageDirection=bc.MessageDirection.clientToServer,w.type=new bc.ProtocolNotificationType(w.method),(x=aG||(a.WillSaveTextDocumentWaitUntilRequest=aG={})).method="textDocument/willSaveWaitUntil",x.messageDirection=bc.MessageDirection.clientToServer,x.type=new bc.ProtocolRequestType(x.method),(y=aH||(a.DidChangeWatchedFilesNotification=aH={})).method="workspace/didChangeWatchedFiles",y.messageDirection=bc.MessageDirection.clientToServer,y.type=new bc.ProtocolNotificationType(y.method),(z=aI||(a.FileChangeType=aI={})).Created=1,z.Changed=2,z.Deleted=3;var bW=aJ||(a.RelativePattern=aJ={});function bX(a){return be.objectLiteral(a)&&(bd.URI.is(a.baseUri)||bd.WorkspaceFolder.is(a.baseUri))&&be.string(a.pattern)}bz(bX,"is"),bW.is=bX,(A=aK||(a.WatchKind=aK={})).Create=1,A.Change=2,A.Delete=4,(B=aL||(a.PublishDiagnosticsNotification=aL={})).method="textDocument/publishDiagnostics",B.messageDirection=bc.MessageDirection.serverToClient,B.type=new bc.ProtocolNotificationType(B.method),(C=aM||(a.CompletionTriggerKind=aM={})).Invoked=1,C.TriggerCharacter=2,C.TriggerForIncompleteCompletions=3,(D=aN||(a.CompletionRequest=aN={})).method="textDocument/completion",D.messageDirection=bc.MessageDirection.clientToServer,D.type=new bc.ProtocolRequestType(D.method),(E=aO||(a.CompletionResolveRequest=aO={})).method="completionItem/resolve",E.messageDirection=bc.MessageDirection.clientToServer,E.type=new bc.ProtocolRequestType(E.method),(F=aP||(a.HoverRequest=aP={})).method="textDocument/hover",F.messageDirection=bc.MessageDirection.clientToServer,F.type=new bc.ProtocolRequestType(F.method),(G=aQ||(a.SignatureHelpTriggerKind=aQ={})).Invoked=1,G.TriggerCharacter=2,G.ContentChange=3,(H=aR||(a.SignatureHelpRequest=aR={})).method="textDocument/signatureHelp",H.messageDirection=bc.MessageDirection.clientToServer,H.type=new bc.ProtocolRequestType(H.method),(I=aS||(a.DefinitionRequest=aS={})).method="textDocument/definition",I.messageDirection=bc.MessageDirection.clientToServer,I.type=new bc.ProtocolRequestType(I.method),(J=aT||(a.ReferencesRequest=aT={})).method="textDocument/references",J.messageDirection=bc.MessageDirection.clientToServer,J.type=new bc.ProtocolRequestType(J.method),(K=aU||(a.DocumentHighlightRequest=aU={})).method="textDocument/documentHighlight",K.messageDirection=bc.MessageDirection.clientToServer,K.type=new bc.ProtocolRequestType(K.method),(L=aV||(a.DocumentSymbolRequest=aV={})).method="textDocument/documentSymbol",L.messageDirection=bc.MessageDirection.clientToServer,L.type=new bc.ProtocolRequestType(L.method),(M=aW||(a.CodeActionRequest=aW={})).method="textDocument/codeAction",M.messageDirection=bc.MessageDirection.clientToServer,M.type=new bc.ProtocolRequestType(M.method),(N=aX||(a.CodeActionResolveRequest=aX={})).method="codeAction/resolve",N.messageDirection=bc.MessageDirection.clientToServer,N.type=new bc.ProtocolRequestType(N.method),(O=aY||(a.WorkspaceSymbolRequest=aY={})).method="workspace/symbol",O.messageDirection=bc.MessageDirection.clientToServer,O.type=new bc.ProtocolRequestType(O.method),(P=aZ||(a.WorkspaceSymbolResolveRequest=aZ={})).method="workspaceSymbol/resolve",P.messageDirection=bc.MessageDirection.clientToServer,P.type=new bc.ProtocolRequestType(P.method),(Q=a$||(a.CodeLensRequest=a$={})).method="textDocument/codeLens",Q.messageDirection=bc.MessageDirection.clientToServer,Q.type=new bc.ProtocolRequestType(Q.method),(R=a_||(a.CodeLensResolveRequest=a_={})).method="codeLens/resolve",R.messageDirection=bc.MessageDirection.clientToServer,R.type=new bc.ProtocolRequestType(R.method),(S=a0||(a.CodeLensRefreshRequest=a0={})).method="workspace/codeLens/refresh",S.messageDirection=bc.MessageDirection.serverToClient,S.type=new bc.ProtocolRequestType0(S.method),(T=a1||(a.DocumentLinkRequest=a1={})).method="textDocument/documentLink",T.messageDirection=bc.MessageDirection.clientToServer,T.type=new bc.ProtocolRequestType(T.method),(U=a2||(a.DocumentLinkResolveRequest=a2={})).method="documentLink/resolve",U.messageDirection=bc.MessageDirection.clientToServer,U.type=new bc.ProtocolRequestType(U.method),(V=a3||(a.DocumentFormattingRequest=a3={})).method="textDocument/formatting",V.messageDirection=bc.MessageDirection.clientToServer,V.type=new bc.ProtocolRequestType(V.method),(W=a4||(a.DocumentRangeFormattingRequest=a4={})).method="textDocument/rangeFormatting",W.messageDirection=bc.MessageDirection.clientToServer,W.type=new bc.ProtocolRequestType(W.method),(X=a5||(a.DocumentRangesFormattingRequest=a5={})).method="textDocument/rangesFormatting",X.messageDirection=bc.MessageDirection.clientToServer,X.type=new bc.ProtocolRequestType(X.method),(Y=a6||(a.DocumentOnTypeFormattingRequest=a6={})).method="textDocument/onTypeFormatting",Y.messageDirection=bc.MessageDirection.clientToServer,Y.type=new bc.ProtocolRequestType(Y.method),(a7||(a.PrepareSupportDefaultBehavior=a7={})).Identifier=1,(Z=a8||(a.RenameRequest=a8={})).method="textDocument/rename",Z.messageDirection=bc.MessageDirection.clientToServer,Z.type=new bc.ProtocolRequestType(Z.method),($=a9||(a.PrepareRenameRequest=a9={})).method="textDocument/prepareRename",$.messageDirection=bc.MessageDirection.clientToServer,$.type=new bc.ProtocolRequestType($.method),(_=ba||(a.ExecuteCommandRequest=ba={})).method="workspace/executeCommand",_.messageDirection=bc.MessageDirection.clientToServer,_.type=new bc.ProtocolRequestType(_.method),(aa=bb||(a.ApplyWorkspaceEditRequest=bb={})).method="workspace/applyEdit",aa.messageDirection=bc.MessageDirection.serverToClient,aa.type=new bc.ProtocolRequestType("workspace/applyEdit")}}),cl=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(a){Object.defineProperty(a,"__esModule",{value:!0}),a.createProtocolConnection=void 0;var b=bX();function c(a,c,d,e){return b.ConnectionStrategy.is(e)&&(e={connectionStrategy:e}),(0,b.createMessageConnection)(a,c,d,e)}bz(c,"createProtocolConnection"),a.createProtocolConnection=c}}),cm=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(a){var b,c,d=a&&a.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:bz(function(){return b[c]},"get")}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=a&&a.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(a,"__esModule",{value:!0}),a.LSPErrorCodes=a.createProtocolConnection=void 0,e(bX(),a),e((bH(),bF(bG)),a),e(bZ(),a),e(ck(),a);var f=cl();Object.defineProperty(a,"createProtocolConnection",{enumerable:!0,get:bz(function(){return f.createProtocolConnection},"get")}),(b=c||(a.LSPErrorCodes=c={})).lspReservedErrorRangeStart=-32899,b.RequestFailed=-32803,b.ServerCancelled=-32802,b.ContentModified=-32801,b.RequestCancelled=-32800,b.lspReservedErrorRangeEnd=-32800}}),cn=bA({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(a){var b=a&&a.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:bz(function(){return b[c]},"get")}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),c=a&&a.__exportStar||function(a,c){for(var d in a)"default"===d||Object.prototype.hasOwnProperty.call(c,d)||b(c,a,d)};Object.defineProperty(a,"__esModule",{value:!0}),a.createProtocolConnection=void 0;var d=bY();function e(a,b,c,e){return(0,d.createMessageConnection)(a,b,c,e)}c(bY(),a),c(cm(),a),bz(e,"createProtocolConnection"),a.createProtocolConnection=e}}),co={};bB(co,{AbstractAstReflection:()=>cv,AbstractCstNode:()=>sR,AbstractLangiumParser:()=>sZ,AbstractParserErrorMessageProvider:()=>s_,AbstractThreadedAsyncParser:()=>uZ,AstUtils:()=>cG,BiMap:()=>tT,Cancellation:()=>ts,CompositeCstNodeImpl:()=>sT,ContextCache:()=>t_,CstNodeBuilder:()=>sQ,CstUtils:()=>cp,DEFAULT_TOKENIZE_OPTIONS:()=>uq,DONE_RESULT:()=>cD,DatatypeSymbol:()=>sW,DefaultAstNodeDescriptionProvider:()=>ue,DefaultAstNodeLocator:()=>ug,DefaultAsyncParser:()=>uY,DefaultCommentProvider:()=>uX,DefaultConfigurationProvider:()=>ui,DefaultDocumentBuilder:()=>um,DefaultDocumentValidator:()=>ua,DefaultHydrator:()=>u0,DefaultIndexManager:()=>un,DefaultJsonSerializer:()=>t5,DefaultLangiumDocumentFactory:()=>tL,DefaultLangiumDocuments:()=>tM,DefaultLangiumProfiler:()=>vk,DefaultLexer:()=>ur,DefaultLexerErrorMessageProvider:()=>up,DefaultLinker:()=>tO,DefaultNameProvider:()=>tQ,DefaultReferenceDescriptionProvider:()=>uf,DefaultReferences:()=>tR,DefaultScopeComputation:()=>tU,DefaultScopeProvider:()=>t2,DefaultServiceRegistry:()=>t6,DefaultTokenBuilder:()=>tq,DefaultValueConverter:()=>tr,DefaultWorkspaceLock:()=>u_,DefaultWorkspaceManager:()=>uo,Deferred:()=>tB,Disposable:()=>a6,DisposableCache:()=>tZ,DocumentCache:()=>t0,DocumentState:()=>a3,DocumentValidator:()=>a5,EMPTY_SCOPE:()=>tY,EMPTY_STREAM:()=>cC,EmptyFileSystem:()=>vf,EmptyFileSystemProvider:()=>ve,ErrorWithLocation:()=>eW,GrammarAST:()=>cV,GrammarUtils:()=>eV,IndentationAwareLexer:()=>vc,IndentationAwareTokenBuilder:()=>vb,JSDocDocumentationProvider:()=>uW,LangiumCompletionParser:()=>s1,LangiumParser:()=>s$,LangiumParserErrorMessageProvider:()=>s0,LeafCstNodeImpl:()=>sS,LexingMode:()=>a8,MapScope:()=>tW,Module:()=>a7,MultiMap:()=>tS,MultiMapScope:()=>tX,OperationCancelled:()=>ty,ParserWorker:()=>u$,ProfilingTask:()=>vl,Reduction:()=>aV,RefResolving:()=>tN,RegExpUtils:()=>eZ,RootCstNodeImpl:()=>sV,SimpleCache:()=>t$,StreamImpl:()=>cz,StreamScope:()=>tV,TextDocument:()=>a0,TreeStreamImpl:()=>cF,URI:()=>tI,UriTrie:()=>tK,UriUtils:()=>a2,VALIDATE_EACH_NODE:()=>t9,ValidationCategory:()=>a4,ValidationRegistry:()=>t8,ValueConverter:()=>a_,WorkspaceCache:()=>t1,assertCondition:()=>eY,assertUnreachable:()=>eX,createCompletionParser:()=>tn,createDefaultCoreModule:()=>u1,createDefaultSharedCoreModule:()=>u2,createGrammarConfig:()=>fZ,createLangiumParser:()=>to,createParser:()=>s5,delayNextTick:()=>tt,diagnosticData:()=>t7,eagerLoad:()=>u5,getDiagnosticRange:()=>ub,indentationBuilderDefaultOptions:()=>va,inject:()=>u3,interruptAndCheck:()=>tA,isAstNode:()=>cq,isAstNodeDescription:()=>ct,isAstNodeWithComment:()=>t3,isCompositeCstNode:()=>cw,isIMultiModeLexerDefinition:()=>ut,isJSDoc:()=>uw,isLeafCstNode:()=>cx,isLinkingError:()=>cu,isMultiReference:()=>cs,isNamed:()=>tP,isOperationCancelled:()=>tz,isReference:()=>cr,isRootCstNode:()=>cy,isTokenTypeArray:()=>us,isTokenTypeDictionary:()=>uu,loadGrammarFromJson:()=>vj,parseJSDoc:()=>uv,prepareLangiumParser:()=>tp,setInterruptionPeriod:()=>tx,startCancelableOperation:()=>tw,stream:()=>cE,toDiagnosticData:()=>ud,toDiagnosticSeverity:()=>uc});var cp={};function cq(a){return"object"==typeof a&&null!==a&&"string"==typeof a.$type}function cr(a){return"object"==typeof a&&null!==a&&"string"==typeof a.$refText&&"ref"in a}function cs(a){return"object"==typeof a&&null!==a&&"string"==typeof a.$refText&&"items"in a}function ct(a){return"object"==typeof a&&null!==a&&"string"==typeof a.name&&"string"==typeof a.type&&"string"==typeof a.path}function cu(a){return"object"==typeof a&&null!==a&&"object"==typeof a.info&&"string"==typeof a.message}bB(cp,{DefaultNameRegexp:()=>eI,RangeComparison:()=>aW,compareRange:()=>eG,findCommentNode:()=>eK,findDeclarationNodeAtOffset:()=>eJ,findLeafNodeAtOffset:()=>eM,findLeafNodeBeforeOffset:()=>eN,flattenCst:()=>eC,getDatatypeNode:()=>eA,getInteriorNodes:()=>eS,getNextNode:()=>eQ,getPreviousNode:()=>eP,getStartlineNode:()=>eR,inRange:()=>eH,isChildNode:()=>eD,isCommentNode:()=>eL,streamCst:()=>eB,toDocumentSegment:()=>eF,tokenToRange:()=>eE}),bz(cq,"isAstNode"),bz(cr,"isReference"),bz(cs,"isMultiReference"),bz(ct,"isAstNodeDescription"),bz(cu,"isLinkingError");var cv=class{static{bz(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(a){let b=this.types[a.container.$type];if(!b)throw Error(`Type ${a.container.$type||"undefined"} not found.`);let c=b.properties[a.property]?.referenceType;if(!c)throw Error(`Property ${a.property||"undefined"} of type ${a.container.$type} is not a reference.`);return c}getTypeMetaData(a){let b=this.types[a];return b||{name:a,properties:{},superTypes:[]}}isInstance(a,b){return cq(a)&&this.isSubtype(a.$type,b)}isSubtype(a,b){if(a===b)return!0;let c=this.subtypes[a];c||(c=this.subtypes[a]={});let d=c[b];if(void 0!==d)return d;{let d=this.types[a],e=!!d&&d.superTypes.some(a=>this.isSubtype(a,b));return c[b]=e,e}}getAllSubTypes(a){let b=this.allSubtypes[a];if(b)return b;{let b=this.getAllTypes(),c=[];for(let d of b)this.isSubtype(d,a)&&c.push(d);return this.allSubtypes[a]=c,c}}};function cw(a){return"object"==typeof a&&null!==a&&Array.isArray(a.content)}function cx(a){return"object"==typeof a&&null!==a&&"object"==typeof a.tokenType}function cy(a){return cw(a)&&"string"==typeof a.fullText}bz(cw,"isCompositeCstNode"),bz(cx,"isLeafCstNode"),bz(cy,"isRootCstNode");var cz=class a{static{bz(this,"StreamImpl")}constructor(a,b){this.startFn=a,this.nextFn=b}iterator(){let a={state:this.startFn(),next:bz(()=>this.nextFn(a.state),"next"),[Symbol.iterator]:()=>a};return a}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let a=this.iterator(),b=0,c=a.next();for(;!c.done;)b++,c=a.next();return b}toArray(){let a,b=[],c=this.iterator();do void 0!==(a=c.next()).value&&b.push(a.value);while(!a.done);return b}toSet(){return new Set(this)}toMap(a,b){return new Map(this.map(c=>[a?a(c):c,b?b(c):c]))}toString(){return this.join()}concat(b){return new a(()=>({first:this.startFn(),firstDone:!1,iterator:b[Symbol.iterator]()}),a=>{let b;if(!a.firstDone){do if(!(b=this.nextFn(a.first)).done)return b;while(!b.done);a.firstDone=!0}do if(!(b=a.iterator.next()).done)return b;while(!b.done);return cD})}join(a=","){let b,c=this.iterator(),d="",e=!1;do(b=c.next()).done||(e&&(d+=a),d+=cA(b.value)),e=!0;while(!b.done);return d}indexOf(a,b=0){let c=this.iterator(),d=0,e=c.next();for(;!e.done;){if(d>=b&&e.value===a)return d;e=c.next(),d++}return -1}every(a){let b=this.iterator(),c=b.next();for(;!c.done;){if(!a(c.value))return!1;c=b.next()}return!0}some(a){let b=this.iterator(),c=b.next();for(;!c.done;){if(a(c.value))return!0;c=b.next()}return!1}forEach(a){let b=this.iterator(),c=0,d=b.next();for(;!d.done;)a(d.value,c),d=b.next(),c++}map(b){return new a(this.startFn,a=>{let{done:c,value:d}=this.nextFn(a);return c?cD:{done:!1,value:b(d)}})}filter(b){return new a(this.startFn,a=>{let c;do if(!(c=this.nextFn(a)).done&&b(c.value))return c;while(!c.done);return cD})}nonNullable(){return this.filter(a=>null!=a)}reduce(a,b){let c=this.iterator(),d=b,e=c.next();for(;!e.done;)d=void 0===d?e.value:a(d,e.value),e=c.next();return d}reduceRight(a,b){return this.recursiveReduce(this.iterator(),a,b)}recursiveReduce(a,b,c){let d=a.next();if(d.done)return c;let e=this.recursiveReduce(a,b,c);return void 0===e?d.value:b(e,d.value)}find(a){let b=this.iterator(),c=b.next();for(;!c.done;){if(a(c.value))return c.value;c=b.next()}}findIndex(a){let b=this.iterator(),c=0,d=b.next();for(;!d.done;){if(a(d.value))return c;d=b.next(),c++}return -1}includes(a){let b=this.iterator(),c=b.next();for(;!c.done;){if(c.value===a)return!0;c=b.next()}return!1}flatMap(b){return new a(()=>({this:this.startFn()}),a=>{do{if(a.iterator){let b=a.iterator.next();if(!b.done)return b;a.iterator=void 0}let{done:c,value:d}=this.nextFn(a.this);if(!c){let c=b(d);if(!cB(c))return{done:!1,value:c};a.iterator=c[Symbol.iterator]()}}while(a.iterator);return cD})}flat(b){if(void 0===b&&(b=1),b<=0)return this;let c=b>1?this.flat(b-1):this;return new a(()=>({this:c.startFn()}),a=>{do{if(a.iterator){let b=a.iterator.next();if(!b.done)return b;a.iterator=void 0}let{done:b,value:d}=c.nextFn(a.this);if(!b)if(!cB(d))return{done:!1,value:d};else a.iterator=d[Symbol.iterator]()}while(a.iterator);return cD})}head(){let a=this.iterator().next();if(!a.done)return a.value}tail(b=1){return new a(()=>{let a=this.startFn();for(let c=0;c<b&&!this.nextFn(a).done;c++);return a},this.nextFn)}limit(b){return new a(()=>({size:0,state:this.startFn()}),a=>(a.size++,a.size>b)?cD:this.nextFn(a.state))}distinct(b){return new a(()=>({set:new Set,internalState:this.startFn()}),a=>{let c;do if(!(c=this.nextFn(a.internalState)).done){let d=b?b(c.value):c.value;if(!a.set.has(d))return a.set.add(d),c}while(!c.done);return cD})}exclude(a,b){let c=new Set;for(let d of a){let a=b?b(d):d;c.add(a)}return this.filter(a=>{let d=b?b(a):a;return!c.has(d)})}};function cA(a){return"string"==typeof a?a:void 0===a?"undefined":"function"==typeof a.toString?a.toString():Object.prototype.toString.call(a)}function cB(a){return!!a&&"function"==typeof a[Symbol.iterator]}bz(cA,"toString"),bz(cB,"isIterable");var cC=new cz(()=>void 0,()=>cD),cD=Object.freeze({done:!0,value:void 0});function cE(...a){if(1===a.length){let b=a[0];if(b instanceof cz)return b;if(cB(b))return new cz(()=>b[Symbol.iterator](),a=>a.next());if("number"==typeof b.length)return new cz(()=>({index:0}),a=>a.index<b.length?{done:!1,value:b[a.index++]}:cD)}return a.length>1?new cz(()=>({collIndex:0,arrIndex:0}),b=>{do{if(b.iterator){let a=b.iterator.next();if(!a.done)return a;b.iterator=void 0}if(b.array){if(b.arrIndex<b.array.length)return{done:!1,value:b.array[b.arrIndex++]};b.array=void 0,b.arrIndex=0}if(b.collIndex<a.length){let c=a[b.collIndex++];cB(c)?b.iterator=c[Symbol.iterator]():c&&"number"==typeof c.length&&(b.array=c)}}while(b.iterator||b.array||b.collIndex<a.length);return cD}):cC}bz(cE,"stream");var cF=class extends cz{static{bz(this,"TreeStreamImpl")}constructor(a,b,c){super(()=>({iterators:c?.includeRoot?[[a][Symbol.iterator]()]:[b(a)[Symbol.iterator]()],pruned:!1}),a=>{for(a.pruned&&(a.iterators.pop(),a.pruned=!1);a.iterators.length>0;){let c=a.iterators[a.iterators.length-1].next();if(!c.done)return a.iterators.push(b(c.value)[Symbol.iterator]()),c;a.iterators.pop()}return cD})}iterator(){let a={state:this.startFn(),next:bz(()=>this.nextFn(a.state),"next"),prune:bz(()=>{a.state.pruned=!0},"prune"),[Symbol.iterator]:()=>a};return a}};!function(a){function b(a){return a.reduce((a,b)=>a+b,0)}function c(a){return a.reduce((a,b)=>a*b,0)}function d(a){return a.reduce((a,b)=>Math.min(a,b))}function e(a){return a.reduce((a,b)=>Math.max(a,b))}bz(b,"sum"),a.sum=b,bz(c,"product"),a.product=c,bz(d,"min"),a.min=d,bz(e,"max"),a.max=e}(aV||(aV={}));var cG={};function cH(a,b={}){for(let[c,d]of Object.entries(a))!c.startsWith("$")&&(Array.isArray(d)?d.forEach((d,e)=>{cq(d)&&(d.$container=a,d.$containerProperty=c,d.$containerIndex=e,b.deep&&cH(d,b))}):cq(d)&&(d.$container=a,d.$containerProperty=c,b.deep&&cH(d,b)))}function cI(a,b){let c=a;for(;c;){if(b(c))return c;c=c.$container}}function cJ(a,b){let c=a;for(;c;){if(b(c))return!0;c=c.$container}return!1}function cK(a){let b=cL(a).$document;if(!b)throw Error("AST node has no document.");return b}function cL(a){for(;a.$container;)a=a.$container;return a}function cM(a){return cr(a)?a.ref?[a.ref]:[]:cs(a)?a.items.map(a=>a.ref):[]}function cN(a,b){if(!a)throw Error("Node must be an AstNode.");let c=b?.range;return new cz(()=>({keys:Object.keys(a),keyIndex:0,arrayIndex:0}),b=>{for(;b.keyIndex<b.keys.length;){let d=b.keys[b.keyIndex];if(!d.startsWith("$")){let e=a[d];if(cq(e)){if(b.keyIndex++,cQ(e,c))return{done:!1,value:e}}else if(Array.isArray(e)){for(;b.arrayIndex<e.length;){let a=e[b.arrayIndex++];if(cq(a)&&cQ(a,c))return{done:!1,value:a}}b.arrayIndex=0}}b.keyIndex++}return cD})}function cO(a,b){if(!a)throw Error("Root node must be an AstNode.");return new cF(a,a=>cN(a,b))}function cP(a,b){if(a){if(b?.range&&!cQ(a,b.range))return new cF(a,()=>[])}else throw Error("Root node must be an AstNode.");return new cF(a,a=>cN(a,b),{includeRoot:!0})}function cQ(a,b){if(!b)return!0;let c=a.$cstNode?.range;return!!c&&eH(c,b)}function cR(a){return new cz(()=>({keys:Object.keys(a),keyIndex:0,arrayIndex:0}),b=>{for(;b.keyIndex<b.keys.length;){let c=b.keys[b.keyIndex];if(!c.startsWith("$")){let d=a[c];if(cr(d)||cs(d))return b.keyIndex++,{done:!1,value:{reference:d,container:a,property:c}};if(Array.isArray(d)){for(;b.arrayIndex<d.length;){let e=b.arrayIndex++,f=d[e];if(cr(f)||cs(d))return{done:!1,value:{reference:f,container:a,property:c,index:e}}}b.arrayIndex=0}}b.keyIndex++}return cD})}function cS(a,b){for(let c of Object.values(a.getTypeMetaData(b.$type).properties))void 0!==c.defaultValue&&void 0===b[c.name]&&(b[c.name]=cT(c.defaultValue))}function cT(a){return Array.isArray(a)?[...a.map(cT)]:a}function cU(a,b,c){let d={$type:a.$type};for(let[e,f]of(c&&(c.set(a,d),c.set(d,a)),Object.entries(a)))if(!e.startsWith("$"))if(cq(f))d[e]=cU(f,b,c);else if(cr(f))d[e]=b(d,e,f.$refNode,f.$refText,f);else if(Array.isArray(f)){let a=[];for(let g of f)cq(g)?a.push(cU(g,b,c)):cr(g)?a.push(b(d,e,g.$refNode,g.$refText,g)):a.push(g);d[e]=a}else d[e]=f;return cH(d,{deep:!0}),d}bB(cG,{assignMandatoryProperties:()=>cS,copyAstNode:()=>cU,findRootNode:()=>cL,getContainerOfType:()=>cI,getDocument:()=>cK,getReferenceNodes:()=>cM,hasContainerOfType:()=>cJ,linkContentToContainer:()=>cH,streamAllContents:()=>cO,streamAst:()=>cP,streamContents:()=>cN,streamReferences:()=>cR}),bz(cH,"linkContentToContainer"),bz(cI,"getContainerOfType"),bz(cJ,"hasContainerOfType"),bz(cK,"getDocument"),bz(cL,"findRootNode"),bz(cM,"getReferenceNodes"),bz(cN,"streamContents"),bz(cO,"streamAllContents"),bz(cP,"streamAst"),bz(cQ,"isAstNodeInRange"),bz(cR,"streamReferences"),bz(cS,"assignMandatoryProperties"),bz(cT,"copyDefaultValue"),bz(cU,"copyAstNode");var cV={};bB(cV,{AbstractElement:()=>cX,AbstractParserRule:()=>cZ,AbstractRule:()=>c_,AbstractType:()=>c1,Action:()=>c3,Alternatives:()=>c5,ArrayLiteral:()=>c7,ArrayType:()=>c9,Assignment:()=>db,BooleanLiteral:()=>dd,CharacterRange:()=>df,Condition:()=>dh,Conjunction:()=>dj,CrossReference:()=>dl,Disjunction:()=>dn,EndOfFile:()=>dq,Grammar:()=>ds,GrammarImport:()=>du,Group:()=>dw,InferredType:()=>dy,InfixRule:()=>dA,InfixRuleOperatorList:()=>dC,InfixRuleOperators:()=>dE,Interface:()=>dG,Keyword:()=>dI,LangiumGrammarAstReflection:()=>ey,LangiumGrammarTerminals:()=>cW,NamedArgument:()=>dK,NegatedToken:()=>dM,Negation:()=>dO,NumberLiteral:()=>dQ,Parameter:()=>dS,ParameterReference:()=>dU,ParserRule:()=>dW,ReferenceType:()=>dY,RegexToken:()=>d$,ReturnType:()=>d0,RuleCall:()=>d2,SimpleType:()=>d4,StringLiteral:()=>d6,TerminalAlternatives:()=>d8,TerminalElement:()=>ea,TerminalGroup:()=>ec,TerminalRule:()=>ee,TerminalRuleCall:()=>eg,Type:()=>ei,TypeAttribute:()=>ek,TypeDefinition:()=>em,UnionType:()=>eo,UnorderedGroup:()=>eq,UntilToken:()=>es,ValueLiteral:()=>eu,Wildcard:()=>ew,isAbstractElement:()=>cY,isAbstractParserRule:()=>c$,isAbstractRule:()=>c0,isAbstractType:()=>c2,isAction:()=>c4,isAlternatives:()=>c6,isArrayLiteral:()=>c8,isArrayType:()=>da,isAssignment:()=>dc,isBooleanLiteral:()=>de,isCharacterRange:()=>dg,isCondition:()=>di,isConjunction:()=>dk,isCrossReference:()=>dm,isDisjunction:()=>dp,isEndOfFile:()=>dr,isGrammar:()=>dt,isGrammarImport:()=>dv,isGroup:()=>dx,isInferredType:()=>dz,isInfixRule:()=>dB,isInfixRuleOperatorList:()=>dD,isInfixRuleOperators:()=>dF,isInterface:()=>dH,isKeyword:()=>dJ,isNamedArgument:()=>dL,isNegatedToken:()=>dN,isNegation:()=>dP,isNumberLiteral:()=>dR,isParameter:()=>dT,isParameterReference:()=>dV,isParserRule:()=>dX,isReferenceType:()=>dZ,isRegexToken:()=>d_,isReturnType:()=>d1,isRuleCall:()=>d3,isSimpleType:()=>d5,isStringLiteral:()=>d7,isTerminalAlternatives:()=>d9,isTerminalElement:()=>eb,isTerminalGroup:()=>ed,isTerminalRule:()=>ef,isTerminalRuleCall:()=>eh,isType:()=>ej,isTypeAttribute:()=>el,isTypeDefinition:()=>en,isUnionType:()=>ep,isUnorderedGroup:()=>er,isUntilToken:()=>et,isValueLiteral:()=>ev,isWildcard:()=>ex,reflection:()=>ez});var cW={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},cX={$type:"AbstractElement",cardinality:"cardinality"};function cY(a){return ez.isInstance(a,cX.$type)}bz(cY,"isAbstractElement");var cZ={$type:"AbstractParserRule"};function c$(a){return ez.isInstance(a,cZ.$type)}bz(c$,"isAbstractParserRule");var c_={$type:"AbstractRule"};function c0(a){return ez.isInstance(a,c_.$type)}bz(c0,"isAbstractRule");var c1={$type:"AbstractType"};function c2(a){return ez.isInstance(a,c1.$type)}bz(c2,"isAbstractType");var c3={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function c4(a){return ez.isInstance(a,c3.$type)}bz(c4,"isAction");var c5={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function c6(a){return ez.isInstance(a,c5.$type)}bz(c6,"isAlternatives");var c7={$type:"ArrayLiteral",elements:"elements"};function c8(a){return ez.isInstance(a,c7.$type)}bz(c8,"isArrayLiteral");var c9={$type:"ArrayType",elementType:"elementType"};function da(a){return ez.isInstance(a,c9.$type)}bz(da,"isArrayType");var db={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function dc(a){return ez.isInstance(a,db.$type)}bz(dc,"isAssignment");var dd={$type:"BooleanLiteral",true:"true"};function de(a){return ez.isInstance(a,dd.$type)}bz(de,"isBooleanLiteral");var df={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function dg(a){return ez.isInstance(a,df.$type)}bz(dg,"isCharacterRange");var dh={$type:"Condition"};function di(a){return ez.isInstance(a,dh.$type)}bz(di,"isCondition");var dj={$type:"Conjunction",left:"left",right:"right"};function dk(a){return ez.isInstance(a,dj.$type)}bz(dk,"isConjunction");var dl={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function dm(a){return ez.isInstance(a,dl.$type)}bz(dm,"isCrossReference");var dn={$type:"Disjunction",left:"left",right:"right"};function dp(a){return ez.isInstance(a,dn.$type)}bz(dp,"isDisjunction");var dq={$type:"EndOfFile",cardinality:"cardinality"};function dr(a){return ez.isInstance(a,dq.$type)}bz(dr,"isEndOfFile");var ds={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function dt(a){return ez.isInstance(a,ds.$type)}bz(dt,"isGrammar");var du={$type:"GrammarImport",path:"path"};function dv(a){return ez.isInstance(a,du.$type)}bz(dv,"isGrammarImport");var dw={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function dx(a){return ez.isInstance(a,dw.$type)}bz(dx,"isGroup");var dy={$type:"InferredType",name:"name"};function dz(a){return ez.isInstance(a,dy.$type)}bz(dz,"isInferredType");var dA={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function dB(a){return ez.isInstance(a,dA.$type)}bz(dB,"isInfixRule");var dC={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function dD(a){return ez.isInstance(a,dC.$type)}bz(dD,"isInfixRuleOperatorList");var dE={$type:"InfixRuleOperators",precedences:"precedences"};function dF(a){return ez.isInstance(a,dE.$type)}bz(dF,"isInfixRuleOperators");var dG={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function dH(a){return ez.isInstance(a,dG.$type)}bz(dH,"isInterface");var dI={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function dJ(a){return ez.isInstance(a,dI.$type)}bz(dJ,"isKeyword");var dK={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function dL(a){return ez.isInstance(a,dK.$type)}bz(dL,"isNamedArgument");var dM={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function dN(a){return ez.isInstance(a,dM.$type)}bz(dN,"isNegatedToken");var dO={$type:"Negation",value:"value"};function dP(a){return ez.isInstance(a,dO.$type)}bz(dP,"isNegation");var dQ={$type:"NumberLiteral",value:"value"};function dR(a){return ez.isInstance(a,dQ.$type)}bz(dR,"isNumberLiteral");var dS={$type:"Parameter",name:"name"};function dT(a){return ez.isInstance(a,dS.$type)}bz(dT,"isParameter");var dU={$type:"ParameterReference",parameter:"parameter"};function dV(a){return ez.isInstance(a,dU.$type)}bz(dV,"isParameterReference");var dW={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function dX(a){return ez.isInstance(a,dW.$type)}bz(dX,"isParserRule");var dY={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function dZ(a){return ez.isInstance(a,dY.$type)}bz(dZ,"isReferenceType");var d$={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function d_(a){return ez.isInstance(a,d$.$type)}bz(d_,"isRegexToken");var d0={$type:"ReturnType",name:"name"};function d1(a){return ez.isInstance(a,d0.$type)}bz(d1,"isReturnType");var d2={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function d3(a){return ez.isInstance(a,d2.$type)}bz(d3,"isRuleCall");var d4={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function d5(a){return ez.isInstance(a,d4.$type)}bz(d5,"isSimpleType");var d6={$type:"StringLiteral",value:"value"};function d7(a){return ez.isInstance(a,d6.$type)}bz(d7,"isStringLiteral");var d8={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function d9(a){return ez.isInstance(a,d8.$type)}bz(d9,"isTerminalAlternatives");var ea={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function eb(a){return ez.isInstance(a,ea.$type)}bz(eb,"isTerminalElement");var ec={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function ed(a){return ez.isInstance(a,ec.$type)}bz(ed,"isTerminalGroup");var ee={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function ef(a){return ez.isInstance(a,ee.$type)}bz(ef,"isTerminalRule");var eg={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function eh(a){return ez.isInstance(a,eg.$type)}bz(eh,"isTerminalRuleCall");var ei={$type:"Type",name:"name",type:"type"};function ej(a){return ez.isInstance(a,ei.$type)}bz(ej,"isType");var ek={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function el(a){return ez.isInstance(a,ek.$type)}bz(el,"isTypeAttribute");var em={$type:"TypeDefinition"};function en(a){return ez.isInstance(a,em.$type)}bz(en,"isTypeDefinition");var eo={$type:"UnionType",types:"types"};function ep(a){return ez.isInstance(a,eo.$type)}bz(ep,"isUnionType");var eq={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function er(a){return ez.isInstance(a,eq.$type)}bz(er,"isUnorderedGroup");var es={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function et(a){return ez.isInstance(a,es.$type)}bz(et,"isUntilToken");var eu={$type:"ValueLiteral"};function ev(a){return ez.isInstance(a,eu.$type)}bz(ev,"isValueLiteral");var ew={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function ex(a){return ez.isInstance(a,ew.$type)}bz(ex,"isWildcard");var ey=class extends cv{static{bz(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:cX.$type,properties:{cardinality:{name:cX.cardinality}},superTypes:[]},AbstractParserRule:{name:cZ.$type,properties:{},superTypes:[c_.$type,c1.$type]},AbstractRule:{name:c_.$type,properties:{},superTypes:[]},AbstractType:{name:c1.$type,properties:{},superTypes:[]},Action:{name:c3.$type,properties:{cardinality:{name:c3.cardinality},feature:{name:c3.feature},inferredType:{name:c3.inferredType},operator:{name:c3.operator},type:{name:c3.type,referenceType:c1.$type}},superTypes:[cX.$type]},Alternatives:{name:c5.$type,properties:{cardinality:{name:c5.cardinality},elements:{name:c5.elements,defaultValue:[]}},superTypes:[cX.$type]},ArrayLiteral:{name:c7.$type,properties:{elements:{name:c7.elements,defaultValue:[]}},superTypes:[eu.$type]},ArrayType:{name:c9.$type,properties:{elementType:{name:c9.elementType}},superTypes:[em.$type]},Assignment:{name:db.$type,properties:{cardinality:{name:db.cardinality},feature:{name:db.feature},operator:{name:db.operator},predicate:{name:db.predicate},terminal:{name:db.terminal}},superTypes:[cX.$type]},BooleanLiteral:{name:dd.$type,properties:{true:{name:dd.true,defaultValue:!1}},superTypes:[dh.$type,eu.$type]},CharacterRange:{name:df.$type,properties:{cardinality:{name:df.cardinality},left:{name:df.left},lookahead:{name:df.lookahead},parenthesized:{name:df.parenthesized,defaultValue:!1},right:{name:df.right}},superTypes:[ea.$type]},Condition:{name:dh.$type,properties:{},superTypes:[]},Conjunction:{name:dj.$type,properties:{left:{name:dj.left},right:{name:dj.right}},superTypes:[dh.$type]},CrossReference:{name:dl.$type,properties:{cardinality:{name:dl.cardinality},deprecatedSyntax:{name:dl.deprecatedSyntax,defaultValue:!1},isMulti:{name:dl.isMulti,defaultValue:!1},terminal:{name:dl.terminal},type:{name:dl.type,referenceType:c1.$type}},superTypes:[cX.$type]},Disjunction:{name:dn.$type,properties:{left:{name:dn.left},right:{name:dn.right}},superTypes:[dh.$type]},EndOfFile:{name:dq.$type,properties:{cardinality:{name:dq.cardinality}},superTypes:[cX.$type]},Grammar:{name:ds.$type,properties:{imports:{name:ds.imports,defaultValue:[]},interfaces:{name:ds.interfaces,defaultValue:[]},isDeclared:{name:ds.isDeclared,defaultValue:!1},name:{name:ds.name},rules:{name:ds.rules,defaultValue:[]},types:{name:ds.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:du.$type,properties:{path:{name:du.path}},superTypes:[]},Group:{name:dw.$type,properties:{cardinality:{name:dw.cardinality},elements:{name:dw.elements,defaultValue:[]},guardCondition:{name:dw.guardCondition},predicate:{name:dw.predicate}},superTypes:[cX.$type]},InferredType:{name:dy.$type,properties:{name:{name:dy.name}},superTypes:[c1.$type]},InfixRule:{name:dA.$type,properties:{call:{name:dA.call},dataType:{name:dA.dataType},inferredType:{name:dA.inferredType},name:{name:dA.name},operators:{name:dA.operators},parameters:{name:dA.parameters,defaultValue:[]},returnType:{name:dA.returnType,referenceType:c1.$type}},superTypes:[cZ.$type]},InfixRuleOperatorList:{name:dC.$type,properties:{associativity:{name:dC.associativity},operators:{name:dC.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:dE.$type,properties:{precedences:{name:dE.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:dG.$type,properties:{attributes:{name:dG.attributes,defaultValue:[]},name:{name:dG.name},superTypes:{name:dG.superTypes,defaultValue:[],referenceType:c1.$type}},superTypes:[c1.$type]},Keyword:{name:dI.$type,properties:{cardinality:{name:dI.cardinality},predicate:{name:dI.predicate},value:{name:dI.value}},superTypes:[cX.$type]},NamedArgument:{name:dK.$type,properties:{calledByName:{name:dK.calledByName,defaultValue:!1},parameter:{name:dK.parameter,referenceType:dS.$type},value:{name:dK.value}},superTypes:[]},NegatedToken:{name:dM.$type,properties:{cardinality:{name:dM.cardinality},lookahead:{name:dM.lookahead},parenthesized:{name:dM.parenthesized,defaultValue:!1},terminal:{name:dM.terminal}},superTypes:[ea.$type]},Negation:{name:dO.$type,properties:{value:{name:dO.value}},superTypes:[dh.$type]},NumberLiteral:{name:dQ.$type,properties:{value:{name:dQ.value}},superTypes:[eu.$type]},Parameter:{name:dS.$type,properties:{name:{name:dS.name}},superTypes:[]},ParameterReference:{name:dU.$type,properties:{parameter:{name:dU.parameter,referenceType:dS.$type}},superTypes:[dh.$type]},ParserRule:{name:dW.$type,properties:{dataType:{name:dW.dataType},definition:{name:dW.definition},entry:{name:dW.entry,defaultValue:!1},fragment:{name:dW.fragment,defaultValue:!1},inferredType:{name:dW.inferredType},name:{name:dW.name},parameters:{name:dW.parameters,defaultValue:[]},returnType:{name:dW.returnType,referenceType:c1.$type}},superTypes:[cZ.$type]},ReferenceType:{name:dY.$type,properties:{isMulti:{name:dY.isMulti,defaultValue:!1},referenceType:{name:dY.referenceType}},superTypes:[em.$type]},RegexToken:{name:d$.$type,properties:{cardinality:{name:d$.cardinality},lookahead:{name:d$.lookahead},parenthesized:{name:d$.parenthesized,defaultValue:!1},regex:{name:d$.regex}},superTypes:[ea.$type]},ReturnType:{name:d0.$type,properties:{name:{name:d0.name}},superTypes:[]},RuleCall:{name:d2.$type,properties:{arguments:{name:d2.arguments,defaultValue:[]},cardinality:{name:d2.cardinality},predicate:{name:d2.predicate},rule:{name:d2.rule,referenceType:c_.$type}},superTypes:[cX.$type]},SimpleType:{name:d4.$type,properties:{primitiveType:{name:d4.primitiveType},stringType:{name:d4.stringType},typeRef:{name:d4.typeRef,referenceType:c1.$type}},superTypes:[em.$type]},StringLiteral:{name:d6.$type,properties:{value:{name:d6.value}},superTypes:[eu.$type]},TerminalAlternatives:{name:d8.$type,properties:{cardinality:{name:d8.cardinality},elements:{name:d8.elements,defaultValue:[]},lookahead:{name:d8.lookahead},parenthesized:{name:d8.parenthesized,defaultValue:!1}},superTypes:[ea.$type]},TerminalElement:{name:ea.$type,properties:{cardinality:{name:ea.cardinality},lookahead:{name:ea.lookahead},parenthesized:{name:ea.parenthesized,defaultValue:!1}},superTypes:[cX.$type]},TerminalGroup:{name:ec.$type,properties:{cardinality:{name:ec.cardinality},elements:{name:ec.elements,defaultValue:[]},lookahead:{name:ec.lookahead},parenthesized:{name:ec.parenthesized,defaultValue:!1}},superTypes:[ea.$type]},TerminalRule:{name:ee.$type,properties:{definition:{name:ee.definition},fragment:{name:ee.fragment,defaultValue:!1},hidden:{name:ee.hidden,defaultValue:!1},name:{name:ee.name},type:{name:ee.type}},superTypes:[c_.$type]},TerminalRuleCall:{name:eg.$type,properties:{cardinality:{name:eg.cardinality},lookahead:{name:eg.lookahead},parenthesized:{name:eg.parenthesized,defaultValue:!1},rule:{name:eg.rule,referenceType:ee.$type}},superTypes:[ea.$type]},Type:{name:ei.$type,properties:{name:{name:ei.name},type:{name:ei.type}},superTypes:[c1.$type]},TypeAttribute:{name:ek.$type,properties:{defaultValue:{name:ek.defaultValue},isOptional:{name:ek.isOptional,defaultValue:!1},name:{name:ek.name},type:{name:ek.type}},superTypes:[]},TypeDefinition:{name:em.$type,properties:{},superTypes:[]},UnionType:{name:eo.$type,properties:{types:{name:eo.types,defaultValue:[]}},superTypes:[em.$type]},UnorderedGroup:{name:eq.$type,properties:{cardinality:{name:eq.cardinality},elements:{name:eq.elements,defaultValue:[]}},superTypes:[cX.$type]},UntilToken:{name:es.$type,properties:{cardinality:{name:es.cardinality},lookahead:{name:es.lookahead},parenthesized:{name:es.parenthesized,defaultValue:!1},terminal:{name:es.terminal}},superTypes:[ea.$type]},ValueLiteral:{name:eu.$type,properties:{},superTypes:[]},Wildcard:{name:ew.$type,properties:{cardinality:{name:ew.cardinality},lookahead:{name:ew.lookahead},parenthesized:{name:ew.parenthesized,defaultValue:!1}},superTypes:[ea.$type]}}}},ez=new ey;function eA(a){let b=a,c=!1;for(;b;){let a=cI(b.grammarSource,dX);if(a&&a.dataType)b=b.container,c=!0;else if(c)return b;else break}}function eB(a){return new cF(a,a=>cw(a)?a.content:[],{includeRoot:!0})}function eC(a){return eB(a).filter(cx)}function eD(a,b){for(;a.container;)if((a=a.container)===b)return!0;return!1}function eE(a){return{start:{character:a.startColumn-1,line:a.startLine-1},end:{character:a.endColumn,line:a.endLine-1}}}function eF(a){if(!a)return;let{offset:b,end:c,range:d}=a;return{range:d,offset:b,end:c,length:c-b}}function eG(a,b){if(a.end.line<b.start.line||a.end.line===b.start.line&&a.end.character<=b.start.character)return aW.Before;if(a.start.line>b.end.line||a.start.line===b.end.line&&a.start.character>=b.end.character)return aW.After;let c=a.start.line>b.start.line||a.start.line===b.start.line&&a.start.character>=b.start.character,d=a.end.line<b.end.line||a.end.line===b.end.line&&a.end.character<=b.end.character;return c&&d?aW.Inside:c?aW.OverlapBack:d?aW.OverlapFront:aW.Outside}function eH(a,b){return eG(a,b)>aW.After}bz(eA,"getDatatypeNode"),bz(eB,"streamCst"),bz(eC,"flattenCst"),bz(eD,"isChildNode"),bz(eE,"tokenToRange"),bz(eF,"toDocumentSegment"),(f=aW||(aW={}))[f.Before=0]="Before",f[f.After=1]="After",f[f.OverlapFront=2]="OverlapFront",f[f.OverlapBack=3]="OverlapBack",f[f.Inside=4]="Inside",f[f.Outside=5]="Outside",bz(eG,"compareRange"),bz(eH,"inRange");var eI=/^[\w\p{L}]$/u;function eJ(a,b,c=eI){if(a){if(b>0){let d=b-a.offset,e=a.text.charAt(d);!c.test(e)&&b--}return eM(a,b)}}function eK(a,b){if(a){let c=eP(a,!0);if(c&&eL(c,b))return c;if(cy(a)){let c=a.content.findIndex(a=>!a.hidden);for(let d=c-1;d>=0;d--){let c=a.content[d];if(eL(c,b))return c}}}}function eL(a,b){return cx(a)&&b.includes(a.tokenType.name)}function eM(a,b){if(cx(a))return a;if(cw(a)){let c=eO(a,b,!1);if(c)return eM(c,b)}}function eN(a,b){if(cx(a))return a;if(cw(a)){let c=eO(a,b,!0);if(c)return eN(c,b)}}function eO(a,b,c){let d,e=0,f=a.content.length-1;for(;e<=f;){let g=Math.floor((e+f)/2),h=a.content[g];if(h.offset<=b&&h.end>b)return h;h.end<=b?(d=c?h:void 0,e=g+1):f=g-1}return d}function eP(a,b=!0){for(;a.container;){let c=a.container,d=c.content.indexOf(a);for(;d>0;){d--;let a=c.content[d];if(b||!a.hidden)return a}a=c}}function eQ(a,b=!0){for(;a.container;){let c=a.container,d=c.content.indexOf(a),e=c.content.length-1;for(;d<e;){d++;let a=c.content[d];if(b||!a.hidden)return a}a=c}}function eR(a){let b;if(0===a.range.start.character)return a;let c=a.range.start.line,d=a;for(;a.container;){let e=a.container,f=b??e.content.indexOf(a);if(0===f?(a=e,b=void 0):(b=f-1,a=e.content[b]),a.range.start.line!==c)break;d=a}return d}function eS(a,b){let c=eT(a,b);return c?c.parent.content.slice(c.a+1,c.b):[]}function eT(a,b){let c,d=eU(a),e=eU(b);for(let a=0;a<d.length&&a<e.length;a++){let b=d[a],f=e[a];if(b.parent===f.parent)c={parent:b.parent,a:b.index,b:f.index};else break}return c}function eU(a){let b=[];for(;a.container;){let c=a.container,d=c.content.indexOf(a);b.push({parent:c,index:d}),a=c}return b.reverse()}bz(eJ,"findDeclarationNodeAtOffset"),bz(eK,"findCommentNode"),bz(eL,"isCommentNode"),bz(eM,"findLeafNodeAtOffset"),bz(eN,"findLeafNodeBeforeOffset"),bz(eO,"binarySearch"),bz(eP,"getPreviousNode"),bz(eQ,"getNextNode"),bz(eR,"getStartlineNode"),bz(eS,"getInteriorNodes"),bz(eT,"getCommonParent"),bz(eU,"getParentChain");var eV={};bB(eV,{findAssignment:()=>fz,findNameAssignment:()=>fA,findNodeForKeyword:()=>fx,findNodeForProperty:()=>fu,findNodesForKeyword:()=>fw,findNodesForKeywordInternal:()=>fy,findNodesForProperty:()=>ft,getActionAtElement:()=>fC,getActionType:()=>fM,getAllReachableRules:()=>fo,getAllRulesUsedForCrossReferences:()=>fq,getCrossReferenceTerminal:()=>fr,getEntryRule:()=>fm,getExplicitRuleType:()=>fK,getHiddenRules:()=>fn,getRuleType:()=>fO,getRuleTypeName:()=>fN,getTypeName:()=>fL,isArrayCardinality:()=>fE,isArrayOperator:()=>fF,isCommentTerminal:()=>fs,isDataType:()=>fI,isDataTypeRule:()=>fG,isOptionalCardinality:()=>fD,terminalRegex:()=>fP});var eW=class extends Error{static{bz(this,"ErrorWithLocation")}constructor(a,b){super(a?`${b} at ${a.range.start.line}:${a.range.start.character}`:b)}};function eX(a,b="Error: Got unexpected value."){throw Error(b)}function eY(a,b="Error: Condition is violated."){if(!a)throw Error(b)}bz(eX,"assertUnreachable"),bz(eY,"assertCondition");var eZ={};function e$(a){return a.charCodeAt(0)}function e_(a,b){Array.isArray(a)?a.forEach(function(a){b.push(a)}):b.push(a)}function e0(a,b){if(!0===a[b])throw"duplicate flag "+b;a[b],a[b]=!0}function e1(a){if(void 0===a)throw Error("Internal Error - Should never get here!");return!0}function e2(){throw Error("Internal Error - Should never get here!")}function e3(a){return"Character"===a.type}bB(eZ,{NEWLINE_REGEXP:()=>fc,escapeRegExp:()=>fj,getTerminalParts:()=>ff,isMultilineComment:()=>fg,isWhitespace:()=>fi,partialMatches:()=>fk,partialRegExp:()=>fl,whitespaceCharacters:()=>fh}),bz(e$,"cc"),bz(e_,"insertToSet"),bz(e0,"addFlag"),bz(e1,"ASSERT_EXISTS"),bz(e2,"ASSERT_NEVER_REACH_HERE"),bz(e3,"isCharacter");var e4=[];for(let a=e$("0");a<=e$("9");a++)e4.push(a);var e5=[e$("_")].concat(e4);for(let a=e$("a");a<=e$("z");a++)e5.push(a);for(let a=e$("A");a<=e$("Z");a++)e5.push(a);var e6=[e$(" "),e$("\f"),e$("\n"),e$("\r"),e$(" "),e$("\v"),e$(" "),e$("\xa0"),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$(" "),e$("\u2028"),e$("\u2029"),e$(" "),e$(" "),e$(" "),e$("\uFEFF")],e7=/[0-9a-fA-F]/,e8=/[0-9]/,e9=/[1-9]/,fa=class{static{bz(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(a){this.idx=a.idx,this.input=a.input,this.groupIdx=a.groupIdx}pattern(a){this.idx=0,this.input=a,this.groupIdx=0,this.consumeChar("/");let b=this.disjunction();this.consumeChar("/");let c={type:"Flags",loc:{begin:this.idx,end:a.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":e0(c,"global");break;case"i":e0(c,"ignoreCase");break;case"m":e0(c,"multiLine");break;case"u":e0(c,"unicode");break;case"y":e0(c,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:c,value:b,loc:this.loc(0)}}disjunction(){let a=[],b=this.idx;for(a.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),a.push(this.alternative());return{type:"Disjunction",value:a,loc:this.loc(b)}}alternative(){let a=[],b=this.idx;for(;this.isTerm();)a.push(this.term());return{type:"Alternative",value:a,loc:this.loc(b)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let a=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(a)};case"$":return{type:"EndAnchor",loc:this.loc(a)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(a)};case"B":return{type:"NonWordBoundary",loc:this.loc(a)}}throw Error("Invalid Assertion Escape");case"(":let b;switch(this.consumeChar("?"),this.popChar()){case"=":b="Lookahead";break;case"!":b="NegativeLookahead";break;case"<":switch(this.popChar()){case"=":b="Lookbehind";break;case"!":b="NegativeLookbehind"}}e1(b);let c=this.disjunction();return this.consumeChar(")"),{type:b,value:c,loc:this.loc(a)}}return e2()}quantifier(a=!1){let b,c=this.idx;switch(this.popChar()){case"*":b={atLeast:0,atMost:1/0};break;case"+":b={atLeast:1,atMost:1/0};break;case"?":b={atLeast:0,atMost:1};break;case"{":let d=this.integerIncludingZero();switch(this.popChar()){case"}":b={atLeast:d,atMost:d};break;case",":b=this.isDigit()?{atLeast:d,atMost:this.integerIncludingZero()}:{atLeast:d,atMost:1/0},this.consumeChar("}")}if(!0===a&&void 0===b)return;e1(b)}if((!0!==a||void 0!==b)&&e1(b))return"?"===this.peekChar(0)?(this.consumeChar("?"),b.greedy=!1):b.greedy=!0,b.type="Quantifier",b.loc=this.loc(c),b}atom(){let a,b=this.idx;switch(this.peekChar()){case".":a=this.dotAll();break;case"\\":a=this.atomEscape();break;case"[":a=this.characterClass();break;case"(":a=this.group()}return(void 0===a&&this.isPatternCharacter()&&(a=this.patternCharacter()),e1(a))?(a.loc=this.loc(b),this.isQuantifier()&&(a.quantifier=this.quantifier()),a):e2()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[e$("\n"),e$("\r"),e$("\u2028"),e$("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let a,b=!1;switch(this.popChar()){case"d":a=e4;break;case"D":a=e4,b=!0;break;case"s":a=e6;break;case"S":a=e6,b=!0;break;case"w":a=e5;break;case"W":a=e5,b=!0}return e1(a)?{type:"Set",value:a,complement:b}:e2()}controlEscapeAtom(){let a;switch(this.popChar()){case"f":a=e$("\f");break;case"n":a=e$("\n");break;case"r":a=e$("\r");break;case"t":a=e$(" ");break;case"v":a=e$("\v")}return e1(a)?{type:"Character",value:a}:e2()}controlLetterEscapeAtom(){this.consumeChar("c");let a=this.popChar();if(!1===/[a-zA-Z]/.test(a))throw Error("Invalid ");return{type:"Character",value:a.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:e$("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:e$(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:e$(this.popChar())}}}characterClass(){let a=[],b=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),b=!0);this.isClassAtom();){let b=this.classAtom();if(b.type,e3(b)&&this.isRangeDash()){this.consumeChar("-");let c=this.classAtom();if(c.type,e3(c)){if(c.value<b.value)throw Error("Range out of order in character class");a.push({from:b.value,to:c.value})}else e_(b.value,a),a.push(e$("-")),e_(c.value,a)}else e_(b.value,a)}return this.consumeChar("]"),{type:"Set",complement:b,value:a}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:e$("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let a=!0;this.consumeChar("("),"?"===this.peekChar(0)?(this.consumeChar("?"),this.consumeChar(":"),a=!1):this.groupIdx++;let b=this.disjunction();this.consumeChar(")");let c={type:"Group",capturing:a,value:b};return a&&(c.idx=this.groupIdx),c}positiveInteger(){let a=this.popChar();if(!1===e9.test(a))throw Error("Expecting a positive integer");for(;e8.test(this.peekChar(0));)a+=this.popChar();return parseInt(a,10)}integerIncludingZero(){let a=this.popChar();if(!1===e8.test(a))throw Error("Expecting an integer");for(;e8.test(this.peekChar(0));)a+=this.popChar();return parseInt(a,10)}patternCharacter(){let a=this.popChar();switch(a){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:e$(a)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return"-"===this.peekChar()&&this.isClassAtom(1)}isDigit(){return e8.test(this.peekChar(0))}isClassAtom(a=0){switch(this.peekChar(a)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2)||"<"===this.peekChar(2)&&("="===this.peekChar(3)||"!"===this.peekChar(3)));default:return!1}}isQuantifier(){let a=this.saveState();try{return void 0!==this.quantifier(!0)}catch(a){return!1}finally{this.restoreState(a)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(a){let b="";for(let c=0;c<a;c++){let a=this.popChar();if(!1===e7.test(a))throw Error("Expecting a HexDecimal digits");b+=a}return{type:"Character",value:parseInt(b,16)}}peekChar(a=0){return this.input[this.idx+a]}popChar(){let a=this.peekChar(0);return this.consumeChar(void 0),a}consumeChar(a){if(void 0!==a&&this.input[this.idx]!==a)throw Error("Expected: '"+a+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(a){return{begin:a,end:this.idx}}},fb=class{static{bz(this,"BaseRegExpVisitor")}visitChildren(a){for(let b in a){let c=a[b];a.hasOwnProperty(b)&&(void 0!==c.type?this.visit(c):Array.isArray(c)&&c.forEach(a=>{this.visit(a)},this))}}visit(a){switch(a.type){case"Pattern":this.visitPattern(a);break;case"Flags":this.visitFlags(a);break;case"Disjunction":this.visitDisjunction(a);break;case"Alternative":this.visitAlternative(a);break;case"StartAnchor":this.visitStartAnchor(a);break;case"EndAnchor":this.visitEndAnchor(a);break;case"WordBoundary":this.visitWordBoundary(a);break;case"NonWordBoundary":this.visitNonWordBoundary(a);break;case"Lookahead":this.visitLookahead(a);break;case"NegativeLookahead":this.visitNegativeLookahead(a);break;case"Lookbehind":this.visitLookbehind(a);break;case"NegativeLookbehind":this.visitNegativeLookbehind(a);break;case"Character":this.visitCharacter(a);break;case"Set":this.visitSet(a);break;case"Group":this.visitGroup(a);break;case"GroupBackReference":this.visitGroupBackReference(a);break;case"Quantifier":this.visitQuantifier(a)}this.visitChildren(a)}visitPattern(a){}visitFlags(a){}visitDisjunction(a){}visitAlternative(a){}visitStartAnchor(a){}visitEndAnchor(a){}visitWordBoundary(a){}visitNonWordBoundary(a){}visitLookahead(a){}visitNegativeLookahead(a){}visitLookbehind(a){}visitNegativeLookbehind(a){}visitCharacter(a){}visitSet(a){}visitGroup(a){}visitGroupBackReference(a){}visitQuantifier(a){}},fc=/\r?\n/gm,fd=new fa,fe=new class extends fb{static{bz(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(a){this.multiline=!1,this.regex=a,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(a){a.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(a){let b=String.fromCharCode(a.value);if(this.multiline||"\n"!==b||(this.multiline=!0),a.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let a=fj(b);this.endRegexpStack.push(a),this.isStarting&&(this.startRegexp+=a)}}visitSet(a){if(!this.multiline){let b=new RegExp(this.regex.substring(a.loc.begin,a.loc.end));this.multiline=!!"\n".match(b)}if(a.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let b=this.regex.substring(a.loc.begin,a.loc.end);this.endRegexpStack.push(b),this.isStarting&&(this.startRegexp+=b)}}visitChildren(a){"Group"===a.type&&a.quantifier||super.visitChildren(a)}};function ff(a){try{"string"!=typeof a&&(a=a.source),a=`/${a}/`;let b=fd.pattern(a),c=[];for(let d of b.value.value)fe.reset(a),fe.visit(d),c.push({start:fe.startRegexp,end:fe.endRegex});return c}catch{return[]}}function fg(a){try{return"string"==typeof a&&(a=new RegExp(a)),a=a.toString(),fe.reset(a),fe.visit(fd.pattern(a)),fe.multiline}catch{return!1}}bz(ff,"getTerminalParts"),bz(fg,"isMultilineComment");var fh="\f\n\r \v \xa0 \u2028\u2029 \uFEFF".split("");function fi(a){let b="string"==typeof a?new RegExp(a):a;return fh.some(a=>b.test(a))}function fj(a){return a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fk(a,b){let c=fl(a),d=b.match(c);return!!d&&d[0].length>0}function fl(a){"string"==typeof a&&(a=new RegExp(a));let b=a,c=a.source,d=0;function e(){let a="",f;function g(b){a+=c.substr(d,b),d+=b}function h(b){a+="(?:"+c.substr(d,b)+"|$)",d+=b}for(bz(g,"appendRaw"),bz(h,"appendOptional");d<c.length;)switch(c[d]){case"\\":switch(c[d+1]){case"c":h(3);break;case"x":h(4);break;case"u":h(b.unicode?"{"===c[d+2]?c.indexOf("}",d)-d+1:6:2);break;case"p":case"P":h(b.unicode?c.indexOf("}",d)-d+1:2);break;case"k":h(c.indexOf(">",d)-d+1);break;default:h(2)}break;case"[":(f=/\[(?:\\.|.)*?\]/g).lastIndex=d,h((f=f.exec(c)||[])[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":g(1);break;case"{":(f=/\{\d+,?\d*\}/g).lastIndex=d,(f=f.exec(c))?g(f[0].length):h(1);break;case"(":if("?"===c[d+1])switch(c[d+2]){case":":a+="(?:",d+=3,a+=e()+"|$)";break;case"=":a+="(?=",d+=3,a+=e()+")";break;case"!":f=d,d+=3,e(),a+=c.substr(f,d-f);break;case"<":switch(c[d+3]){case"=":case"!":f=d,d+=4,e(),a+=c.substr(f,d-f);break;default:g(c.indexOf(">",d)-d+1),a+=e()+"|$)"}}else g(1),a+=e()+"|$)";break;case")":return++d,a;default:h(1)}return a}return bz(e,"process"),new RegExp(e(),a.flags)}function fm(a){return a.rules.find(a=>dX(a)&&a.entry)}function fn(a){return a.rules.filter(a=>ef(a)&&a.hidden)}function fo(a,b){let c=new Set,d=fm(a);if(!d)return new Set(a.rules);for(let e of[d].concat(fn(a)))fp(e,c,b);let e=new Set;for(let b of a.rules)(c.has(b.name)||ef(b)&&b.hidden)&&e.add(b);return e}function fp(a,b,c){b.add(a.name),cO(a).forEach(a=>{if(d3(a)||c&&eh(a)){let d=a.rule.ref;d&&!b.has(d.name)&&fp(d,b,c)}})}function fq(a){let b=new Set;return cO(a).forEach(a=>{dm(a)&&(dX(a.type.ref)&&b.add(a.type.ref),dz(a.type.ref)&&dX(a.type.ref.$container)&&b.add(a.type.ref.$container))}),b}function fr(a){if(a.terminal)return a.terminal;if(a.type.ref){let b=fA(a.type.ref);return b?.terminal}}function fs(a){return a.hidden&&!fi(fP(a))}function ft(a,b){return a&&b?fv(a,b,a.astNode,!0):[]}function fu(a,b,c){if(!a||!b)return;let d=fv(a,b,a.astNode,!0);if(0!==d.length)return c=void 0!==c?Math.max(0,Math.min(c,d.length-1)):0,d[c]}function fv(a,b,c,d){if(!d){let c=cI(a.grammarSource,dc);if(c&&c.feature===b)return[a]}return cw(a)&&a.astNode===c?a.content.flatMap(a=>fv(a,b,c,!1)):[]}function fw(a,b){return a?fy(a,b,a?.astNode):[]}function fx(a,b,c){if(!a)return;let d=fy(a,b,a?.astNode);if(0!==d.length)return c=void 0!==c?Math.max(0,Math.min(c,d.length-1)):0,d[c]}function fy(a,b,c){let d;if(a.astNode!==c)return[];if(dJ(a.grammarSource)&&a.grammarSource.value===b)return[a];let e=eB(a).iterator(),f=[];do if(!(d=e.next()).done){let a=d.value;a.astNode===c?dJ(a.grammarSource)&&a.grammarSource.value===b&&f.push(a):e.prune()}while(!d.done);return f}function fz(a){let b=a.astNode;for(;b===a.container?.astNode;){let b=cI(a.grammarSource,dc);if(b)return b;a=a.container}}function fA(a){let b=a;return dz(b)&&(c4(b.$container)?b=b.$container.$container:c$(b.$container)?b=b.$container:eX(b.$container)),fB(a,b,new Map)}function fB(a,b,c){function d(b,d){let e;return cI(b,dc)||(e=fB(d,d,c)),c.set(a,e),e}if(bz(d,"go"),c.has(a))return c.get(a);for(let e of(c.set(a,void 0),cO(b)))if(dc(e)&&"name"===e.feature.toLowerCase())return c.set(a,e),e;else if(d3(e)&&dX(e.rule.ref))return d(e,e.rule.ref);else if(d5(e)&&e.typeRef?.ref)return d(e,e.typeRef.ref)}function fC(a){let b=a.$container;if(dx(b)){let c=b.elements,d=c.indexOf(a);for(let a=d-1;a>=0;a--){let b=c[a];if(c4(b))return b;{let b=cO(c[a]).find(c4);if(b)return b}}}return cY(b)?fC(b):void 0}function fD(a,b){return"?"===a||"*"===a||dx(b)&&!!b.guardCondition}function fE(a){return"*"===a||"+"===a}function fF(a){return"+="===a}function fG(a){return fH(a,new Set)}function fH(a,b){if(b.has(a))return!0;for(let c of(b.add(a),cO(a)))if(d3(c)){if(!c.rule.ref||dX(c.rule.ref)&&!fH(c.rule.ref,b)||dB(c.rule.ref))return!1}else if(dc(c))return!1;else if(c4(c))return!1;return!!a.definition}function fI(a){return fJ(a.type,new Set)}function fJ(a,b){if(b.has(a))return!0;if(b.add(a),da(a)||dZ(a))return!1;if(ep(a))return a.types.every(a=>fJ(a,b));{if(!d5(a))return!1;if(void 0!==a.primitiveType||void 0!==a.stringType)return!0;if(void 0===a.typeRef)return!1;let c=a.typeRef.ref;return!!ej(c)&&fJ(c.type,b)}}function fK(a){if(!ef(a)){if(a.inferredType)return a.inferredType.name;else if(a.dataType)return a.dataType;else if(a.returnType){let b=a.returnType.ref;if(b)return b.name}}}function fL(a){if(c$(a))return dX(a)&&fG(a)?a.name:fK(a)??a.name;if(dH(a)||ej(a)||d1(a))return a.name;if(c4(a)){let b=fM(a);if(b)return b}else if(dz(a))return a.name;throw Error("Cannot get name of Unknown Type")}function fM(a){return a.inferredType?a.inferredType.name:a.type?.ref?fL(a.type.ref):void 0}function fN(a){return ef(a)?a.type?.name??"string":dX(a)&&fG(a)?a.name:fK(a)??a.name}function fO(a){return ef(a)?a.type?.name??"string":fK(a)??a.name}function fP(a){let b={s:!1,i:!1,u:!1};return new RegExp(fR(a.definition,b),Object.entries(b).filter(([,a])=>a).map(([a])=>a).join(""))}bz(fi,"isWhitespace"),bz(fj,"escapeRegExp"),bz(fk,"partialMatches"),bz(fl,"partialRegExp"),bz(fm,"getEntryRule"),bz(fn,"getHiddenRules"),bz(fo,"getAllReachableRules"),bz(fp,"ruleDfs"),bz(fq,"getAllRulesUsedForCrossReferences"),bz(fr,"getCrossReferenceTerminal"),bz(fs,"isCommentTerminal"),bz(ft,"findNodesForProperty"),bz(fu,"findNodeForProperty"),bz(fv,"findNodesForPropertyInternal"),bz(fw,"findNodesForKeyword"),bz(fx,"findNodeForKeyword"),bz(fy,"findNodesForKeywordInternal"),bz(fz,"findAssignment"),bz(fA,"findNameAssignment"),bz(fB,"findNameAssignmentInternal"),bz(fC,"getActionAtElement"),bz(fD,"isOptionalCardinality"),bz(fE,"isArrayCardinality"),bz(fF,"isArrayOperator"),bz(fG,"isDataTypeRule"),bz(fH,"isDataTypeRuleInternal"),bz(fI,"isDataType"),bz(fJ,"isDataTypeInternal"),bz(fK,"getExplicitRuleType"),bz(fL,"getTypeName"),bz(fM,"getActionType"),bz(fN,"getRuleTypeName"),bz(fO,"getRuleType"),bz(fP,"terminalRegex");var fQ=/[\s\S]/.source;function fR(a,b){if(d9(a))return fS(a);if(ed(a))return fT(a);if(dg(a))return fW(a);if(eh(a)){let b=a.rule.ref;if(!b)throw Error("Missing rule reference.");return fY(fR(b.definition),{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized})}if(dN(a))return fV(a);else if(et(a))return fU(a);else if(d_(a)){let c=a.regex.lastIndexOf("/"),d=a.regex.substring(1,c),e=a.regex.substring(c+1);return b&&(b.i=e.includes("i"),b.s=e.includes("s"),b.u=e.includes("u")),fY(d,{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized,wrap:!1})}else if(ex(a))return fY(fQ,{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized});else throw Error(`Invalid terminal element: ${a?.$type}, ${a?.$cstNode?.text}`)}function fS(a){return fY(a.elements.map(a=>fR(a)).join("|"),{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized,wrap:!1})}function fT(a){return fY(a.elements.map(a=>fR(a)).join(""),{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized,wrap:!1})}function fU(a){return fY(`${fQ}*?${fR(a.terminal)}`,{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized})}function fV(a){return fY(`(?!${fR(a.terminal)})${fQ}*?`,{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized})}function fW(a){return a.right?fY(`[${fX(a.left)}-${fX(a.right)}]`,{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized,wrap:!1}):fY(fX(a.left),{cardinality:a.cardinality,lookahead:a.lookahead,parenthesized:a.parenthesized,wrap:!1})}function fX(a){return fj(a.value)}function fY(a,b){if(b.parenthesized||b.lookahead||!1!==b.wrap){let c=b.lookahead??(b.parenthesized?"":"?:");a=`(${c}${a})`}return b.cardinality?`${a}${b.cardinality}`:a}function fZ(a){let b=[];for(let c of a.Grammar.rules)ef(c)&&fs(c)&&fg(fP(c))&&b.push(c.name);return{multilineCommentRules:b,nameRegexp:eI}}bz(fR,"abstractElementToRegex"),bz(fS,"terminalAlternativesToRegex"),bz(fT,"terminalGroupToRegex"),bz(fU,"untilTokenToRegex"),bz(fV,"negateTokenToRegex"),bz(fW,"characterRangeToRegex"),bz(fX,"keywordToRegex"),bz(fY,"withCardinality"),bz(fZ,"createGrammarConfig");var f$="object"==typeof global&&global&&global.Object===Object&&global,f_="object"==typeof self&&self&&self.Object===Object&&self,f0=f$||f_||Function("return this")(),f1=f0.Symbol,f2=Object.prototype,f3=f2.hasOwnProperty,f4=f2.toString,f5=f1?f1.toStringTag:void 0;function f6(a){var b=f3.call(a,f5),c=a[f5];try{a[f5]=void 0;var d=!0}catch(a){}var e=f4.call(a);return d&&(b?a[f5]=c:delete a[f5]),e}bz(f6,"getRawTag");var f7=Object.prototype.toString;function f8(a){return f7.call(a)}bz(f8,"objectToString");var f9=f1?f1.toStringTag:void 0;function ga(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":f9&&f9 in Object(a)?f6(a):f8(a)}function gb(a){return null!=a&&"object"==typeof a}function gc(a){return"symbol"==typeof a||gb(a)&&"[object Symbol]"==ga(a)}function gd(a,b){for(var c=-1,d=null==a?0:a.length,e=Array(d);++c<d;)e[c]=b(a[c],c,a);return e}bz(ga,"baseGetTag"),bz(gb,"isObjectLike"),bz(gc,"isSymbol"),bz(gd,"arrayMap");var ge=Array.isArray,gf=1/0,gg=f1?f1.prototype:void 0,gh=gg?gg.toString:void 0;function gi(a){if("string"==typeof a)return a;if(ge(a))return gd(a,gi)+"";if(gc(a))return gh?gh.call(a):"";var b=a+"";return"0"==b&&1/a==-gf?"-0":b}bz(gi,"baseToString");var gj=/\s/;function gk(a){for(var b=a.length;b--&&gj.test(a.charAt(b)););return b}bz(gk,"trimmedEndIndex");var gl=/^\s+/;function gm(a){return a?a.slice(0,gk(a)+1).replace(gl,""):a}function gn(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)}bz(gm,"baseTrim"),bz(gn,"isObject");var go=0/0,gp=/^[-+]0x[0-9a-f]+$/i,gq=/^0b[01]+$/i,gr=/^0o[0-7]+$/i,gs=parseInt;function gt(a){if("number"==typeof a)return a;if(gc(a))return go;if(gn(a)){var b="function"==typeof a.valueOf?a.valueOf():a;a=gn(b)?b+"":b}if("string"!=typeof a)return 0===a?a:+a;a=gm(a);var c=gq.test(a);return c||gr.test(a)?gs(a.slice(2),c?2:8):gp.test(a)?go:+a}bz(gt,"toNumber");var gu=1/0;function gv(a){return a?(a=gt(a))===gu||a===-gu?(a<0?-1:1)*17976931348623157e292:a==a?a:0:0===a?a:0}function gw(a){var b=gv(a),c=b%1;return b==b?c?b-c:b:0}function gx(a){return a}function gy(a){if(!gn(a))return!1;var b=ga(a);return"[object Function]"==b||"[object GeneratorFunction]"==b||"[object AsyncFunction]"==b||"[object Proxy]"==b}bz(gv,"toFinite"),bz(gw,"toInteger"),bz(gx,"identity"),bz(gy,"isFunction");var gz=f0["__core-js_shared__"],gA=(g=/[^.]+$/.exec(gz&&gz.keys&&gz.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"";function gB(a){return!!gA&&gA in a}bz(gB,"isMasked");var gC=Function.prototype.toString;function gD(a){if(null!=a){try{return gC.call(a)}catch(a){}try{return a+""}catch(a){}}return""}bz(gD,"toSource");var gE=/^\[object .+?Constructor\]$/,gF=Object.prototype,gG=Function.prototype.toString,gH=gF.hasOwnProperty,gI=RegExp("^"+gG.call(gH).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function gJ(a){return!(!gn(a)||gB(a))&&(gy(a)?gI:gE).test(gD(a))}function gK(a,b){return null==a?void 0:a[b]}function gL(a,b){var c=gK(a,b);return gJ(c)?c:void 0}bz(gJ,"baseIsNative"),bz(gK,"getValue"),bz(gL,"getNative");var gM=gL(f0,"WeakMap"),gN=Object.create,gO=function(){function a(){}return bz(a,"object"),function(b){if(!gn(b))return{};if(gN)return gN(b);a.prototype=b;var c=new a;return a.prototype=void 0,c}}();function gP(a,b,c){switch(c.length){case 0:return a.call(b);case 1:return a.call(b,c[0]);case 2:return a.call(b,c[0],c[1]);case 3:return a.call(b,c[0],c[1],c[2])}return a.apply(b,c)}function gQ(){}function gR(a,b){var c=-1,d=a.length;for(b||(b=Array(d));++c<d;)b[c]=a[c];return b}bz(gP,"apply"),bz(gQ,"noop"),bz(gR,"copyArray");var gS=Date.now;function gT(a){var b=0,c=0;return function(){var d=gS(),e=16-(d-c);if(c=d,e>0){if(++b>=800)return arguments[0]}else b=0;return a.apply(void 0,arguments)}}function gU(a){return function(){return a}}bz(gT,"shortOut"),bz(gU,"constant");var gV=function(){try{var a=gL(Object,"defineProperty");return a({},"",{}),a}catch(a){}}(),gW=gT(gV?function(a,b){return gV(a,"toString",{configurable:!0,enumerable:!1,value:gU(b),writable:!0})}:gx);function gX(a,b){for(var c=-1,d=null==a?0:a.length;++c<d&&!1!==b(a[c],c,a););return a}function gY(a,b,c,d){for(var e=a.length,f=c+(d?1:-1);d?f--:++f<e;)if(b(a[f],f,a))return f;return -1}function gZ(a){return a!=a}function g$(a,b,c){for(var d=c-1,e=a.length;++d<e;)if(a[d]===b)return d;return -1}function g_(a,b,c){return b==b?g$(a,b,c):gY(a,gZ,c)}function g0(a,b){return!!(null==a?0:a.length)&&g_(a,b,0)>-1}bz(gX,"arrayEach"),bz(gY,"baseFindIndex"),bz(gZ,"baseIsNaN"),bz(g$,"strictIndexOf"),bz(g_,"baseIndexOf"),bz(g0,"arrayIncludes");var g1=/^(?:0|[1-9]\d*)$/;function g2(a,b){var c=typeof a;return!!(b=null==b?0x1fffffffffffff:b)&&("number"==c||"symbol"!=c&&g1.test(a))&&a>-1&&a%1==0&&a<b}function g3(a,b,c){"__proto__"==b&&gV?gV(a,b,{configurable:!0,enumerable:!0,value:c,writable:!0}):a[b]=c}function g4(a,b){return a===b||a!=a&&b!=b}bz(g2,"isIndex"),bz(g3,"baseAssignValue"),bz(g4,"eq");var g5=Object.prototype.hasOwnProperty;function g6(a,b,c){var d=a[b];g5.call(a,b)&&g4(d,c)&&(void 0!==c||b in a)||g3(a,b,c)}function g7(a,b,c,d){var e=!c;c||(c={});for(var f=-1,g=b.length;++f<g;){var h=b[f],i=d?d(c[h],a[h],h,c,a):void 0;void 0===i&&(i=a[h]),e?g3(c,h,i):g6(c,h,i)}return c}bz(g6,"assignValue"),bz(g7,"copyObject");var g8=Math.max;function g9(a,b,c){return b=g8(void 0===b?a.length-1:b,0),function(){for(var d=arguments,e=-1,f=g8(d.length-b,0),g=Array(f);++e<f;)g[e]=d[b+e];e=-1;for(var h=Array(b+1);++e<b;)h[e]=d[e];return h[b]=c(g),gP(a,this,h)}}function ha(a,b){return gW(g9(a,b,gx),a+"")}function hb(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=0x1fffffffffffff}function hc(a){return null!=a&&hb(a.length)&&!gy(a)}function hd(a,b,c){if(!gn(c))return!1;var d=typeof b;return("number"==d?!!(hc(c)&&g2(b,c.length)):"string"==d&&b in c)&&g4(c[b],a)}function he(a){return ha(function(b,c){var d=-1,e=c.length,f=e>1?c[e-1]:void 0,g=e>2?c[2]:void 0;for(f=a.length>3&&"function"==typeof f?(e--,f):void 0,g&&hd(c[0],c[1],g)&&(f=e<3?void 0:f,e=1),b=Object(b);++d<e;){var h=c[d];h&&a(b,h,d,f)}return b})}bz(g9,"overRest"),bz(ha,"baseRest"),bz(hb,"isLength"),bz(hc,"isArrayLike"),bz(hd,"isIterateeCall"),bz(he,"createAssigner");var hf=Object.prototype;function hg(a){var b=a&&a.constructor;return a===("function"==typeof b&&b.prototype||hf)}function hh(a,b){for(var c=-1,d=Array(a);++c<a;)d[c]=b(c);return d}function hi(a){return gb(a)&&"[object Arguments]"==ga(a)}bz(hg,"isPrototype"),bz(hh,"baseTimes"),bz(hi,"baseIsArguments");var hj=Object.prototype,hk=hj.hasOwnProperty,hl=hj.propertyIsEnumerable,hm=hi(function(){return arguments}())?hi:function(a){return gb(a)&&hk.call(a,"callee")&&!hl.call(a,"callee")};function hn(){return!1}bz(hn,"stubFalse");var ho="object"==typeof exports&&exports&&!exports.nodeType&&exports,hp=ho&&"object"==typeof module&&module&&!module.nodeType&&module,hq=hp&&hp.exports===ho?f0.Buffer:void 0,hr=(hq?hq.isBuffer:void 0)||hn,hs={};function ht(a){return gb(a)&&hb(a.length)&&!!hs[ga(a)]}function hu(a){return function(b){return a(b)}}hs["[object Float32Array]"]=hs["[object Float64Array]"]=hs["[object Int8Array]"]=hs["[object Int16Array]"]=hs["[object Int32Array]"]=hs["[object Uint8Array]"]=hs["[object Uint8ClampedArray]"]=hs["[object Uint16Array]"]=hs["[object Uint32Array]"]=!0,hs["[object Arguments]"]=hs["[object Array]"]=hs["[object ArrayBuffer]"]=hs["[object Boolean]"]=hs["[object DataView]"]=hs["[object Date]"]=hs["[object Error]"]=hs["[object Function]"]=hs["[object Map]"]=hs["[object Number]"]=hs["[object Object]"]=hs["[object RegExp]"]=hs["[object Set]"]=hs["[object String]"]=hs["[object WeakMap]"]=!1,bz(ht,"baseIsTypedArray"),bz(hu,"baseUnary");var hv="object"==typeof exports&&exports&&!exports.nodeType&&exports,hw=hv&&"object"==typeof module&&module&&!module.nodeType&&module,hx=hw&&hw.exports===hv&&f$.process,hy=function(){try{var a=hw&&hw.require&&hw.require("util").types;if(a)return a;return hx&&hx.binding&&hx.binding("util")}catch(a){}}(),hz=hy&&hy.isTypedArray,hA=hz?hu(hz):ht,hB=Object.prototype.hasOwnProperty;function hC(a,b){var c=ge(a),d=!c&&hm(a),e=!c&&!d&&hr(a),f=!c&&!d&&!e&&hA(a),g=c||d||e||f,h=g?hh(a.length,String):[],i=h.length;for(var j in a)(b||hB.call(a,j))&&!(g&&("length"==j||e&&("offset"==j||"parent"==j)||f&&("buffer"==j||"byteLength"==j||"byteOffset"==j)||g2(j,i)))&&h.push(j);return h}function hD(a,b){return function(c){return a(b(c))}}bz(hC,"arrayLikeKeys"),bz(hD,"overArg");var hE=hD(Object.keys,Object),hF=Object.prototype.hasOwnProperty;function hG(a){if(!hg(a))return hE(a);var b=[];for(var c in Object(a))hF.call(a,c)&&"constructor"!=c&&b.push(c);return b}function hH(a){return hc(a)?hC(a):hG(a)}bz(hG,"baseKeys"),bz(hH,"keys");var hI=Object.prototype.hasOwnProperty,hJ=he(function(a,b){if(hg(b)||hc(b))return void g7(b,hH(b),a);for(var c in b)hI.call(b,c)&&g6(a,c,b[c])});function hK(a){var b=[];if(null!=a)for(var c in Object(a))b.push(c);return b}bz(hK,"nativeKeysIn");var hL=Object.prototype.hasOwnProperty;function hM(a){if(!gn(a))return hK(a);var b=hg(a),c=[];for(var d in a)"constructor"==d&&(b||!hL.call(a,d))||c.push(d);return c}function hN(a){return hc(a)?hC(a,!0):hM(a)}bz(hM,"baseKeysIn"),bz(hN,"keysIn");var hO=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,hP=/^\w*$/;function hQ(a,b){if(ge(a))return!1;var c=typeof a;return!!("number"==c||"symbol"==c||"boolean"==c||null==a||gc(a))||hP.test(a)||!hO.test(a)||null!=b&&a in Object(b)}bz(hQ,"isKey");var hR=gL(Object,"create");function hS(){this.__data__=hR?hR(null):{},this.size=0}function hT(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b}bz(hS,"hashClear"),bz(hT,"hashDelete");var hU=Object.prototype.hasOwnProperty;function hV(a){var b=this.__data__;if(hR){var c=b[a];return"__lodash_hash_undefined__"===c?void 0:c}return hU.call(b,a)?b[a]:void 0}bz(hV,"hashGet");var hW=Object.prototype.hasOwnProperty;function hX(a){var b=this.__data__;return hR?void 0!==b[a]:hW.call(b,a)}function hY(a,b){var c=this.__data__;return this.size+=+!this.has(a),c[a]=hR&&void 0===b?"__lodash_hash_undefined__":b,this}function hZ(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function h$(){this.__data__=[],this.size=0}function h_(a,b){for(var c=a.length;c--;)if(g4(a[c][0],b))return c;return -1}bz(hX,"hashHas"),bz(hY,"hashSet"),bz(hZ,"Hash"),hZ.prototype.clear=hS,hZ.prototype.delete=hT,hZ.prototype.get=hV,hZ.prototype.has=hX,hZ.prototype.set=hY,bz(h$,"listCacheClear"),bz(h_,"assocIndexOf");var h0=Array.prototype.splice;function h1(a){var b=this.__data__,c=h_(b,a);return!(c<0)&&(c==b.length-1?b.pop():h0.call(b,c,1),--this.size,!0)}function h2(a){var b=this.__data__,c=h_(b,a);return c<0?void 0:b[c][1]}function h3(a){return h_(this.__data__,a)>-1}function h4(a,b){var c=this.__data__,d=h_(c,a);return d<0?(++this.size,c.push([a,b])):c[d][1]=b,this}function h5(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}bz(h1,"listCacheDelete"),bz(h2,"listCacheGet"),bz(h3,"listCacheHas"),bz(h4,"listCacheSet"),bz(h5,"ListCache"),h5.prototype.clear=h$,h5.prototype.delete=h1,h5.prototype.get=h2,h5.prototype.has=h3,h5.prototype.set=h4;var h6=gL(f0,"Map");function h7(){this.size=0,this.__data__={hash:new hZ,map:new(h6||h5),string:new hZ}}function h8(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a}function h9(a,b){var c=a.__data__;return h8(b)?c["string"==typeof b?"string":"hash"]:c.map}function ia(a){var b=h9(this,a).delete(a);return this.size-=!!b,b}function ib(a){return h9(this,a).get(a)}function ic(a){return h9(this,a).has(a)}function id(a,b){var c=h9(this,a),d=c.size;return c.set(a,b),this.size+=+(c.size!=d),this}function ie(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function ig(a,b){if("function"!=typeof a||null!=b&&"function"!=typeof b)throw TypeError("Expected a function");var c=bz(function(){var d=arguments,e=b?b.apply(this,d):d[0],f=c.cache;if(f.has(e))return f.get(e);var g=a.apply(this,d);return c.cache=f.set(e,g)||f,g},"memoized");return c.cache=new(ig.Cache||ie),c}function ih(a){var b=ig(a,function(a){return 500===c.size&&c.clear(),a}),c=b.cache;return b}bz(h7,"mapCacheClear"),bz(h8,"isKeyable"),bz(h9,"getMapData"),bz(ia,"mapCacheDelete"),bz(ib,"mapCacheGet"),bz(ic,"mapCacheHas"),bz(id,"mapCacheSet"),bz(ie,"MapCache"),ie.prototype.clear=h7,ie.prototype.delete=ia,ie.prototype.get=ib,ie.prototype.has=ic,ie.prototype.set=id,bz(ig,"memoize"),ig.Cache=ie,bz(ih,"memoizeCapped");var ii=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ij=/\\(\\)?/g,ik=ih(function(a){var b=[];return 46===a.charCodeAt(0)&&b.push(""),a.replace(ii,function(a,c,d,e){b.push(d?e.replace(ij,"$1"):c||a)}),b});function il(a){return null==a?"":gi(a)}function im(a,b){return ge(a)?a:hQ(a,b)?[a]:ik(il(a))}bz(il,"toString"),bz(im,"castPath");var io=1/0;function ip(a){if("string"==typeof a||gc(a))return a;var b=a+"";return"0"==b&&1/a==-io?"-0":b}function iq(a,b){b=im(b,a);for(var c=0,d=b.length;null!=a&&c<d;)a=a[ip(b[c++])];return c&&c==d?a:void 0}function ir(a,b,c){var d=null==a?void 0:iq(a,b);return void 0===d?c:d}function is(a,b){for(var c=-1,d=b.length,e=a.length;++c<d;)a[e+c]=b[c];return a}bz(ip,"toKey"),bz(iq,"baseGet"),bz(ir,"get"),bz(is,"arrayPush");var it=f1?f1.isConcatSpreadable:void 0;function iu(a){return ge(a)||hm(a)||!!(it&&a&&a[it])}function iv(a,b,c,d,e){var f=-1,g=a.length;for(c||(c=iu),e||(e=[]);++f<g;){var h=a[f];b>0&&c(h)?b>1?iv(h,b-1,c,d,e):is(e,h):d||(e[e.length]=h)}return e}function iw(a){return(null==a?0:a.length)?iv(a,1):[]}bz(iu,"isFlattenable"),bz(iv,"baseFlatten"),bz(iw,"flatten");var ix=hD(Object.getPrototypeOf,Object);function iy(a,b,c){var d=-1,e=a.length;b<0&&(b=-b>e?0:e+b),(c=c>e?e:c)<0&&(c+=e),e=b>c?0:c-b>>>0,b>>>=0;for(var f=Array(e);++d<e;)f[d]=a[d+b];return f}function iz(a,b,c,d){var e=-1,f=null==a?0:a.length;for(d&&f&&(c=a[++e]);++e<f;)c=b(c,a[e],e,a);return c}function iA(){this.__data__=new h5,this.size=0}function iB(a){var b=this.__data__,c=b.delete(a);return this.size=b.size,c}function iC(a){return this.__data__.get(a)}function iD(a){return this.__data__.has(a)}function iE(a,b){var c=this.__data__;if(c instanceof h5){var d=c.__data__;if(!h6||d.length<199)return d.push([a,b]),this.size=++c.size,this;c=this.__data__=new ie(d)}return c.set(a,b),this.size=c.size,this}function iF(a){var b=this.__data__=new h5(a);this.size=b.size}function iG(a,b){return a&&g7(b,hH(b),a)}function iH(a,b){return a&&g7(b,hN(b),a)}bz(iy,"baseSlice"),bz(iz,"arrayReduce"),bz(iA,"stackClear"),bz(iB,"stackDelete"),bz(iC,"stackGet"),bz(iD,"stackHas"),bz(iE,"stackSet"),bz(iF,"Stack"),iF.prototype.clear=iA,iF.prototype.delete=iB,iF.prototype.get=iC,iF.prototype.has=iD,iF.prototype.set=iE,bz(iG,"baseAssign"),bz(iH,"baseAssignIn");var iI="object"==typeof exports&&exports&&!exports.nodeType&&exports,iJ=iI&&"object"==typeof module&&module&&!module.nodeType&&module,iK=iJ&&iJ.exports===iI?f0.Buffer:void 0,iL=iK?iK.allocUnsafe:void 0;function iM(a,b){if(b)return a.slice();var c=a.length,d=iL?iL(c):new a.constructor(c);return a.copy(d),d}function iN(a,b){for(var c=-1,d=null==a?0:a.length,e=0,f=[];++c<d;){var g=a[c];b(g,c,a)&&(f[e++]=g)}return f}function iO(){return[]}bz(iM,"cloneBuffer"),bz(iN,"arrayFilter"),bz(iO,"stubArray");var iP=Object.prototype.propertyIsEnumerable,iQ=Object.getOwnPropertySymbols,iR=iQ?function(a){return null==a?[]:iN(iQ(a=Object(a)),function(b){return iP.call(a,b)})}:iO;function iS(a,b){return g7(a,iR(a),b)}bz(iS,"copySymbols");var iT=Object.getOwnPropertySymbols?function(a){for(var b=[];a;)is(b,iR(a)),a=ix(a);return b}:iO;function iU(a,b){return g7(a,iT(a),b)}function iV(a,b,c){var d=b(a);return ge(a)?d:is(d,c(a))}function iW(a){return iV(a,hH,iR)}function iX(a){return iV(a,hN,iT)}bz(iU,"copySymbolsIn"),bz(iV,"baseGetAllKeys"),bz(iW,"getAllKeys"),bz(iX,"getAllKeysIn");var iY=gL(f0,"DataView"),iZ=gL(f0,"Promise"),i$=gL(f0,"Set"),i_="[object Map]",i0="[object Promise]",i1="[object Set]",i2="[object WeakMap]",i3="[object DataView]",i4=gD(iY),i5=gD(h6),i6=gD(iZ),i7=gD(i$),i8=gD(gM),i9=ga;(iY&&i9(new iY(new ArrayBuffer(1)))!=i3||h6&&i9(new h6)!=i_||iZ&&i9(iZ.resolve())!=i0||i$&&i9(new i$)!=i1||gM&&i9(new gM)!=i2)&&(i9=bz(function(a){var b=ga(a),c="[object Object]"==b?a.constructor:void 0,d=c?gD(c):"";if(d)switch(d){case i4:return i3;case i5:return i_;case i6:return i0;case i7:return i1;case i8:return i2}return b},"getTag"));var ja=i9,jb=Object.prototype.hasOwnProperty;function jc(a){var b=a.length,c=new a.constructor(b);return b&&"string"==typeof a[0]&&jb.call(a,"index")&&(c.index=a.index,c.input=a.input),c}bz(jc,"initCloneArray");var jd=f0.Uint8Array;function je(a){var b=new a.constructor(a.byteLength);return new jd(b).set(new jd(a)),b}function jf(a,b){var c=b?je(a.buffer):a.buffer;return new a.constructor(c,a.byteOffset,a.byteLength)}bz(je,"cloneArrayBuffer"),bz(jf,"cloneDataView");var jg=/\w*$/;function jh(a){var b=new a.constructor(a.source,jg.exec(a));return b.lastIndex=a.lastIndex,b}bz(jh,"cloneRegExp");var ji=f1?f1.prototype:void 0,jj=ji?ji.valueOf:void 0;function jk(a){return jj?Object(jj.call(a)):{}}function jl(a,b){var c=b?je(a.buffer):a.buffer;return new a.constructor(c,a.byteOffset,a.length)}function jm(a,b,c){var d=a.constructor;switch(b){case"[object ArrayBuffer]":return je(a);case"[object Boolean]":case"[object Date]":return new d(+a);case"[object DataView]":return jf(a,c);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return jl(a,c);case"[object Map]":case"[object Set]":return new d;case"[object Number]":case"[object String]":return new d(a);case"[object RegExp]":return jh(a);case"[object Symbol]":return jk(a)}}function jn(a){return"function"!=typeof a.constructor||hg(a)?{}:gO(ix(a))}function jo(a){return gb(a)&&"[object Map]"==ja(a)}bz(jk,"cloneSymbol"),bz(jl,"cloneTypedArray"),bz(jm,"initCloneByTag"),bz(jn,"initCloneObject"),bz(jo,"baseIsMap");var jp=hy&&hy.isMap,jq=jp?hu(jp):jo;function jr(a){return gb(a)&&"[object Set]"==ja(a)}bz(jr,"baseIsSet");var js=hy&&hy.isSet,jt=js?hu(js):jr,ju="[object Arguments]",jv="[object Function]",jw="[object Object]",jx={};function jy(a,b,c,d,e,f){var g,h=1&b,i=2&b,j=4&b;if(c&&(g=e?c(a,d,e,f):c(a)),void 0!==g)return g;if(!gn(a))return a;var k=ge(a);if(k){if(g=jc(a),!h)return gR(a,g)}else{var l=ja(a),m=l==jv||"[object GeneratorFunction]"==l;if(hr(a))return iM(a,h);if(l==jw||l==ju||m&&!e){if(g=i||m?{}:jn(a),!h)return i?iU(a,iH(g,a)):iS(a,iG(g,a))}else{if(!jx[l])return e?a:{};g=jm(a,l,h)}}f||(f=new iF);var n=f.get(a);if(n)return n;f.set(a,g),jt(a)?a.forEach(function(d){g.add(jy(d,b,c,d,a,f))}):jq(a)&&a.forEach(function(d,e){g.set(e,jy(d,b,c,e,a,f))});var o=j?i?iX:iW:i?hN:hH,p=k?void 0:o(a);return gX(p||a,function(d,e){p&&(d=a[e=d]),g6(g,e,jy(d,b,c,e,a,f))}),g}function jz(a){return jy(a,4)}function jA(a){for(var b=-1,c=null==a?0:a.length,d=0,e=[];++b<c;){var f=a[b];f&&(e[d++]=f)}return e}function jB(a){return this.__data__.set(a,"__lodash_hash_undefined__"),this}function jC(a){return this.__data__.has(a)}function jD(a){var b=-1,c=null==a?0:a.length;for(this.__data__=new ie;++b<c;)this.add(a[b])}function jE(a,b){for(var c=-1,d=null==a?0:a.length;++c<d;)if(b(a[c],c,a))return!0;return!1}function jF(a,b){return a.has(b)}function jG(a,b,c,d,e,f){var g=1&c,h=a.length,i=b.length;if(h!=i&&!(g&&i>h))return!1;var j=f.get(a),k=f.get(b);if(j&&k)return j==b&&k==a;var l=-1,m=!0,n=2&c?new jD:void 0;for(f.set(a,b),f.set(b,a);++l<h;){var o=a[l],p=b[l];if(d)var q=g?d(p,o,l,b,a,f):d(o,p,l,a,b,f);if(void 0!==q){if(q)continue;m=!1;break}if(n){if(!jE(b,function(a,b){if(!jF(n,b)&&(o===a||e(o,a,c,d,f)))return n.push(b)})){m=!1;break}}else if(!(o===p||e(o,p,c,d,f))){m=!1;break}}return f.delete(a),f.delete(b),m}function jH(a){var b=-1,c=Array(a.size);return a.forEach(function(a,d){c[++b]=[d,a]}),c}function jI(a){var b=-1,c=Array(a.size);return a.forEach(function(a){c[++b]=a}),c}jx[ju]=jx["[object Array]"]=jx["[object ArrayBuffer]"]=jx["[object DataView]"]=jx["[object Boolean]"]=jx["[object Date]"]=jx["[object Float32Array]"]=jx["[object Float64Array]"]=jx["[object Int8Array]"]=jx["[object Int16Array]"]=jx["[object Int32Array]"]=jx["[object Map]"]=jx["[object Number]"]=jx[jw]=jx["[object RegExp]"]=jx["[object Set]"]=jx["[object String]"]=jx["[object Symbol]"]=jx["[object Uint8Array]"]=jx["[object Uint8ClampedArray]"]=jx["[object Uint16Array]"]=jx["[object Uint32Array]"]=!0,jx["[object Error]"]=jx[jv]=jx["[object WeakMap]"]=!1,bz(jy,"baseClone"),bz(jz,"clone"),bz(jA,"compact"),bz(jB,"setCacheAdd"),bz(jC,"setCacheHas"),bz(jD,"SetCache"),jD.prototype.add=jD.prototype.push=jB,jD.prototype.has=jC,bz(jE,"arraySome"),bz(jF,"cacheHas"),bz(jG,"equalArrays"),bz(jH,"mapToArray"),bz(jI,"setToArray");var jJ=f1?f1.prototype:void 0,jK=jJ?jJ.valueOf:void 0;function jL(a,b,c,d,e,f,g){switch(c){case"[object DataView]":if(a.byteLength!=b.byteLength||a.byteOffset!=b.byteOffset)break;a=a.buffer,b=b.buffer;case"[object ArrayBuffer]":if(a.byteLength!=b.byteLength||!f(new jd(a),new jd(b)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return g4(+a,+b);case"[object Error]":return a.name==b.name&&a.message==b.message;case"[object RegExp]":case"[object String]":return a==b+"";case"[object Map]":var h=jH;case"[object Set]":var i=1&d;if(h||(h=jI),a.size!=b.size&&!i)break;var j=g.get(a);if(j)return j==b;d|=2,g.set(a,b);var k=jG(h(a),h(b),d,e,f,g);return g.delete(a),k;case"[object Symbol]":if(jK)return jK.call(a)==jK.call(b)}return!1}bz(jL,"equalByTag");var jM=Object.prototype.hasOwnProperty;function jN(a,b,c,d,e,f){var g=1&c,h=iW(a),i=h.length;if(i!=iW(b).length&&!g)return!1;for(var j=i;j--;){var k=h[j];if(!(g?k in b:jM.call(b,k)))return!1}var l=f.get(a),m=f.get(b);if(l&&m)return l==b&&m==a;var n=!0;f.set(a,b),f.set(b,a);for(var o=g;++j<i;){var p=a[k=h[j]],q=b[k];if(d)var r=g?d(q,p,k,b,a,f):d(p,q,k,a,b,f);if(!(void 0===r?p===q||e(p,q,c,d,f):r)){n=!1;break}o||(o="constructor"==k)}if(n&&!o){var s=a.constructor,t=b.constructor;s!=t&&"constructor"in a&&"constructor"in b&&!("function"==typeof s&&s instanceof s&&"function"==typeof t&&t instanceof t)&&(n=!1)}return f.delete(a),f.delete(b),n}bz(jN,"equalObjects");var jO="[object Arguments]",jP="[object Array]",jQ="[object Object]",jR=Object.prototype.hasOwnProperty;function jS(a,b,c,d,e,f){var g=ge(a),h=ge(b),i=g?jP:ja(a),j=h?jP:ja(b);i=i==jO?jQ:i,j=j==jO?jQ:j;var k=i==jQ,l=j==jQ,m=i==j;if(m&&hr(a)){if(!hr(b))return!1;g=!0,k=!1}if(m&&!k)return f||(f=new iF),g||hA(a)?jG(a,b,c,d,e,f):jL(a,b,i,c,d,e,f);if(!(1&c)){var n=k&&jR.call(a,"__wrapped__"),o=l&&jR.call(b,"__wrapped__");if(n||o){var p=n?a.value():a,q=o?b.value():b;return f||(f=new iF),e(p,q,c,d,f)}}return!!m&&(f||(f=new iF),jN(a,b,c,d,e,f))}function jT(a,b,c,d,e){return a===b||(null!=a&&null!=b&&(gb(a)||gb(b))?jS(a,b,c,d,jT,e):a!=a&&b!=b)}function jU(a,b,c,d){var e=c.length,f=e,g=!d;if(null==a)return!f;for(a=Object(a);e--;){var h=c[e];if(g&&h[2]?h[1]!==a[h[0]]:!(h[0]in a))return!1}for(;++e<f;){var i=(h=c[e])[0],j=a[i],k=h[1];if(g&&h[2]){if(void 0===j&&!(i in a))return!1}else{var l=new iF;if(d)var m=d(j,k,i,a,b,l);if(!(void 0===m?jT(k,j,3,d,l):m))return!1}}return!0}function jV(a){return a==a&&!gn(a)}function jW(a){for(var b=hH(a),c=b.length;c--;){var d=b[c],e=a[d];b[c]=[d,e,jV(e)]}return b}function jX(a,b){return function(c){return null!=c&&c[a]===b&&(void 0!==b||a in Object(c))}}function jY(a){var b=jW(a);return 1==b.length&&b[0][2]?jX(b[0][0],b[0][1]):function(c){return c===a||jU(c,a,b)}}function jZ(a,b){return null!=a&&b in Object(a)}function j$(a,b,c){b=im(b,a);for(var d=-1,e=b.length,f=!1;++d<e;){var g=ip(b[d]);if(!(f=null!=a&&c(a,g)))break;a=a[g]}return f||++d!=e?f:!!(e=null==a?0:a.length)&&hb(e)&&g2(g,e)&&(ge(a)||hm(a))}function j_(a,b){return null!=a&&j$(a,b,jZ)}function j0(a,b){return hQ(a)&&jV(b)?jX(ip(a),b):function(c){var d=ir(c,a);return void 0===d&&d===b?j_(c,a):jT(b,d,3)}}function j1(a){return function(b){return null==b?void 0:b[a]}}function j2(a){return function(b){return iq(b,a)}}function j3(a){return hQ(a)?j1(ip(a)):j2(a)}function j4(a){return"function"==typeof a?a:null==a?gx:"object"==typeof a?ge(a)?j0(a[0],a[1]):jY(a):j3(a)}function j5(a,b,c,d){for(var e=-1,f=null==a?0:a.length;++e<f;){var g=a[e];b(d,g,c(g),a)}return d}function j6(a){return function(b,c,d){for(var e=-1,f=Object(b),g=d(b),h=g.length;h--;){var i=g[a?h:++e];if(!1===c(f[i],i,f))break}return b}}bz(jS,"baseIsEqualDeep"),bz(jT,"baseIsEqual"),bz(jU,"baseIsMatch"),bz(jV,"isStrictComparable"),bz(jW,"getMatchData"),bz(jX,"matchesStrictComparable"),bz(jY,"baseMatches"),bz(jZ,"baseHasIn"),bz(j$,"hasPath"),bz(j_,"hasIn"),bz(j0,"baseMatchesProperty"),bz(j1,"baseProperty"),bz(j2,"basePropertyDeep"),bz(j3,"property"),bz(j4,"baseIteratee"),bz(j5,"arrayAggregator"),bz(j6,"createBaseFor");var j7=j6();function j8(a,b){return a&&j7(a,b,hH)}function j9(a,b){return function(c,d){if(null==c)return c;if(!hc(c))return a(c,d);for(var e=c.length,f=b?e:-1,g=Object(c);(b?f--:++f<e)&&!1!==d(g[f],f,g););return c}}bz(j8,"baseForOwn"),bz(j9,"createBaseEach");var ka=j9(j8);function kb(a,b,c,d){return ka(a,function(a,e,f){b(d,a,c(a),f)}),d}function kc(a,b){return function(c,d){var e=ge(c)?j5:kb,f=b?b():{};return e(c,a,j4(d,2),f)}}bz(kb,"baseAggregator"),bz(kc,"createAggregator");var kd=Object.prototype,ke=kd.hasOwnProperty,kf=ha(function(a,b){a=Object(a);var c=-1,d=b.length,e=d>2?b[2]:void 0;for(e&&hd(b[0],b[1],e)&&(d=1);++c<d;)for(var f=b[c],g=hN(f),h=-1,i=g.length;++h<i;){var j=g[h],k=a[j];(void 0===k||g4(k,kd[j])&&!ke.call(a,j))&&(a[j]=f[j])}return a});function kg(a){return gb(a)&&hc(a)}function kh(a,b,c){for(var d=-1,e=null==a?0:a.length;++d<e;)if(c(b,a[d]))return!0;return!1}function ki(a,b,c,d){var e=-1,f=g0,g=!0,h=a.length,i=[],j=b.length;if(!h)return i;c&&(b=gd(b,hu(c))),d?(f=kh,g=!1):b.length>=200&&(f=jF,g=!1,b=new jD(b));b:for(;++e<h;){var k=a[e],l=null==c?k:c(k);if(k=d||0!==k?k:0,g&&l==l){for(var m=j;m--;)if(b[m]===l)continue b;i.push(k)}else f(b,l,d)||i.push(k)}return i}bz(kg,"isArrayLikeObject"),bz(kh,"arrayIncludesWith"),bz(ki,"baseDifference");var kj=ha(function(a,b){return kg(a)?ki(a,iv(b,1,kg,!0)):[]});function kk(a){var b=null==a?0:a.length;return b?a[b-1]:void 0}function kl(a,b,c){var d=null==a?0:a.length;return d?iy(a,(b=c||void 0===b?1:gw(b))<0?0:b,d):[]}function km(a,b,c){var d=null==a?0:a.length;return d?iy(a,0,(b=d-(b=c||void 0===b?1:gw(b)))<0?0:b):[]}function kn(a){return"function"==typeof a?a:gx}function ko(a,b){return(ge(a)?gX:ka)(a,kn(b))}function kp(a,b){for(var c=-1,d=null==a?0:a.length;++c<d;)if(!b(a[c],c,a))return!1;return!0}function kq(a,b){var c=!0;return ka(a,function(a,d,e){return c=!!b(a,d,e)}),c}function kr(a,b,c){var d=ge(a)?kp:kq;return c&&hd(a,b,c)&&(b=void 0),d(a,j4(b,3))}function ks(a,b){var c=[];return ka(a,function(a,d,e){b(a,d,e)&&c.push(a)}),c}function kt(a,b){return(ge(a)?iN:ks)(a,j4(b,3))}function ku(a){return function(b,c,d){var e=Object(b);if(!hc(b)){var f=j4(c,3);b=hH(b),c=bz(function(a){return f(e[a],a,e)},"predicate")}var g=a(b,c,d);return g>-1?e[f?b[g]:g]:void 0}}bz(kk,"last"),bz(kl,"drop"),bz(km,"dropRight"),bz(kn,"castFunction"),bz(ko,"forEach"),bz(kp,"arrayEvery"),bz(kq,"baseEvery"),bz(kr,"every"),bz(ks,"baseFilter"),bz(kt,"filter"),bz(ku,"createFind");var kv=Math.max;function kw(a,b,c){var d=null==a?0:a.length;if(!d)return -1;var e=null==c?0:gw(c);return e<0&&(e=kv(d+e,0)),gY(a,j4(b,3),e)}bz(kw,"findIndex");var kx=ku(kw);function ky(a){return a&&a.length?a[0]:void 0}function kz(a,b){var c=-1,d=hc(a)?Array(a.length):[];return ka(a,function(a,e,f){d[++c]=b(a,e,f)}),d}function kA(a,b){return(ge(a)?gd:kz)(a,j4(b,3))}function kB(a,b){return iv(kA(a,b),1)}bz(ky,"head"),bz(kz,"baseMap"),bz(kA,"map"),bz(kB,"flatMap");var kC=Object.prototype.hasOwnProperty,kD=kc(function(a,b,c){kC.call(a,c)?a[c].push(b):g3(a,c,[b])}),kE=Object.prototype.hasOwnProperty;function kF(a,b){return null!=a&&kE.call(a,b)}function kG(a,b){return null!=a&&j$(a,b,kF)}function kH(a){return"string"==typeof a||!ge(a)&&gb(a)&&"[object String]"==ga(a)}function kI(a,b){return gd(b,function(b){return a[b]})}function kJ(a){return null==a?[]:kI(a,hH(a))}bz(kF,"baseHas"),bz(kG,"has"),bz(kH,"isString"),bz(kI,"baseValues"),bz(kJ,"values");var kK=Math.max;function kL(a,b,c,d){a=hc(a)?a:kJ(a),c=c&&!d?gw(c):0;var e=a.length;return c<0&&(c=kK(e+c,0)),kH(a)?c<=e&&a.indexOf(b,c)>-1:!!e&&g_(a,b,c)>-1}bz(kL,"includes");var kM=Math.max;function kN(a,b,c){var d=null==a?0:a.length;if(!d)return -1;var e=null==c?0:gw(c);return e<0&&(e=kM(d+e,0)),g_(a,b,e)}bz(kN,"indexOf");var kO=Object.prototype.hasOwnProperty;function kP(a){if(null==a)return!0;if(hc(a)&&(ge(a)||"string"==typeof a||"function"==typeof a.splice||hr(a)||hA(a)||hm(a)))return!a.length;var b=ja(a);if("[object Map]"==b||"[object Set]"==b)return!a.size;if(hg(a))return!hG(a).length;for(var c in a)if(kO.call(a,c))return!1;return!0}function kQ(a){return gb(a)&&"[object RegExp]"==ga(a)}bz(kP,"isEmpty"),bz(kQ,"baseIsRegExp");var kR=hy&&hy.isRegExp,kS=kR?hu(kR):kQ;function kT(a){return void 0===a}function kU(a){if("function"!=typeof a)throw TypeError("Expected a function");return function(){var b=arguments;switch(b.length){case 0:return!a.call(this);case 1:return!a.call(this,b[0]);case 2:return!a.call(this,b[0],b[1]);case 3:return!a.call(this,b[0],b[1],b[2])}return!a.apply(this,b)}}function kV(a,b,c,d){if(!gn(a))return a;b=im(b,a);for(var e=-1,f=b.length,g=f-1,h=a;null!=h&&++e<f;){var i=ip(b[e]),j=c;if("__proto__"===i||"constructor"===i||"prototype"===i)break;if(e!=g){var k=h[i];void 0===(j=d?d(k,i,h):void 0)&&(j=gn(k)?k:g2(b[e+1])?[]:{})}g6(h,i,j),h=h[i]}return a}function kW(a,b,c){for(var d=-1,e=b.length,f={};++d<e;){var g=b[d],h=iq(a,g);c(h,g)&&kV(f,im(g,a),h)}return f}function kX(a,b){if(null==a)return{};var c=gd(iX(a),function(a){return[a]});return b=j4(b),kW(a,c,function(a,c){return b(a,c[0])})}function kY(a,b,c,d,e){return e(a,function(a,e,f){c=d?(d=!1,a):b(c,a,e,f)}),c}function kZ(a,b,c){var d=ge(a)?iz:kY,e=arguments.length<3;return d(a,j4(b,4),c,e,ka)}function k$(a,b){return(ge(a)?iN:ks)(a,kU(j4(b,3)))}function k_(a,b){var c;return ka(a,function(a,d,e){return!(c=b(a,d,e))}),!!c}function k0(a,b,c){var d=ge(a)?jE:k_;return c&&hd(a,b,c)&&(b=void 0),d(a,j4(b,3))}bz(kT,"isUndefined"),bz(kU,"negate"),bz(kV,"baseSet"),bz(kW,"basePickBy"),bz(kX,"pickBy"),bz(kY,"baseReduce"),bz(kZ,"reduce"),bz(k$,"reject"),bz(k_,"baseSome"),bz(k0,"some");var k1=i$&&1/jI(new i$([,-0]))[1]==1/0?function(a){return new i$(a)}:gQ;function k2(a,b,c){var d=-1,e=g0,f=a.length,g=!0,h=[],i=h;if(c)g=!1,e=kh;else if(f>=200){var j=b?null:k1(a);if(j)return jI(j);g=!1,e=jF,i=new jD}else i=b?[]:h;b:for(;++d<f;){var k=a[d],l=b?b(k):k;if(k=c||0!==k?k:0,g&&l==l){for(var m=i.length;m--;)if(i[m]===l)continue b;b&&i.push(l),h.push(k)}else e(i,l,c)||(i!==h&&i.push(l),h.push(k))}return h}function k3(a){return a&&a.length?k2(a):[]}function k4(a){console&&console.error&&console.error(`Error: ${a}`)}function k5(a){console&&console.warn&&console.warn(`Warning: ${a}`)}function k6(a){let b=new Date().getTime(),c=a();return{time:new Date().getTime()-b,value:c}}function k7(a){function b(){}bz(b,"FakeConstructor"),b.prototype=a;let c=new b;function d(){return typeof c.bar}return bz(d,"fakeAccess"),d(),d(),a}function k8(a){return k9(a)?a.LABEL:a.name}function k9(a){return kH(a.LABEL)&&""!==a.LABEL}bz(k2,"baseUniq"),bz(k3,"uniq"),bz(k4,"PRINT_ERROR"),bz(k5,"PRINT_WARNING"),bz(k6,"timer"),bz(k7,"toFastProperties"),bz(k8,"tokenLabel"),bz(k9,"hasTokenLabel");var la=class{static{bz(this,"AbstractProduction")}get definition(){return this._definition}set definition(a){this._definition=a}constructor(a){this._definition=a}accept(a){a.visit(this),ko(this.definition,b=>{b.accept(a)})}},lb=class extends la{static{bz(this,"NonTerminal")}constructor(a){super([]),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}set definition(a){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(a){a.visit(this)}},lc=class extends la{static{bz(this,"Rule")}constructor(a){super(a.definition),this.orgText="",hJ(this,kX(a,a=>void 0!==a))}},ld=class extends la{static{bz(this,"Alternative")}constructor(a){super(a.definition),this.ignoreAmbiguities=!1,hJ(this,kX(a,a=>void 0!==a))}},le=class extends la{static{bz(this,"Option")}constructor(a){super(a.definition),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}},lf=class extends la{static{bz(this,"RepetitionMandatory")}constructor(a){super(a.definition),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}},lg=class extends la{static{bz(this,"RepetitionMandatoryWithSeparator")}constructor(a){super(a.definition),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}},lh=class extends la{static{bz(this,"Repetition")}constructor(a){super(a.definition),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}},li=class extends la{static{bz(this,"RepetitionWithSeparator")}constructor(a){super(a.definition),this.idx=1,hJ(this,kX(a,a=>void 0!==a))}},lj=class extends la{static{bz(this,"Alternation")}get definition(){return this._definition}set definition(a){this._definition=a}constructor(a){super(a.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,hJ(this,kX(a,a=>void 0!==a))}},lk=class{static{bz(this,"Terminal")}constructor(a){this.idx=1,hJ(this,kX(a,a=>void 0!==a))}accept(a){a.visit(this)}};function ll(a){return kA(a,lm)}function lm(a){function b(a){return kA(a,lm)}if(bz(b,"convertDefinition"),a instanceof lb){let b={type:"NonTerminal",name:a.nonTerminalName,idx:a.idx};return kH(a.label)&&(b.label=a.label),b}if(a instanceof ld)return{type:"Alternative",definition:b(a.definition)};if(a instanceof le)return{type:"Option",idx:a.idx,definition:b(a.definition)};if(a instanceof lf)return{type:"RepetitionMandatory",idx:a.idx,definition:b(a.definition)};if(a instanceof lg)return{type:"RepetitionMandatoryWithSeparator",idx:a.idx,separator:lm(new lk({terminalType:a.separator})),definition:b(a.definition)};else if(a instanceof li)return{type:"RepetitionWithSeparator",idx:a.idx,separator:lm(new lk({terminalType:a.separator})),definition:b(a.definition)};else if(a instanceof lh)return{type:"Repetition",idx:a.idx,definition:b(a.definition)};else if(a instanceof lj)return{type:"Alternation",idx:a.idx,definition:b(a.definition)};else if(a instanceof lk){let b={type:"Terminal",name:a.terminalType.name,label:k8(a.terminalType),idx:a.idx};kH(a.label)&&(b.terminalLabel=a.label);let c=a.terminalType.PATTERN;return a.terminalType.PATTERN&&(b.pattern=kS(c)?c.source:c),b}else if(a instanceof lc)return{type:"Rule",name:a.name,orgText:a.orgText,definition:b(a.definition)};else throw Error("non exhaustive match")}bz(ll,"serializeGrammar"),bz(lm,"serializeProduction");var ln=class{static{bz(this,"GAstVisitor")}visit(a){switch(a.constructor){case lb:return this.visitNonTerminal(a);case ld:return this.visitAlternative(a);case le:return this.visitOption(a);case lf:return this.visitRepetitionMandatory(a);case lg:return this.visitRepetitionMandatoryWithSeparator(a);case li:return this.visitRepetitionWithSeparator(a);case lh:return this.visitRepetition(a);case lj:return this.visitAlternation(a);case lk:return this.visitTerminal(a);case lc:return this.visitRule(a);default:throw Error("non exhaustive match")}}visitNonTerminal(a){}visitAlternative(a){}visitOption(a){}visitRepetition(a){}visitRepetitionMandatory(a){}visitRepetitionMandatoryWithSeparator(a){}visitRepetitionWithSeparator(a){}visitAlternation(a){}visitTerminal(a){}visitRule(a){}};function lo(a){return a instanceof ld||a instanceof le||a instanceof lh||a instanceof lf||a instanceof lg||a instanceof li||a instanceof lk||a instanceof lc}function lp(a,b=[]){return a instanceof le||a instanceof lh||a instanceof li||(a instanceof lj?k0(a.definition,a=>lp(a,b)):!(a instanceof lb&&kL(b,a))&&a instanceof la&&(a instanceof lb&&b.push(a),kr(a.definition,a=>lp(a,b))))}function lq(a){return a instanceof lj}function lr(a){if(a instanceof lb)return"SUBRULE";if(a instanceof le)return"OPTION";if(a instanceof lj)return"OR";if(a instanceof lf)return"AT_LEAST_ONE";if(a instanceof lg)return"AT_LEAST_ONE_SEP";else if(a instanceof li)return"MANY_SEP";else if(a instanceof lh)return"MANY";else if(a instanceof lk)return"CONSUME";else throw Error("non exhaustive match")}bz(lo,"isSequenceProd"),bz(lp,"isOptionalProd"),bz(lq,"isBranchingProd"),bz(lr,"getProductionDslName");var ls=class{static{bz(this,"RestWalker")}walk(a,b=[]){ko(a.definition,(c,d)=>{let e=kl(a.definition,d+1);if(c instanceof lb)this.walkProdRef(c,e,b);else if(c instanceof lk)this.walkTerminal(c,e,b);else if(c instanceof ld)this.walkFlat(c,e,b);else if(c instanceof le)this.walkOption(c,e,b);else if(c instanceof lf)this.walkAtLeastOne(c,e,b);else if(c instanceof lg)this.walkAtLeastOneSep(c,e,b);else if(c instanceof li)this.walkManySep(c,e,b);else if(c instanceof lh)this.walkMany(c,e,b);else if(c instanceof lj)this.walkOr(c,e,b);else throw Error("non exhaustive match")})}walkTerminal(a,b,c){}walkProdRef(a,b,c){}walkFlat(a,b,c){let d=b.concat(c);this.walk(a,d)}walkOption(a,b,c){let d=b.concat(c);this.walk(a,d)}walkAtLeastOne(a,b,c){let d=[new le({definition:a.definition})].concat(b,c);this.walk(a,d)}walkAtLeastOneSep(a,b,c){let d=lt(a,b,c);this.walk(a,d)}walkMany(a,b,c){let d=[new le({definition:a.definition})].concat(b,c);this.walk(a,d)}walkManySep(a,b,c){let d=lt(a,b,c);this.walk(a,d)}walkOr(a,b,c){let d=b.concat(c);ko(a.definition,a=>{let b=new ld({definition:[a]});this.walk(b,d)})}};function lt(a,b,c){return[new le({definition:[new lk({terminalType:a.separator})].concat(a.definition)})].concat(b,c)}function lu(a){if(a instanceof lb)return lu(a.referencedRule);if(a instanceof lk)return lx(a);if(lo(a))return lv(a);if(lq(a))return lw(a);throw Error("non exhaustive match")}function lv(a){let b,c=[],d=a.definition,e=0,f=d.length>e,g=!0;for(;f&&g;)g=lp(b=d[e]),c=c.concat(lu(b)),e+=1,f=d.length>e;return k3(c)}function lw(a){return k3(iw(kA(a.definition,a=>lu(a))))}function lx(a){return[a.terminalType]}bz(lt,"restForRepetitionWithSeparator"),bz(lu,"first"),bz(lv,"firstForSequence"),bz(lw,"firstForBranching"),bz(lx,"firstForTerminal");var ly="_~IN~_",lz=class extends ls{static{bz(this,"ResyncFollowsWalker")}constructor(a){super(),this.topProd=a,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(a,b,c){}walkProdRef(a,b,c){let d=lB(a.referencedRule,a.idx)+this.topProd.name,e=lu(new ld({definition:b.concat(c)}));this.follows[d]=e}};function lA(a){let b={};return ko(a,a=>{hJ(b,new lz(a).startWalking())}),b}function lB(a,b){return a.name+b+ly}bz(lA,"computeAllProdsFollows"),bz(lB,"buildBetweenProdsFollowPrefix");var lC={},lD=new fa;function lE(a){let b=a.toString();if(lC.hasOwnProperty(b))return lC[b];{let a=lD.pattern(b);return lC[b]=a,a}}function lF(){lC={}}bz(lE,"getRegExpAst"),bz(lF,"clearRegExpParserCache");var lG="Complement Sets are not supported for first char optimization",lH='Unable to use "first char" lexer optimizations:\n';function lI(a,b=!1){try{let b=lE(a);return lJ(b.value,{},b.flags.ignoreCase)}catch(c){if(c.message===lG)b&&k5(`${lH} Unable to optimize: < ${a.toString()} >
|
|
22
|
+
Complement Sets cannot be automatically optimized.
|
|
23
|
+
This will disable the lexer's first char optimizations.
|
|
24
|
+
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let c="";b&&(c="\n This will disable the lexer's first char optimizations.\n See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."),k4(`${lH}
|
|
25
|
+
Failed parsing: < ${a.toString()} >
|
|
26
|
+
Using the @chevrotain/regexp-to-ast library
|
|
27
|
+
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+c)}}return[]}function lJ(a,b,c){switch(a.type){case"Disjunction":for(let d=0;d<a.value.length;d++)lJ(a.value[d],b,c);break;case"Alternative":let d=a.value;for(let a=0;a<d.length;a++){let e=d[a];switch(e.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}switch(e.type){case"Character":lK(e.value,b,c);break;case"Set":if(!0===e.complement)throw Error(lG);ko(e.value,a=>{if("number"==typeof a)lK(a,b,c);else if(!0===c)for(let d=a.from;d<=a.to;d++)lK(d,b,c);else{for(let d=a.from;d<=a.to&&d<mm;d++)lK(d,b,c);if(a.to>=mm){let c=a.from>=mm?a.from:mm,d=a.to,e=mo(c),f=mo(d);for(let a=e;a<=f;a++)b[a]=a}}});break;case"Group":lJ(e.value,b,c);break;default:throw Error("Non Exhaustive Match")}let f=void 0!==e.quantifier&&0===e.quantifier.atLeast;if("Group"===e.type&&!1===lN(e)||"Group"!==e.type&&!1===f)break}break;default:throw Error("non exhaustive match!")}return kJ(b)}function lK(a,b,c){let d=mo(a);b[d]=d,!0===c&&lL(a,b)}function lL(a,b){let c=String.fromCharCode(a),d=c.toUpperCase();if(d!==c){let a=mo(d.charCodeAt(0));b[a]=a}else{let a=c.toLowerCase();if(a!==c){let c=mo(a.charCodeAt(0));b[c]=c}}}function lM(a,b){return kx(a.value,a=>"number"==typeof a?kL(b,a):void 0!==kx(b,b=>a.from<=b&&b<=a.to))}function lN(a){let b=a.quantifier;return!!b&&0===b.atLeast||!!a.value&&(ge(a.value)?kr(a.value,lN):lN(a.value))}bz(lI,"getOptimizedStartCodesIndices"),bz(lJ,"firstCharOptimizedIndices"),bz(lK,"addOptimizedIdxToResult"),bz(lL,"handleIgnoreCase"),bz(lM,"findCode"),bz(lN,"isWholeOptional");var lO=class extends fb{static{bz(this,"CharCodeFinder")}constructor(a){super(),this.targetCharCodes=a,this.found=!1}visitChildren(a){if(!0!==this.found){switch(a.type){case"Lookahead":this.visitLookahead(a);return;case"NegativeLookahead":this.visitNegativeLookahead(a);return;case"Lookbehind":this.visitLookbehind(a);return;case"NegativeLookbehind":this.visitNegativeLookbehind(a);return}super.visitChildren(a)}}visitCharacter(a){kL(this.targetCharCodes,a.value)&&(this.found=!0)}visitSet(a){a.complement?void 0===lM(a,this.targetCharCodes)&&(this.found=!0):void 0!==lM(a,this.targetCharCodes)&&(this.found=!0)}};function lP(a,b){if(!(b instanceof RegExp))return void 0!==kx(b,b=>kL(a,b.charCodeAt(0)));{let c=lE(b),d=new lO(a);return d.visit(c),d.found}}bz(lP,"canMatchCharCode");var lQ="PATTERN",lR="defaultMode",lS="modes",lT="boolean"==typeof RegExp("(?:)").sticky;function lU(a,b){let c,d,e,f,g,h,i,j,k,l,m,n,o=(b=kf(b,{useSticky:lT,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:bz((a,b)=>b(),"tracer")})).tracer;o("initCharCodeToOptimizedIndexMap",()=>{mp()}),o("Reject Lexer.NA",()=>{c=k$(a,a=>a[lQ]===mH.NA)});let p=!1;o("Transform Patterns",()=>{p=!1,d=kA(c,a=>{let c=a[lQ];if(kS(c)){let a=c.source;return 1!==a.length||"^"===a||"$"===a||"."===a||c.ignoreCase?2!==a.length||"\\"!==a[0]||kL(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],a[1])?b.useSticky?mb(c):ma(c):a[1]:a}if(gy(c))return p=!0,{exec:c};if("object"==typeof c)return p=!0,c;if("string"==typeof c)if(1===c.length)return c;else{let a=new RegExp(c.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"));return b.useSticky?mb(a):ma(a)}throw Error("non exhaustive match")})}),o("misc mapping",()=>{e=kA(c,a=>a.tokenTypeIdx),f=kA(c,a=>{let b=a.GROUP;if(b!==mH.SKIPPED){if(kH(b))return b;if(kT(b))return!1;throw Error("non exhaustive match")}}),g=kA(c,a=>{let b=a.LONGER_ALT;if(b)return ge(b)?kA(b,a=>kN(c,a)):[kN(c,b)]}),h=kA(c,a=>a.PUSH_MODE),i=kA(c,a=>kG(a,"POP_MODE"))}),o("Line Terminator Handling",()=>{let a=mk(b.lineTerminatorCharacters);j=kA(c,a=>!1),"onlyOffset"!==b.positionTracking&&(j=kA(c,b=>kG(b,"LINE_BREAKS")?!!b.LINE_BREAKS:!1===mi(b,a)&&lP(a,b.PATTERN)))}),o("Misc Mapping #2",()=>{k=kA(c,mf),l=kA(d,mg),m=kZ(c,(a,b)=>{let c=b.GROUP;return kH(c)&&c!==mH.SKIPPED&&(a[c]=[]),a},{}),n=kA(d,(a,b)=>({pattern:d[b],longerAlt:g[b],canLineTerminator:j[b],isCustom:k[b],short:l[b],group:f[b],push:h[b],pop:i[b],tokenTypeIdx:e[b],tokenType:c[b]}))});let q=!0,r=[];return b.safeMode||o("First Char Optimization",()=>{r=kZ(c,(a,c,d)=>{if("string"==typeof c.PATTERN)ml(a,mo(c.PATTERN.charCodeAt(0)),n[d]);else if(ge(c.START_CHARS_HINT)){let b;ko(c.START_CHARS_HINT,c=>{let e=mo("string"==typeof c?c.charCodeAt(0):c);b!==e&&(b=e,ml(a,e,n[d]))})}else if(kS(c.PATTERN))if(c.PATTERN.unicode)q=!1,b.ensureOptimizations&&k4(`${lH} Unable to analyze < ${c.PATTERN.toString()} > pattern.
|
|
28
|
+
The regexp unicode flag is not currently supported by the regexp-to-ast library.
|
|
29
|
+
This will disable the lexer's first char optimizations.
|
|
30
|
+
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let e=lI(c.PATTERN,b.ensureOptimizations);kP(e)&&(q=!1),ko(e,b=>{ml(a,b,n[d])})}else b.ensureOptimizations&&k4(`${lH} TokenType: <${c.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
|
|
31
|
+
This will disable the lexer's first char optimizations.
|
|
32
|
+
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),q=!1;return a},[])}),{emptyGroups:m,patternIdxToConfig:n,charCodeToPatternIdxToConfig:r,hasCustom:p,canBeOptimized:q}}function lV(a,b){let c=[],d=lX(a);c=c.concat(d.errors);let e=lY(d.valid),f=e.valid;return(c=(c=(c=(c=c.concat(e.errors)).concat(lW(f))).concat(l4(f))).concat(l5(f,b))).concat(l6(f))}function lW(a){let b=[],c=kt(a,a=>kS(a[lQ]));return(b=(b=(b=(b=b.concat(l$(c))).concat(l1(c))).concat(l2(c))).concat(l3(c))).concat(l_(c))}function lX(a){let b=kt(a,a=>!kG(a,lQ));return{errors:kA(b,a=>({message:"Token Type: ->"+a.name+"<- missing static 'PATTERN' property",type:aX.MISSING_PATTERN,tokenTypes:[a]})),valid:kj(a,b)}}function lY(a){let b=kt(a,a=>{let b=a[lQ];return!kS(b)&&!gy(b)&&!kG(b,"exec")&&!kH(b)});return{errors:kA(b,a=>({message:"Token Type: ->"+a.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:aX.INVALID_PATTERN,tokenTypes:[a]})),valid:kj(a,b)}}bz(lU,"analyzeTokenTypes"),bz(lV,"validatePatterns"),bz(lW,"validateRegExpPattern"),bz(lX,"findMissingPatterns"),bz(lY,"findInvalidPatterns");var lZ=/[^\\][$]/;function l$(a){class b extends fb{static{bz(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}return kA(kt(a,a=>{let c=a.PATTERN;try{let a=lE(c),d=new b;return d.visit(a),d.found}catch(a){return lZ.test(c.source)}}),a=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+a.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:aX.EOI_ANCHOR_FOUND,tokenTypes:[a]}))}function l_(a){return kA(kt(a,a=>a.PATTERN.test("")),a=>({message:"Token Type: ->"+a.name+"<- static 'PATTERN' must not match an empty string",type:aX.EMPTY_MATCH_PATTERN,tokenTypes:[a]}))}bz(l$,"findEndOfInputAnchor"),bz(l_,"findEmptyMatchRegExps");var l0=/[^\\[][\^]|^\^/;function l1(a){class b extends fb{static{bz(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}return kA(kt(a,a=>{let c=a.PATTERN;try{let a=lE(c),d=new b;return d.visit(a),d.found}catch(a){return l0.test(c.source)}}),a=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+a.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:aX.SOI_ANCHOR_FOUND,tokenTypes:[a]}))}function l2(a){return kA(kt(a,a=>{let b=a[lQ];return b instanceof RegExp&&(b.multiline||b.global)}),a=>({message:"Token Type: ->"+a.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:aX.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[a]}))}function l3(a){let b=[],c=kA(a,c=>kZ(a,(a,d)=>(c.PATTERN.source!==d.PATTERN.source||kL(b,d)||d.PATTERN===mH.NA||(b.push(d),a.push(d)),a),[]));return kA(kt(c=jA(c),a=>a.length>1),a=>{let b=kA(a,a=>a.name),c=ky(a).PATTERN;return{message:`The same RegExp pattern ->${c}<-has been used in all of the following Token Types: ${b.join(", ")} <-`,type:aX.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function l4(a){return kA(kt(a,a=>{if(!kG(a,"GROUP"))return!1;let b=a.GROUP;return b!==mH.SKIPPED&&b!==mH.NA&&!kH(b)}),a=>({message:"Token Type: ->"+a.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:aX.INVALID_GROUP_TYPE_FOUND,tokenTypes:[a]}))}function l5(a,b){return kA(kt(a,a=>void 0!==a.PUSH_MODE&&!kL(b,a.PUSH_MODE)),a=>({message:`Token Type: ->${a.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${a.PUSH_MODE}<-which does not exist`,type:aX.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[a]}))}function l6(a){let b=[],c=kZ(a,(a,b,c)=>{let d=b.PATTERN;return d===mH.NA||(kH(d)?a.push({str:d,idx:c,tokenType:b}):kS(d)&&l8(d)&&a.push({str:d.source,idx:c,tokenType:b})),a},[]);return ko(a,(a,d)=>{ko(c,({str:c,idx:e,tokenType:f})=>{if(d<e&&l7(c,a.PATTERN)){let c=`Token: ->${f.name}<- can never be matched.
|
|
33
|
+
Because it appears AFTER the Token Type ->${a.name}<-in the lexer's definition.
|
|
34
|
+
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;b.push({message:c,type:aX.UNREACHABLE_PATTERN,tokenTypes:[a,f]})}})}),b}function l7(a,b){if(kS(b)){if(l9(b))return!1;let c=b.exec(a);return null!==c&&0===c.index}if(gy(b))return b(a,0,[],{});if(kG(b,"exec"))return b.exec(a,0,[],{});if("string"==typeof b)return b===a;throw Error("non exhaustive match")}function l8(a){return void 0===kx([".","\\","[","]","|","^","$","(",")","?","*","+","{"],b=>-1!==a.source.indexOf(b))}function l9(a){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(a.source)}function ma(a){let b=a.ignoreCase?"i":"";return RegExp(`^(?:${a.source})`,b)}function mb(a){let b=a.ignoreCase?"iy":"y";return RegExp(`${a.source}`,b)}function mc(a,b,c){let d=[];return kG(a,lR)||d.push({message:"A MultiMode Lexer cannot be initialized without a <"+lR+"> property in its definition\n",type:aX.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),kG(a,lS)||d.push({message:"A MultiMode Lexer cannot be initialized without a <"+lS+"> property in its definition\n",type:aX.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),kG(a,lS)&&kG(a,lR)&&!kG(a.modes,a.defaultMode)&&d.push({message:`A MultiMode Lexer cannot be initialized with a ${lR}: <${a.defaultMode}>which does not exist
|
|
35
|
+
`,type:aX.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),kG(a,lS)&&ko(a.modes,(a,b)=>{ko(a,(c,e)=>{kT(c)?d.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${b}> at index: <${e}>
|
|
36
|
+
`,type:aX.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):kG(c,"LONGER_ALT")&&ko(ge(c.LONGER_ALT)?c.LONGER_ALT:[c.LONGER_ALT],e=>{kT(e)||kL(a,e)||d.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${e.name}> on token <${c.name}> outside of mode <${b}>
|
|
37
|
+
`,type:aX.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),d}function md(a,b,c){let d=[],e=!1,f=k$(jA(iw(kJ(a.modes))),a=>a[lQ]===mH.NA),g=mk(c);return b&&ko(f,a=>{let b=mi(a,g);if(!1!==b){let c={message:mj(a,b),type:b.issue,tokenType:a};d.push(c)}else kG(a,"LINE_BREAKS")?!0===a.LINE_BREAKS&&(e=!0):lP(g,a.PATTERN)&&(e=!0)}),b&&!e&&d.push({message:"Warning: No LINE_BREAKS Found.\n This Lexer has been defined to track line and column information,\n But none of the Token Types can be identified as matching a line terminator.\n See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n for details.",type:aX.NO_LINE_BREAKS_FLAGS}),d}function me(a){let b={};return ko(hH(a),c=>{if(ge(a[c]))b[c]=[];else throw Error("non exhaustive match")}),b}function mf(a){let b=a.PATTERN;if(kS(b))return!1;if(gy(b))return!0;if(kG(b,"exec"))return!0;if(kH(b))return!1;throw Error("non exhaustive match")}function mg(a){return!!kH(a)&&1===a.length&&a.charCodeAt(0)}bz(l1,"findStartOfInputAnchor"),bz(l2,"findUnsupportedFlags"),bz(l3,"findDuplicatePatterns"),bz(l4,"findInvalidGroupType"),bz(l5,"findModesThatDoNotExist"),bz(l6,"findUnreachablePatterns"),bz(l7,"tryToMatchStrToPattern"),bz(l8,"noMetaChar"),bz(l9,"usesLookAheadOrBehind"),bz(ma,"addStartOfInput"),bz(mb,"addStickyFlag"),bz(mc,"performRuntimeChecks"),bz(md,"performWarningRuntimeChecks"),bz(me,"cloneEmptyGroups"),bz(mf,"isCustomPattern"),bz(mg,"isShortPattern");var mh={test:bz(function(a){let b=a.length;for(let c=this.lastIndex;c<b;c++){let b=a.charCodeAt(c);if(10===b)return this.lastIndex=c+1,!0;if(13===b)return 10===a.charCodeAt(c+1)?this.lastIndex=c+2:this.lastIndex=c+1,!0}return!1},"test"),lastIndex:0};function mi(a,b){if(kG(a,"LINE_BREAKS"))return!1;if(kS(a.PATTERN)){try{lP(b,a.PATTERN)}catch(a){return{issue:aX.IDENTIFY_TERMINATOR,errMsg:a.message}}return!1}if(kH(a.PATTERN))return!1;if(mf(a))return{issue:aX.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}function mj(a,b){if(b.issue===aX.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
|
|
38
|
+
The problem is in the <${a.name}> Token Type
|
|
39
|
+
Root cause: ${b.errMsg}.
|
|
40
|
+
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(b.issue===aX.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
|
|
41
|
+
The problem is in the <${a.name}> Token Type
|
|
42
|
+
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function mk(a){return kA(a,a=>kH(a)?a.charCodeAt(0):a)}function ml(a,b,c){void 0===a[b]?a[b]=[c]:a[b].push(c)}bz(mi,"checkLineBreaksIssues"),bz(mj,"buildLineBreakIssueMessage"),bz(mk,"getCharCodes"),bz(ml,"addToMapOfArrays");var mm=256,mn=[];function mo(a){return a<mm?a:mn[a]}function mp(){if(kP(mn)){mn=Array(65536);for(let a=0;a<65536;a++)mn[a]=a>255?255+~~(a/255):a}}function mq(a,b){let c=a.tokenTypeIdx;return c===b.tokenTypeIdx||!0===b.isParent&&!0===b.categoryMatchesMap[c]}function mr(a,b){return a.tokenTypeIdx===b.tokenTypeIdx}bz(mo,"charCodeToOptimizedIndex"),bz(mp,"initCharCodeToOptimizedIndexMap"),bz(mq,"tokenStructuredMatcher"),bz(mr,"tokenStructuredMatcherNoCategories");var ms=1,mt={};function mu(a){let b=mv(a);mw(b),my(b),mx(b),ko(b,a=>{a.isParent=a.categoryMatches.length>0})}function mv(a){let b=jz(a),c=a,d=!0;for(;d;){let a=kj(c=jA(iw(kA(c,a=>a.CATEGORIES))),b);b=b.concat(a),kP(a)?d=!1:c=a}return b}function mw(a){ko(a,a=>{mA(a)||(mt[ms]=a,a.tokenTypeIdx=ms++),mB(a)&&!ge(a.CATEGORIES)&&(a.CATEGORIES=[a.CATEGORIES]),mB(a)||(a.CATEGORIES=[]),mC(a)||(a.categoryMatches=[]),mD(a)||(a.categoryMatchesMap={})})}function mx(a){ko(a,a=>{a.categoryMatches=[],ko(a.categoryMatchesMap,(b,c)=>{a.categoryMatches.push(mt[c].tokenTypeIdx)})})}function my(a){ko(a,a=>{mz([],a)})}function mz(a,b){ko(a,a=>{b.categoryMatchesMap[a.tokenTypeIdx]=!0}),ko(b.CATEGORIES,c=>{let d=a.concat(b);kL(d,c)||mz(d,c)})}function mA(a){return kG(a,"tokenTypeIdx")}function mB(a){return kG(a,"CATEGORIES")}function mC(a){return kG(a,"categoryMatches")}function mD(a){return kG(a,"categoryMatchesMap")}function mE(a){return kG(a,"tokenTypeIdx")}bz(mu,"augmentTokenTypes"),bz(mv,"expandCategories"),bz(mw,"assignTokenDefaultProps"),bz(mx,"assignCategoriesTokensProp"),bz(my,"assignCategoriesMapProp"),bz(mz,"singleAssignCategoriesToksMap"),bz(mA,"hasShortKeyProperty"),bz(mB,"hasCategoriesProperty"),bz(mC,"hasExtendingTokensTypesProperty"),bz(mD,"hasExtendingTokensTypesMapProperty"),bz(mE,"isTokenType");var mF={buildUnableToPopLexerModeMessage:a=>`Unable to pop Lexer Mode after encountering Token ->${a.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(a,b,c,d,e,f)=>`unexpected character: ->${a.charAt(b)}<- at offset: ${b}, skipped ${c} characters.`};(h=aX||(aX={}))[h.MISSING_PATTERN=0]="MISSING_PATTERN",h[h.INVALID_PATTERN=1]="INVALID_PATTERN",h[h.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",h[h.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",h[h.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",h[h.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",h[h.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",h[h.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",h[h.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",h[h.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",h[h.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",h[h.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",h[h.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",h[h.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",h[h.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",h[h.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",h[h.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",h[h.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE";var mG={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:mF,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(mG);var mH=class{static{bz(this,"Lexer")}constructor(a,b=mG){if(this.lexerDefinition=a,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(a,b)=>{if(!0!==this.traceInitPerf)return b();{this.traceInitIndent++;let c=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${c}--> <${a}>`);let{time:d,value:e}=k6(b),f=d>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&f(`${c}<-- <${a}> time: ${d}ms`),this.traceInitIndent--,e}},"boolean"==typeof b)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=hJ({},mG,b);const c=this.config.traceInitPerf;!0===c?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof c&&(this.traceInitMaxIdent=c,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let c,d=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===mG.lineTerminatorsPattern)this.config.lineTerminatorsPattern=mh;else if(this.config.lineTerminatorCharacters===mG.lineTerminatorCharacters)throw Error("Error: Missing <lineTerminatorCharacters> property on the Lexer config.\n For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS");if(b.safeMode&&b.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),ge(a)?c={modes:{defaultMode:jz(a)},defaultMode:lR}:(d=!1,c=jz(a))}),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(mc(c,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(md(c,this.trackStartLines,this.config.lineTerminatorCharacters))})),c.modes=c.modes?c.modes:{},ko(c.modes,(a,b)=>{c.modes[b]=k$(a,a=>kT(a))});let e=hH(c.modes);if(ko(c.modes,(a,c)=>{this.TRACE_INIT(`Mode: <${c}> processing`,()=>{if(this.modes.push(c),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(lV(a,e))}),kP(this.lexerDefinitionErrors)){let d;mu(a),this.TRACE_INIT("analyzeTokenTypes",()=>{d=lU(a,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:b.positionTracking,ensureOptimizations:b.ensureOptimizations,safeMode:b.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[c]=d.patternIdxToConfig,this.charCodeToPatternIdxToConfig[c]=d.charCodeToPatternIdxToConfig,this.emptyGroups=hJ({},this.emptyGroups,d.emptyGroups),this.hasCustom=d.hasCustom||this.hasCustom,this.canModeBeOptimized[c]=d.canBeOptimized}})}),this.defaultMode=c.defaultMode,!kP(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling)throw Error("Errors detected in definition of Lexer:\n"+kA(this.lexerDefinitionErrors,a=>a.message).join("-----------------------\n"));ko(this.lexerDefinitionWarning,a=>{k5(a.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(lT?(this.chopInput=gx,this.match=this.matchWithTest):(this.updateLastIndex=gQ,this.match=this.matchWithExec),d&&(this.handleModes=gQ),!1===this.trackStartLines&&(this.computeNewColumn=gx),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=gQ),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let a=kZ(this.canModeBeOptimized,(a,b,c)=>(!1===b&&a.push(c),a),[]);if(b.ensureOptimizations&&!kP(a))throw Error(`Lexer Modes: < ${a.join(", ")} > cannot be optimized.
|
|
43
|
+
Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
|
|
44
|
+
Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{lF()}),this.TRACE_INIT("toFastProperties",()=>{k7(this)})})}tokenize(a,b=this.defaultMode){if(!kP(this.lexerDefinitionErrors))throw Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+kA(this.lexerDefinitionErrors,a=>a.message).join("-----------------------\n"));return this.tokenizeInternal(a,b)}tokenizeInternal(a,b){let c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t=a,u=t.length,v=0,w=0,x=Array(this.hasCustom?0:Math.floor(a.length/10)),y=[],z=this.trackStartLines?1:void 0,A=this.trackStartLines?1:void 0,B=me(this.emptyGroups),C=this.trackStartLines,D=this.config.lineTerminatorsPattern,E=0,F=[],G=[],H=[],I=[];function J(){return F}function K(a){let b=G[mo(a)];return void 0===b?I:b}Object.freeze(I),bz(J,"getPossiblePatternsSlow"),bz(K,"getPossiblePatternsOptimized");let L=bz(a=>{if(1===H.length&&void 0===a.tokenType.PUSH_MODE){let b=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(a);y.push({offset:a.startOffset,line:a.startLine,column:a.startColumn,length:a.image.length,message:b})}else{H.pop();let a=kk(H);F=this.patternIdxToConfig[a],G=this.charCodeToPatternIdxToConfig[a],E=F.length;let b=this.canModeBeOptimized[a]&&!1===this.config.safeMode;r=G&&b?K:J}},"pop_mode");function M(a){H.push(a),G=this.charCodeToPatternIdxToConfig[a],E=(F=this.patternIdxToConfig[a]).length,E=F.length;let b=this.canModeBeOptimized[a]&&!1===this.config.safeMode;r=G&&b?K:J}bz(M,"push_mode"),M.call(this,b);let N=this.config.recoveryEnabled;for(;v<u;){h=null;let b=t.charCodeAt(v),G=r(b),I=G.length;for(c=0;c<I;c++){let d=(s=G[c]).pattern;i=null;let k=s.short;if(!1!==k?b===k&&(h=d):!0===s.isCustom?null!==(q=d.exec(t,v,x,B))?(h=q[0],void 0!==q.payload&&(i=q.payload)):h=null:(this.updateLastIndex(d,v),h=this.match(d,a,v)),null!==h){if(void 0!==(g=s.longerAlt)){let b=g.length;for(e=0;e<b;e++){let b=F[g[e]],c=b.pattern;if(j=null,!0===b.isCustom?null!==(q=c.exec(t,v,x,B))?(f=q[0],void 0!==q.payload&&(j=q.payload)):f=null:(this.updateLastIndex(c,v),f=this.match(c,a,v)),f&&f.length>h.length){h=f,i=j,s=b;break}}}break}}if(null!==h){if(k=h.length,void 0!==(l=s.group)&&(m=s.tokenTypeIdx,n=this.createTokenInstance(h,v,m,s.tokenType,z,A,k),this.handlePayload(n,i),!1===l?w=this.addToken(x,w,n):B[l].push(n)),a=this.chopInput(a,k),v+=k,A=this.computeNewColumn(A,k),!0===C&&!0===s.canLineTerminator){let a,b,c=0;D.lastIndex=0;do!0===(a=D.test(h))&&(b=D.lastIndex-1,c++);while(!0===a);0!==c&&(z+=c,A=k-b,this.updateTokenEndLineColumnLocation(n,l,b,c,z,A,k))}this.handleModes(s,L,M,n)}else{let b=v,c=z,e=A,f=!1===N;for(;!1===f&&v<u;)for(a=this.chopInput(a,1),v++,d=0;d<E;d++){let b=F[d],c=b.pattern,e=b.short;if(!1!==e?t.charCodeAt(v)===e&&(f=!0):!0===b.isCustom?f=null!==c.exec(t,v,x,B):(this.updateLastIndex(c,v),f=null!==c.exec(a)),!0===f)break}if(o=v-b,A=this.computeNewColumn(A,o),p=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(t,b,o,c,e,kk(H)),y.push({offset:b,line:c,column:e,length:o,message:p}),!1===N)break}}return this.hasCustom||(x.length=w),{tokens:x,groups:B,errors:y}}handleModes(a,b,c,d){if(!0===a.pop){let e=a.push;b(d),void 0!==e&&c.call(this,e)}else void 0!==a.push&&c.call(this,a.push)}chopInput(a,b){return a.substring(b)}updateLastIndex(a,b){a.lastIndex=b}updateTokenEndLineColumnLocation(a,b,c,d,e,f,g){let h,i;void 0!==b&&(i=(h=c===g-1)?-1:0,(1!==d||!0!==h)&&(a.endLine=e+i,a.endColumn=f-1+-i))}computeNewColumn(a,b){return a+b}createOffsetOnlyToken(a,b,c,d){return{image:a,startOffset:b,tokenTypeIdx:c,tokenType:d}}createStartOnlyToken(a,b,c,d,e,f){return{image:a,startOffset:b,startLine:e,startColumn:f,tokenTypeIdx:c,tokenType:d}}createFullToken(a,b,c,d,e,f,g){return{image:a,startOffset:b,endOffset:b+g-1,startLine:e,endLine:e,startColumn:f,endColumn:f+g-1,tokenTypeIdx:c,tokenType:d}}addTokenUsingPush(a,b,c){return a.push(c),b}addTokenUsingMemberAccess(a,b,c){return a[b]=c,++b}handlePayloadNoCustom(a,b){}handlePayloadWithCustom(a,b){null!==b&&(a.payload=b)}matchWithTest(a,b,c){return!0===a.test(b)?b.substring(c,a.lastIndex):null}matchWithExec(a,b){let c=a.exec(b);return null!==c?c[0]:null}};function mI(a){return mJ(a)?a.LABEL:a.name}function mJ(a){return kH(a.LABEL)&&""!==a.LABEL}mH.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",mH.NA=/NOT_APPLICABLE/,bz(mI,"tokenLabel"),bz(mJ,"hasTokenLabel");var mK="categories",mL="label",mM="group",mN="push_mode",mO="pop_mode",mP="longer_alt",mQ="line_breaks",mR="start_chars_hint";function mS(a){return mT(a)}function mT(a){let b=a.pattern,c={};if(c.name=a.name,kT(b)||(c.PATTERN=b),kG(a,"parent"))throw"The parent property is no longer supported.\nSee: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.";return kG(a,mK)&&(c.CATEGORIES=a[mK]),mu([c]),kG(a,mL)&&(c.LABEL=a[mL]),kG(a,mM)&&(c.GROUP=a[mM]),kG(a,mO)&&(c.POP_MODE=a[mO]),kG(a,mN)&&(c.PUSH_MODE=a[mN]),kG(a,mP)&&(c.LONGER_ALT=a[mP]),kG(a,mQ)&&(c.LINE_BREAKS=a[mQ]),kG(a,mR)&&(c.START_CHARS_HINT=a[mR]),c}bz(mS,"createToken"),bz(mT,"createTokenInternal");var mU=mS({name:"EOF",pattern:mH.NA});function mV(a,b,c,d,e,f,g,h){return{image:b,startOffset:c,endOffset:d,startLine:e,endLine:f,startColumn:g,endColumn:h,tokenTypeIdx:a.tokenTypeIdx,tokenType:a}}function mW(a,b){return mq(a,b)}mu([mU]),bz(mV,"createTokenInstance"),bz(mW,"tokenMatcher");var mX={buildMismatchTokenMessage({expected:a,actual:b,previous:c,ruleName:d}){let e=mJ(a)?`--> ${mI(a)} <--`:`token of type --> ${a.name} <--`;return`Expecting ${e} but found --> '${b.image}' <--`},buildNotAllInputParsedMessage:({firstRedundant:a,ruleName:b})=>"Redundant input, expecting EOF but found: "+a.image,buildNoViableAltMessage({expectedPathsPerAlt:a,actual:b,previous:c,customUserDescription:d,ruleName:e}){let f="Expecting: ",g="\nbut found: '"+ky(b).image+"'";if(d)return f+d+g;{let b=kA(kZ(a,(a,b)=>a.concat(b),[]),a=>`[${kA(a,a=>mI(a)).join(", ")}]`),c=kA(b,(a,b)=>` ${b+1}. ${a}`);return f+`one of these possible Token sequences:
|
|
45
|
+
${c.join("\n")}`+g}},buildEarlyExitMessage({expectedIterationPaths:a,actual:b,customUserDescription:c,ruleName:d}){let e="Expecting: ",f="\nbut found: '"+ky(b).image+"'";if(c)return e+c+f;{let b=kA(a,a=>`[${kA(a,a=>mI(a)).join(",")}]`);return e+`expecting at least one iteration which starts with one of these possible Token sequences::
|
|
46
|
+
<${b.join(" ,")}>`+f}}};Object.freeze(mX);var mY={buildRuleNotFoundError:(a,b)=>"Invalid grammar, reference to a rule which is not defined: ->"+b.nonTerminalName+"<-\ninside top level rule: ->"+a.name+"<-"},mZ={buildDuplicateFoundError(a,b){function c(a){return a instanceof lk?a.terminalType.name:a instanceof lb?a.nonTerminalName:""}bz(c,"getExtraProductionArgument");let d=a.name,e=ky(b),f=e.idx,g=lr(e),h=c(e),i=`->${g}${f>0?f:""}<- ${h?`with argument: ->${h}<-`:""}
|
|
47
|
+
appears more than once (${b.length} times) in the top level rule: ->${d}<-.
|
|
48
|
+
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
|
|
49
|
+
`;return(i=i.replace(/[ \t]+/g," ")).replace(/\s\s+/g,"\n")},buildNamespaceConflictError:a=>`Namespace conflict found in grammar.
|
|
50
|
+
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${a.name}>.
|
|
51
|
+
To resolve this make sure each Terminal and Non-Terminal names are unique
|
|
52
|
+
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
|
|
53
|
+
and Non-Terminal names start with a lower case letter.`,buildAlternationPrefixAmbiguityError(a){let b=kA(a.prefixPath,a=>mI(a)).join(", "),c=0===a.alternation.idx?"":a.alternation.idx;return`Ambiguous alternatives: <${a.ambiguityIndices.join(" ,")}> due to common lookahead prefix
|
|
54
|
+
in <OR${c}> inside <${a.topLevelRule.name}> Rule,
|
|
55
|
+
<${b}> may appears as a prefix path in all these alternatives.
|
|
56
|
+
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
|
|
57
|
+
For Further details.`},buildAlternationAmbiguityError(a){let b=kA(a.prefixPath,a=>mI(a)).join(", "),c=0===a.alternation.idx?"":a.alternation.idx,d=`Ambiguous Alternatives Detected: <${a.ambiguityIndices.join(" ,")}> in <OR${c}> inside <${a.topLevelRule.name}> Rule,
|
|
58
|
+
<${b}> may appears as a prefix path in all these alternatives.
|
|
59
|
+
`;return d+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
60
|
+
For Further details.`},buildEmptyRepetitionError(a){let b=lr(a.repetition);return 0!==a.repetition.idx&&(b+=a.repetition.idx),`The repetition <${b}> within Rule <${a.topLevelRule.name}> can never consume any tokens.
|
|
61
|
+
This could lead to an infinite loop.`},buildTokenNameError:a=>"deprecated",buildEmptyAlternationError:a=>`Ambiguous empty alternative: <${a.emptyChoiceIdx+1}> in <OR${a.alternation.idx}> inside <${a.topLevelRule.name}> Rule.
|
|
62
|
+
Only the last alternative may be an empty alternative.`,buildTooManyAlternativesError:a=>`An Alternation cannot have more than 256 alternatives:
|
|
63
|
+
<OR${a.alternation.idx}> inside <${a.topLevelRule.name}> Rule.
|
|
64
|
+
has ${a.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(a){let b=a.topLevelRule.name,c=kA(a.leftRecursionPath,a=>a.name),d=`${b} --> ${c.concat([b]).join(" --\x3e ")}`;return`Left Recursion found in grammar.
|
|
65
|
+
rule: <${b}> can be invoked from itself (directly or indirectly)
|
|
66
|
+
without consuming any Tokens. The grammar path that causes this is:
|
|
67
|
+
${d}
|
|
68
|
+
To fix this refactor your grammar to remove the left recursion.
|
|
69
|
+
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:a=>"deprecated",buildDuplicateRuleNameError(a){let b;return b=a.topLevelRule instanceof lc?a.topLevelRule.name:a.topLevelRule,`Duplicate definition, rule: ->${b}<- is already defined in the grammar: ->${a.grammarName}<-`}};function m$(a,b){let c=new m_(a,b);return c.resolveRefs(),c.errors}bz(m$,"resolveGrammar");var m_=class extends ln{static{bz(this,"GastRefResolverVisitor")}constructor(a,b){super(),this.nameToTopRule=a,this.errMsgProvider=b,this.errors=[]}resolveRefs(){ko(kJ(this.nameToTopRule),a=>{this.currTopLevel=a,a.accept(this)})}visitNonTerminal(a){let b=this.nameToTopRule[a.nonTerminalName];if(b)a.referencedRule=b;else{let b=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,a);this.errors.push({message:b,type:a$.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:a.nonTerminalName})}}},m0=class extends ls{static{bz(this,"AbstractNextPossibleTokensWalker")}constructor(a,b){super(),this.topProd=a,this.path=b,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=jz(this.path.ruleStack).reverse(),this.occurrenceStack=jz(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(a,b=[]){this.found||super.walk(a,b)}walkProdRef(a,b,c){if(a.referencedRule.name===this.nextProductionName&&a.idx===this.nextProductionOccurrence){let d=b.concat(c);this.updateExpectedNext(),this.walk(a.referencedRule,d)}}updateExpectedNext(){kP(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},m1=class extends m0{static{bz(this,"NextAfterTokenWalker")}constructor(a,b){super(a,b),this.path=b,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(a,b,c){if(this.isAtEndOfPath&&a.terminalType.name===this.nextTerminalName&&a.idx===this.nextTerminalOccurrence&&!this.found){let a=new ld({definition:b.concat(c)});this.possibleTokTypes=lu(a),this.found=!0}}},m2=class extends ls{static{bz(this,"AbstractNextTerminalAfterProductionWalker")}constructor(a,b){super(),this.topRule=a,this.occurrence=b,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},m3=class extends m2{static{bz(this,"NextTerminalAfterManyWalker")}walkMany(a,b,c){if(a.idx===this.occurrence){let a=ky(b.concat(c));this.result.isEndOfRule=void 0===a,a instanceof lk&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkMany(a,b,c)}},m4=class extends m2{static{bz(this,"NextTerminalAfterManySepWalker")}walkManySep(a,b,c){if(a.idx===this.occurrence){let a=ky(b.concat(c));this.result.isEndOfRule=void 0===a,a instanceof lk&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkManySep(a,b,c)}},m5=class extends m2{static{bz(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(a,b,c){if(a.idx===this.occurrence){let a=ky(b.concat(c));this.result.isEndOfRule=void 0===a,a instanceof lk&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOne(a,b,c)}},m6=class extends m2{static{bz(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(a,b,c){if(a.idx===this.occurrence){let a=ky(b.concat(c));this.result.isEndOfRule=void 0===a,a instanceof lk&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOneSep(a,b,c)}};function m7(a,b,c=[]){c=jz(c);let d=[],e=0;function f(b){return b.concat(kl(a,e+1))}function g(a){let e=m7(f(a),b,c);return d.concat(e)}for(bz(f,"remainingPathWith"),bz(g,"getAlternativesForProd");c.length<b&&e<a.length;){let b=a[e];if(b instanceof ld)return g(b.definition);if(b instanceof lb)return g(b.definition);if(b instanceof le)d=g(b.definition);else if(b instanceof lf)return g(b.definition.concat([new lh({definition:b.definition})]));else if(b instanceof lg)return g([new ld({definition:b.definition}),new lh({definition:[new lk({terminalType:b.separator})].concat(b.definition)})]);else if(b instanceof li)d=g(b.definition.concat([new lh({definition:[new lk({terminalType:b.separator})].concat(b.definition)})]));else if(b instanceof lh)d=g(b.definition.concat([new lh({definition:b.definition})]));else if(b instanceof lj)return ko(b.definition,a=>{!1===kP(a.definition)&&(d=g(a.definition))}),d;else if(b instanceof lk)c.push(b.terminalType);else throw Error("non exhaustive match");e++}return d.push({partialPath:c,suffixDef:kl(a,e)}),d}function m8(a,b,c,d){let e="EXIT_NONE_TERMINAL",f=[e],g="EXIT_ALTERNATIVE",h=!1,i=b.length,j=i-d-1,k=[],l=[];for(l.push({idx:-1,def:a,ruleStack:[],occurrenceStack:[]});!kP(l);){let a=l.pop();if(a===g){h&&kk(l).idx<=j&&l.pop();continue}let d=a.def,m=a.idx,n=a.ruleStack,o=a.occurrenceStack;if(kP(d))continue;let p=d[0];if(p===e){let a={idx:m,def:kl(d),ruleStack:km(n),occurrenceStack:km(o)};l.push(a)}else if(p instanceof lk)if(m<i-1){let a=m+1;if(c(b[a],p.terminalType)){let b={idx:a,def:kl(d),ruleStack:n,occurrenceStack:o};l.push(b)}}else if(m===i-1)k.push({nextTokenType:p.terminalType,nextTokenOccurrence:p.idx,ruleStack:n,occurrenceStack:o}),h=!0;else throw Error("non exhaustive match");else if(p instanceof lb){let a=jz(n);a.push(p.nonTerminalName);let b=jz(o);b.push(p.idx);let c={idx:m,def:p.definition.concat(f,kl(d)),ruleStack:a,occurrenceStack:b};l.push(c)}else if(p instanceof le){let a={idx:m,def:kl(d),ruleStack:n,occurrenceStack:o};l.push(a),l.push(g);let b={idx:m,def:p.definition.concat(kl(d)),ruleStack:n,occurrenceStack:o};l.push(b)}else if(p instanceof lf){let a=new lh({definition:p.definition,idx:p.idx}),b={idx:m,def:p.definition.concat([a],kl(d)),ruleStack:n,occurrenceStack:o};l.push(b)}else if(p instanceof lg){let a=new lh({definition:[new lk({terminalType:p.separator})].concat(p.definition),idx:p.idx}),b={idx:m,def:p.definition.concat([a],kl(d)),ruleStack:n,occurrenceStack:o};l.push(b)}else if(p instanceof li){let a={idx:m,def:kl(d),ruleStack:n,occurrenceStack:o};l.push(a),l.push(g);let b=new lh({definition:[new lk({terminalType:p.separator})].concat(p.definition),idx:p.idx}),c={idx:m,def:p.definition.concat([b],kl(d)),ruleStack:n,occurrenceStack:o};l.push(c)}else if(p instanceof lh){let a={idx:m,def:kl(d),ruleStack:n,occurrenceStack:o};l.push(a),l.push(g);let b=new lh({definition:p.definition,idx:p.idx}),c={idx:m,def:p.definition.concat([b],kl(d)),ruleStack:n,occurrenceStack:o};l.push(c)}else if(p instanceof lj)for(let a=p.definition.length-1;a>=0;a--){let b={idx:m,def:p.definition[a].definition.concat(kl(d)),ruleStack:n,occurrenceStack:o};l.push(b),l.push(g)}else if(p instanceof ld)l.push({idx:m,def:p.definition.concat(kl(d)),ruleStack:n,occurrenceStack:o});else if(p instanceof lc)l.push(m9(p,m,n,o));else throw Error("non exhaustive match")}return k}function m9(a,b,c,d){let e=jz(c);e.push(a.name);let f=jz(d);return f.push(1),{idx:b,def:a.definition,ruleStack:e,occurrenceStack:f}}function na(a){if(a instanceof le||"Option"===a)return aY.OPTION;if(a instanceof lh||"Repetition"===a)return aY.REPETITION;if(a instanceof lf||"RepetitionMandatory"===a)return aY.REPETITION_MANDATORY;if(a instanceof lg||"RepetitionMandatoryWithSeparator"===a)return aY.REPETITION_MANDATORY_WITH_SEPARATOR;if(a instanceof li||"RepetitionWithSeparator"===a)return aY.REPETITION_WITH_SEPARATOR;else if(a instanceof lj||"Alternation"===a)return aY.ALTERNATION;else throw Error("non exhaustive match")}function nb(a){let{occurrence:b,rule:c,prodType:d,maxLookahead:e}=a,f=na(d);return f===aY.ALTERNATION?nm(b,c,e):nn(b,c,f,e)}function nc(a,b,c,d,e,f){let g=nm(a,b,c),h=nq(g)?mr:mq;return f(g,d,h,e)}function nd(a,b,c,d,e,f){let g=nn(a,b,e,c),h=nq(g)?mr:mq;return f(g[0],h,d)}function ne(a,b,c,d){let e=a.length,f=kr(a,a=>kr(a,a=>1===a.length));if(b)return function(b){let d=kA(b,a=>a.GATE);for(let b=0;b<e;b++){let e=a[b],f=e.length,g=d[b];if(void 0===g||!1!==g.call(this))c:for(let a=0;a<f;a++){let d=e[a],f=d.length;for(let a=0;a<f;a++)if(!1===c(this.LA(a+1),d[a]))continue c;return b}}};if(!f||d)return function(){for(let b=0;b<e;b++){let d=a[b],e=d.length;c:for(let a=0;a<e;a++){let e=d[a],f=e.length;for(let a=0;a<f;a++)if(!1===c(this.LA(a+1),e[a]))continue c;return b}}};{let b=kZ(kA(a,a=>iw(a)),(a,b,c)=>(ko(b,b=>{kG(a,b.tokenTypeIdx)||(a[b.tokenTypeIdx]=c),ko(b.categoryMatches,b=>{kG(a,b)||(a[b]=c)})}),a),{});return function(){return b[this.LA(1).tokenTypeIdx]}}}function nf(a,b,c){let d=kr(a,a=>1===a.length),e=a.length;if(!d||c)return function(){c:for(let c=0;c<e;c++){let d=a[c],e=d.length;for(let a=0;a<e;a++)if(!1===b(this.LA(a+1),d[a]))continue c;return!0}return!1};{let b=iw(a);if(1===b.length&&kP(b[0].categoryMatches)){let a=b[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===a}}{let a=kZ(b,(a,b,c)=>(a[b.tokenTypeIdx]=!0,ko(b.categoryMatches,b=>{a[b]=!0}),a),[]);return function(){return!0===a[this.LA(1).tokenTypeIdx]}}}}bz(m7,"possiblePathsFrom"),bz(m8,"nextPossibleTokensAfter"),bz(m9,"expandTopLevelRule"),(i=aY||(aY={}))[i.OPTION=0]="OPTION",i[i.REPETITION=1]="REPETITION",i[i.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",i[i.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",i[i.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",i[i.ALTERNATION=5]="ALTERNATION",bz(na,"getProdType"),bz(nb,"getLookaheadPaths"),bz(nc,"buildLookaheadFuncForOr"),bz(nd,"buildLookaheadFuncForOptionalProd"),bz(ne,"buildAlternativesLookAheadFunc"),bz(nf,"buildSingleAlternativeLookaheadFunction");var ng=class extends ls{static{bz(this,"RestDefinitionFinderWalker")}constructor(a,b,c){super(),this.topProd=a,this.targetOccurrence=b,this.targetProdType=c}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(a,b,c,d){return a.idx===this.targetOccurrence&&this.targetProdType===b&&(this.restDef=c.concat(d),!0)}walkOption(a,b,c){this.checkIsTarget(a,aY.OPTION,b,c)||super.walkOption(a,b,c)}walkAtLeastOne(a,b,c){this.checkIsTarget(a,aY.REPETITION_MANDATORY,b,c)||super.walkOption(a,b,c)}walkAtLeastOneSep(a,b,c){this.checkIsTarget(a,aY.REPETITION_MANDATORY_WITH_SEPARATOR,b,c)||super.walkOption(a,b,c)}walkMany(a,b,c){this.checkIsTarget(a,aY.REPETITION,b,c)||super.walkOption(a,b,c)}walkManySep(a,b,c){this.checkIsTarget(a,aY.REPETITION_WITH_SEPARATOR,b,c)||super.walkOption(a,b,c)}},nh=class extends ln{static{bz(this,"InsideDefinitionFinderVisitor")}constructor(a,b,c){super(),this.targetOccurrence=a,this.targetProdType=b,this.targetRef=c,this.result=[]}checkIsTarget(a,b){a.idx===this.targetOccurrence&&this.targetProdType===b&&(void 0===this.targetRef||a===this.targetRef)&&(this.result=a.definition)}visitOption(a){this.checkIsTarget(a,aY.OPTION)}visitRepetition(a){this.checkIsTarget(a,aY.REPETITION)}visitRepetitionMandatory(a){this.checkIsTarget(a,aY.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(a){this.checkIsTarget(a,aY.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(a){this.checkIsTarget(a,aY.REPETITION_WITH_SEPARATOR)}visitAlternation(a){this.checkIsTarget(a,aY.ALTERNATION)}};function ni(a){let b=Array(a);for(let c=0;c<a;c++)b[c]=[];return b}function nj(a){let b=[""];for(let c=0;c<a.length;c++){let d=a[c],e=[];for(let a=0;a<b.length;a++){let c=b[a];e.push(c+"_"+d.tokenTypeIdx);for(let a=0;a<d.categoryMatches.length;a++){let b="_"+d.categoryMatches[a];e.push(c+b)}}b=e}return b}function nk(a,b,c){for(let d=0;d<a.length;d++){if(d===c)continue;let e=a[d];for(let a=0;a<b.length;a++)if(!0===e[b[a]])return!1}return!0}function nl(a,b){let c=kA(a,a=>m7([a],1)),d=ni(c.length),e=kA(c,a=>{let b={};return ko(a,a=>{ko(nj(a.partialPath),a=>{b[a]=!0})}),b}),f=c;for(let a=1;a<=b;a++){let c=f;f=ni(c.length);for(let g=0;g<c.length;g++){let h=c[g];for(let c=0;c<h.length;c++){let i=h[c].partialPath,j=h[c].suffixDef,k=nj(i);if(nk(e,k,g)||kP(j)||i.length===b){let a=d[g];if(!1===no(a,i)){a.push(i);for(let a=0;a<k.length;a++){let b=k[a];e[g][b]=!0}}}else{let b=m7(j,a+1,i);f[g]=f[g].concat(b),ko(b,a=>{ko(nj(a.partialPath),a=>{e[g][a]=!0})})}}}}return d}function nm(a,b,c,d){let e=new nh(a,aY.ALTERNATION,d);return b.accept(e),nl(e.result,c)}function nn(a,b,c,d){let e=new nh(a,c);b.accept(e);let f=e.result,g=new ng(b,a,c).startWalking();return nl([new ld({definition:f}),new ld({definition:g})],d)}function no(a,b){d:for(let c=0;c<a.length;c++){let d=a[c];if(d.length===b.length){for(let a=0;a<d.length;a++){let c=b[a],e=d[a];if(!1==(c===e||void 0!==e.categoryMatchesMap[c.tokenTypeIdx]))continue d}return!0}}return!1}function np(a,b){return a.length<b.length&&kr(a,(a,c)=>{let d=b[c];return a===d||d.categoryMatchesMap[a.tokenTypeIdx]})}function nq(a){return kr(a,a=>kr(a,a=>kr(a,a=>kP(a.categoryMatches))))}function nr(a){return kA(a.lookaheadStrategy.validate({rules:a.rules,tokenTypes:a.tokenTypes,grammarName:a.grammarName}),a=>Object.assign({type:a$.CUSTOM_LOOKAHEAD_VALIDATION},a))}function ns(a,b,c,d){let e=kB(a,a=>nt(a,c)),f=nJ(a,b,c),g=kB(a,a=>nF(a,c)),h=kB(a,b=>nx(b,a,d,c));return e.concat(f,g,h)}function nt(a,b){let c=new nw;return a.accept(c),kA(kJ(kX(kD(c.allProductions,nu),a=>a.length>1)),c=>{let d=ky(c),e=b.buildDuplicateFoundError(a,c),f=lr(d),g={message:e,type:a$.DUPLICATE_PRODUCTIONS,ruleName:a.name,dslName:f,occurrence:d.idx},h=nv(d);return h&&(g.parameter=h),g})}function nu(a){return`${lr(a)}_#_${a.idx}_#_${nv(a)}`}function nv(a){return a instanceof lk?a.terminalType.name:a instanceof lb?a.nonTerminalName:""}bz(ni,"initializeArrayOfArrays"),bz(nj,"pathToHashKeys"),bz(nk,"isUniquePrefixHash"),bz(nl,"lookAheadSequenceFromAlternatives"),bz(nm,"getLookaheadPathsForOr"),bz(nn,"getLookaheadPathsForOptionalProd"),bz(no,"containsPath"),bz(np,"isStrictPrefixOfPath"),bz(nq,"areTokenCategoriesNotUsed"),bz(nr,"validateLookahead"),bz(ns,"validateGrammar"),bz(nt,"validateDuplicateProductions"),bz(nu,"identifyProductionForDuplicates"),bz(nv,"getExtraProductionArgument");var nw=class extends ln{static{bz(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(a){this.allProductions.push(a)}visitOption(a){this.allProductions.push(a)}visitRepetitionWithSeparator(a){this.allProductions.push(a)}visitRepetitionMandatory(a){this.allProductions.push(a)}visitRepetitionMandatoryWithSeparator(a){this.allProductions.push(a)}visitRepetition(a){this.allProductions.push(a)}visitAlternation(a){this.allProductions.push(a)}visitTerminal(a){this.allProductions.push(a)}};function nx(a,b,c,d){let e=[];if(kZ(b,(b,c)=>c.name===a.name?b+1:b,0)>1){let b=d.buildDuplicateRuleNameError({topLevelRule:a,grammarName:c});e.push({message:b,type:a$.DUPLICATE_RULE_NAME,ruleName:a.name})}return e}function ny(a,b,c){let d=[];return kL(b,a)||d.push({message:`Invalid rule override, rule: ->${a}<- cannot be overridden in the grammar: ->${c}<-as it is not defined in any of the super grammars `,type:a$.INVALID_RULE_OVERRIDE,ruleName:a}),d}function nz(a,b,c,d=[]){let e=[],f=nA(b.definition);if(kP(f))return[];{let b=a.name;kL(f,a)&&e.push({message:c.buildLeftRecursionError({topLevelRule:a,leftRecursionPath:d}),type:a$.LEFT_RECURSION,ruleName:b});let g=kB(kj(f,d.concat([a])),b=>{let e=jz(d);return e.push(b),nz(a,b,c,e)});return e.concat(g)}}function nA(a){let b=[];if(kP(a))return b;let c=ky(a);if(c instanceof lb)b.push(c.referencedRule);else if(c instanceof ld||c instanceof le||c instanceof lf||c instanceof lg||c instanceof li||c instanceof lh)b=b.concat(nA(c.definition));else if(c instanceof lj)b=iw(kA(c.definition,a=>nA(a.definition)));else if(c instanceof lk);else throw Error("non exhaustive match");let d=lp(c),e=a.length>1;if(!d||!e)return b;{let c=kl(a);return b.concat(nA(c))}}bz(nx,"validateRuleDoesNotAlreadyExist"),bz(ny,"validateRuleIsOverridden"),bz(nz,"validateNoLeftRecursion"),bz(nA,"getFirstNoneTerminal");var nB=class extends ln{static{bz(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(a){this.alternations.push(a)}};function nC(a,b){let c=new nB;return a.accept(c),kB(c.alternations,c=>kB(km(c.definition),(d,e)=>kP(m8([d],[],mq,1))?[{message:b.buildEmptyAlternationError({topLevelRule:a,alternation:c,emptyChoiceIdx:e}),type:a$.NONE_LAST_EMPTY_ALT,ruleName:a.name,occurrence:c.idx,alternative:e+1}]:[]))}function nD(a,b,c){let d=new nB;a.accept(d);let e=d.alternations;return kB(e=k$(e,a=>!0===a.ignoreAmbiguities),d=>{let e=nm(d.idx,a,d.maxLookahead||b,d),f=nH(e,d,a,c),g=nI(e,d,a,c);return f.concat(g)})}bz(nC,"validateEmptyOrAlternative"),bz(nD,"validateAmbiguousAlternationAlternatives");var nE=class extends ln{static{bz(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(a){this.allProductions.push(a)}visitRepetitionMandatory(a){this.allProductions.push(a)}visitRepetitionMandatoryWithSeparator(a){this.allProductions.push(a)}visitRepetition(a){this.allProductions.push(a)}};function nF(a,b){let c=new nB;return a.accept(c),kB(c.alternations,c=>c.definition.length>255?[{message:b.buildTooManyAlternativesError({topLevelRule:a,alternation:c}),type:a$.TOO_MANY_ALTS,ruleName:a.name,occurrence:c.idx}]:[])}function nG(a,b,c){let d=[];return ko(a,a=>{let e=new nE;a.accept(e),ko(e.allProductions,e=>{let f=na(e),g=e.maxLookahead||b;if(kP(iw(nn(e.idx,a,f,g)[0]))){let b=c.buildEmptyRepetitionError({topLevelRule:a,repetition:e});d.push({message:b,type:a$.NO_NON_EMPTY_LOOKAHEAD,ruleName:a.name})}})}),d}function nH(a,b,c,d){let e=[];return kA(kZ(a,(c,d,f)=>(!0===b.definition[f].ignoreAmbiguities||ko(d,d=>{let g=[f];ko(a,(a,c)=>{f!==c&&no(a,d)&&!0!==b.definition[c].ignoreAmbiguities&&g.push(c)}),g.length>1&&!no(e,d)&&(e.push(d),c.push({alts:g,path:d}))}),c),[]),a=>{let e=kA(a.alts,a=>a+1);return{message:d.buildAlternationAmbiguityError({topLevelRule:c,alternation:b,ambiguityIndices:e,prefixPath:a.path}),type:a$.AMBIGUOUS_ALTS,ruleName:c.name,occurrence:b.idx,alternatives:a.alts}})}function nI(a,b,c,d){let e=kZ(a,(a,b,c)=>{let d=kA(b,a=>({idx:c,path:a}));return a.concat(d)},[]);return jA(kB(e,a=>{if(!0===b.definition[a.idx].ignoreAmbiguities)return[];let f=a.idx,g=a.path;return kA(kt(e,a=>!0!==b.definition[a.idx].ignoreAmbiguities&&a.idx<f&&np(a.path,g)),a=>{let e=[a.idx+1,f+1],g=0===b.idx?"":b.idx;return{message:d.buildAlternationPrefixAmbiguityError({topLevelRule:c,alternation:b,ambiguityIndices:e,prefixPath:a.path}),type:a$.AMBIGUOUS_PREFIX_ALTS,ruleName:c.name,occurrence:g,alternatives:e}})}))}function nJ(a,b,c){let d=[],e=kA(b,a=>a.name);return ko(a,a=>{let b=a.name;if(kL(e,b)){let e=c.buildNamespaceConflictError(a);d.push({message:e,type:a$.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:b})}}),d}function nK(a){let b=kf(a,{errMsgProvider:mY}),c={};return ko(a.rules,a=>{c[a.name]=a}),m$(c,b.errMsgProvider)}function nL(a){return ns((a=kf(a,{errMsgProvider:mZ})).rules,a.tokenTypes,a.errMsgProvider,a.grammarName)}bz(nF,"validateTooManyAlts"),bz(nG,"validateSomeNonEmptyLookaheadPath"),bz(nH,"checkAlternativesAmbiguities"),bz(nI,"checkPrefixAlternativesAmbiguities"),bz(nJ,"checkTerminalAndNoneTerminalsNameSpace"),bz(nK,"resolveGrammar"),bz(nL,"validateGrammar");var nM="MismatchedTokenException",nN="NoViableAltException",nO="EarlyExitException",nP="NotAllInputParsedException",nQ=[nM,nN,nO,nP];function nR(a){return kL(nQ,a.name)}Object.freeze(nQ),bz(nR,"isRecognitionException");var nS=class extends Error{static{bz(this,"RecognitionException")}constructor(a,b){super(a),this.token=b,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},nT=class extends nS{static{bz(this,"MismatchedTokenException")}constructor(a,b,c){super(a,b),this.previousToken=c,this.name=nM}},nU=class extends nS{static{bz(this,"NoViableAltException")}constructor(a,b,c){super(a,b),this.previousToken=c,this.name=nN}},nV=class extends nS{static{bz(this,"NotAllInputParsedException")}constructor(a,b){super(a,b),this.name=nP}},nW=class extends nS{static{bz(this,"EarlyExitException")}constructor(a,b,c){super(a,b),this.previousToken=c,this.name=nO}},nX={},nY="InRuleRecoveryException",nZ=class extends Error{static{bz(this,"InRuleRecoveryException")}constructor(a){super(a),this.name=nY}},n$=class{static{bz(this,"Recoverable")}initRecoverable(a){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=kG(a,"recoveryEnabled")?a.recoveryEnabled:ox.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=n_)}getTokenToInsert(a){let b=mV(a,"",NaN,NaN,NaN,NaN,NaN,NaN);return b.isInsertedInRecovery=!0,b}canTokenTypeBeInsertedInRecovery(a){return!0}canTokenTypeBeDeletedInRecovery(a){return!0}tryInRepetitionRecovery(a,b,c,d){let e=this.findReSyncTokenType(),f=this.exportLexerState(),g=[],h=!1,i=this.LA(1),j=this.LA(1),k=bz(()=>{let a=this.LA(0),b=new nT(this.errorMessageProvider.buildMismatchTokenMessage({expected:d,actual:i,previous:a,ruleName:this.getCurrRuleFullName()}),i,this.LA(0));b.resyncedTokens=km(g),this.SAVE_ERROR(b)},"generateErrorMessage");for(;!h;)if(this.tokenMatcher(j,d))return void k();else if(c.call(this)){k(),a.apply(this,b);return}else this.tokenMatcher(j,e)?h=!0:(j=this.SKIP_TOKEN(),this.addToResyncTokens(j,g));this.importLexerState(f)}shouldInRepetitionRecoveryBeTried(a,b,c){return!(!1===c||this.tokenMatcher(this.LA(1),a)||this.isBackTracking()||this.canPerformInRuleRecovery(a,this.getFollowsForInRuleRecovery(a,b)))}getFollowsForInRuleRecovery(a,b){let c=this.getCurrentGrammarPath(a,b);return this.getNextPossibleTokenTypes(c)}tryInRuleRecovery(a,b){if(this.canRecoverWithSingleTokenInsertion(a,b))return this.getTokenToInsert(a);if(this.canRecoverWithSingleTokenDeletion(a)){let a=this.SKIP_TOKEN();return this.consumeToken(),a}throw new nZ("sad sad panda")}canPerformInRuleRecovery(a,b){return this.canRecoverWithSingleTokenInsertion(a,b)||this.canRecoverWithSingleTokenDeletion(a)}canRecoverWithSingleTokenInsertion(a,b){if(!this.canTokenTypeBeInsertedInRecovery(a)||kP(b))return!1;let c=this.LA(1);return void 0!==kx(b,a=>this.tokenMatcher(c,a))}canRecoverWithSingleTokenDeletion(a){return!!this.canTokenTypeBeDeletedInRecovery(a)&&this.tokenMatcher(this.LA(2),a)}isInCurrentRuleReSyncSet(a){let b=this.getCurrFollowKey();return kL(this.getFollowSetFromFollowKey(b),a)}findReSyncTokenType(){let a=this.flattenFollowSet(),b=this.LA(1),c=2;for(;;){let d=kx(a,a=>mW(b,a));if(void 0!==d)return d;b=this.LA(c),c++}}getCurrFollowKey(){if(1===this.RULE_STACK.length)return nX;let a=this.getLastExplicitRuleShortName(),b=this.getLastExplicitRuleOccurrenceIndex(),c=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(a),idxInCallingRule:b,inRule:this.shortRuleNameToFullName(c)}}buildFullFollowKeyStack(){let a=this.RULE_STACK,b=this.RULE_OCCURRENCE_STACK;return kA(a,(c,d)=>0===d?nX:{ruleName:this.shortRuleNameToFullName(c),idxInCallingRule:b[d],inRule:this.shortRuleNameToFullName(a[d-1])})}flattenFollowSet(){return iw(kA(this.buildFullFollowKeyStack(),a=>this.getFollowSetFromFollowKey(a)))}getFollowSetFromFollowKey(a){if(a===nX)return[mU];let b=a.ruleName+a.idxInCallingRule+ly+a.inRule;return this.resyncFollows[b]}addToResyncTokens(a,b){return this.tokenMatcher(a,mU)||b.push(a),b}reSyncTo(a){let b=[],c=this.LA(1);for(;!1===this.tokenMatcher(c,a);)c=this.SKIP_TOKEN(),this.addToResyncTokens(c,b);return km(b)}attemptInRepetitionRecovery(a,b,c,d,e,f,g){}getCurrentGrammarPath(a,b){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:jz(this.RULE_OCCURRENCE_STACK),lastTok:a,lastTokOccurrence:b}}getHumanReadableRuleStack(){return kA(this.RULE_STACK,a=>this.shortRuleNameToFullName(a))}};function n_(a,b,c,d,e,f,g){let h=this.getKeyForAutomaticLookahead(d,e),i=this.firstAfterRepMap[h];if(void 0===i){let a=this.getCurrRuleFullName();i=new f(this.getGAstProductions()[a],e).startWalking(),this.firstAfterRepMap[h]=i}let j=i.token,k=i.occurrence,l=i.isEndOfRule;1===this.RULE_STACK.length&&l&&void 0===j&&(j=mU,k=1),void 0!==j&&void 0!==k&&this.shouldInRepetitionRecoveryBeTried(j,k,g)&&this.tryInRepetitionRecovery(a,b,c,j)}bz(n_,"attemptInRepetitionRecovery");function n0(a,b,c){return c|b|a}bz(n0,"getKeyForAutomaticLookahead");var n1=class{static{bz(this,"LLkLookaheadStrategy")}constructor(a){var b;this.maxLookahead=null!=(b=null==a?void 0:a.maxLookahead)?b:ox.maxLookahead}validate(a){let b=this.validateNoLeftRecursion(a.rules);return kP(b)?[...b,...this.validateEmptyOrAlternatives(a.rules),...this.validateAmbiguousAlternationAlternatives(a.rules,this.maxLookahead),...this.validateSomeNonEmptyLookaheadPath(a.rules,this.maxLookahead)]:b}validateNoLeftRecursion(a){return kB(a,a=>nz(a,a,mZ))}validateEmptyOrAlternatives(a){return kB(a,a=>nC(a,mZ))}validateAmbiguousAlternationAlternatives(a,b){return kB(a,a=>nD(a,b,mZ))}validateSomeNonEmptyLookaheadPath(a,b){return nG(a,b,mZ)}buildLookaheadForAlternation(a){return nc(a.prodOccurrence,a.rule,a.maxLookahead,a.hasPredicates,a.dynamicTokensEnabled,ne)}buildLookaheadForOptional(a){return nd(a.prodOccurrence,a.rule,a.maxLookahead,a.dynamicTokensEnabled,na(a.prodType),nf)}},n2=class{static{bz(this,"LooksAhead")}initLooksAhead(a){this.dynamicTokensEnabled=kG(a,"dynamicTokensEnabled")?a.dynamicTokensEnabled:ox.dynamicTokensEnabled,this.maxLookahead=kG(a,"maxLookahead")?a.maxLookahead:ox.maxLookahead,this.lookaheadStrategy=kG(a,"lookaheadStrategy")?a.lookaheadStrategy:new n1({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(a){ko(a,a=>{this.TRACE_INIT(`${a.name} Rule Lookahead`,()=>{let{alternation:b,repetition:c,option:d,repetitionMandatory:e,repetitionMandatoryWithSeparator:f,repetitionWithSeparator:g}=n4(a);ko(b,b=>{let c=0===b.idx?"":b.idx;this.TRACE_INIT(`${lr(b)}${c}`,()=>{let c=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:b.idx,rule:a,maxLookahead:b.maxLookahead||this.maxLookahead,hasPredicates:b.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),d=n0(this.fullRuleNameToShort[a.name],256,b.idx);this.setLaFuncCache(d,c)})}),ko(c,b=>{this.computeLookaheadFunc(a,b.idx,768,"Repetition",b.maxLookahead,lr(b))}),ko(d,b=>{this.computeLookaheadFunc(a,b.idx,512,"Option",b.maxLookahead,lr(b))}),ko(e,b=>{this.computeLookaheadFunc(a,b.idx,1024,"RepetitionMandatory",b.maxLookahead,lr(b))}),ko(f,b=>{this.computeLookaheadFunc(a,b.idx,1536,"RepetitionMandatoryWithSeparator",b.maxLookahead,lr(b))}),ko(g,b=>{this.computeLookaheadFunc(a,b.idx,1280,"RepetitionWithSeparator",b.maxLookahead,lr(b))})})})}computeLookaheadFunc(a,b,c,d,e,f){this.TRACE_INIT(`${f}${0===b?"":b}`,()=>{let f=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:b,rule:a,maxLookahead:e||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:d}),g=n0(this.fullRuleNameToShort[a.name],c,b);this.setLaFuncCache(g,f)})}getKeyForAutomaticLookahead(a,b){return n0(this.getLastExplicitRuleShortName(),a,b)}getLaFuncFromCache(a){return this.lookAheadFuncsCache.get(a)}setLaFuncCache(a,b){this.lookAheadFuncsCache.set(a,b)}},n3=new class extends ln{static{bz(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(a){this.dslMethods.option.push(a)}visitRepetitionWithSeparator(a){this.dslMethods.repetitionWithSeparator.push(a)}visitRepetitionMandatory(a){this.dslMethods.repetitionMandatory.push(a)}visitRepetitionMandatoryWithSeparator(a){this.dslMethods.repetitionMandatoryWithSeparator.push(a)}visitRepetition(a){this.dslMethods.repetition.push(a)}visitAlternation(a){this.dslMethods.alternation.push(a)}};function n4(a){n3.reset(),a.accept(n3);let b=n3.dslMethods;return n3.reset(),b}function n5(a,b){!0===isNaN(a.startOffset)?(a.startOffset=b.startOffset,a.endOffset=b.endOffset):a.endOffset<b.endOffset==!0&&(a.endOffset=b.endOffset)}function n6(a,b){!0===isNaN(a.startOffset)?(a.startOffset=b.startOffset,a.startColumn=b.startColumn,a.startLine=b.startLine,a.endOffset=b.endOffset,a.endColumn=b.endColumn,a.endLine=b.endLine):a.endOffset<b.endOffset==!0&&(a.endOffset=b.endOffset,a.endColumn=b.endColumn,a.endLine=b.endLine)}function n7(a,b,c){void 0===a.children[c]?a.children[c]=[b]:a.children[c].push(b)}function n8(a,b,c){void 0===a.children[b]?a.children[b]=[c]:a.children[b].push(c)}function n9(a,b){Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,writable:!1,value:b})}function oa(a,b){let c=hH(a),d=c.length;for(let e=0;e<d;e++){let d=a[c[e]],f=d.length;for(let a=0;a<f;a++){let c=d[a];void 0===c.tokenTypeIdx&&this[c.name](c.children,b)}}}function ob(a,b){let c=bz(function(){},"derivedConstructor");return n9(c,a+"BaseSemantics"),c.prototype={visit:bz(function(a,b){if(ge(a)&&(a=a[0]),!kT(a))return this[a.name](a.children,b)},"visit"),validateVisitor:bz(function(){let a=od(this,b);if(!kP(a)){let b=kA(a,a=>a.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
|
|
70
|
+
${b.join("\n\n").replace(/\n/g,"\n ")}`)}},"validateVisitor")},c.prototype.constructor=c,c._RULE_NAMES=b,c}function oc(a,b,c){let d=bz(function(){},"derivedConstructor");n9(d,a+"BaseSemanticsWithDefaults");let e=Object.create(c.prototype);return ko(b,a=>{e[a]=oa}),d.prototype=e,d.prototype.constructor=d,d}function od(a,b){return oe(a,b)}function oe(a,b){return jA(kA(kt(b,b=>!1===gy(a[b])),b=>({msg:`Missing visitor method: <${b}> on ${a.constructor.name} CST Visitor.`,type:aZ.MISSING_METHOD,methodName:b})))}bz(n4,"collectMethods"),bz(n5,"setNodeLocationOnlyOffset"),bz(n6,"setNodeLocationFull"),bz(n7,"addTerminalToCst"),bz(n8,"addNoneTerminalToCst"),bz(n9,"defineNameProp"),bz(oa,"defaultVisit"),bz(ob,"createBaseSemanticVisitorConstructor"),bz(oc,"createBaseVisitorConstructorWithDefaults"),(j=aZ||(aZ={}))[j.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",j[j.MISSING_METHOD=1]="MISSING_METHOD",bz(od,"validateVisitor"),bz(oe,"validateMissingCstMethods");var of=class{static{bz(this,"TreeBuilder")}initTreeBuilder(a){if(this.CST_STACK=[],this.outputCst=a.outputCst,this.nodeLocationTracking=kG(a,"nodeLocationTracking")?a.nodeLocationTracking:ox.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=n6,this.setNodeLocationFromNode=n6,this.cstPostRule=gQ,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=gQ,this.setNodeLocationFromNode=gQ,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=n5,this.setNodeLocationFromNode=n5,this.cstPostRule=gQ,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=gQ,this.setNodeLocationFromNode=gQ,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=gQ,this.setNodeLocationFromNode=gQ,this.cstPostRule=gQ,this.setInitialNodeLocation=gQ;else throw Error(`Invalid <nodeLocationTracking> config option: "${a.nodeLocationTracking}"`);else this.cstInvocationStateUpdate=gQ,this.cstFinallyStateUpdate=gQ,this.cstPostTerminal=gQ,this.cstPostNonTerminal=gQ,this.cstPostRule=gQ}setInitialNodeLocationOnlyOffsetRecovery(a){a.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(a){a.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(a){a.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(a){let b=this.LA(1);a.location={startOffset:b.startOffset,startLine:b.startLine,startColumn:b.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(a){let b={name:a,children:Object.create(null)};this.setInitialNodeLocation(b),this.CST_STACK.push(b)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(a){let b=this.LA(0),c=a.location;c.startOffset<=b.startOffset==!0?(c.endOffset=b.endOffset,c.endLine=b.endLine,c.endColumn=b.endColumn):(c.startOffset=NaN,c.startLine=NaN,c.startColumn=NaN)}cstPostRuleOnlyOffset(a){let b=this.LA(0),c=a.location;c.startOffset<=b.startOffset==!0?c.endOffset=b.endOffset:c.startOffset=NaN}cstPostTerminal(a,b){let c=this.CST_STACK[this.CST_STACK.length-1];n7(c,b,a),this.setNodeLocationFromToken(c.location,b)}cstPostNonTerminal(a,b){let c=this.CST_STACK[this.CST_STACK.length-1];n8(c,b,a),this.setNodeLocationFromNode(c.location,a.location)}getBaseCstVisitorConstructor(){if(kT(this.baseCstVisitorConstructor)){let a=ob(this.className,hH(this.gastProductionsCache));return this.baseCstVisitorConstructor=a,a}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(kT(this.baseCstVisitorWithDefaultsConstructor)){let a=oc(this.className,hH(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=a,a}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let a=this.RULE_STACK;return a[a.length-1]}getPreviousExplicitRuleShortName(){let a=this.RULE_STACK;return a[a.length-2]}getLastExplicitRuleOccurrenceIndex(){let a=this.RULE_OCCURRENCE_STACK;return a[a.length-1]}},og=class{static{bz(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(a){if(!0!==this.selfAnalysisDone)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=a,this.tokVectorLength=a.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):ow}LA(a){let b=this.currIdx+a;return b<0||this.tokVectorLength<=b?ow:this.tokVector[b]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(a){this.currIdx=a}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},oh=class{static{bz(this,"RecognizerApi")}ACTION(a){return a.call(this)}consume(a,b,c){return this.consumeInternal(b,a,c)}subrule(a,b,c){return this.subruleInternal(b,a,c)}option(a,b){return this.optionInternal(b,a)}or(a,b){return this.orInternal(b,a)}many(a,b){return this.manyInternal(a,b)}atLeastOne(a,b){return this.atLeastOneInternal(a,b)}CONSUME(a,b){return this.consumeInternal(a,0,b)}CONSUME1(a,b){return this.consumeInternal(a,1,b)}CONSUME2(a,b){return this.consumeInternal(a,2,b)}CONSUME3(a,b){return this.consumeInternal(a,3,b)}CONSUME4(a,b){return this.consumeInternal(a,4,b)}CONSUME5(a,b){return this.consumeInternal(a,5,b)}CONSUME6(a,b){return this.consumeInternal(a,6,b)}CONSUME7(a,b){return this.consumeInternal(a,7,b)}CONSUME8(a,b){return this.consumeInternal(a,8,b)}CONSUME9(a,b){return this.consumeInternal(a,9,b)}SUBRULE(a,b){return this.subruleInternal(a,0,b)}SUBRULE1(a,b){return this.subruleInternal(a,1,b)}SUBRULE2(a,b){return this.subruleInternal(a,2,b)}SUBRULE3(a,b){return this.subruleInternal(a,3,b)}SUBRULE4(a,b){return this.subruleInternal(a,4,b)}SUBRULE5(a,b){return this.subruleInternal(a,5,b)}SUBRULE6(a,b){return this.subruleInternal(a,6,b)}SUBRULE7(a,b){return this.subruleInternal(a,7,b)}SUBRULE8(a,b){return this.subruleInternal(a,8,b)}SUBRULE9(a,b){return this.subruleInternal(a,9,b)}OPTION(a){return this.optionInternal(a,0)}OPTION1(a){return this.optionInternal(a,1)}OPTION2(a){return this.optionInternal(a,2)}OPTION3(a){return this.optionInternal(a,3)}OPTION4(a){return this.optionInternal(a,4)}OPTION5(a){return this.optionInternal(a,5)}OPTION6(a){return this.optionInternal(a,6)}OPTION7(a){return this.optionInternal(a,7)}OPTION8(a){return this.optionInternal(a,8)}OPTION9(a){return this.optionInternal(a,9)}OR(a){return this.orInternal(a,0)}OR1(a){return this.orInternal(a,1)}OR2(a){return this.orInternal(a,2)}OR3(a){return this.orInternal(a,3)}OR4(a){return this.orInternal(a,4)}OR5(a){return this.orInternal(a,5)}OR6(a){return this.orInternal(a,6)}OR7(a){return this.orInternal(a,7)}OR8(a){return this.orInternal(a,8)}OR9(a){return this.orInternal(a,9)}MANY(a){this.manyInternal(0,a)}MANY1(a){this.manyInternal(1,a)}MANY2(a){this.manyInternal(2,a)}MANY3(a){this.manyInternal(3,a)}MANY4(a){this.manyInternal(4,a)}MANY5(a){this.manyInternal(5,a)}MANY6(a){this.manyInternal(6,a)}MANY7(a){this.manyInternal(7,a)}MANY8(a){this.manyInternal(8,a)}MANY9(a){this.manyInternal(9,a)}MANY_SEP(a){this.manySepFirstInternal(0,a)}MANY_SEP1(a){this.manySepFirstInternal(1,a)}MANY_SEP2(a){this.manySepFirstInternal(2,a)}MANY_SEP3(a){this.manySepFirstInternal(3,a)}MANY_SEP4(a){this.manySepFirstInternal(4,a)}MANY_SEP5(a){this.manySepFirstInternal(5,a)}MANY_SEP6(a){this.manySepFirstInternal(6,a)}MANY_SEP7(a){this.manySepFirstInternal(7,a)}MANY_SEP8(a){this.manySepFirstInternal(8,a)}MANY_SEP9(a){this.manySepFirstInternal(9,a)}AT_LEAST_ONE(a){this.atLeastOneInternal(0,a)}AT_LEAST_ONE1(a){return this.atLeastOneInternal(1,a)}AT_LEAST_ONE2(a){this.atLeastOneInternal(2,a)}AT_LEAST_ONE3(a){this.atLeastOneInternal(3,a)}AT_LEAST_ONE4(a){this.atLeastOneInternal(4,a)}AT_LEAST_ONE5(a){this.atLeastOneInternal(5,a)}AT_LEAST_ONE6(a){this.atLeastOneInternal(6,a)}AT_LEAST_ONE7(a){this.atLeastOneInternal(7,a)}AT_LEAST_ONE8(a){this.atLeastOneInternal(8,a)}AT_LEAST_ONE9(a){this.atLeastOneInternal(9,a)}AT_LEAST_ONE_SEP(a){this.atLeastOneSepFirstInternal(0,a)}AT_LEAST_ONE_SEP1(a){this.atLeastOneSepFirstInternal(1,a)}AT_LEAST_ONE_SEP2(a){this.atLeastOneSepFirstInternal(2,a)}AT_LEAST_ONE_SEP3(a){this.atLeastOneSepFirstInternal(3,a)}AT_LEAST_ONE_SEP4(a){this.atLeastOneSepFirstInternal(4,a)}AT_LEAST_ONE_SEP5(a){this.atLeastOneSepFirstInternal(5,a)}AT_LEAST_ONE_SEP6(a){this.atLeastOneSepFirstInternal(6,a)}AT_LEAST_ONE_SEP7(a){this.atLeastOneSepFirstInternal(7,a)}AT_LEAST_ONE_SEP8(a){this.atLeastOneSepFirstInternal(8,a)}AT_LEAST_ONE_SEP9(a){this.atLeastOneSepFirstInternal(9,a)}RULE(a,b,c=oy){if(kL(this.definedRulesNames,a)){let b={message:mZ.buildDuplicateRuleNameError({topLevelRule:a,grammarName:this.className}),type:a$.DUPLICATE_RULE_NAME,ruleName:a};this.definitionErrors.push(b)}this.definedRulesNames.push(a);let d=this.defineRule(a,b,c);return this[a]=d,d}OVERRIDE_RULE(a,b,c=oy){let d=ny(a,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(d);let e=this.defineRule(a,b,c);return this[a]=e,e}BACKTRACK(a,b){return function(){this.isBackTrackingStack.push(1);let c=this.saveRecogState();try{return a.apply(this,b),!0}catch(a){if(nR(a))return!1;throw a}finally{this.reloadRecogState(c),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return ll(kJ(this.gastProductionsCache))}},oi=class{static{bz(this,"RecognizerEngine")}initRecognizerEngine(a,b){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=mr,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},kG(b,"serializedGrammar"))throw Error("The Parser's configuration can no longer contain a <serializedGrammar> property.\n See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n For Further details.");if(ge(a)){if(kP(a))throw Error("A Token Vocabulary cannot be empty.\n Note that the first argument for the parser constructor\n is no longer a Token vector (since v4.0).");if("number"==typeof a[0].startOffset)throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n For Further details.")}if(ge(a))this.tokensMap=kZ(a,(a,b)=>(a[b.name]=b,a),{});else if(kG(a,"modes")&&kr(iw(kJ(a.modes)),mE)){let b=k3(iw(kJ(a.modes)));this.tokensMap=kZ(b,(a,b)=>(a[b.name]=b,a),{})}else if(gn(a))this.tokensMap=jz(a);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=mU;let c=kr(kG(a,"modes")?iw(kJ(a.modes)):kJ(a),a=>kP(a.categoryMatches));this.tokenMatcher=c?mr:mq,mu(kJ(this.tokensMap))}defineRule(a,b,c){if(this.selfAnalysisDone)throw Error(`Grammar rule <${a}> may not be defined after the 'performSelfAnalysis' method has been called'
|
|
71
|
+
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let d=kG(c,"resyncEnabled")?c.resyncEnabled:oy.resyncEnabled,e=kG(c,"recoveryValueFunc")?c.recoveryValueFunc:oy.recoveryValueFunc,f=this.ruleShortNameIdx<<12;return this.ruleShortNameIdx++,this.shortRuleNameToFull[f]=a,this.fullRuleNameToShort[a]=f,Object.assign(!0===this.outputCst?bz(function(...c){try{this.ruleInvocationStateUpdate(f,a,this.subruleIdx),b.apply(this,c);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(a){return this.invokeRuleCatch(a,d,e)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):bz(function(...c){try{return this.ruleInvocationStateUpdate(f,a,this.subruleIdx),b.apply(this,c)}catch(a){return this.invokeRuleCatch(a,d,e)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),{ruleName:a,originalGrammarAction:b})}invokeRuleCatch(a,b,c){let d=1===this.RULE_STACK.length,e=b&&!this.isBackTracking()&&this.recoveryEnabled;if(nR(a)){if(e){let b=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(b)){if(a.resyncedTokens=this.reSyncTo(b),!this.outputCst)return c(a);{let a=this.CST_STACK[this.CST_STACK.length-1];return a.recoveredNode=!0,a}}if(this.outputCst){let b=this.CST_STACK[this.CST_STACK.length-1];b.recoveredNode=!0,a.partialCstResult=b}throw a}if(d)return this.moveToTerminatedState(),c(a)}throw a}optionInternal(a,b){let c=this.getKeyForAutomaticLookahead(512,b);return this.optionInternalLogic(a,b,c)}optionInternalLogic(a,b,c){let d,e=this.getLaFuncFromCache(c);if("function"!=typeof a){d=a.DEF;let b=a.GATE;if(void 0!==b){let a=e;e=bz(()=>b.call(this)&&a.call(this),"lookAheadFunc")}}else d=a;if(!0===e.call(this))return d.call(this)}atLeastOneInternal(a,b){let c=this.getKeyForAutomaticLookahead(1024,a);return this.atLeastOneInternalLogic(a,b,c)}atLeastOneInternalLogic(a,b,c){let d,e=this.getLaFuncFromCache(c);if("function"!=typeof b){d=b.DEF;let a=b.GATE;if(void 0!==a){let b=e;e=bz(()=>a.call(this)&&b.call(this),"lookAheadFunc")}}else d=b;if(!0===e.call(this)){let a=this.doSingleRepetition(d);for(;!0===e.call(this)&&!0===a;)a=this.doSingleRepetition(d)}else throw this.raiseEarlyExitException(a,aY.REPETITION_MANDATORY,b.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[a,b],e,1024,a,m5)}atLeastOneSepFirstInternal(a,b){let c=this.getKeyForAutomaticLookahead(1536,a);this.atLeastOneSepFirstInternalLogic(a,b,c)}atLeastOneSepFirstInternalLogic(a,b,c){let d=b.DEF,e=b.SEP;if(!0===this.getLaFuncFromCache(c).call(this)){d.call(this);let b=bz(()=>this.tokenMatcher(this.LA(1),e),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),e);)this.CONSUME(e),d.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[a,e,b,d,m6],b,1536,a,m6)}else throw this.raiseEarlyExitException(a,aY.REPETITION_MANDATORY_WITH_SEPARATOR,b.ERR_MSG)}manyInternal(a,b){let c=this.getKeyForAutomaticLookahead(768,a);return this.manyInternalLogic(a,b,c)}manyInternalLogic(a,b,c){let d,e=this.getLaFuncFromCache(c);if("function"!=typeof b){d=b.DEF;let a=b.GATE;if(void 0!==a){let b=e;e=bz(()=>a.call(this)&&b.call(this),"lookaheadFunction")}}else d=b;let f=!0;for(;!0===e.call(this)&&!0===f;)f=this.doSingleRepetition(d);this.attemptInRepetitionRecovery(this.manyInternal,[a,b],e,768,a,m3,f)}manySepFirstInternal(a,b){let c=this.getKeyForAutomaticLookahead(1280,a);this.manySepFirstInternalLogic(a,b,c)}manySepFirstInternalLogic(a,b,c){let d=b.DEF,e=b.SEP;if(!0===this.getLaFuncFromCache(c).call(this)){d.call(this);let b=bz(()=>this.tokenMatcher(this.LA(1),e),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),e);)this.CONSUME(e),d.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[a,e,b,d,m4],b,1280,a,m4)}}repetitionSepSecondInternal(a,b,c,d,e){for(;c();)this.CONSUME(b),d.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[a,b,c,d,e],c,1536,a,e)}doSingleRepetition(a){let b=this.getLexerPosition();return a.call(this),this.getLexerPosition()>b}orInternal(a,b){let c=this.getKeyForAutomaticLookahead(256,b),d=ge(a)?a:a.DEF,e=this.getLaFuncFromCache(c).call(this,d);if(void 0!==e)return d[e].ALT.call(this);this.raiseNoAltException(b,a.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),0===this.RULE_STACK.length&&!1===this.isAtEndOfInput()){let a=this.LA(1),b=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:a,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new nV(b,a))}}subruleInternal(a,b,c){let d;try{let e=void 0!==c?c.ARGS:void 0;return this.subruleIdx=b,d=a.apply(this,e),this.cstPostNonTerminal(d,void 0!==c&&void 0!==c.LABEL?c.LABEL:a.ruleName),d}catch(b){throw this.subruleInternalError(b,c,a.ruleName)}}subruleInternalError(a,b,c){throw nR(a)&&void 0!==a.partialCstResult&&(this.cstPostNonTerminal(a.partialCstResult,void 0!==b&&void 0!==b.LABEL?b.LABEL:c),delete a.partialCstResult),a}consumeInternal(a,b,c){let d;try{let b=this.LA(1);!0===this.tokenMatcher(b,a)?(this.consumeToken(),d=b):this.consumeInternalError(a,b,c)}catch(c){d=this.consumeInternalRecovery(a,b,c)}return this.cstPostTerminal(void 0!==c&&void 0!==c.LABEL?c.LABEL:a.name,d),d}consumeInternalError(a,b,c){let d,e=this.LA(0);throw d=void 0!==c&&c.ERR_MSG?c.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:a,actual:b,previous:e,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new nT(d,b,e))}consumeInternalRecovery(a,b,c){if(this.recoveryEnabled&&"MismatchedTokenException"===c.name&&!this.isBackTracking()){let d=this.getFollowsForInRuleRecovery(a,b);try{return this.tryInRuleRecovery(a,d)}catch(a){if(a.name===nY)throw c;throw a}}throw c}saveRecogState(){let a=this.errors,b=jz(this.RULE_STACK);return{errors:a,lexerState:this.exportLexerState(),RULE_STACK:b,CST_STACK:this.CST_STACK}}reloadRecogState(a){this.errors=a.errors,this.importLexerState(a.lexerState),this.RULE_STACK=a.RULE_STACK}ruleInvocationStateUpdate(a,b,c){this.RULE_OCCURRENCE_STACK.push(c),this.RULE_STACK.push(a),this.cstInvocationStateUpdate(b)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){let a=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[a]}shortRuleNameToFullName(a){return this.shortRuleNameToFull[a]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),mU)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},oj=class{static{bz(this,"ErrorHandler")}initErrorHandler(a){this._errors=[],this.errorMessageProvider=kG(a,"errorMessageProvider")?a.errorMessageProvider:ox.errorMessageProvider}SAVE_ERROR(a){if(nR(a))return a.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:jz(this.RULE_OCCURRENCE_STACK)},this._errors.push(a),a;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return jz(this._errors)}set errors(a){this._errors=a}raiseEarlyExitException(a,b,c){let d=this.getCurrRuleFullName(),e=nn(a,this.getGAstProductions()[d],b,this.maxLookahead)[0],f=[];for(let a=1;a<=this.maxLookahead;a++)f.push(this.LA(a));let g=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:e,actual:f,previous:this.LA(0),customUserDescription:c,ruleName:d});throw this.SAVE_ERROR(new nW(g,this.LA(1),this.LA(0)))}raiseNoAltException(a,b){let c=this.getCurrRuleFullName(),d=nm(a,this.getGAstProductions()[c],this.maxLookahead),e=[];for(let a=1;a<=this.maxLookahead;a++)e.push(this.LA(a));let f=this.LA(0),g=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:d,actual:e,previous:f,customUserDescription:b,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new nU(g,this.LA(1),f))}},ok=class{static{bz(this,"ContentAssist")}initContentAssist(){}computeContentAssist(a,b){let c=this.gastProductionsCache[a];if(kT(c))throw Error(`Rule ->${a}<- does not exist in this grammar.`);return m8([c],b,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(a){let b=ky(a.ruleStack);return new m1(this.getGAstProductions()[b],a).startWalking()}},ol={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(ol);var om=mS({name:"RECORDING_PHASE_TOKEN",pattern:mH.NA});mu([om]);var on=mV(om,"This IToken indicates the Parser is in Recording Phase\n See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",-1,-1,-1,-1,-1,-1);Object.freeze(on);var oo={name:"This CSTNode indicates the Parser is in Recording Phase\n See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",children:{}},op=class{static{bz(this,"GastRecorder")}initGastRecorder(a){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let a=0;a<10;a++){let b=a>0?a:"";this[`CONSUME${b}`]=function(b,c){return this.consumeInternalRecord(b,a,c)},this[`SUBRULE${b}`]=function(b,c){return this.subruleInternalRecord(b,a,c)},this[`OPTION${b}`]=function(b){return this.optionInternalRecord(b,a)},this[`OR${b}`]=function(b){return this.orInternalRecord(b,a)},this[`MANY${b}`]=function(b){this.manyInternalRecord(a,b)},this[`MANY_SEP${b}`]=function(b){this.manySepFirstInternalRecord(a,b)},this[`AT_LEAST_ONE${b}`]=function(b){this.atLeastOneInternalRecord(a,b)},this[`AT_LEAST_ONE_SEP${b}`]=function(b){this.atLeastOneSepFirstInternalRecord(a,b)}}this.consume=function(a,b,c){return this.consumeInternalRecord(b,a,c)},this.subrule=function(a,b,c){return this.subruleInternalRecord(b,a,c)},this.option=function(a,b){return this.optionInternalRecord(b,a)},this.or=function(a,b){return this.orInternalRecord(b,a)},this.many=function(a,b){this.manyInternalRecord(a,b)},this.atLeastOne=function(a,b){this.atLeastOneInternalRecord(a,b)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{for(let a=0;a<10;a++){let b=a>0?a:"";delete this[`CONSUME${b}`],delete this[`SUBRULE${b}`],delete this[`OPTION${b}`],delete this[`OR${b}`],delete this[`MANY${b}`],delete this[`MANY_SEP${b}`],delete this[`AT_LEAST_ONE${b}`],delete this[`AT_LEAST_ONE_SEP${b}`]}delete this.consume,delete this.subrule,delete this.option,delete this.or,delete this.many,delete this.atLeastOne,delete this.ACTION,delete this.BACKTRACK,delete this.LA})}ACTION_RECORD(a){}BACKTRACK_RECORD(a,b){return()=>!0}LA_RECORD(a){return ow}topLevelRuleRecord(a,b){try{let c=new lc({definition:[],name:a});return c.name=a,this.recordingProdStack.push(c),b.call(this),this.recordingProdStack.pop(),c}catch(a){if(!0!==a.KNOWN_RECORDER_ERROR)try{a.message=a.message+'\n This error was thrown during the "grammar recording phase" For more info see:\n https://chevrotain.io/docs/guide/internals.html#grammar-recording'}catch(a){}throw a}}optionInternalRecord(a,b){return oq.call(this,le,a,b)}atLeastOneInternalRecord(a,b){oq.call(this,lf,b,a)}atLeastOneSepFirstInternalRecord(a,b){oq.call(this,lg,b,a,!0)}manyInternalRecord(a,b){oq.call(this,lh,b,a)}manySepFirstInternalRecord(a,b){oq.call(this,li,b,a,!0)}orInternalRecord(a,b){return or.call(this,a,b)}subruleInternalRecord(a,b,c){if(ot(b),!a||!1===kG(a,"ruleName")){let c=Error(`<SUBRULE${os(b)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(a)}>
|
|
72
|
+
inside top level rule: <${this.recordingProdStack[0].name}>`);throw c.KNOWN_RECORDER_ERROR=!0,c}let d=kk(this.recordingProdStack),e=new lb({idx:b,nonTerminalName:a.ruleName,label:null==c?void 0:c.LABEL,referencedRule:void 0});return d.definition.push(e),this.outputCst?oo:ol}consumeInternalRecord(a,b,c){if(ot(b),!mA(a)){let c=Error(`<CONSUME${os(b)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(a)}>
|
|
73
|
+
inside top level rule: <${this.recordingProdStack[0].name}>`);throw c.KNOWN_RECORDER_ERROR=!0,c}let d=kk(this.recordingProdStack),e=new lk({idx:b,terminalType:a,label:null==c?void 0:c.LABEL});return d.definition.push(e),on}};function oq(a,b,c,d=!1){ot(c);let e=kk(this.recordingProdStack),f=gy(b)?b:b.DEF,g=new a({definition:[],idx:c});return d&&(g.separator=b.SEP),kG(b,"MAX_LOOKAHEAD")&&(g.maxLookahead=b.MAX_LOOKAHEAD),this.recordingProdStack.push(g),f.call(this),e.definition.push(g),this.recordingProdStack.pop(),ol}function or(a,b){ot(b);let c=kk(this.recordingProdStack),d=!1===ge(a),e=!1===d?a:a.DEF,f=new lj({definition:[],idx:b,ignoreAmbiguities:d&&!0===a.IGNORE_AMBIGUITIES});return kG(a,"MAX_LOOKAHEAD")&&(f.maxLookahead=a.MAX_LOOKAHEAD),f.hasPredicates=k0(e,a=>gy(a.GATE)),c.definition.push(f),ko(e,a=>{let b=new ld({definition:[]});f.definition.push(b),kG(a,"IGNORE_AMBIGUITIES")?b.ignoreAmbiguities=a.IGNORE_AMBIGUITIES:kG(a,"GATE")&&(b.ignoreAmbiguities=!0),this.recordingProdStack.push(b),a.ALT.call(this),this.recordingProdStack.pop()}),ol}function os(a){return 0===a?"":`${a}`}function ot(a){if(a<0||a>255){let b=Error(`Invalid DSL Method idx value: <${a}>
|
|
74
|
+
Idx value must be a none negative value smaller than ${256}`);throw b.KNOWN_RECORDER_ERROR=!0,b}}bz(oq,"recordProd"),bz(or,"recordOrProd"),bz(os,"getIdxSuffix"),bz(ot,"assertMethodIdxIsValid");var ou=class{static{bz(this,"PerformanceTracer")}initPerformanceTracer(a){if(kG(a,"traceInitPerf")){let b=a.traceInitPerf,c="number"==typeof b;this.traceInitMaxIdent=c?b:1/0,this.traceInitPerf=c?b>0:b}else this.traceInitMaxIdent=0,this.traceInitPerf=ox.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(a,b){if(!0!==this.traceInitPerf)return b();{this.traceInitIndent++;let c=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${c}--> <${a}>`);let{time:d,value:e}=k6(b),f=d>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&f(`${c}<-- <${a}> time: ${d}ms`),this.traceInitIndent--,e}}};function ov(a,b){b.forEach(b=>{let c=b.prototype;Object.getOwnPropertyNames(c).forEach(d=>{if("constructor"===d)return;let e=Object.getOwnPropertyDescriptor(c,d);e&&(e.get||e.set)?Object.defineProperty(a.prototype,d,e):a.prototype[d]=b.prototype[d]})})}bz(ov,"applyMixins");var ow=mV(mU,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(ow);var ox=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:mX,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),oy=Object.freeze({recoveryValueFunc:bz(()=>void 0,"recoveryValueFunc"),resyncEnabled:!0});function oz(a){return function(){return a}}(k=a$||(a$={}))[k.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",k[k.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",k[k.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",k[k.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",k[k.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",k[k.LEFT_RECURSION=5]="LEFT_RECURSION",k[k.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",k[k.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",k[k.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",k[k.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",k[k.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",k[k.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",k[k.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",k[k.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",bz(oz,"EMPTY_ALT");var oA=class a{static{bz(this,"Parser")}static performSelfAnalysis(a){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let b;this.selfAnalysisDone=!0;let c=this.className;this.TRACE_INIT("toFastProps",()=>{k7(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),ko(this.definedRulesNames,a=>{let b,c=this[a].originalGrammarAction;this.TRACE_INIT(`${a} Rule`,()=>{b=this.topLevelRuleRecord(a,c)}),this.gastProductionsCache[a]=b})}finally{this.disableRecording()}});let d=[];if(this.TRACE_INIT("Grammar Resolving",()=>{d=nK({rules:kJ(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(d)}),this.TRACE_INIT("Grammar Validations",()=>{if(kP(d)&&!1===this.skipValidations){let a=nL({rules:kJ(this.gastProductionsCache),tokenTypes:kJ(this.tokensMap),errMsgProvider:mZ,grammarName:c}),b=nr({lookaheadStrategy:this.lookaheadStrategy,rules:kJ(this.gastProductionsCache),tokenTypes:kJ(this.tokensMap),grammarName:c});this.definitionErrors=this.definitionErrors.concat(a,b)}}),kP(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let a=lA(kJ(this.gastProductionsCache));this.resyncFollows=a}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var a,b;null==(b=(a=this.lookaheadStrategy).initialize)||b.call(a,{rules:kJ(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(kJ(this.gastProductionsCache))})),!a.DEFER_DEFINITION_ERRORS_HANDLING&&!kP(this.definitionErrors))throw b=kA(this.definitionErrors,a=>a.message),Error(`Parser Definition Errors detected:
|
|
75
|
+
${b.join("\n-------------------------------\n")}`)})}constructor(a,b){if(this.definitionErrors=[],this.selfAnalysisDone=!1,this.initErrorHandler(b),this.initLexerAdapter(),this.initLooksAhead(b),this.initRecognizerEngine(a,b),this.initRecoverable(b),this.initTreeBuilder(b),this.initContentAssist(),this.initGastRecorder(b),this.initPerformanceTracer(b),kG(b,"ignoredIssues"))throw Error("The <ignoredIssues> IParserConfig property has been deprecated.\n Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n For further details.");this.skipValidations=kG(b,"skipValidations")?b.skipValidations:ox.skipValidations}};oA.DEFER_DEFINITION_ERRORS_HANDLING=!1,ov(oA,[n$,n2,of,og,oi,oh,oj,ok,op,ou]);var oB=class extends oA{static{bz(this,"EmbeddedActionsParser")}constructor(a,b=ox){const c=jz(b);c.outputCst=!1,super(a,c)}};function oC(a,b){for(var c=-1,d=null==a?0:a.length,e=Array(d);++c<d;)e[c]=b(a[c],c,a);return e}function oD(){this.__data__=[],this.size=0}function oE(a,b){return a===b||a!=a&&b!=b}function oF(a,b){for(var c=a.length;c--;)if(oE(a[c][0],b))return c;return -1}bz(oC,"arrayMap"),bz(oD,"listCacheClear"),bz(oE,"eq"),bz(oF,"assocIndexOf");var oG=Array.prototype.splice;function oH(a){var b=this.__data__,c=oF(b,a);return!(c<0)&&(c==b.length-1?b.pop():oG.call(b,c,1),--this.size,!0)}function oI(a){var b=this.__data__,c=oF(b,a);return c<0?void 0:b[c][1]}function oJ(a){return oF(this.__data__,a)>-1}function oK(a,b){var c=this.__data__,d=oF(c,a);return d<0?(++this.size,c.push([a,b])):c[d][1]=b,this}function oL(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function oM(){this.__data__=new oL,this.size=0}function oN(a){var b=this.__data__,c=b.delete(a);return this.size=b.size,c}function oO(a){return this.__data__.get(a)}function oP(a){return this.__data__.has(a)}bz(oH,"listCacheDelete"),bz(oI,"listCacheGet"),bz(oJ,"listCacheHas"),bz(oK,"listCacheSet"),bz(oL,"ListCache"),oL.prototype.clear=oD,oL.prototype.delete=oH,oL.prototype.get=oI,oL.prototype.has=oJ,oL.prototype.set=oK,bz(oM,"stackClear"),bz(oN,"stackDelete"),bz(oO,"stackGet"),bz(oP,"stackHas");var oQ="object"==typeof global&&global&&global.Object===Object&&global,oR="object"==typeof self&&self&&self.Object===Object&&self,oS=oQ||oR||Function("return this")(),oT=oS.Symbol,oU=Object.prototype,oV=oU.hasOwnProperty,oW=oU.toString,oX=oT?oT.toStringTag:void 0;function oY(a){var b=oV.call(a,oX),c=a[oX];try{a[oX]=void 0;var d=!0}catch(a){}var e=oW.call(a);return d&&(b?a[oX]=c:delete a[oX]),e}bz(oY,"getRawTag");var oZ=Object.prototype.toString;function o$(a){return oZ.call(a)}bz(o$,"objectToString");var o_=oT?oT.toStringTag:void 0;function o0(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":o_&&o_ in Object(a)?oY(a):o$(a)}function o1(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)}function o2(a){if(!o1(a))return!1;var b=o0(a);return"[object Function]"==b||"[object GeneratorFunction]"==b||"[object AsyncFunction]"==b||"[object Proxy]"==b}bz(o0,"baseGetTag"),bz(o1,"isObject"),bz(o2,"isFunction");var o3=oS["__core-js_shared__"],o4=(l=/[^.]+$/.exec(o3&&o3.keys&&o3.keys.IE_PROTO||""))?"Symbol(src)_1."+l:"";function o5(a){return!!o4&&o4 in a}bz(o5,"isMasked");var o6=Function.prototype.toString;function o7(a){if(null!=a){try{return o6.call(a)}catch(a){}try{return a+""}catch(a){}}return""}bz(o7,"toSource");var o8=/^\[object .+?Constructor\]$/,o9=Object.prototype,pa=Function.prototype.toString,pb=o9.hasOwnProperty,pc=RegExp("^"+pa.call(pb).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function pd(a){return!(!o1(a)||o5(a))&&(o2(a)?pc:o8).test(o7(a))}function pe(a,b){return null==a?void 0:a[b]}function pf(a,b){var c=pe(a,b);return pd(c)?c:void 0}bz(pd,"baseIsNative"),bz(pe,"getValue"),bz(pf,"getNative");var pg=pf(oS,"Map"),ph=pf(Object,"create");function pi(){this.__data__=ph?ph(null):{},this.size=0}function pj(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b}bz(pi,"hashClear"),bz(pj,"hashDelete");var pk=Object.prototype.hasOwnProperty;function pl(a){var b=this.__data__;if(ph){var c=b[a];return"__lodash_hash_undefined__"===c?void 0:c}return pk.call(b,a)?b[a]:void 0}bz(pl,"hashGet");var pm=Object.prototype.hasOwnProperty;function pn(a){var b=this.__data__;return ph?void 0!==b[a]:pm.call(b,a)}function po(a,b){var c=this.__data__;return this.size+=+!this.has(a),c[a]=ph&&void 0===b?"__lodash_hash_undefined__":b,this}function pp(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function pq(){this.size=0,this.__data__={hash:new pp,map:new(pg||oL),string:new pp}}function pr(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a}function ps(a,b){var c=a.__data__;return pr(b)?c["string"==typeof b?"string":"hash"]:c.map}function pt(a){var b=ps(this,a).delete(a);return this.size-=!!b,b}function pu(a){return ps(this,a).get(a)}function pv(a){return ps(this,a).has(a)}function pw(a,b){var c=ps(this,a),d=c.size;return c.set(a,b),this.size+=+(c.size!=d),this}function px(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function py(a,b){var c=this.__data__;if(c instanceof oL){var d=c.__data__;if(!pg||d.length<199)return d.push([a,b]),this.size=++c.size,this;c=this.__data__=new px(d)}return c.set(a,b),this.size=c.size,this}function pz(a){var b=this.__data__=new oL(a);this.size=b.size}function pA(a){return this.__data__.set(a,"__lodash_hash_undefined__"),this}function pB(a){return this.__data__.has(a)}function pC(a){var b=-1,c=null==a?0:a.length;for(this.__data__=new px;++b<c;)this.add(a[b])}function pD(a,b){for(var c=-1,d=null==a?0:a.length;++c<d;)if(b(a[c],c,a))return!0;return!1}function pE(a,b){return a.has(b)}function pF(a,b,c,d,e,f){var g=1&c,h=a.length,i=b.length;if(h!=i&&!(g&&i>h))return!1;var j=f.get(a),k=f.get(b);if(j&&k)return j==b&&k==a;var l=-1,m=!0,n=2&c?new pC:void 0;for(f.set(a,b),f.set(b,a);++l<h;){var o=a[l],p=b[l];if(d)var q=g?d(p,o,l,b,a,f):d(o,p,l,a,b,f);if(void 0!==q){if(q)continue;m=!1;break}if(n){if(!pD(b,function(a,b){if(!pE(n,b)&&(o===a||e(o,a,c,d,f)))return n.push(b)})){m=!1;break}}else if(!(o===p||e(o,p,c,d,f))){m=!1;break}}return f.delete(a),f.delete(b),m}bz(pn,"hashHas"),bz(po,"hashSet"),bz(pp,"Hash"),pp.prototype.clear=pi,pp.prototype.delete=pj,pp.prototype.get=pl,pp.prototype.has=pn,pp.prototype.set=po,bz(pq,"mapCacheClear"),bz(pr,"isKeyable"),bz(ps,"getMapData"),bz(pt,"mapCacheDelete"),bz(pu,"mapCacheGet"),bz(pv,"mapCacheHas"),bz(pw,"mapCacheSet"),bz(px,"MapCache"),px.prototype.clear=pq,px.prototype.delete=pt,px.prototype.get=pu,px.prototype.has=pv,px.prototype.set=pw,bz(py,"stackSet"),bz(pz,"Stack"),pz.prototype.clear=oM,pz.prototype.delete=oN,pz.prototype.get=oO,pz.prototype.has=oP,pz.prototype.set=py,bz(pA,"setCacheAdd"),bz(pB,"setCacheHas"),bz(pC,"SetCache"),pC.prototype.add=pC.prototype.push=pA,pC.prototype.has=pB,bz(pD,"arraySome"),bz(pE,"cacheHas"),bz(pF,"equalArrays");var pG=oS.Uint8Array;function pH(a){var b=-1,c=Array(a.size);return a.forEach(function(a,d){c[++b]=[d,a]}),c}function pI(a){var b=-1,c=Array(a.size);return a.forEach(function(a){c[++b]=a}),c}bz(pH,"mapToArray"),bz(pI,"setToArray");var pJ=oT?oT.prototype:void 0,pK=pJ?pJ.valueOf:void 0;function pL(a,b,c,d,e,f,g){switch(c){case"[object DataView]":if(a.byteLength!=b.byteLength||a.byteOffset!=b.byteOffset)break;a=a.buffer,b=b.buffer;case"[object ArrayBuffer]":if(a.byteLength!=b.byteLength||!f(new pG(a),new pG(b)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return oE(+a,+b);case"[object Error]":return a.name==b.name&&a.message==b.message;case"[object RegExp]":case"[object String]":return a==b+"";case"[object Map]":var h=pH;case"[object Set]":var i=1&d;if(h||(h=pI),a.size!=b.size&&!i)break;var j=g.get(a);if(j)return j==b;d|=2,g.set(a,b);var k=pF(h(a),h(b),d,e,f,g);return g.delete(a),k;case"[object Symbol]":if(pK)return pK.call(a)==pK.call(b)}return!1}function pM(a,b){for(var c=-1,d=b.length,e=a.length;++c<d;)a[e+c]=b[c];return a}bz(pL,"equalByTag"),bz(pM,"arrayPush");var pN=Array.isArray;function pO(a,b,c){var d=b(a);return pN(a)?d:pM(d,c(a))}function pP(a,b){for(var c=-1,d=null==a?0:a.length,e=0,f=[];++c<d;){var g=a[c];b(g,c,a)&&(f[e++]=g)}return f}function pQ(){return[]}bz(pO,"baseGetAllKeys"),bz(pP,"arrayFilter"),bz(pQ,"stubArray");var pR=Object.prototype.propertyIsEnumerable,pS=Object.getOwnPropertySymbols,pT=pS?function(a){return null==a?[]:pP(pS(a=Object(a)),function(b){return pR.call(a,b)})}:pQ;function pU(a,b){for(var c=-1,d=Array(a);++c<a;)d[c]=b(c);return d}function pV(a){return null!=a&&"object"==typeof a}function pW(a){return pV(a)&&"[object Arguments]"==o0(a)}bz(pU,"baseTimes"),bz(pV,"isObjectLike"),bz(pW,"baseIsArguments");var pX=Object.prototype,pY=pX.hasOwnProperty,pZ=pX.propertyIsEnumerable,p$=pW(function(){return arguments}())?pW:function(a){return pV(a)&&pY.call(a,"callee")&&!pZ.call(a,"callee")};function p_(){return!1}bz(p_,"stubFalse");var p0="object"==typeof exports&&exports&&!exports.nodeType&&exports,p1=p0&&"object"==typeof module&&module&&!module.nodeType&&module,p2=p1&&p1.exports===p0?oS.Buffer:void 0,p3=(p2?p2.isBuffer:void 0)||p_,p4=/^(?:0|[1-9]\d*)$/;function p5(a,b){var c=typeof a;return!!(b=null==b?0x1fffffffffffff:b)&&("number"==c||"symbol"!=c&&p4.test(a))&&a>-1&&a%1==0&&a<b}function p6(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=0x1fffffffffffff}bz(p5,"isIndex"),bz(p6,"isLength");var p7={};function p8(a){return pV(a)&&p6(a.length)&&!!p7[o0(a)]}function p9(a){return function(b){return a(b)}}p7["[object Float32Array]"]=p7["[object Float64Array]"]=p7["[object Int8Array]"]=p7["[object Int16Array]"]=p7["[object Int32Array]"]=p7["[object Uint8Array]"]=p7["[object Uint8ClampedArray]"]=p7["[object Uint16Array]"]=p7["[object Uint32Array]"]=!0,p7["[object Arguments]"]=p7["[object Array]"]=p7["[object ArrayBuffer]"]=p7["[object Boolean]"]=p7["[object DataView]"]=p7["[object Date]"]=p7["[object Error]"]=p7["[object Function]"]=p7["[object Map]"]=p7["[object Number]"]=p7["[object Object]"]=p7["[object RegExp]"]=p7["[object Set]"]=p7["[object String]"]=p7["[object WeakMap]"]=!1,bz(p8,"baseIsTypedArray"),bz(p9,"baseUnary");var qa="object"==typeof exports&&exports&&!exports.nodeType&&exports,qb=qa&&"object"==typeof module&&module&&!module.nodeType&&module,qc=qb&&qb.exports===qa&&oQ.process,qd=function(){try{var a=qb&&qb.require&&qb.require("util").types;if(a)return a;return qc&&qc.binding&&qc.binding("util")}catch(a){}}(),qe=qd&&qd.isTypedArray,qf=qe?p9(qe):p8,qg=Object.prototype.hasOwnProperty;function qh(a,b){var c=pN(a),d=!c&&p$(a),e=!c&&!d&&p3(a),f=!c&&!d&&!e&&qf(a),g=c||d||e||f,h=g?pU(a.length,String):[],i=h.length;for(var j in a)(b||qg.call(a,j))&&!(g&&("length"==j||e&&("offset"==j||"parent"==j)||f&&("buffer"==j||"byteLength"==j||"byteOffset"==j)||p5(j,i)))&&h.push(j);return h}bz(qh,"arrayLikeKeys");var qi=Object.prototype;function qj(a){var b=a&&a.constructor;return a===("function"==typeof b&&b.prototype||qi)}function qk(a,b){return function(c){return a(b(c))}}bz(qj,"isPrototype"),bz(qk,"overArg");var ql=qk(Object.keys,Object),qm=Object.prototype.hasOwnProperty;function qn(a){if(!qj(a))return ql(a);var b=[];for(var c in Object(a))qm.call(a,c)&&"constructor"!=c&&b.push(c);return b}function qo(a){return null!=a&&p6(a.length)&&!o2(a)}function qp(a){return qo(a)?qh(a):qn(a)}function qq(a){return pO(a,qp,pT)}bz(qn,"baseKeys"),bz(qo,"isArrayLike"),bz(qp,"keys"),bz(qq,"getAllKeys");var qr=Object.prototype.hasOwnProperty;function qs(a,b,c,d,e,f){var g=1&c,h=qq(a),i=h.length;if(i!=qq(b).length&&!g)return!1;for(var j=i;j--;){var k=h[j];if(!(g?k in b:qr.call(b,k)))return!1}var l=f.get(a),m=f.get(b);if(l&&m)return l==b&&m==a;var n=!0;f.set(a,b),f.set(b,a);for(var o=g;++j<i;){var p=a[k=h[j]],q=b[k];if(d)var r=g?d(q,p,k,b,a,f):d(p,q,k,a,b,f);if(!(void 0===r?p===q||e(p,q,c,d,f):r)){n=!1;break}o||(o="constructor"==k)}if(n&&!o){var s=a.constructor,t=b.constructor;s!=t&&"constructor"in a&&"constructor"in b&&!("function"==typeof s&&s instanceof s&&"function"==typeof t&&t instanceof t)&&(n=!1)}return f.delete(a),f.delete(b),n}bz(qs,"equalObjects");var qt=pf(oS,"DataView"),qu=pf(oS,"Promise"),qv=pf(oS,"Set"),qw=pf(oS,"WeakMap"),qx="[object Map]",qy="[object Promise]",qz="[object Set]",qA="[object WeakMap]",qB="[object DataView]",qC=o7(qt),qD=o7(pg),qE=o7(qu),qF=o7(qv),qG=o7(qw),qH=o0;(qt&&qH(new qt(new ArrayBuffer(1)))!=qB||pg&&qH(new pg)!=qx||qu&&qH(qu.resolve())!=qy||qv&&qH(new qv)!=qz||qw&&qH(new qw)!=qA)&&(qH=bz(function(a){var b=o0(a),c="[object Object]"==b?a.constructor:void 0,d=c?o7(c):"";if(d)switch(d){case qC:return qB;case qD:return qx;case qE:return qy;case qF:return qz;case qG:return qA}return b},"getTag"));var qI=qH,qJ="[object Arguments]",qK="[object Array]",qL="[object Object]",qM=Object.prototype.hasOwnProperty;function qN(a,b,c,d,e,f){var g=pN(a),h=pN(b),i=g?qK:qI(a),j=h?qK:qI(b);i=i==qJ?qL:i,j=j==qJ?qL:j;var k=i==qL,l=j==qL,m=i==j;if(m&&p3(a)){if(!p3(b))return!1;g=!0,k=!1}if(m&&!k)return f||(f=new pz),g||qf(a)?pF(a,b,c,d,e,f):pL(a,b,i,c,d,e,f);if(!(1&c)){var n=k&&qM.call(a,"__wrapped__"),o=l&&qM.call(b,"__wrapped__");if(n||o){var p=n?a.value():a,q=o?b.value():b;return f||(f=new pz),e(p,q,c,d,f)}}return!!m&&(f||(f=new pz),qs(a,b,c,d,e,f))}function qO(a,b,c,d,e){return a===b||(null!=a&&null!=b&&(pV(a)||pV(b))?qN(a,b,c,d,qO,e):a!=a&&b!=b)}function qP(a,b,c,d){var e=c.length,f=e,g=!d;if(null==a)return!f;for(a=Object(a);e--;){var h=c[e];if(g&&h[2]?h[1]!==a[h[0]]:!(h[0]in a))return!1}for(;++e<f;){var i=(h=c[e])[0],j=a[i],k=h[1];if(g&&h[2]){if(void 0===j&&!(i in a))return!1}else{var l=new pz;if(d)var m=d(j,k,i,a,b,l);if(!(void 0===m?qO(k,j,3,d,l):m))return!1}}return!0}function qQ(a){return a==a&&!o1(a)}function qR(a){for(var b=qp(a),c=b.length;c--;){var d=b[c],e=a[d];b[c]=[d,e,qQ(e)]}return b}function qS(a,b){return function(c){return null!=c&&c[a]===b&&(void 0!==b||a in Object(c))}}function qT(a){var b=qR(a);return 1==b.length&&b[0][2]?qS(b[0][0],b[0][1]):function(c){return c===a||qP(c,a,b)}}function qU(a){return"symbol"==typeof a||pV(a)&&"[object Symbol]"==o0(a)}bz(qN,"baseIsEqualDeep"),bz(qO,"baseIsEqual"),bz(qP,"baseIsMatch"),bz(qQ,"isStrictComparable"),bz(qR,"getMatchData"),bz(qS,"matchesStrictComparable"),bz(qT,"baseMatches"),bz(qU,"isSymbol");var qV=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qW=/^\w*$/;function qX(a,b){if(pN(a))return!1;var c=typeof a;return!!("number"==c||"symbol"==c||"boolean"==c||null==a||qU(a))||qW.test(a)||!qV.test(a)||null!=b&&a in Object(b)}function qY(a,b){if("function"!=typeof a||null!=b&&"function"!=typeof b)throw TypeError("Expected a function");var c=bz(function(){var d=arguments,e=b?b.apply(this,d):d[0],f=c.cache;if(f.has(e))return f.get(e);var g=a.apply(this,d);return c.cache=f.set(e,g)||f,g},"memoized");return c.cache=new(qY.Cache||px),c}function qZ(a){var b=qY(a,function(a){return 500===c.size&&c.clear(),a}),c=b.cache;return b}bz(qX,"isKey"),bz(qY,"memoize"),qY.Cache=px,bz(qZ,"memoizeCapped");var q$=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,q_=/\\(\\)?/g,q0=qZ(function(a){var b=[];return 46===a.charCodeAt(0)&&b.push(""),a.replace(q$,function(a,c,d,e){b.push(d?e.replace(q_,"$1"):c||a)}),b}),q1=1/0,q2=oT?oT.prototype:void 0,q3=q2?q2.toString:void 0;function q4(a){if("string"==typeof a)return a;if(pN(a))return oC(a,q4)+"";if(qU(a))return q3?q3.call(a):"";var b=a+"";return"0"==b&&1/a==-q1?"-0":b}function q5(a){return null==a?"":q4(a)}function q6(a,b){return pN(a)?a:qX(a,b)?[a]:q0(q5(a))}bz(q4,"baseToString"),bz(q5,"toString"),bz(q6,"castPath");var q7=1/0;function q8(a){if("string"==typeof a||qU(a))return a;var b=a+"";return"0"==b&&1/a==-q7?"-0":b}function q9(a,b){b=q6(b,a);for(var c=0,d=b.length;null!=a&&c<d;)a=a[q8(b[c++])];return c&&c==d?a:void 0}function ra(a,b,c){var d=null==a?void 0:q9(a,b);return void 0===d?c:d}function rb(a,b){return null!=a&&b in Object(a)}function rc(a,b,c){b=q6(b,a);for(var d=-1,e=b.length,f=!1;++d<e;){var g=q8(b[d]);if(!(f=null!=a&&c(a,g)))break;a=a[g]}return f||++d!=e?f:!!(e=null==a?0:a.length)&&p6(e)&&p5(g,e)&&(pN(a)||p$(a))}function rd(a,b){return null!=a&&rc(a,b,rb)}function re(a,b){return qX(a)&&qQ(b)?qS(q8(a),b):function(c){var d=ra(c,a);return void 0===d&&d===b?rd(c,a):qO(b,d,3)}}function rf(a){return a}function rg(a){return function(b){return null==b?void 0:b[a]}}function rh(a){return function(b){return q9(b,a)}}function ri(a){return qX(a)?rg(q8(a)):rh(a)}function rj(a){return"function"==typeof a?a:null==a?rf:"object"==typeof a?pN(a)?re(a[0],a[1]):qT(a):ri(a)}function rk(a){return function(b,c,d){for(var e=-1,f=Object(b),g=d(b),h=g.length;h--;){var i=g[a?h:++e];if(!1===c(f[i],i,f))break}return b}}bz(q8,"toKey"),bz(q9,"baseGet"),bz(ra,"get"),bz(rb,"baseHasIn"),bz(rc,"hasPath"),bz(rd,"hasIn"),bz(re,"baseMatchesProperty"),bz(rf,"identity"),bz(rg,"baseProperty"),bz(rh,"basePropertyDeep"),bz(ri,"property"),bz(rj,"baseIteratee"),bz(rk,"createBaseFor");var rl=rk();function rm(a,b){return a&&rl(a,b,qp)}function rn(a,b){return function(c,d){if(null==c)return c;if(!qo(c))return a(c,d);for(var e=c.length,f=b?e:-1,g=Object(c);(b?f--:++f<e)&&!1!==d(g[f],f,g););return c}}bz(rm,"baseForOwn"),bz(rn,"createBaseEach");var ro=rn(rm);function rp(a,b){var c=-1,d=qo(a)?Array(a.length):[];return ro(a,function(a,e,f){d[++c]=b(a,e,f)}),d}function rq(a,b){return(pN(a)?oC:rp)(a,rj(b,3))}function rr(a,b){var c=[];return ro(a,function(a,d,e){b(a,d,e)&&c.push(a)}),c}function rs(a,b){return(pN(a)?pP:rr)(a,rj(b,3))}function rt(a,b,c){return`${a.name}_${b}_${c}`}bz(rp,"baseMap"),bz(rq,"map"),bz(rr,"baseFilter"),bz(rs,"filter"),bz(rt,"buildATNKey");var ru=class{static{bz(this,"AbstractTransition")}constructor(a){this.target=a}isEpsilon(){return!1}},rv=class extends ru{static{bz(this,"AtomTransition")}constructor(a,b){super(a),this.tokenType=b}},rw=class extends ru{static{bz(this,"EpsilonTransition")}constructor(a){super(a)}isEpsilon(){return!0}},rx=class extends ru{static{bz(this,"RuleTransition")}constructor(a,b,c){super(a),this.rule=b,this.followState=c}isEpsilon(){return!0}};function ry(a){let b={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};rz(b,a);let c=a.length;for(let d=0;d<c;d++){let c=a[d],e=rH(b,c,c);void 0!==e&&rR(b,c,e)}return b}function rz(a,b){let c=b.length;for(let d=0;d<c;d++){let c=b[d],e=rT(a,c,void 0,{type:2}),f=rT(a,c,void 0,{type:7});e.stop=f,a.ruleToStartState.set(c,e),a.ruleToStopState.set(c,f)}}function rA(a,b,c){if(c instanceof lk)return rP(a,b,c.terminalType,c);if(c instanceof lb)return rQ(a,b,c);if(c instanceof lj)return rF(a,b,c);if(c instanceof le)return rG(a,b,c);if(c instanceof lh)return rB(a,b,c);else if(c instanceof li)return rC(a,b,c);else if(c instanceof lf)return rD(a,b,c);else if(c instanceof lg)return rE(a,b,c);else return rH(a,b,c)}function rB(a,b,c){let d=rT(a,b,c,{type:5});rL(a,d);let e=rM(a,b,d,c,rH(a,b,c));return rJ(a,b,c,e)}function rC(a,b,c){let d=rT(a,b,c,{type:5});rL(a,d);let e=rM(a,b,d,c,rH(a,b,c)),f=rP(a,b,c.separator,c);return rJ(a,b,c,e,f)}function rD(a,b,c){let d=rT(a,b,c,{type:4});rL(a,d);let e=rM(a,b,d,c,rH(a,b,c));return rI(a,b,c,e)}function rE(a,b,c){let d=rT(a,b,c,{type:4});rL(a,d);let e=rM(a,b,d,c,rH(a,b,c)),f=rP(a,b,c.separator,c);return rI(a,b,c,e,f)}function rF(a,b,c){let d=rT(a,b,c,{type:1});rL(a,d);let e=rq(c.definition,c=>rA(a,b,c));return rM(a,b,d,c,...e)}function rG(a,b,c){let d=rT(a,b,c,{type:1});rL(a,d);let e=rM(a,b,d,c,rH(a,b,c));return rK(a,b,c,e)}function rH(a,b,c){let d=rs(rq(c.definition,c=>rA(a,b,c)),a=>void 0!==a);return 1===d.length?d[0]:0===d.length?void 0:rO(a,d)}function rI(a,b,c,d,e){let f=d.left,g=d.right,h=rT(a,b,c,{type:11});rL(a,h);let i=rT(a,b,c,{type:12});return f.loopback=h,i.loopback=h,a.decisionMap[rt(b,e?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",c.idx)]=h,rS(g,h),void 0===e?(rS(h,f),rS(h,i)):(rS(h,i),rS(h,e.left),rS(e.right,f)),{left:f,right:i}}function rJ(a,b,c,d,e){let f=d.left,g=d.right,h=rT(a,b,c,{type:10});rL(a,h);let i=rT(a,b,c,{type:12}),j=rT(a,b,c,{type:9});return h.loopback=j,i.loopback=j,rS(h,f),rS(h,i),rS(g,j),void 0!==e?(rS(j,i),rS(j,e.left),rS(e.right,f)):rS(j,h),a.decisionMap[rt(b,e?"RepetitionWithSeparator":"Repetition",c.idx)]=h,{left:h,right:i}}function rK(a,b,c,d){let e=d.left;return rS(e,d.right),a.decisionMap[rt(b,"Option",c.idx)]=e,d}function rL(a,b){return a.decisionStates.push(b),b.decision=a.decisionStates.length-1,b.decision}function rM(a,b,c,d,...e){let f=rT(a,b,d,{type:8,start:c});for(let a of(c.end=f,e))void 0!==a?(rS(c,a.left),rS(a.right,f)):rS(c,f);return a.decisionMap[rt(b,rN(d),d.idx)]=c,{left:c,right:f}}function rN(a){if(a instanceof lj)return"Alternation";if(a instanceof le)return"Option";if(a instanceof lh)return"Repetition";if(a instanceof li)return"RepetitionWithSeparator";if(a instanceof lf)return"RepetitionMandatory";else if(a instanceof lg)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function rO(a,b){let c=b.length;for(let d=0;d<c-1;d++){let c,e=b[d];1===e.left.transitions.length&&(c=e.left.transitions[0]);let f=c instanceof rx,g=c,h=b[d+1].left;1===e.left.type&&1===e.right.type&&void 0!==c&&(f&&g.followState===e.right||c.target===e.right)?(f?g.followState=h:c.target=h,rV(a,e.right)):rS(e.right,h)}let d=b[0],e=b[c-1];return{left:d.left,right:e.right}}function rP(a,b,c,d){let e=rT(a,b,d,{type:1}),f=rT(a,b,d,{type:1});return rU(e,new rv(f,c)),{left:e,right:f}}function rQ(a,b,c){let d=c.referencedRule,e=a.ruleToStartState.get(d),f=rT(a,b,c,{type:1}),g=rT(a,b,c,{type:1});return rU(f,new rx(e,d,g)),{left:f,right:g}}function rR(a,b,c){let d=a.ruleToStartState.get(b);rS(d,c.left);let e=a.ruleToStopState.get(b);return rS(c.right,e),{left:d,right:e}}function rS(a,b){rU(a,new rw(b))}function rT(a,b,c,d){let e=Object.assign({atn:a,production:c,epsilonOnlyTransitions:!1,rule:b,transitions:[],nextTokenWithinRule:[],stateNumber:a.states.length},d);return a.states.push(e),e}function rU(a,b){0===a.transitions.length&&(a.epsilonOnlyTransitions=b.isEpsilon()),a.transitions.push(b)}function rV(a,b){a.states.splice(a.states.indexOf(b),1)}bz(ry,"createATN"),bz(rz,"createRuleStartAndStopATNStates"),bz(rA,"atom"),bz(rB,"repetition"),bz(rC,"repetitionSep"),bz(rD,"repetitionMandatory"),bz(rE,"repetitionMandatorySep"),bz(rF,"alternation"),bz(rG,"option"),bz(rH,"block"),bz(rI,"plus"),bz(rJ,"star"),bz(rK,"optional"),bz(rL,"defineDecisionState"),bz(rM,"makeAlts"),bz(rN,"getProdType"),bz(rO,"makeBlock"),bz(rP,"tokenRef"),bz(rQ,"ruleRef"),bz(rR,"buildRuleHandle"),bz(rS,"epsilon"),bz(rT,"newState"),bz(rU,"addTransition"),bz(rV,"removeState");var rW={},rX=class{static{bz(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(a){let b=rY(a);b in this.map||(this.map[b]=this.configs.length,this.configs.push(a))}get elements(){return this.configs}get alts(){return rq(this.configs,a=>a.alt)}get key(){let a="";for(let b in this.map)a+=b+":";return a}};function rY(a,b=!0){return`${b?`a${a.alt}`:""}s${a.state.stateNumber}:${a.stack.map(a=>a.stateNumber.toString()).join("_")}`}function rZ(a,b,c){for(var d=-1,e=a.length;++d<e;){var f=a[d],g=b(f);if(null!=g&&(void 0===h?g==g&&!qU(g):c(g,h)))var h=g,i=f}return i}function r$(a,b){return a<b}function r_(a){return a&&a.length?rZ(a,rf,r$):void 0}bz(rY,"getATNConfigKey"),bz(rZ,"baseExtremum"),bz(r$,"baseLt"),bz(r_,"min");var r0=oT?oT.isConcatSpreadable:void 0;function r1(a){return pN(a)||p$(a)||!!(r0&&a&&a[r0])}function r2(a,b,c,d,e){var f=-1,g=a.length;for(c||(c=r1),e||(e=[]);++f<g;){var h=a[f];b>0&&c(h)?b>1?r2(h,b-1,c,d,e):pM(e,h):d||(e[e.length]=h)}return e}function r3(a,b){return r2(rq(a,b),1)}function r4(a,b,c,d){for(var e=a.length,f=c+(d?1:-1);d?f--:++f<e;)if(b(a[f],f,a))return f;return -1}function r5(a){return a!=a}function r6(a,b,c){for(var d=c-1,e=a.length;++d<e;)if(a[d]===b)return d;return -1}function r7(a,b,c){return b==b?r6(a,b,c):r4(a,r5,c)}function r8(a,b){return!!(null==a?0:a.length)&&r7(a,b,0)>-1}function r9(a,b,c){for(var d=-1,e=null==a?0:a.length;++d<e;)if(c(b,a[d]))return!0;return!1}function sa(){}bz(r1,"isFlattenable"),bz(r2,"baseFlatten"),bz(r3,"flatMap"),bz(r4,"baseFindIndex"),bz(r5,"baseIsNaN"),bz(r6,"strictIndexOf"),bz(r7,"baseIndexOf"),bz(r8,"arrayIncludes"),bz(r9,"arrayIncludesWith"),bz(sa,"noop");var sb=qv&&1/pI(new qv([,-0]))[1]==1/0?function(a){return new qv(a)}:sa;function sc(a,b,c){var d=-1,e=r8,f=a.length,g=!0,h=[],i=h;if(c)g=!1,e=r9;else if(f>=200){var j=b?null:sb(a);if(j)return pI(j);g=!1,e=pE,i=new pC}else i=b?[]:h;b:for(;++d<f;){var k=a[d],l=b?b(k):k;if(k=c||0!==k?k:0,g&&l==l){for(var m=i.length;m--;)if(i[m]===l)continue b;b&&i.push(l),h.push(k)}else e(i,l,c)||(i!==h&&i.push(l),h.push(k))}return h}function sd(a,b){return a&&a.length?sc(a,rj(b,2)):[]}function se(a){return(null==a?0:a.length)?r2(a,1):[]}function sf(a,b){for(var c=-1,d=null==a?0:a.length;++c<d&&!1!==b(a[c],c,a););return a}function sg(a){return"function"==typeof a?a:rf}function sh(a,b){return(pN(a)?sf:ro)(a,sg(b))}bz(sc,"baseUniq"),bz(sd,"uniqBy"),bz(se,"flatten"),bz(sf,"arrayEach"),bz(sg,"castFunction"),bz(sh,"forEach");var si=Object.prototype.hasOwnProperty;function sj(a){if(null==a)return!0;if(qo(a)&&(pN(a)||"string"==typeof a||"function"==typeof a.splice||p3(a)||qf(a)||p$(a)))return!a.length;var b=qI(a);if("[object Map]"==b||"[object Set]"==b)return!a.size;if(qj(a))return!qn(a).length;for(var c in a)if(si.call(a,c))return!1;return!0}function sk(a,b,c,d){var e=-1,f=null==a?0:a.length;for(d&&f&&(c=a[++e]);++e<f;)c=b(c,a[e],e,a);return c}function sl(a,b,c,d,e){return e(a,function(a,e,f){c=d?(d=!1,a):b(c,a,e,f)}),c}function sm(a,b,c){var d=pN(a)?sk:sl,e=arguments.length<3;return d(a,rj(b,4),c,e,ro)}function sn(a,b){let c={};return d=>{let e=d.toString(),f=c[e];return void 0!==f||(f={atnStartState:a,decision:b,states:{}},c[e]=f),f}}bz(sj,"isEmpty"),bz(sk,"arrayReduce"),bz(sl,"baseReduce"),bz(sm,"reduce"),bz(sn,"createDFACache");var so=class{static{bz(this,"PredicateSet")}constructor(){this.predicates=[]}is(a){return a>=this.predicates.length||this.predicates[a]}set(a,b){this.predicates[a]=b}toString(){let a="",b=this.predicates.length;for(let c=0;c<b;c++)a+=!0===this.predicates[c]?"1":"0";return a}},sp=new so,sq=class extends n1{static{bz(this,"LLStarLookaheadStrategy")}constructor(a){var b;super(),this.logging=null!=(b=null==a?void 0:a.logging)?b:a=>console.log(a)}initialize(a){this.atn=ry(a.rules),this.dfas=ss(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(a){let{prodOccurrence:b,rule:c,hasPredicates:d,dynamicTokensEnabled:e}=a,f=this.dfas,g=this.logging,h=rt(c,"Alternation",b),i=this.atn.decisionMap[h].decision,j=rq(nb({maxLookahead:1,occurrence:b,prodType:"Alternation",rule:c}),a=>rq(a,a=>a[0]));if(sr(j,!1)&&!e){let a=sm(j,(a,b,c)=>(sh(b,b=>{b&&(a[b.tokenTypeIdx]=c,sh(b.categoryMatches,b=>{a[b]=c}))}),a),{});return d?function(b){var c;let d=a[this.LA(1).tokenTypeIdx];if(void 0!==b&&void 0!==d){let a=null==(c=b[d])?void 0:c.GATE;if(void 0!==a&&!1===a.call(this))return}return d}:function(){return a[this.LA(1).tokenTypeIdx]}}return d?function(a){let b=new so,c=void 0===a?0:a.length;for(let d=0;d<c;d++){let c=null==a?void 0:a[d].GATE;b.set(d,void 0===c||c.call(this))}let d=st.call(this,f,i,b,g);return"number"==typeof d?d:void 0}:function(){let a=st.call(this,f,i,sp,g);return"number"==typeof a?a:void 0}}buildLookaheadForOptional(a){let{prodOccurrence:b,rule:c,prodType:d,dynamicTokensEnabled:e}=a,f=this.dfas,g=this.logging,h=rt(c,d,b),i=this.atn.decisionMap[h].decision,j=rq(nb({maxLookahead:1,occurrence:b,prodType:d,rule:c}),a=>rq(a,a=>a[0]));if(sr(j)&&j[0][0]&&!e){let a=se(j[0]);if(1===a.length&&sj(a[0].categoryMatches)){let b=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===b}}{let b=sm(a,(a,b)=>(void 0!==b&&(a[b.tokenTypeIdx]=!0,sh(b.categoryMatches,b=>{a[b]=!0})),a),{});return function(){return!0===b[this.LA(1).tokenTypeIdx]}}}return function(){let a=st.call(this,f,i,sp,g);return"object"!=typeof a&&0===a}}};function sr(a,b=!0){let c=new Set;for(let d of a){let a=new Set;for(let e of d){if(void 0===e)if(!b)return!1;else break;for(let b of[e.tokenTypeIdx].concat(e.categoryMatches))if(c.has(b)){if(!a.has(b))return!1}else c.add(b),a.add(b)}}return!0}function ss(a){let b=a.decisionStates.length,c=Array(b);for(let d=0;d<b;d++)c[d]=sn(a.decisionStates[d],d);return c}function st(a,b,c,d){let e=a[b](c),f=e.start;if(void 0===f){let a=sH(e.atnStartState);f=sG(e,sE(a)),e.start=f}return su.apply(this,[e,f,c,d])}function su(a,b,c,d){let e=b,f=1,g=[],h=this.LA(f++);for(;;){let b=sA(e,h);if(void 0===b&&(b=sv.apply(this,[a,e,h,f,c,d])),b===rW)return sz(g,e,h);if(!0===b.isAcceptState)return b.prediction;e=b,g.push(h),h=this.LA(f++)}}function sv(a,b,c,d,e,f){let g=sB(b.configs,c,e);if(0===g.size)return sF(a,b,c,rW),rW;let h=sE(g),i=sD(g,e);if(void 0!==i)h.isAcceptState=!0,h.prediction=i,h.configs.uniqueAlt=i;else if(sM(g)){let b=r_(g.alts);h.isAcceptState=!0,h.prediction=b,h.configs.uniqueAlt=b,sw.apply(this,[a,d,g.alts,f])}return sF(a,b,c,h)}function sw(a,b,c,d){let e=[];for(let a=1;a<=b;a++)e.push(this.LA(a).tokenType);let f=a.atnStartState;d(sx({topLevelRule:f.rule,ambiguityIndices:c,production:f.production,prefixPath:e}))}function sx(a){let b=rq(a.prefixPath,a=>mI(a)).join(", "),c=0===a.production.idx?"":a.production.idx,d=`Ambiguous Alternatives Detected: <${a.ambiguityIndices.join(", ")}> in <${sy(a.production)}${c}> inside <${a.topLevelRule.name}> Rule,
|
|
76
|
+
<${b}> may appears as a prefix path in all these alternatives.
|
|
77
|
+
`;return d+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
78
|
+
For Further details.`}function sy(a){if(a instanceof lb)return"SUBRULE";if(a instanceof le)return"OPTION";if(a instanceof lj)return"OR";if(a instanceof lf)return"AT_LEAST_ONE";if(a instanceof lg)return"AT_LEAST_ONE_SEP";else if(a instanceof li)return"MANY_SEP";else if(a instanceof lh)return"MANY";else if(a instanceof lk)return"CONSUME";else throw Error("non exhaustive match")}function sz(a,b,c){return{actualToken:c,possibleTokenTypes:sd(r3(b.configs.elements,a=>a.state.transitions).filter(a=>a instanceof rv).map(a=>a.tokenType),a=>a.tokenTypeIdx),tokenPath:a}}function sA(a,b){return a.edges[b.tokenTypeIdx]}function sB(a,b,c){let d,e=new rX,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=sC(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 rX,e.elements))sI(a,d);if(f.length>0&&!sK(d))for(let a of f)d.add(a);return d}function sC(a,b){if(a instanceof rv&&mW(b,a.tokenType))return a.target}function sD(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 sE(a){return{configs:a,edges:{},isAcceptState:!1,prediction:-1}}function sF(a,b,c,d){return d=sG(a,d),b.edges[c.tokenTypeIdx]=d,d}function sG(a,b){if(b===rW)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 sH(a){let b=new rX,c=a.transitions.length;for(let d=0;d<c;d++)sI({state:a.transitions[d].target,alt:d,stack:[]},b);return b}function sI(a,b){let c=a.state;if(7===c.type){if(a.stack.length>0){let c=[...a.stack];sI({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=sJ(a,c.transitions[e]);void 0!==d&&sI(d,b)}}function sJ(a,b){if(b instanceof rw)return{state:b.target,alt:a.alt,stack:a.stack};if(b instanceof rx){let c=[...a.stack,b.followState];return{state:b.target,alt:a.alt,stack:c}}}function sK(a){for(let b of a.elements)if(7===b.state.type)return!0;return!1}function sL(a){for(let b of a.elements)if(7!==b.state.type)return!1;return!0}function sM(a){if(sL(a))return!0;let b=sN(a.elements);return sO(b)&&!sP(b)}function sN(a){let b=new Map;for(let c of a){let a=rY(c,!1),d=b.get(a);void 0===d&&(d={},b.set(a,d)),d[c.alt]=!0}return b}function sO(a){for(let b of Array.from(a.values()))if(Object.keys(b).length>1)return!0;return!1}function sP(a){for(let b of Array.from(a.values()))if(1===Object.keys(b).length)return!0;return!1}bz(sr,"isLL1Sequence"),bz(ss,"initATNSimulator"),bz(st,"adaptivePredict"),bz(su,"performLookahead"),bz(sv,"computeLookaheadTarget"),bz(sw,"reportLookaheadAmbiguity"),bz(sx,"buildAmbiguityError"),bz(sy,"getProductionDslName"),bz(sz,"buildAdaptivePredictError"),bz(sA,"getExistingTargetState"),bz(sB,"computeReachSet"),bz(sC,"getReachableTarget"),bz(sD,"getUniqueAlt"),bz(sE,"newDFAState"),bz(sF,"addDFAEdge"),bz(sG,"addDFAState"),bz(sH,"computeStartState"),bz(sI,"closure"),bz(sJ,"getEpsilonTarget"),bz(sK,"hasConfigInRuleStopState"),bz(sL,"allConfigsInRuleStopStates"),bz(sM,"hasConflictTerminatingPrediction"),bz(sN,"getConflictingAltSets"),bz(sO,"hasConflictingAltSet"),bz(sP,"hasStateAssociatedWithOneAlt"),bH();var sQ=class{static{bz(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(a){return this.rootNode=new sV(a),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(a){let b=new sT;return b.grammarSource=a,b.root=this.rootNode,this.current.content.push(b),this.nodeStack.push(b),b}buildLeafNode(a,b){let c=new sS(a.startOffset,a.image.length,eE(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 sS(c.startOffset,c.image.length,eE(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)}},sR=class{static{bz(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)}},sS=class extends sR{static{bz(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}},sT=class extends sR{static{bz(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new sU(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]}},sU=class a extends Array{static{bz(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}},sV=class extends sT{static{bz(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??""}},sW=Symbol("Datatype");function sX(a){return a.$type===sW}bz(sX,"isDataTypeNode");var sY=bz(a=>a.endsWith("")?a:a+"","withRuleSuffix"),sZ=class{static{bz(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 s4(b,{...a.parser.ParserConfig,skipValidations:c,errorMessageProvider:a.parser.ParserErrorMessageProvider},a.shared.profilers.LangiumProfiler.createTask("parsing",a.LanguageMetaData.languageId)):this.wrapper=new s3(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()}},s$=class extends sZ{static{bz(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(a){super(a),this.nodeBuilder=new sQ,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);dB(a)&&(c=a.name,this.registerPrecedenceMap(a));let e=this.wrapper.DEFINE_RULE(sY(a.name),this.startImplementation(d,c,b).bind(this));return this.allRules.set(a.name,e),dX(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(dB(a))return fL(a);if(!a.fragment)if(fG(a))return sW;else return fL(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,cH(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===sW?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=dJ(c)?d.image:this.converter.convert(d.image,b);this.assign(e.operator,e.feature,a,b,f)}else if(sX(g)){let a=d.image;dJ(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(sX(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)):sX(a)?this.converter.convert(a.value,a.$cstNode):(cS(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=cI(a,dc);this.assignmentMap.set(a,{assignment:b,crossRef:b&&dm(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}},s_=class{static{bz(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(a){return mX.buildMismatchTokenMessage(a)}buildNotAllInputParsedMessage(a){return mX.buildNotAllInputParsedMessage(a)}buildNoViableAltMessage(a){return mX.buildNoViableAltMessage(a)}buildEarlyExitMessage(a){return mX.buildEarlyExitMessage(a)}},s0=class extends s_{static{bz(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}\`.`}},s1=class extends sZ{static{bz(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(sY(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}},s2={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new s0},s3=class extends oB{static{bz(this,"ChevrotainWrapper")}constructor(a,b){const c=b&&"maxLookahead"in b;super(a,{...s2,lookaheadStrategy:c?new n1({maxLookahead:b.maxLookahead}):new sq({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,{})}},s4=class extends s3{static{bz(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 s5(a,b,c){return s6({parser:b,tokens:c,ruleNames:new Map},a),b}function s6(a,b){let c=fo(b,!1);for(let d of cE(b.rules).filter(dX).filter(a=>c.has(a))){let b={...a,consume:1,optional:1,subrule:1,many:1,or:1};a.parser.rule(d,s8(b,d.definition))}for(let d of cE(b.rules).filter(dB).filter(a=>c.has(a)))a.parser.rule(d,s7(a,d))}function s7(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(ef(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:bz(()=>a.parser.consume(c,b,i),"ALT")}));return b=>{c??(c=tk(a,d)),a.parser.subrule(0,c,!1,g,b),a.parser.many(0,{DEF:bz(()=>{a.parser.alternatives(0,k),a.parser.subrule(1,c,!1,j,b)},"DEF")})}}function s8(a,b,c=!1){let d;if(dJ(b))d=ti(a,b);else if(c4(b))d=s9(a,b);else if(dc(b))d=s8(a,b.terminal);else if(dm(b))d=th(a,b);else if(d3(b))d=ta(a,b);else if(c6(b))d=td(a,b);else if(er(b))d=te(a,b);else if(dx(b))d=tf(a,b);else if(dr(b)){let c=a.consume++;d=bz(()=>a.parser.consume(c,mU,b),"method")}else throw new eW(b.$cstNode,`Unexpected element type: ${b.$type}`);return tj(a,c?void 0:tg(b),d,b.cardinality)}function s9(a,b){let c=fL(b);return()=>a.parser.action(c,b)}function ta(a,b){let c=b.rule.ref;if(c$(c)){let d,e=a.subrule++,f=dX(c)&&c.fragment,g=b.arguments.length>0?tb(c,b.arguments):()=>({});return h=>{d??(d=tk(a,c)),a.parser.subrule(e,d,f,b,g(h))}}if(ef(c)){let d=a.consume++,e=tm(a,c.name);return()=>a.parser.consume(d,e,b)}if(c)eX(c);else throw new eW(b.$cstNode,`Undefined rule: ${b.rule.$refText}`)}function tb(a,b){if(b.some(a=>a.calledByName)){let a=b.map(a=>({parameterName:a.parameter?.ref?.name,predicate:tc(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=>tc(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 tc(a){if(dp(a)){let b=tc(a.left),c=tc(a.right);return a=>b(a)||c(a)}if(dk(a)){let b=tc(a.left),c=tc(a.right);return a=>b(a)&&c(a)}if(dP(a)){let b=tc(a.value);return a=>!b(a)}if(dV(a)){let b=a.parameter.ref.name;return a=>void 0!==a&&!0===a[b]}if(de(a)){let b=!!a.true;return()=>b}eX(a)}function td(a,b){if(1===b.elements.length)return s8(a,b.elements[0]);{let c=[];for(let d of b.elements){let b={ALT:s8(a,d,!0)},e=tg(d);e&&(b.GATE=tc(e)),c.push(b)}let d=a.or++;return b=>a.parser.alternatives(d,c.map(a=>{let c={ALT:bz(()=>a.ALT(b),"ALT")},d=a.GATE;return d&&(c.GATE=()=>d(b)),c}))}}function te(a,b){if(1===b.elements.length)return s8(a,b.elements[0]);let c=[];for(let d of b.elements){let b={ALT:s8(a,d,!0)},e=tg(d);e&&(b.GATE=tc(e)),c.push(b)}let d=a.or++,e=bz((a,b)=>{let c=b.getRuleStack().join("-");return`uGroup_${a}_${c}`},"idFunc"),f=bz(b=>a.parser.alternatives(d,c.map((c,f)=>{let g={ALT:bz(()=>!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=tj(a,tg(b),f,"*");return b=>{g(b),a.parser.isRecording()||a.parser.unorderedGroups.delete(e(d,a.parser))}}function tf(a,b){let c=b.elements.map(b=>s8(a,b));return a=>c.forEach(b=>b(a))}function tg(a){if(dx(a))return a.guardCondition}function th(a,b,c=b.terminal){if(c)if(d3(c)&&dX(c.rule.ref)){let d,e=c.rule.ref,f=a.subrule++;return c=>{d??(d=tk(a,e)),a.parser.subrule(f,d,!1,b,c)}}else if(d3(c)&&ef(c.rule.ref)){let d=a.consume++,e=tm(a,c.rule.ref.name);return()=>a.parser.consume(d,e,b)}else if(dJ(c)){let d=a.consume++,e=tm(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=fA(b.type.ref),d=c?.terminal;if(!d)throw Error("Could not find name assignment for type: "+fL(b.type.ref));return th(a,b,d)}}function ti(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 tj(a,b,c,d){let e=b&&tc(b);if(!d)if(!e)return c;else{let b=a.or++;return d=>a.parser.alternatives(b,[{ALT:bz(()=>c(d),"ALT"),GATE:bz(()=>e(d),"GATE")},{ALT:oz(),GATE:bz(()=>!e(d),"GATE")}])}if("*"===d){let b=a.many++;return d=>a.parser.many(b,{DEF:bz(()=>c(d),"DEF"),GATE:e?()=>e(d):void 0})}if("+"===d){let b=a.many++;if(!e)return d=>a.parser.atLeastOne(b,{DEF:bz(()=>c(d),"DEF")});{let d=a.or++;return f=>a.parser.alternatives(d,[{ALT:bz(()=>a.parser.atLeastOne(b,{DEF:bz(()=>c(f),"DEF")}),"ALT"),GATE:bz(()=>e(f),"GATE")},{ALT:oz(),GATE:bz(()=>!e(f),"GATE")}])}}if("?"===d){let b=a.optional++;return d=>a.parser.optional(b,{DEF:bz(()=>c(d),"DEF"),GATE:e?()=>e(d):void 0})}eX(d)}function tk(a,b){let c=tl(a,b),d=a.parser.getRule(c);if(!d)throw Error(`Rule "${c}" not found."`);return d}function tl(a,b){if(c$(b))return b.name;{if(a.ruleNames.has(b))return a.ruleNames.get(b);let c=b,d=c.$container,e=b.$type;for(;!dX(d);)(dx(d)||c6(d)||er(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 tm(a,b){let c=a.tokens[b];if(!c)throw Error(`Token "${b}" not found."`);return c}function tn(a){let b=a.Grammar,c=a.parser.Lexer,d=new s1(a);return s5(b,d,c.definition),d.finalize(),d}function to(a){let b=tp(a);return b.finalize(),b}function tp(a){let b=a.Grammar,c=a.parser.Lexer;return s5(b,new s$(a),c.definition)}bz(s5,"createParser"),bz(s6,"buildRules"),bz(s7,"buildInfixRule"),bz(s8,"buildElement"),bz(s9,"buildAction"),bz(ta,"buildRuleCall"),bz(tb,"buildRuleCallPredicate"),bz(tc,"buildPredicate"),bz(td,"buildAlternatives"),bz(te,"buildUnorderedGroup"),bz(tf,"buildGroup"),bz(tg,"getGuardCondition"),bz(th,"buildCrossReference"),bz(ti,"buildKeyword"),bz(tj,"wrap"),bz(tk,"getRule"),bz(tl,"getRuleName"),bz(tm,"getToken"),bz(tn,"createCompletionParser"),bz(to,"createLangiumParser"),bz(tp,"prepareLangiumParser");var tq=class{static{bz(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(a,b){let c=cE(fo(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(ef).filter(a=>!a.fragment).map(a=>this.buildTerminalToken(a)).toArray()}buildTerminalToken(a){let b=fP(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=fi(b)?mH.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(c$).flatMap(a=>cO(a).filter(dJ)).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(fj(a.value),"i"):a.value}findLongerAlt(a,b){return b.reduce((b,c)=>{let d=c?.PATTERN;return d?.source&&fk("^"+d.source+"$",a.value)&&b.push(c),b},[])}},tr=class{static{bz(this,"DefaultValueConverter")}convert(a,b){let c=b.grammarSource;if(dm(c)&&(c=fr(c)),d3(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(fO(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()}bz(b,"convertString"),a.convertString=b,bz(c,"convertEscapeCharacter"),bz(d,"convertID"),a.convertID=d,bz(e,"convertInt"),a.convertInt=e,bz(f,"convertBigint"),a.convertBigint=f,bz(g,"convertDate"),a.convertDate=g,bz(h,"convertNumber"),a.convertNumber=h,bz(i,"convertBoolean"),a.convertBoolean=i}(a_||(a_={}));var ts={};function tt(){return new Promise(a=>{"u"<typeof setImmediate?setTimeout(a,0):setImmediate(a)})}bD(ts,bE(bL(),1)),bz(tt,"delayNextTick");var tu=0,tv=10;function tw(){return tu=performance.now(),new ts.CancellationTokenSource}function tx(a){tv=a}bz(tw,"startCancelableOperation"),bz(tx,"setInterruptionPeriod");var ty=Symbol("OperationCancelled");function tz(a){return a===ty}async function tA(a){if(a===ts.CancellationToken.None)return;let b=performance.now();if(b-tu>=tv&&(tu=b,await tt(),tu=performance.now()),a.isCancellationRequested)throw ty}bz(tz,"isOperationCancelled"),bz(tA,"interruptAndCheck");var tB=class{static{bz(this,"Deferred")}constructor(){this.promise=new Promise((a,b)=>{this.resolve=b=>(a(b),this),this.reject=a=>(b(a),this)})}},tC=class a{static{bz(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=tG(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=tE(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=tE(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&&tF(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 tD(a,b){if(a.length<=1)return a;let c=a.length/2|0,d=a.slice(0,c),e=a.slice(c);tD(d,b),tD(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 tE(a,b,c=0){let d=b?[c]:[];for(let b=0;b<a.length;b++){let e=a.charCodeAt(b);tF(e)&&(13===e&&b+1<a.length&&10===a.charCodeAt(b+1)&&b++,d.push(c+b+1))}return d}function tF(a){return 13===a||10===a}function tG(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 tH(a){let b=tG(a.range);return b!==a.range?{newText:a.newText,range:b}:a}!function(a){function b(a,b,c,d){return new tC(a,b,c,d)}function c(a,b,c){if(a instanceof tC)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=tD(b.map(tH),(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("")}bz(b,"create"),a.create=b,bz(c,"update"),a.update=c,bz(d,"applyEdits"),a.applyEdits=d}(a0||(a0={})),bz(tD,"mergeSort"),bz(tE,"computeLineOffsets"),bz(tF,"isEOL"),bz(tG,"getWellformedRange"),bz(tH,"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}bz(b,"e"),bz(c,"r");var d={resolve:bz(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:bz(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:bz(function(a){return b(a),a.length>0&&47===a.charCodeAt(0)},"isAbsolute"),join:bz(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:bz(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:bz(function(a){return a},"_makeLong"),dirname:bz(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:bz(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:bz(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:bz(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:bz(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}bz(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:bz(()=>m,"URI"),Utils:bz(()=>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 ("//")')}}bz(k,"a");let l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class m{static{bz(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{bz(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}}bz(q,"m"),bz(r,"y"),bz(s,"v"),bz(t,"b"),bz(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}bz(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:tI,Utils:tJ}=a1;!function(a){a.basename=tJ.basename,a.dirname=tJ.dirname,a.extname=tJ.extname,a.joinPath=tJ.joinPath,a.resolvePath=tJ.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?tI.parse(a).path:a.path,e="string"==typeof c?tI.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 tI.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)}bz(c,"equals"),a.equals=c,bz(d,"relative"),a.relative=d,bz(e,"normalize"),a.normalize=e,bz(f,"contains"),a.contains=f}(a2||(a2={}));var tK=class{static{bz(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(tI.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(tI.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 tL=class{static{bz(this,"DefaultLangiumDocumentFactory")}constructor(a){this.serviceRegistry=a.ServiceRegistry,this.textDocuments=a.workspace.TextDocuments,this.fileSystemProvider=a.workspace.FileSystemProvider}async fromUri(a,b=ts.CancellationToken.None){let c=await this.fileSystemProvider.readFile(a);return this.createAsync(a,c,b)}fromTextDocument(a,b,c){return(b=b??tI.parse(a.uri),ts.CancellationToken.is(c))?this.createAsync(b,a,c):this.create(b,a,c)}fromString(a,b,c){return ts.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??""))}},tM=class{static{bz(this,"DefaultLangiumDocuments")}constructor(a){this.documentTrie=new tK,this.services=a,this.langiumDocumentFactory=a.workspace.LangiumDocumentFactory,this.documentBuilder=()=>a.workspace.DocumentBuilder}get all(){return cE(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}},tN=Symbol("RefResolving"),tO=class{static{bz(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=ts.CancellationToken.None){if(this.profiler?.isActive("linking")){let c=this.profiler.createTask("linking",this.languageId);c.start();try{for(let d of cP(a.parseResult.value))await tA(b),cR(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 cP(a.parseResult.value))await tA(b),cR(c).forEach(b=>this.doLink(b,a))}doLink(a,b){let c=a.reference;if("_ref"in c&&void 0===c._ref){c._ref=tN;try{let b=this.getCandidate(a);cu(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=tN;try{let b=this.getCandidates(a),d=[];if(cu(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(cq(this._ref))return this._ref;if(ct(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=tN;let c=cL(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===tN&&e.throwCyclicReferenceError(a,b,d);return cq(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return cu(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=tN;let c=cL(a).$document,d=e.getCandidates({reference:f,container:a,property:b}),g=[];if(cu(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===tN&&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(cu(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=cL(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 tP(a){return"string"==typeof a.name}bz(tP,"isNamed");var tQ=class{static{bz(this,"DefaultNameProvider")}getName(a){if(tP(a))return a.name}getNameNode(a){return fu(a.$cstNode,"name")}},tR=class{static{bz(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=cP(a.Grammar).some(a=>dm(a)&&a.isMulti)}findDeclarations(a){if(a){let b=fz(a),c=a.astNode;if(b&&c){let d=c[b.feature];if(cr(d)||cs(d))return cM(d);if(Array.isArray(d)){for(let b of d)if((cr(b)||cs(b))&&b.$refNode&&b.$refNode.offset<=a.offset&&b.$refNode.end>=a.end)return cM(b)}}if(c){let b=this.nameProvider.getNameNode(c);if(b&&(b===a||eD(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 cR(c))if(cs(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),cE(c)}getSelfReferences(a){let b=this.getSelfNodes(a),c=[];for(let a of b){let b=this.nameProvider.getNameNode(a);if(b){let d=cK(a),e=this.nodeLocator.getAstNodePath(a);c.push({sourceUri:d.uri,sourcePath:e,targetUri:d.uri,targetPath:e,segment:eF(b),local:!0})}}return c}},tS=class{static{bz(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(cE(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?cE(b):cC}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 cE(this.map.entries()).flatMap(([a,b])=>b.map(b=>[a,b]))}keys(){return cE(this.map.keys())}values(){return cE(this.map.values()).flat()}entriesGroupedByKey(){return cE(this.map.entries())}},tT=class{static{bz(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)}},tU=class{static{bz(this,"DefaultScopeComputation")}constructor(a){this.nameProvider=a.references.NameProvider,this.descriptions=a.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(a,b=ts.CancellationToken.None){return this.collectExportedSymbolsForNode(a.parseResult.value,a,void 0,b)}async collectExportedSymbolsForNode(a,b,c=cN,d=ts.CancellationToken.None){let e=[];for(let f of(this.addExportedSymbol(a,e,b),c(a)))await tA(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=ts.CancellationToken.None){let c=a.parseResult.value,d=new tS;for(let e of cO(c))await tA(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))}}},tV=class{static{bz(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}},tW=class{static{bz(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?cE(d).concat(this.outerScope.getElements(a)):cE(d)}getAllElements(){let a=cE(this.elements.values());return this.outerScope&&(a=a.concat(this.outerScope.getAllElements())),a}},tX=class{static{bz(this,"MultiMapScope")}constructor(a,b,c){for(const b of(this.elements=new tS,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?cE(c).concat(this.outerScope.getElements(a)):cE(c)}getAllElements(){let a=cE(this.elements.values());return this.outerScope&&(a=a.concat(this.outerScope.getAllElements())),a}},tY={getElement(){},getElements:()=>cC,getAllElements:()=>cC},tZ=class{static{bz(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")}},t$=class extends tZ{static{bz(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()}},t_=class extends tZ{static{bz(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}},t0=class extends t_{static{bz(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)}))}},t1=class extends t${static{bz(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()}))}},t2=class{static{bz(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 t1(a.shared)}getScope(a){let b=[],c=this.reflection.getReferenceType(a),d=cK(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 tV(cE(a),b,c)}createScopeForNodes(a,b,c){return new tV(cE(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 tX(this.indexManager.allElements(a)))}};function t3(a){return"string"==typeof a.$comment}function t4(a){return"object"==typeof a&&!!a&&("$ref"in a||"$error"in a)}bz(t3,"isAstNodeWithComment"),bz(t4,"isIntermediateReference");var t5=class{static{bz(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=bz((a,b)=>this.replacer(a,b,c),"defaultReplacer"),f=d?(a,b)=>d(a,b,e):e;try{return this.currentDocument=cK(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(cr(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=cK(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(cs(b)){let a=c?b.$refText:void 0,d=[];for(let a of b.items){let b=a.ref,c=cK(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(!cq(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=bz(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=ft(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];t4(g)?e[f]=this.reviveReference(a,d,b,g,c):cq(g)&&this.linkNode(g,b,c,a,d,f)}else t4(e)?a[d]=this.reviveReference(a,d,b,e,c):cq(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(cq(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);cq(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):tI.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)):tI.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)}}},t6=class{static{bz(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 t7(a){return{code:a}}bz(t7,"diagnosticData"),(n=a4||(a4={})).defaults=["fast","slow","built-in"],n.all=n.defaults;var t8=class{static{bz(this,"ValidationRegistry")}constructor(a){this.entries=new tS,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 eX(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(tz(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=cE(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}},t9=Object.freeze({validateNode:!0,validateChildren:!0}),ua=class{static{bz(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=ts.CancellationToken.None){let d=a.parseResult,e=[];if((await tA(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(tz(a))throw a;console.error("An error occurred during validation:",a)}return await tA(c),e}processLexingErrors(a,b,c){for(let c of[...a.lexerErrors,...a.lexerReport?.diagnostics??[]]){let a=c.severity??"error",d={severity:uc(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:ud(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=eE(c.token);if(a){let d={severity:uc("error"),range:a,message:c.message,data:t7(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=ts.CancellationToken.None){let d=[],e=bz((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=ts.CancellationToken.None){for(let e of this.validationRegistry.checksBefore)await tA(d),await e(a,c,b.categories??[],d)}async validateAstNodes(a,b,c,d=ts.CancellationToken.None){if(this.profiler?.isActive("validating")){let e=this.profiler.createTask("validating",this.languageId);e.start();try{let f=cP(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=cP(a).iterator();for(let a of e){await tA(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 t9}async validateAstAfter(a,b,c,d=ts.CancellationToken.None){for(let e of this.validationRegistry.checksAfter)await tA(d),await e(a,c,b.categories??[],d)}toDiagnostic(a,b,c){return{message:b,range:ub(c),severity:uc(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 ub(a){let b;return a.range?a.range:("string"==typeof a.property?b=fu(a.node.$cstNode,a.property,a.index):"string"==typeof a.keyword&&(b=fx(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 uc(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 ud(a){switch(a){case"error":return t7(a5.LexingError);case"warning":return t7(a5.LexingWarning);case"info":return t7(a5.LexingInfo);case"hint":return t7(a5.LexingHint);default:throw Error("Invalid diagnostic severity: "+a)}}bz(ub,"getDiagnosticRange"),bz(uc,"toDiagnosticSeverity"),bz(ud,"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 ue=class{static{bz(this,"DefaultAstNodeDescriptionProvider")}constructor(a){this.astNodeLocator=a.workspace.AstNodeLocator,this.nameProvider=a.references.NameProvider}createDescription(a,b,c){let d,e=c??cK(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=bz(()=>d??(d=eF(this.nameProvider.getNameNode(a)??a.$cstNode)),"nameSegmentGetter");return{node:a,name:b,get nameSegment(){return g()},selectionSegment:eF(a.$cstNode),type:a.$type,documentUri:e.uri,path:f}}},uf=class{static{bz(this,"DefaultReferenceDescriptionProvider")}constructor(a){this.nodeLocator=a.workspace.AstNodeLocator}async createDescriptions(a,b=ts.CancellationToken.None){let c=[];for(let d of cP(a.parseResult.value))await tA(b),cR(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=[];cr(b)&&b.$nodeDescription?c=[b.$nodeDescription]:cs(b)&&(c=b.items.map(a=>a.$nodeDescription).filter(a=>void 0!==a));let d=cK(a.container).uri,e=this.nodeLocator.getAstNodePath(a.container),f=[],g=eF(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}},ug=class{static{bz(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)}},uh={};bD(uh,bE(bK(),1));var ui=class{static{bz(this,"DefaultConfigurationProvider")}constructor(a){this._ready=new tB,this.onConfigurationSectionUpdateEmitter=new uh.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}},uj=bE(cn(),1),uk=a6||(a6={});function ul(a){return{dispose:bz(async()=>await a(),"dispose")}}bz(ul,"create"),uk.create=ul;var um=class{static{bz(this,"DefaultDocumentBuilder")}constructor(a){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new tS,this.documentPhaseListeners=new tS,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=ts.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=ts.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=cE(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 tA(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 cE(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 tA(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=ts.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(ty):this.currentState>=a&&a>d.state?Promise.reject(new uj.ResponseError(uj.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(ty)})}):Promise.reject(new uj.ResponseError(uj.LSPErrorCodes.ServerCancelled,`No document found for URI: ${b.toString()}`))}awaitBuilderState(a,b){return this.currentState>=a?Promise.resolve():b.isCancellationRequested?Promise.reject(ty):new Promise((c,d)=>{let e=this.onBuildPhase(a,()=>{e.dispose(),f.dispose(),c()}),f=b.onCancellationRequested(()=>{e.dispose(),f.dispose(),d(ty)})})}async notifyDocumentPhase(a,b,c){for(let d of this.documentPhaseListeners.get(b).slice())try{await tA(c),await d(a,c)}catch(a){if(!tz(a))throw a}}async notifyBuildPhase(a,b,c){if(0!==a.length)for(let d of this.buildPhaseListeners.get(b).slice())await tA(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=cE(g.result.validationChecks).concat(e.categories).distinct().toArray():g.result.validationChecks=[...e.categories])}getBuildOptions(a){return this.buildState.get(a.uri.toString())?.options??{}}},un=class{static{bz(this,"DefaultIndexManager")}constructor(a){this.symbolIndex=new Map,this.symbolByTypeIndex=new t_,this.referenceIndex=new Map,this.documents=a.workspace.LangiumDocuments,this.serviceRegistry=a.ServiceRegistry,this.astReflection=a.AstReflection}findAllReferences(a,b){let c=cK(a).uri,d=[];return this.referenceIndex.forEach(a=>{a.forEach(a=>{a2.equals(a.targetUri,c)&&a.targetPath===b&&d.push(a)})}),cE(d)}allElements(a,b){let c=cE(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=ts.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=ts.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()))}},uo=class{static{bz(this,"DefaultWorkspaceManager")}constructor(a){this.initialBuildOptions={},this._ready=new tB,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=ts.CancellationToken.None){let c=await this.performStartup(a);await tA(b),await this.documentBuilder.build(c,this.initialBuildOptions,b)}async performStartup(a){let b=[],c=bz(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=cE(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 tI.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))}},up=class{static{bz(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(a,b,c,d,e){return mF.buildUnexpectedCharactersMessage(a,b,c,d,e)}buildUnableToPopLexerModeMessage(a){return mF.buildUnableToPopLexerModeMessage(a)}},uq={mode:"full"},ur=class{static{bz(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=uu(b)?Object.values(b):b,d="production"===a.LanguageMetaData.mode;this.chevrotainLexer=new mH(c,{positionTracking:"full",skipValidations:d,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(a,b=uq){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(uu(a))return a;let b=ut(a)?Object.values(a.modes).flat():a,c={};return b.forEach(a=>c[a.name]=a),c}};function us(a){return Array.isArray(a)&&(0===a.length||"name"in a[0])}function ut(a){return a&&"modes"in a&&"defaultMode"in a}function uu(a){return!us(a)&&!ut(a)}function uv(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)),uG({index:0,tokens:uA({lines:ux(a),position:e,options:uN(d)}),position:e})}function uw(a,b){let c=uN(b),d=ux(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 ux(a){return("string"==typeof a?a:a.text).split(fc)}bz(us,"isTokenTypeArray"),bz(ut,"isIMultiModeLexerDefinition"),bz(uu,"isTokenTypeDictionary"),bH(),bz(uv,"parseJSDoc"),bz(uw,"isJSDoc"),bz(ux,"getLines");var uy=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,uz=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function uA(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(uE(h=h.substring(0,uF(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{uy.lastIndex=i;let a=uy.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=uE(h,i)}if(i<h.length){let a=h.substring(i),e=Array.from(a.matchAll(uz));b.push(...uB(e,a,c,d+i))}}c++,d=0}return b.length>0&&"break"===b[b.length-1].type?b.slice(0,-1):b}function uB(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}bz(uA,"tokenize"),bz(uB,"buildInlineTokens");var uC=/\S/,uD=/\s*$/;function uE(a,b){let c=a.substring(b).match(uC);return c?b+c.index:a.length}function uF(a){let b=a.match(uD);if(b&&"number"==typeof b.index)return b.index}function uG(a){let b=u.create(a.position.line,a.position.character);if(0===a.tokens.length)return new uP([],v.create(b,b));let c=[];for(;a.index<a.tokens.length;){let b=uH(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 uP(c,v.create(d,e))}function uH(a,b){let c=a.tokens[a.index];return"tag"===c.type?uL(a,!1):"text"===c.type||"inline-tag"===c.type?uJ(a):(uI(c,b),void a.index++)}function uI(a,b){if(b){let c=new uU("",a.range);"inlines"in b?b.inlines.push(c):b.content.inlines.push(c)}}function uJ(a){let b=a.tokens[a.index],c=b,d=b,e=[];for(;b&&"break"!==b.type&&"tag"!==b.type;)e.push(uK(a)),d=b,b=a.tokens[a.index];return new uT(e,v.create(c.range.start,d.range.end))}function uK(a){return"inline-tag"===a.tokens[a.index].type?uL(a,!0):uM(a)}function uL(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=uM(a);return new uQ(d,new uT([e],e.range),b,v.create(c.range.start,e.range.end))}else{let e=uJ(a);return new uQ(d,e,b,v.create(c.range.start,e.range.end))}{let a=c.range;return new uQ(d,new uT([],a),b,a)}}function uM(a){let b=a.tokens[a.index++];return new uU(b.content,b.range)}function uN(a){if(!a)return uN({start:"/**",end:"*/",line:"*"});let{start:b,end:c,line:d}=a;return{start:uO(b,!0),end:uO(c,!1),line:uO(d,!0)}}function uO(a,b){if("string"!=typeof a&&"object"!=typeof a)return a;{let c="string"==typeof a?fj(a):a.source;return b?RegExp(`^\\s*${c}`):RegExp(`\\s*${c}\\s*$`)}}bz(uE,"skipWhitespace"),bz(uF,"lastCharacter"),bz(uG,"parseJSDocComment"),bz(uH,"parseJSDocElement"),bz(uI,"appendEmptyLine"),bz(uJ,"parseJSDocText"),bz(uK,"parseJSDocInline"),bz(uL,"parseJSDocTag"),bz(uM,"parseJSDocLine"),bz(uN,"normalizeOptions"),bz(uO,"normalizeOption");var uP=class{static{bz(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+=uV(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+=uV(b)+d}return b.trim()}},uQ=class{static{bz(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}
|
|
79
|
+
${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=uR(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}
|
|
80
|
+
${b}`),this.inline)?`{${d}}`:d}};function uR(a,b,c){if("linkplain"===a||"linkcode"===a||"link"===a){let d=b.indexOf(" "),e=b;if(d>0){let a=uE(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)??uS(b,e)}}function uS(a,b){try{return tI.parse(a,!0),`[${b}](${a})`}catch{return a}}bz(uR,"renderInlineTag"),bz(uS,"renderLinkDefault");var uT=class{static{bz(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}},uU=class{static{bz(this,"JSDocLineImpl")}constructor(a,b){this.text=a,this.range=b}toString(){return this.text}toMarkdown(){return this.text}};function uV(a){return a.endsWith("\n")?"\n":"\n\n"}bz(uV,"fillNewlines");var uW=class{static{bz(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&&uw(b))return uv(b).toMarkdown({renderLink:bz((b,c)=>this.documentationLinkRenderer(a,b,c),"renderLink"),renderTag:bz(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=cK(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)}},uX=class{static{bz(this,"DefaultCommentProvider")}constructor(a){this.grammarConfig=()=>a.parser.GrammarConfig}getComment(a){return t3(a)?a.$comment:eK(a.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},uY=class{static{bz(this,"DefaultAsyncParser")}constructor(a){this.syncParser=a.parser.LangiumParser}parse(a,b){return Promise.resolve(this.syncParser.parse(a))}},uZ=class{static{bz(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 tB,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 tB;return a.onCancellationRequested(()=>{let a=this.queue.indexOf(b);a>=0&&this.queue.splice(a,1),b.reject(ty)}),this.queue.push(b),b.promise}},u$=class{static{bz(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(a,b,c,d){this.onReadyEmitter=new uh.Emitter,this.deferred=new tB,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(ty),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 tB,this.sendMessage(a),this.deferred.promise}},u_=class{static{bz(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new ts.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(a){this.cancelWrite();let b=tw();return this.previousTokenSource=b,this.enqueue(this.writeQueue,a,b.token)}read(a){return this.enqueue(this.readQueue,a)}enqueue(a,b,c=ts.CancellationToken.None){let d=new tB;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){tz(a)?b.resolve(void 0):b.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},u0=class{static{bz(this,"DefaultHydrator")}constructor(a){this.grammarElementIdMap=new tT,this.tokenTypeIdMap=new tT,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 cP(a))b.set(c,{});if(a.$cstNode)for(let b of eB(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))cq(f)?a.push(this.dehydrateAstNode(f,b)):cr(f)?a.push(this.dehydrateReference(f,b)):a.push(f)}else cq(e)?c[d]=this.dehydrateAstNode(e,b):cr(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 cy(a)?c.fullText=a.fullText:c.grammarSource=this.getGrammarElementId(a.grammarSource),c.hidden=a.hidden,c.astNode=b.astNodes.get(a.astNode),cw(a)?c.content=a.content.map(a=>this.dehydrateCstNode(a,b)):cx(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 cP(a))c.set(b,{});if(a.$cstNode)for(let c of eB(a.$cstNode)){let a;"fullText"in c?b=a=new sV(c.fullText):"content"in c?a=new sT:"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))cq(f)?a.push(this.setParent(this.hydrateAstNode(f,b),c)):cr(f)?a.push(this.hydrateReference(f,c,d,b)):a.push(f)}else cq(e)?c[d]=this.setParent(this.hydrateAstNode(e,b),c):cr(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),cw(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 sS(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 cP(this.grammar))cY(b)&&this.grammarElementIdMap.set(b,a++)}};function u1(a){return{documentation:{CommentProvider:bz(a=>new uX(a),"CommentProvider"),DocumentationProvider:bz(a=>new uW(a),"DocumentationProvider")},parser:{AsyncParser:bz(a=>new uY(a),"AsyncParser"),GrammarConfig:bz(a=>fZ(a),"GrammarConfig"),LangiumParser:bz(a=>to(a),"LangiumParser"),CompletionParser:bz(a=>tn(a),"CompletionParser"),ValueConverter:bz(()=>new tr,"ValueConverter"),TokenBuilder:bz(()=>new tq,"TokenBuilder"),Lexer:bz(a=>new ur(a),"Lexer"),ParserErrorMessageProvider:bz(()=>new s0,"ParserErrorMessageProvider"),LexerErrorMessageProvider:bz(()=>new up,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:bz(()=>new ug,"AstNodeLocator"),AstNodeDescriptionProvider:bz(a=>new ue(a),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:bz(a=>new uf(a),"ReferenceDescriptionProvider")},references:{Linker:bz(a=>new tO(a),"Linker"),NameProvider:bz(()=>new tQ,"NameProvider"),ScopeProvider:bz(a=>new t2(a),"ScopeProvider"),ScopeComputation:bz(a=>new tU(a),"ScopeComputation"),References:bz(a=>new tR(a),"References")},serializer:{Hydrator:bz(a=>new u0(a),"Hydrator"),JsonSerializer:bz(a=>new t5(a),"JsonSerializer")},validation:{DocumentValidator:bz(a=>new ua(a),"DocumentValidator"),ValidationRegistry:bz(a=>new t8(a),"ValidationRegistry")},shared:bz(()=>a.shared,"shared")}}function u2(a){return{ServiceRegistry:bz(a=>new t6(a),"ServiceRegistry"),workspace:{LangiumDocuments:bz(a=>new tM(a),"LangiumDocuments"),LangiumDocumentFactory:bz(a=>new tL(a),"LangiumDocumentFactory"),DocumentBuilder:bz(a=>new um(a),"DocumentBuilder"),IndexManager:bz(a=>new un(a),"IndexManager"),WorkspaceManager:bz(a=>new uo(a),"WorkspaceManager"),FileSystemProvider:bz(b=>a.fileSystemProvider(b),"FileSystemProvider"),WorkspaceLock:bz(()=>new u_,"WorkspaceLock"),ConfigurationProvider:bz(a=>new ui(a),"ConfigurationProvider")},profilers:{}}}function u3(a,b,c,d,e,f,g,h,i){return u6([a,b,c,d,e,f,g,h,i].reduce(u9,{}))}bz(u1,"createDefaultCoreModule"),bz(u2,"createDefaultSharedCoreModule"),(a7||(a7={})).merge=(a,b)=>u9(u9({},a),b),bz(u3,"inject");var u4=Symbol("isProxy");function u5(a){if(a&&a[u4])for(let b of Object.values(a))u5(b);return a}function u6(a,b){let c=new Proxy({},{deleteProperty:bz(()=>!1,"deleteProperty"),set:bz(()=>{throw Error("Cannot set property on injected service container")},"set"),get:bz((d,e)=>e===u4||u8(d,e,a,b||c),"get"),getOwnPropertyDescriptor:bz((d,e)=>(u8(d,e,a,b||c),Object.getOwnPropertyDescriptor(d,e)),"getOwnPropertyDescriptor"),has:bz((b,c)=>c in a,"has"),ownKeys:bz(()=>[...Object.getOwnPropertyNames(a)],"ownKeys")});return c}bz(u5,"eagerLoad"),bz(u6,"_inject");var u7=Symbol();function u8(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]===u7)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]=u7;try{a[b]="function"==typeof e?e(d):u6(e,d)}catch(c){throw a[b]=c instanceof Error?c:void 0,c}return a[b]}}function u9(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]=u9(b,d):a[c]=u9({},d)}else a[c]=d}return a}bz(u8,"_resolve"),bz(u9,"_merge");var va={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(p=a8||(a8={})).REGULAR="indentation-sensitive",p.IGNORE_INDENTATION="ignore-indentation";var vb=class extends tq{static{bz(this,"IndentationAwareTokenBuilder")}constructor(a=va){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...va,...a},this.indentTokenType=mS({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=mS({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(!us(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 mV(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?mS({name:e,pattern:this.whitespaceRegExp,group:mH.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}},vc=class extends ur{static{bz(this,"IndentationAwareLexer")}constructor(a){if(super(a),a.parser.TokenBuilder instanceof vb)this.indentationTokenBuilder=a.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(a,b=uq){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}},vd={};bB(vd,{AstUtils:()=>cG,BiMap:()=>tT,Cancellation:()=>ts,ContextCache:()=>t_,CstUtils:()=>cp,DONE_RESULT:()=>cD,Deferred:()=>tB,Disposable:()=>a6,DisposableCache:()=>tZ,DocumentCache:()=>t0,EMPTY_STREAM:()=>cC,ErrorWithLocation:()=>eW,GrammarUtils:()=>eV,MultiMap:()=>tS,OperationCancelled:()=>ty,Reduction:()=>aV,RegExpUtils:()=>eZ,SimpleCache:()=>t$,StreamImpl:()=>cz,TreeStreamImpl:()=>cF,URI:()=>tI,UriTrie:()=>tK,UriUtils:()=>a2,WorkspaceCache:()=>t1,assertCondition:()=>eY,assertUnreachable:()=>eX,delayNextTick:()=>tt,interruptAndCheck:()=>tA,isOperationCancelled:()=>tz,loadGrammarFromJson:()=>vj,setInterruptionPeriod:()=>tx,startCancelableOperation:()=>tw,stream:()=>cE}),bD(vd,uh);var ve=class{static{bz(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[]}},vf={fileSystemProvider:bz(()=>new ve,"fileSystemProvider")},vg={Grammar:bz(()=>void 0,"Grammar"),LanguageMetaData:bz(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},vh={AstReflection:bz(()=>new ey,"AstReflection")};function vi(){let a=u3(u2(vf),vh),b=u3(u1({shared:a}),vg);return a.ServiceRegistry.register(b),b}function vj(a){let b=vi(),c=b.serializer.JsonSerializer.deserialize(a);return b.shared.workspace.LangiumDocumentFactory.fromModel(c,tI.parse(`memory:/${c.name??"grammar"}.langium`)),c}bz(vi,"createMinimalGrammarServices"),bz(vj,"loadGrammarFromJson"),bD(co,vd);var vk=class{static{bz(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 tS}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 vl(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),bz(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])}},vl=class{static{bz(this,"ProfilingTask")}constructor(a,b){this.stack=[],this.entries=new tS,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={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]*/},(bb||(bb={})).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])?/},(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]*|)/,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]*/},(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]*|)/,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]*/},(be||(be={})).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]*/},(bf||(bf={})).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]*/},(bg||(bg={})).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:/"[^"]*"|'[^']*'/},(bh||(bh={})).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]*|)/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,STRING2:/"[^"]*"|'[^']*'/},(bi||(bi={})).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,bh.Terminals,bg.Terminals,bi.Terminals;var vm="Architecture";bz(function(a){return vG.isInstance(a,vm)},"isArchitecture");var vn="Axis",vo="Branch";bz(function(a){return vG.isInstance(a,vo)},"isBranch");var vp="Commit";bz(function(a){return vG.isInstance(a,vp)},"isCommit");var vq="EmDataEntity",vr="EmFrame",vs="EmModelEntity";bz(function(a){return"rmo"===a||"readmodel"===a||"ui"===a||"cmd"===a||"command"===a||"evt"===a||"event"===a||"pcr"===a||"processor"===a},"isEmModelEntityType");var vt="EmResetFrame";function vu(a){return vG.isInstance(a,vt)}bz(vu,"isEmResetFrame");var vv="GitGraph";bz(function(a){return vG.isInstance(a,vv)},"isGitGraph");var vw="Info";bz(function(a){return vG.isInstance(a,vw)},"isInfo");var vx="Item",vy="Merge";bz(function(a){return vG.isInstance(a,vy)},"isMerge");var vz="Packet";bz(function(a){return vG.isInstance(a,vz)},"isPacket");var vA="PacketBlock";bz(function(a){return vG.isInstance(a,vA)},"isPacketBlock");bz(function(a){return vG.isInstance(a,"Pie")},"isPie");var vB="PieSection";bz(function(a){return vG.isInstance(a,vB)},"isPieSection");var vC="Statement",vD="Treemap";bz(function(a){return vG.isInstance(a,vD)},"isTreemap");var vE="Wardley";bz(function(a){return vG.isInstance(a,vE)},"isWardley");var vF=class extends cv{constructor(){super(...arguments),this.types={Accelerator:{name:"Accelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},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:vm,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},edges:{name:"edges",defaultValue:[]},groups:{name:"groups",defaultValue:[]},junctions:{name:"junctions",defaultValue:[]},services:{name:"services",defaultValue:[]},title:{name:"title"}},superTypes:[]},Axis:{name:vn,properties:{label:{name:"label"},name:{name:"name"}},superTypes:[]},Branch:{name:vo,properties:{name:{name:"name"},order:{name:"order"}},superTypes:[vC]},Checkout:{name:"Checkout",properties:{branch:{name:"branch"}},superTypes:[vC]},CherryPicking:{name:"CherryPicking",properties:{id:{name:"id"},parent:{name:"parent"},tags:{name:"tags",defaultValue:[]}},superTypes:[vC]},ClassDefStatement:{name:"ClassDefStatement",properties:{className:{name:"className"},styleText:{name:"styleText"}},superTypes:[]},Commit:{name:vp,properties:{id:{name:"id"},message:{name:"message"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vC]},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:[]},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:[vv]},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:vq,properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},name:{name:"name"}},superTypes:[]},EmFrame:{name:vr,properties:{},superTypes:[]},EmGwt:{name:"EmGwt",properties:{givenStatements:{name:"givenStatements",defaultValue:[]},sourceFrame:{name:"sourceFrame",referenceType:vr},thenStatements:{name:"thenStatements",defaultValue:[]},whenStatements:{name:"whenStatements",defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:"EmGwtStatement",properties:{entityIdentifier:{name:"entityIdentifier",referenceType:vs}},superTypes:[]},EmModelEntity:{name:vs,properties:{name:{name:"name"}},superTypes:[]},EmNoteEntity:{name:"EmNoteEntity",properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},sourceFrame:{name:"sourceFrame",referenceType:vr}},superTypes:[]},EmResetFrame:{name:vt,properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vq},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vr}},superTypes:[vr]},EmTimeFrame:{name:"EmTimeFrame",properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:vq},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:vr}},superTypes:[vr]},Entry:{name:"Entry",properties:{axis:{name:"axis",referenceType:vn},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:vv,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:vw,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Item:{name:vx,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:[vx]},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:vy,properties:{branch:{name:"branch"},id:{name:"id"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[vC]},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:vz,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},blocks:{name:"blocks",defaultValue:[]},title:{name:"title"}},superTypes:[]},PacketBlock:{name:vA,properties:{bits:{name:"bits"},end:{name:"end"},label:{name:"label"},start:{name:"start"}},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:vB,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:[]},Section:{name:"Section",properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[vx]},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:vC,properties:{},superTypes:[]},TreeNode:{name:"TreeNode",properties:{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:vD,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:vE,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{bz(this,"MermaidAstReflection")}},vG=new vF,vH=bz(()=>bj??(bj=vj('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"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":[]}}]},"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@9"},"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@9"},"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@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"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@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"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@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"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@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"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@23"},"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@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"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@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"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"),vI=bz(()=>bk??(bk=vj('{"$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"),vJ=bz(()=>bl??(bl=vj('{"$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"),vK=bz(()=>bm??(bm=vj('{"$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"),vL=bz(()=>bn??(bn=vj('{"$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"),vM=bz(()=>bo??(bo=vj('{"$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"),vN=bz(()=>bp??(bp=vj('{"$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"),vO=bz(()=>bq??(bq=vj('{"$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"),vP=bz(()=>br??(br=vj('{"$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@9"},"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":"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":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@9"}}},"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 * Converted from treemap 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 * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),vQ=bz(()=>bs??(bs=vj('{"$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"),vR={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vS={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vT={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vU={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vV={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vW={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vX={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vY={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vZ={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},v$={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},v_={AstReflection:bz(()=>new vF,"AstReflection")},v0={Grammar:bz(()=>vH(),"Grammar"),LanguageMetaData:bz(()=>vR,"LanguageMetaData"),parser:{}},v1={Grammar:bz(()=>vI(),"Grammar"),LanguageMetaData:bz(()=>vS,"LanguageMetaData"),parser:{}},v2={Grammar:bz(()=>vJ(),"Grammar"),LanguageMetaData:bz(()=>vT,"LanguageMetaData"),parser:{}},v3={Grammar:bz(()=>vK(),"Grammar"),LanguageMetaData:bz(()=>vU,"LanguageMetaData"),parser:{}},v4={Grammar:bz(()=>vL(),"Grammar"),LanguageMetaData:bz(()=>vV,"LanguageMetaData"),parser:{}},v5={Grammar:bz(()=>vM(),"Grammar"),LanguageMetaData:bz(()=>vW,"LanguageMetaData"),parser:{}},v6={Grammar:bz(()=>vN(),"Grammar"),LanguageMetaData:bz(()=>vX,"LanguageMetaData"),parser:{}},v7={Grammar:bz(()=>vO(),"Grammar"),LanguageMetaData:bz(()=>vY,"LanguageMetaData"),parser:{}},v8={Grammar:bz(()=>vP(),"Grammar"),LanguageMetaData:bz(()=>vZ,"LanguageMetaData"),parser:{}},v9={Grammar:bz(()=>vQ(),"Grammar"),LanguageMetaData:bz(()=>v$,"LanguageMetaData"),parser:{}},wa={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},wb=class extends tr{static{bz(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=wa[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")}}},wc=class extends wb{static{bz(this,"CommonValueConverter")}runCustomConverter(a,b,c){}},wd=class extends tq{static{bz(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 wd{static{bz(this,"CommonTokenBuilder")}})},92325:(a,b,c)=>{c.d(b,{F5:()=>d.F5,qg:()=>g}),c(66854),c(18419),c(36035),c(62576),c(20493),c(82010),c(47966),c(84952),c(65170),c(28070);var d=c(90280),e={},f={info:(0,d.K2)(async()=>{let{createInfoServices:a}=await c.e(258).then(c.bind(c,258));e.info=a().Info.parser.LangiumParser},"info"),packet:(0,d.K2)(async()=>{let{createPacketServices:a}=await c.e(8490).then(c.bind(c,18490));e.packet=a().Packet.parser.LangiumParser},"packet"),pie:(0,d.K2)(async()=>{let{createPieServices:a}=await c.e(2943).then(c.bind(c,82943));e.pie=a().Pie.parser.LangiumParser},"pie"),treeView:(0,d.K2)(async()=>{let{createTreeViewServices:a}=await c.e(8276).then(c.bind(c,28276));e.treeView=a().TreeView.parser.LangiumParser},"treeView"),architecture:(0,d.K2)(async()=>{let{createArchitectureServices:a}=await c.e(3672).then(c.bind(c,53672));e.architecture=a().Architecture.parser.LangiumParser},"architecture"),gitGraph:(0,d.K2)(async()=>{let{createGitGraphServices:a}=await c.e(5409).then(c.bind(c,95409));e.gitGraph=a().GitGraph.parser.LangiumParser},"gitGraph"),eventmodeling:(0,d.K2)(async()=>{let{createEventModelingServices:a}=await c.e(3181).then(c.bind(c,63181));e.eventmodeling=a().EventModel.parser.LangiumParser},"eventmodeling"),radar:(0,d.K2)(async()=>{let{createRadarServices:a}=await c.e(2778).then(c.bind(c,52778));e.radar=a().Radar.parser.LangiumParser},"radar"),treemap:(0,d.K2)(async()=>{let{createTreemapServices:a}=await c.e(1048).then(c.bind(c,1048));e.treemap=a().Treemap.parser.LangiumParser},"treemap"),wardley:(0,d.K2)(async()=>{let{createWardleyServices:a}=await c.e(165).then(c.bind(c,80165));e.wardley=a().Wardley.parser.LangiumParser},"wardley")};async function g(a,b){let c=f[a];if(!c)throw Error(`Unknown diagram type: ${a}`);e[a]||await c();let d=e[a].parse(b);if(d.lexerErrors.length>0||d.parserErrors.length>0)throw new h(d);return d.value}(0,d.K2)(g,"parse");var h=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,d.K2)(this,"MermaidParseError")}}}};
|