@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.
Files changed (422) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +40 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/diagnostics/framework.json +1 -0
  6. package/.next/export-marker.json +6 -0
  7. package/.next/images-manifest.json +68 -0
  8. package/.next/next-minimal-server.js.nft.json +1 -0
  9. package/.next/next-server.js.nft.json +1 -0
  10. package/.next/package.json +1 -0
  11. package/.next/prerender-manifest.json +138 -0
  12. package/.next/react-loadable-manifest.json +2320 -0
  13. package/.next/required-server-files.js +343 -0
  14. package/.next/required-server-files.json +343 -0
  15. package/.next/routes-manifest.json +292 -0
  16. package/.next/server/app/_global-error/page.js +32 -0
  17. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  18. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  19. package/.next/server/app/_global-error.html +1 -0
  20. package/.next/server/app/_global-error.meta +16 -0
  21. package/.next/server/app/_global-error.rsc +14 -0
  22. package/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
  23. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
  24. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  25. package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  26. package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  27. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  28. package/.next/server/app/_not-found/page.js +2 -0
  29. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  30. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  31. package/.next/server/app/_not-found.html +1 -0
  32. package/.next/server/app/_not-found.meta +16 -0
  33. package/.next/server/app/_not-found.rsc +18 -0
  34. package/.next/server/app/_not-found.segments/_full.segment.rsc +18 -0
  35. package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  36. package/.next/server/app/_not-found.segments/_index.segment.rsc +5 -0
  37. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  38. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
  39. package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -0
  40. package/.next/server/app/api/agent/[id]/events/route.js +3 -0
  41. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -0
  42. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -0
  43. package/.next/server/app/api/agent/[id]/route.js +1 -0
  44. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
  45. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/agent/new/route.js +1 -0
  47. package/.next/server/app/api/agent/new/route.js.nft.json +1 -0
  48. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -0
  49. package/.next/server/app/api/auth/all-providers/route.js +1 -0
  50. package/.next/server/app/api/auth/all-providers/route.js.nft.json +1 -0
  51. package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -0
  52. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -0
  53. package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -0
  54. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -0
  55. package/.next/server/app/api/auth/login/[provider]/route.js +3 -0
  56. package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -0
  57. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -0
  58. package/.next/server/app/api/auth/login/route.js +1 -0
  59. package/.next/server/app/api/auth/login/route.js.nft.json +1 -0
  60. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -0
  61. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -0
  62. package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -0
  63. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -0
  64. package/.next/server/app/api/auth/providers/route.js +1 -0
  65. package/.next/server/app/api/auth/providers/route.js.nft.json +1 -0
  66. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -0
  67. package/.next/server/app/api/auth/status/route.js +1 -0
  68. package/.next/server/app/api/auth/status/route.js.nft.json +1 -0
  69. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/default-cwd/route.js +1 -0
  71. package/.next/server/app/api/default-cwd/route.js.nft.json +1 -0
  72. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/files/[...path]/route.js +6 -0
  74. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -0
  75. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/harness/route.js +1 -0
  77. package/.next/server/app/api/harness/route.js.nft.json +1 -0
  78. package/.next/server/app/api/harness/route_client-reference-manifest.js +1 -0
  79. package/.next/server/app/api/home/route.js +1 -0
  80. package/.next/server/app/api/home/route.js.nft.json +1 -0
  81. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -0
  82. package/.next/server/app/api/models/route.js +1 -0
  83. package/.next/server/app/api/models/route.js.nft.json +1 -0
  84. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
  85. package/.next/server/app/api/models-config/discover/route.js +1 -0
  86. package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -0
  87. package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -0
  88. package/.next/server/app/api/models-config/route.js +1 -0
  89. package/.next/server/app/api/models-config/route.js.nft.json +1 -0
  90. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -0
  91. package/.next/server/app/api/models-config/test/route.js +1 -0
  92. package/.next/server/app/api/models-config/test/route.js.nft.json +1 -0
  93. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -0
  94. package/.next/server/app/api/plot-kernels/route.js +1 -0
  95. package/.next/server/app/api/plot-kernels/route.js.nft.json +1 -0
  96. package/.next/server/app/api/plot-kernels/route_client-reference-manifest.js +1 -0
  97. package/.next/server/app/api/plot-kernels/status/route.js +1 -0
  98. package/.next/server/app/api/plot-kernels/status/route.js.nft.json +1 -0
  99. package/.next/server/app/api/plot-kernels/status/route_client-reference-manifest.js +1 -0
  100. package/.next/server/app/api/plot-kernels/stop/route.js +1 -0
  101. package/.next/server/app/api/plot-kernels/stop/route.js.nft.json +1 -0
  102. package/.next/server/app/api/plot-kernels/stop/route_client-reference-manifest.js +1 -0
  103. package/.next/server/app/api/reports/[id]/route.js +9 -0
  104. package/.next/server/app/api/reports/[id]/route.js.nft.json +1 -0
  105. package/.next/server/app/api/reports/[id]/route_client-reference-manifest.js +1 -0
  106. package/.next/server/app/api/search/route.js +3 -0
  107. package/.next/server/app/api/search/route.js.nft.json +1 -0
  108. package/.next/server/app/api/search/route_client-reference-manifest.js +1 -0
  109. package/.next/server/app/api/sessions/[id]/context/route.js +3 -0
  110. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -0
  111. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -0
  112. package/.next/server/app/api/sessions/[id]/route.js +1 -0
  113. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -0
  114. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -0
  115. package/.next/server/app/api/sessions/new/route.js +1 -0
  116. package/.next/server/app/api/sessions/new/route.js.nft.json +1 -0
  117. package/.next/server/app/api/sessions/new/route_client-reference-manifest.js +1 -0
  118. package/.next/server/app/api/sessions/route.js +3 -0
  119. package/.next/server/app/api/sessions/route.js.nft.json +1 -0
  120. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -0
  121. package/.next/server/app/api/settings/route.js +1 -0
  122. package/.next/server/app/api/settings/route.js.nft.json +1 -0
  123. package/.next/server/app/api/settings/route_client-reference-manifest.js +1 -0
  124. package/.next/server/app/api/skills/install/route.js +1 -0
  125. package/.next/server/app/api/skills/install/route.js.nft.json +1 -0
  126. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
  127. package/.next/server/app/api/skills/route.js +6 -0
  128. package/.next/server/app/api/skills/route.js.nft.json +1 -0
  129. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
  130. package/.next/server/app/api/skills/search/route.js +1 -0
  131. package/.next/server/app/api/skills/search/route.js.nft.json +1 -0
  132. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -0
  133. package/.next/server/app/api/soul/route.js +1 -0
  134. package/.next/server/app/api/soul/route.js.nft.json +1 -0
  135. package/.next/server/app/api/soul/route_client-reference-manifest.js +1 -0
  136. package/.next/server/app/api/version/route.js +1 -0
  137. package/.next/server/app/api/version/route.js.nft.json +1 -0
  138. package/.next/server/app/api/version/route_client-reference-manifest.js +1 -0
  139. package/.next/server/app/favicon.ico/route.js +1 -0
  140. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  141. package/.next/server/app/favicon.ico.body +0 -0
  142. package/.next/server/app/favicon.ico.meta +1 -0
  143. package/.next/server/app/index.html +1 -0
  144. package/.next/server/app/index.meta +14 -0
  145. package/.next/server/app/index.rsc +17 -0
  146. package/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
  147. package/.next/server/app/index.segments/_full.segment.rsc +17 -0
  148. package/.next/server/app/index.segments/_head.segment.rsc +6 -0
  149. package/.next/server/app/index.segments/_index.segment.rsc +5 -0
  150. package/.next/server/app/index.segments/_tree.segment.rsc +4 -0
  151. package/.next/server/app/login/page.js +2 -0
  152. package/.next/server/app/login/page.js.nft.json +1 -0
  153. package/.next/server/app/login/page_client-reference-manifest.js +1 -0
  154. package/.next/server/app/login.html +1 -0
  155. package/.next/server/app/login.meta +15 -0
  156. package/.next/server/app/login.rsc +22 -0
  157. package/.next/server/app/login.segments/_full.segment.rsc +22 -0
  158. package/.next/server/app/login.segments/_head.segment.rsc +6 -0
  159. package/.next/server/app/login.segments/_index.segment.rsc +5 -0
  160. package/.next/server/app/login.segments/_tree.segment.rsc +4 -0
  161. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +9 -0
  162. package/.next/server/app/login.segments/login.segment.rsc +5 -0
  163. package/.next/server/app/page.js +271 -0
  164. package/.next/server/app/page.js.nft.json +1 -0
  165. package/.next/server/app/page_client-reference-manifest.js +1 -0
  166. package/.next/server/app-paths-manifest.json +40 -0
  167. package/.next/server/chunks/1048.js +1 -0
  168. package/.next/server/chunks/1367.js +77 -0
  169. package/.next/server/chunks/1381.js +1 -0
  170. package/.next/server/chunks/165.js +1 -0
  171. package/.next/server/chunks/1681.js +215 -0
  172. package/.next/server/chunks/1703.js +79 -0
  173. package/.next/server/chunks/1712.js +43 -0
  174. package/.next/server/chunks/1813.js +1 -0
  175. package/.next/server/chunks/2325.js +80 -0
  176. package/.next/server/chunks/258.js +1 -0
  177. package/.next/server/chunks/2671.js +287 -0
  178. package/.next/server/chunks/2778.js +1 -0
  179. package/.next/server/chunks/2943.js +1 -0
  180. package/.next/server/chunks/3031.js +226 -0
  181. package/.next/server/chunks/3181.js +1 -0
  182. package/.next/server/chunks/3451.js +1 -0
  183. package/.next/server/chunks/3493.js +1 -0
  184. package/.next/server/chunks/3672.js +1 -0
  185. package/.next/server/chunks/3701.js +104 -0
  186. package/.next/server/chunks/4013.js +1 -0
  187. package/.next/server/chunks/4035.js +80 -0
  188. package/.next/server/chunks/4248.js +153 -0
  189. package/.next/server/chunks/4367.js +1 -0
  190. package/.next/server/chunks/4406.js +141 -0
  191. package/.next/server/chunks/4741.js +18 -0
  192. package/.next/server/chunks/4858.js +148 -0
  193. package/.next/server/chunks/4980.js +1 -0
  194. package/.next/server/chunks/5155.js +5 -0
  195. package/.next/server/chunks/5193.js +73 -0
  196. package/.next/server/chunks/5293.js +166 -0
  197. package/.next/server/chunks/5409.js +1 -0
  198. package/.next/server/chunks/5797.js +93 -0
  199. package/.next/server/chunks/5851.js +36 -0
  200. package/.next/server/chunks/6206.js +1 -0
  201. package/.next/server/chunks/6296.js +1 -0
  202. package/.next/server/chunks/63.js +45 -0
  203. package/.next/server/chunks/6346.js +1 -0
  204. package/.next/server/chunks/6406.js +23 -0
  205. package/.next/server/chunks/642.js +1 -0
  206. package/.next/server/chunks/6729.js +64 -0
  207. package/.next/server/chunks/6907.js +115 -0
  208. package/.next/server/chunks/6980.js +1 -0
  209. package/.next/server/chunks/7073.js +24 -0
  210. package/.next/server/chunks/7233.js +24 -0
  211. package/.next/server/chunks/7270.js +45 -0
  212. package/.next/server/chunks/7307.js +1 -0
  213. package/.next/server/chunks/7362.js +9 -0
  214. package/.next/server/chunks/7567.js +29 -0
  215. package/.next/server/chunks/7601.js +129 -0
  216. package/.next/server/chunks/7765.js +1 -0
  217. package/.next/server/chunks/7890.js +1 -0
  218. package/.next/server/chunks/8065.js +1 -0
  219. package/.next/server/chunks/8238.js +34 -0
  220. package/.next/server/chunks/8276.js +1 -0
  221. package/.next/server/chunks/8336.js +1 -0
  222. package/.next/server/chunks/8490.js +1 -0
  223. package/.next/server/chunks/8916.js +1 -0
  224. package/.next/server/chunks/9280.js +252 -0
  225. package/.next/server/chunks/9315.js +1 -0
  226. package/.next/server/chunks/9537.js +90 -0
  227. package/.next/server/chunks/966.js +1 -0
  228. package/.next/server/chunks/9818.js +21 -0
  229. package/.next/server/chunks/static/media/pdf.worker.min.9df6854a.mjs +6 -0
  230. package/.next/server/functions-config-manifest.json +14 -0
  231. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  232. package/.next/server/middleware-build-manifest.js +1 -0
  233. package/.next/server/middleware-manifest.json +6 -0
  234. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  235. package/.next/server/middleware.js +18 -0
  236. package/.next/server/middleware.js.nft.json +1 -0
  237. package/.next/server/next-font-manifest.js +1 -0
  238. package/.next/server/next-font-manifest.json +1 -0
  239. package/.next/server/pages/404.html +1 -0
  240. package/.next/server/pages/500.html +1 -0
  241. package/.next/server/pages-manifest.json +4 -0
  242. package/.next/server/prefetch-hints.json +1 -0
  243. package/.next/server/server-reference-manifest.js +1 -0
  244. package/.next/server/server-reference-manifest.json +1 -0
  245. package/.next/server/webpack-runtime.js +1 -0
  246. package/.next/static/chunks/0b9a0da7.9075af772487e743.js +62 -0
  247. package/.next/static/chunks/1413.922d232de90c0c41.js +115 -0
  248. package/.next/static/chunks/1643.467a526a1f24f54d.js +24 -0
  249. package/.next/static/chunks/1852.5543122f11aa7fed.js +1 -0
  250. package/.next/static/chunks/1960.b1e26436d7a5f586.js +1 -0
  251. package/.next/static/chunks/2170a4aa.4213bb2183c9cdf9.js +1 -0
  252. package/.next/static/chunks/2274.6cd173f80a1405a2.js +21 -0
  253. package/.next/static/chunks/2419.347fdfe3c170854d.js +166 -0
  254. package/.next/static/chunks/2619.9aac8983f30c7c8a.js +1 -0
  255. package/.next/static/chunks/2623.d20fabd8e18197c6.js +287 -0
  256. package/.next/static/chunks/2729.f5365061a849d659.js +34 -0
  257. package/.next/static/chunks/2821.934bcf60fbdc28c6.js +1 -0
  258. package/.next/static/chunks/2918becc.abff2ece1de37bc1.js +153 -0
  259. package/.next/static/chunks/2947.114e51cb06d1c01a.js +23 -0
  260. package/.next/static/chunks/3079.4c511fa1144e3adf.js +79 -0
  261. package/.next/static/chunks/3274.208ca44844cd7d95.js +148 -0
  262. package/.next/static/chunks/3308.465a94263d04bfea.js +73 -0
  263. package/.next/static/chunks/3325.e4bfe1ca657f3b5b.js +80 -0
  264. package/.next/static/chunks/3506.2a7eaa08b9f55337.js +90 -0
  265. package/.next/static/chunks/363642f4-043c1475ab9af70e.js +1 -0
  266. package/.next/static/chunks/3794-123fdf632563f469.js +32 -0
  267. package/.next/static/chunks/3837.a755ccfe6f9c1c1c.js +5 -0
  268. package/.next/static/chunks/394.91597771688df6d0.js +1 -0
  269. package/.next/static/chunks/3997.1009c06025691712.js +1 -0
  270. package/.next/static/chunks/4453.91a357dc43c21745.js +1 -0
  271. package/.next/static/chunks/4491.44fdf20580ac72bd.js +24 -0
  272. package/.next/static/chunks/4829.cf1d50e43e6d9db5.js +1 -0
  273. package/.next/static/chunks/498.fe1d9da9ecad6c36.js +1 -0
  274. package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +1 -0
  275. package/.next/static/chunks/5019.b5a1a2b8daf17525.js +1 -0
  276. package/.next/static/chunks/5034.8f16c3fa3ce75411.js +1 -0
  277. package/.next/static/chunks/5074.d16651da01ec4e02.js +1 -0
  278. package/.next/static/chunks/532.5956ed631aff722b.js +9 -0
  279. package/.next/static/chunks/5326.69460442bdcd6cd3.js +1 -0
  280. package/.next/static/chunks/5403.ff110bf5bf600758.js +64 -0
  281. package/.next/static/chunks/547.902a733488cfe3f7.js +77 -0
  282. package/.next/static/chunks/5567.540d7fc108ad6ee5.js +215 -0
  283. package/.next/static/chunks/5590.ef62922166d308b4.js +1 -0
  284. package/.next/static/chunks/5690.9d6eb1edb1399995.js +1 -0
  285. package/.next/static/chunks/5749.25faee4a1e55b854.js +226 -0
  286. package/.next/static/chunks/58bb9007.1ccb6bba34b4c635.js +80 -0
  287. package/.next/static/chunks/6121.f3f43f1896ea0cd9.js +1 -0
  288. package/.next/static/chunks/6600.583c88eef37aa524.js +1 -0
  289. package/.next/static/chunks/6696.a41aec266e657d54.js +141 -0
  290. package/.next/static/chunks/6922.42148793782d2fe7.js +1 -0
  291. package/.next/static/chunks/7006.e191611ffc2b9528.js +43 -0
  292. package/.next/static/chunks/7343.9fbb58204d8ac681.js +1 -0
  293. package/.next/static/chunks/7355-29eaa714eb390050.js +1 -0
  294. package/.next/static/chunks/73972abe.25a4cffa03b2bcef.js +119 -0
  295. package/.next/static/chunks/7547.58bda8a2aabba0d4.js +93 -0
  296. package/.next/static/chunks/7648.4ae2f183b4db0353.js +1 -0
  297. package/.next/static/chunks/7874.8db6929b94cdf697.js +1 -0
  298. package/.next/static/chunks/7959.1f20a35df316216a.js +104 -0
  299. package/.next/static/chunks/83.85d62d7fc9850b75.js +29 -0
  300. package/.next/static/chunks/8436.cab94b59cca0a8ff.js +1 -0
  301. package/.next/static/chunks/8451.542eda09d2171474.js +1 -0
  302. package/.next/static/chunks/8489.45f22859734f514f.js +36 -0
  303. package/.next/static/chunks/8568.f85d8b36fc9a9037.js +1 -0
  304. package/.next/static/chunks/8863.be51033a67436277.js +1 -0
  305. package/.next/static/chunks/90542734.dc1a2723e4f6affb.js +1 -0
  306. package/.next/static/chunks/9500.1488aec06ee78127.js +1 -0
  307. package/.next/static/chunks/9633.155548b5fca6e580.js +1 -0
  308. package/.next/static/chunks/9779.673004a62d70e36a.js +1 -0
  309. package/.next/static/chunks/9b0008ae.2918095672924572.js +45 -0
  310. package/.next/static/chunks/app/_global-error/page-3edd3886076a73cb.js +1 -0
  311. package/.next/static/chunks/app/_not-found/page-96eb50fac9e7a68c.js +1 -0
  312. package/.next/static/chunks/app/api/agent/[id]/events/route-3edd3886076a73cb.js +1 -0
  313. package/.next/static/chunks/app/api/agent/[id]/route-3edd3886076a73cb.js +1 -0
  314. package/.next/static/chunks/app/api/agent/new/route-3edd3886076a73cb.js +1 -0
  315. package/.next/static/chunks/app/api/auth/all-providers/route-3edd3886076a73cb.js +1 -0
  316. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-3edd3886076a73cb.js +1 -0
  317. package/.next/static/chunks/app/api/auth/login/[provider]/route-3edd3886076a73cb.js +1 -0
  318. package/.next/static/chunks/app/api/auth/login/route-3edd3886076a73cb.js +1 -0
  319. package/.next/static/chunks/app/api/auth/logout/[provider]/route-3edd3886076a73cb.js +1 -0
  320. package/.next/static/chunks/app/api/auth/providers/route-3edd3886076a73cb.js +1 -0
  321. package/.next/static/chunks/app/api/auth/status/route-3edd3886076a73cb.js +1 -0
  322. package/.next/static/chunks/app/api/default-cwd/route-3edd3886076a73cb.js +1 -0
  323. package/.next/static/chunks/app/api/files/[...path]/route-3edd3886076a73cb.js +1 -0
  324. package/.next/static/chunks/app/api/harness/route-3edd3886076a73cb.js +1 -0
  325. package/.next/static/chunks/app/api/home/route-3edd3886076a73cb.js +1 -0
  326. package/.next/static/chunks/app/api/models/route-3edd3886076a73cb.js +1 -0
  327. package/.next/static/chunks/app/api/models-config/discover/route-3edd3886076a73cb.js +1 -0
  328. package/.next/static/chunks/app/api/models-config/route-3edd3886076a73cb.js +1 -0
  329. package/.next/static/chunks/app/api/models-config/test/route-3edd3886076a73cb.js +1 -0
  330. package/.next/static/chunks/app/api/plot-kernels/route-3edd3886076a73cb.js +1 -0
  331. package/.next/static/chunks/app/api/plot-kernels/status/route-3edd3886076a73cb.js +1 -0
  332. package/.next/static/chunks/app/api/plot-kernels/stop/route-3edd3886076a73cb.js +1 -0
  333. package/.next/static/chunks/app/api/reports/[id]/route-3edd3886076a73cb.js +1 -0
  334. package/.next/static/chunks/app/api/search/route-3edd3886076a73cb.js +1 -0
  335. package/.next/static/chunks/app/api/sessions/[id]/context/route-3edd3886076a73cb.js +1 -0
  336. package/.next/static/chunks/app/api/sessions/[id]/route-3edd3886076a73cb.js +1 -0
  337. package/.next/static/chunks/app/api/sessions/new/route-3edd3886076a73cb.js +1 -0
  338. package/.next/static/chunks/app/api/sessions/route-3edd3886076a73cb.js +1 -0
  339. package/.next/static/chunks/app/api/settings/route-3edd3886076a73cb.js +1 -0
  340. package/.next/static/chunks/app/api/skills/install/route-3edd3886076a73cb.js +1 -0
  341. package/.next/static/chunks/app/api/skills/route-3edd3886076a73cb.js +1 -0
  342. package/.next/static/chunks/app/api/skills/search/route-3edd3886076a73cb.js +1 -0
  343. package/.next/static/chunks/app/api/soul/route-3edd3886076a73cb.js +1 -0
  344. package/.next/static/chunks/app/api/version/route-3edd3886076a73cb.js +1 -0
  345. package/.next/static/chunks/app/layout-827e06e39e1e6b05.js +1 -0
  346. package/.next/static/chunks/app/login/page-9450bfc0d502f432.js +1 -0
  347. package/.next/static/chunks/app/page-dc03bbb33a1d438c.js +270 -0
  348. package/.next/static/chunks/d3ac728e.7964f816a1ca64e5.js +1 -0
  349. package/.next/static/chunks/framework-711ef29bc66f648c.js +1 -0
  350. package/.next/static/chunks/main-app-ecfccace02c7aaed.js +1 -0
  351. package/.next/static/chunks/main-f74964b7ae52493e.js +5 -0
  352. package/.next/static/chunks/next/dist/client/components/builtin/app-error-3edd3886076a73cb.js +1 -0
  353. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-3edd3886076a73cb.js +1 -0
  354. package/.next/static/chunks/next/dist/client/components/builtin/global-error-cd03d084301c1bc9.js +1 -0
  355. package/.next/static/chunks/next/dist/client/components/builtin/not-found-3edd3886076a73cb.js +1 -0
  356. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3edd3886076a73cb.js +1 -0
  357. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  358. package/.next/static/chunks/webpack-5e677f60fa366b60.js +1 -0
  359. package/.next/static/css/d830cdea1c9a03c6.css +3 -0
  360. package/.next/static/ixA4-CDguO8ne_SD2W8sd/_buildManifest.js +1 -0
  361. package/.next/static/ixA4-CDguO8ne_SD2W8sd/_ssgManifest.js +1 -0
  362. package/.next/static/media/15605e25b523335c-s.woff2 +0 -0
  363. package/.next/static/media/1a3dce5cfb5f7760-s.woff2 +0 -0
  364. package/.next/static/media/1cdd02902f937a18-s.woff2 +0 -0
  365. package/.next/static/media/4c4b3b30b6bcb2be-s.woff2 +0 -0
  366. package/.next/static/media/641a7b8a5800ee0e-s.woff2 +0 -0
  367. package/.next/static/media/7deddc85b7ffd1dc-s.p.woff2 +0 -0
  368. package/.next/static/media/ec14413c594b3356-s.p.woff2 +0 -0
  369. package/.next/static/media/pdf.worker.min.5f98222a.mjs +6 -0
  370. package/.next/trace +74 -0
  371. package/.next/trace-build +1 -0
  372. package/.next/types/app/api/agent/[id]/events/route.ts +351 -0
  373. package/.next/types/app/api/agent/[id]/route.ts +351 -0
  374. package/.next/types/app/api/agent/new/route.ts +351 -0
  375. package/.next/types/app/api/auth/all-providers/route.ts +351 -0
  376. package/.next/types/app/api/auth/api-key/[provider]/route.ts +351 -0
  377. package/.next/types/app/api/auth/login/[provider]/route.ts +351 -0
  378. package/.next/types/app/api/auth/login/route.ts +351 -0
  379. package/.next/types/app/api/auth/logout/[provider]/route.ts +351 -0
  380. package/.next/types/app/api/auth/providers/route.ts +351 -0
  381. package/.next/types/app/api/auth/status/route.ts +351 -0
  382. package/.next/types/app/api/default-cwd/route.ts +351 -0
  383. package/.next/types/app/api/files/[...path]/route.ts +351 -0
  384. package/.next/types/app/api/harness/route.ts +351 -0
  385. package/.next/types/app/api/home/route.ts +351 -0
  386. package/.next/types/app/api/models/route.ts +351 -0
  387. package/.next/types/app/api/models-config/discover/route.ts +351 -0
  388. package/.next/types/app/api/models-config/route.ts +351 -0
  389. package/.next/types/app/api/models-config/test/route.ts +351 -0
  390. package/.next/types/app/api/plot-kernels/route.ts +351 -0
  391. package/.next/types/app/api/plot-kernels/status/route.ts +351 -0
  392. package/.next/types/app/api/plot-kernels/stop/route.ts +351 -0
  393. package/.next/types/app/api/reports/[id]/route.ts +351 -0
  394. package/.next/types/app/api/search/route.ts +351 -0
  395. package/.next/types/app/api/sessions/[id]/context/route.ts +351 -0
  396. package/.next/types/app/api/sessions/[id]/route.ts +351 -0
  397. package/.next/types/app/api/sessions/new/route.ts +351 -0
  398. package/.next/types/app/api/sessions/route.ts +351 -0
  399. package/.next/types/app/api/settings/route.ts +351 -0
  400. package/.next/types/app/api/skills/install/route.ts +351 -0
  401. package/.next/types/app/api/skills/route.ts +351 -0
  402. package/.next/types/app/api/skills/search/route.ts +351 -0
  403. package/.next/types/app/api/soul/route.ts +351 -0
  404. package/.next/types/app/api/version/route.ts +351 -0
  405. package/.next/types/app/layout.ts +87 -0
  406. package/.next/types/app/login/page.ts +87 -0
  407. package/.next/types/app/page.ts +87 -0
  408. package/.next/types/package.json +1 -0
  409. package/.next/types/routes.d.ts +106 -0
  410. package/.next/types/validator.ts +376 -0
  411. package/LICENSE +21 -0
  412. package/README.md +90 -0
  413. package/bin/pi-web.js +825 -0
  414. package/lib/default-soul.md +42 -0
  415. package/lib/visualization-harness.md +113 -0
  416. package/next.config.ts +15 -0
  417. package/package.json +77 -0
  418. package/public/file.svg +1 -0
  419. package/public/globe.svg +1 -0
  420. package/public/next.svg +1 -0
  421. package/public/vercel.svg +1 -0
  422. package/public/window.svg +1 -0
@@ -0,0 +1,80 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8184],{76086:(e,t,r)=>{let n,i;r.d(t,{Bg:()=>$8,CZ:()=>$6,DD:()=>$s,D_:()=>$5,F5:()=>$$,FZ:()=>$9,K2:()=>tS,Tm:()=>bn,WQ:()=>R9,XE:()=>$7,Xr:()=>be,d$:()=>$3,dg:()=>br,mR:()=>bi,p5:()=>$4,sr:()=>$0,tG:()=>R2,uM:()=>R3,wV:()=>$1,x0:()=>$2});var a,s,o,l,u,c,p,d,f,h,m,y,g,v,T,R,$,b,E,C,A,S,k,x,N,w,_,I,P,O,D,L,M,j,F,z,q,G,U,K,W,B,V,H,Y,J,X,Z,Q,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ep,ed,ef,eh,em,ey,eg,ev,eT,eR,e$,eb,eE,eC,eA,eS,ek,ex,eN,ew,e_,eI,eP,eO,eD,eL,eM,ej,eF,ez,eq,eG,eU,eK,eW,eB,eV,eH,eY,eJ,eX,eZ,eQ,e0,e1,e2,e3,e9,e4,e5,e8,e7,e6,te,tt,tr,tn,ti,ta,ts,to,tl,tu,tc,tp,td,tf,th,tm,ty,tg,tv,tT=r(41463),tR=Object.create,t$=Object.defineProperty,tb=Object.getOwnPropertyDescriptor,tE=Object.getOwnPropertyNames,tC=Object.getPrototypeOf,tA=Object.prototype.hasOwnProperty,tS=(e,t)=>t$(e,"name",{value:t,configurable:!0}),tk=(e,t)=>function(){return t||(0,e[tE(e)[0]])((t={exports:{}}).exports,t),t.exports},tx=(e,t)=>{for(var r in t)t$(e,r,{get:t[r],enumerable:!0})},tN=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of tE(t))tA.call(e,i)||i===r||t$(e,i,{get:()=>t[i],enumerable:!(n=tb(t,i))||n.enumerable});return e},tw=(e,t,r)=>(tN(e,t,"default"),r&&tN(r,t,"default")),t_=(e,t,r)=>(r=null!=e?tR(tC(e)):{},tN(!t&&e&&e.__esModule?r:t$(r,"default",{value:e,enumerable:!0}),e)),tI=e=>tN(t$({},"__esModule",{value:!0}),e),tP={};tx(tP,{AnnotatedTextEdit:()=>j,ChangeAnnotation:()=>L,ChangeAnnotationIdentifier:()=>M,CodeAction:()=>e$,CodeActionContext:()=>eR,CodeActionKind:()=>ev,CodeActionTriggerKind:()=>eT,CodeDescription:()=>I,CodeLens:()=>eb,Color:()=>C,ColorInformation:()=>A,ColorPresentation:()=>S,Command:()=>O,CompletionItem:()=>ea,CompletionItemKind:()=>Q,CompletionItemLabelDetails:()=>ei,CompletionItemTag:()=>et,CompletionList:()=>es,CreateFile:()=>z,DeleteFile:()=>G,Diagnostic:()=>P,DiagnosticRelatedInformation:()=>N,DiagnosticSeverity:()=>w,DiagnosticTag:()=>_,DocumentHighlight:()=>ed,DocumentHighlightKind:()=>ep,DocumentLink:()=>eC,DocumentSymbol:()=>eg,DocumentUri:()=>y,EOL:()=>eU,FoldingRange:()=>x,FoldingRangeKind:()=>k,FormattingOptions:()=>eE,Hover:()=>el,InlayHint:()=>eD,InlayHintKind:()=>eP,InlayHintLabelPart:()=>eO,InlineCompletionContext:()=>eq,InlineCompletionItem:()=>eM,InlineCompletionList:()=>ej,InlineCompletionTriggerKind:()=>eF,InlineValueContext:()=>eI,InlineValueEvaluatableExpression:()=>e_,InlineValueText:()=>eN,InlineValueVariableLookup:()=>ew,InsertReplaceEdit:()=>er,InsertTextFormat:()=>ee,InsertTextMode:()=>en,Location:()=>b,LocationLink:()=>E,MarkedString:()=>eo,MarkupContent:()=>Z,MarkupKind:()=>X,OptionalVersionedTextDocumentIdentifier:()=>Y,ParameterInformation:()=>eu,Position:()=>R,Range:()=>$,RenameFile:()=>q,SelectedCompletionInfo:()=>ez,SelectionRange:()=>eA,SemanticTokenModifiers:()=>ek,SemanticTokenTypes:()=>eS,SemanticTokens:()=>ex,SignatureInformation:()=>ec,StringValue:()=>eL,SymbolInformation:()=>em,SymbolKind:()=>ef,SymbolTag:()=>eh,TextDocument:()=>eK,TextDocumentEdit:()=>F,TextDocumentIdentifier:()=>V,TextDocumentItem:()=>J,TextEdit:()=>D,URI:()=>g,VersionedTextDocumentIdentifier:()=>H,WorkspaceChange:()=>B,WorkspaceEdit:()=>U,WorkspaceFolder:()=>eG,WorkspaceSymbol:()=>ey,integer:()=>v,uinteger:()=>T});var tO=(n={"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var e,t,r,n,i,a,s,o,l,u,c,p,d,f=y||(y={});function h(e){return"string"==typeof e}tS(h,"is"),f.is=h;var m=g||(g={});function eV(e){return"string"==typeof e}tS(eV,"is"),m.is=eV;var eH=v||(v={});function eY(e){return"number"==typeof e&&eH.MIN_VALUE<=e&&e<=eH.MAX_VALUE}eH.MIN_VALUE=-0x80000000,eH.MAX_VALUE=0x7fffffff,tS(eY,"is"),eH.is=eY;var eJ=T||(T={});function eX(e){return"number"==typeof e&&eJ.MIN_VALUE<=e&&e<=eJ.MAX_VALUE}eJ.MIN_VALUE=0,eJ.MAX_VALUE=0x7fffffff,tS(eX,"is"),eJ.is=eX;var eZ=R||(R={});function eQ(e,t){return e===Number.MAX_VALUE&&(e=T.MAX_VALUE),t===Number.MAX_VALUE&&(t=T.MAX_VALUE),{line:e,character:t}}function e0(e){return eB.objectLiteral(e)&&eB.uinteger(e.line)&&eB.uinteger(e.character)}tS(eQ,"create"),eZ.create=eQ,tS(e0,"is"),eZ.is=e0;var e1=$||($={});function e2(e,t,r,n){if(eB.uinteger(e)&&eB.uinteger(t)&&eB.uinteger(r)&&eB.uinteger(n))return{start:R.create(e,t),end:R.create(r,n)};if(R.is(e)&&R.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)}function e3(e){return eB.objectLiteral(e)&&R.is(e.start)&&R.is(e.end)}tS(e2,"create"),e1.create=e2,tS(e3,"is"),e1.is=e3;var e9=b||(b={});function e4(e,t){return{uri:e,range:t}}function e5(e){return eB.objectLiteral(e)&&$.is(e.range)&&(eB.string(e.uri)||eB.undefined(e.uri))}tS(e4,"create"),e9.create=e4,tS(e5,"is"),e9.is=e5;var e8=E||(E={});function e7(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}}function e6(e){return eB.objectLiteral(e)&&$.is(e.targetRange)&&eB.string(e.targetUri)&&$.is(e.targetSelectionRange)&&($.is(e.originSelectionRange)||eB.undefined(e.originSelectionRange))}tS(e7,"create"),e8.create=e7,tS(e6,"is"),e8.is=e6;var te=C||(C={});function tt(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}}function tr(e){return eB.objectLiteral(e)&&eB.numberRange(e.red,0,1)&&eB.numberRange(e.green,0,1)&&eB.numberRange(e.blue,0,1)&&eB.numberRange(e.alpha,0,1)}tS(tt,"create"),te.create=tt,tS(tr,"is"),te.is=tr;var tn=A||(A={});function ti(e,t){return{range:e,color:t}}function ta(e){return eB.objectLiteral(e)&&$.is(e.range)&&C.is(e.color)}tS(ti,"create"),tn.create=ti,tS(ta,"is"),tn.is=ta;var ts=S||(S={});function to(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}}function tl(e){return eB.objectLiteral(e)&&eB.string(e.label)&&(eB.undefined(e.textEdit)||D.is(e))&&(eB.undefined(e.additionalTextEdits)||eB.typedArray(e.additionalTextEdits,D.is))}tS(to,"create"),ts.create=to,tS(tl,"is"),ts.is=tl,(e=k||(k={})).Comment="comment",e.Imports="imports",e.Region="region";var tu=x||(x={});function tc(e,t,r,n,i,a){let s={startLine:e,endLine:t};return eB.defined(r)&&(s.startCharacter=r),eB.defined(n)&&(s.endCharacter=n),eB.defined(i)&&(s.kind=i),eB.defined(a)&&(s.collapsedText=a),s}function tp(e){return eB.objectLiteral(e)&&eB.uinteger(e.startLine)&&eB.uinteger(e.startLine)&&(eB.undefined(e.startCharacter)||eB.uinteger(e.startCharacter))&&(eB.undefined(e.endCharacter)||eB.uinteger(e.endCharacter))&&(eB.undefined(e.kind)||eB.string(e.kind))}tS(tc,"create"),tu.create=tc,tS(tp,"is"),tu.is=tp;var td=N||(N={});function tf(e,t){return{location:e,message:t}}function th(e){return eB.defined(e)&&b.is(e.location)&&eB.string(e.message)}tS(tf,"create"),td.create=tf,tS(th,"is"),td.is=th,(t=w||(w={})).Error=1,t.Warning=2,t.Information=3,t.Hint=4,(r=_||(_={})).Unnecessary=1,r.Deprecated=2;var tm=I||(I={});function ty(e){return eB.objectLiteral(e)&&eB.string(e.href)}tS(ty,"is"),tm.is=ty;var tg=P||(P={});function tv(e,t,r,n,i,a){let s={range:e,message:t};return eB.defined(r)&&(s.severity=r),eB.defined(n)&&(s.code=n),eB.defined(i)&&(s.source=i),eB.defined(a)&&(s.relatedInformation=a),s}function tT(e){var t;return eB.defined(e)&&$.is(e.range)&&eB.string(e.message)&&(eB.number(e.severity)||eB.undefined(e.severity))&&(eB.integer(e.code)||eB.string(e.code)||eB.undefined(e.code))&&(eB.undefined(e.codeDescription)||eB.string(null==(t=e.codeDescription)?void 0:t.href))&&(eB.string(e.source)||eB.undefined(e.source))&&(eB.undefined(e.relatedInformation)||eB.typedArray(e.relatedInformation,N.is))}tS(tv,"create"),tg.create=tv,tS(tT,"is"),tg.is=tT;var tR=O||(O={});function t$(e,t,...r){let n={title:e,command:t};return eB.defined(r)&&r.length>0&&(n.arguments=r),n}function tb(e){return eB.defined(e)&&eB.string(e.title)&&eB.string(e.command)}tS(t$,"create"),tR.create=t$,tS(tb,"is"),tR.is=tb,function(e){function t(e,t){return{range:e,newText:t}}function r(e,t){return{range:{start:e,end:e},newText:t}}function n(e){return{range:e,newText:""}}function i(e){return eB.objectLiteral(e)&&eB.string(e.newText)&&$.is(e.range)}tS(t,"replace"),e.replace=t,tS(r,"insert"),e.insert=r,tS(n,"del"),e.del=n,tS(i,"is"),e.is=i}(D||(D={}));var tE=L||(L={});function tC(e,t,r){let n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n}function tA(e){return eB.objectLiteral(e)&&eB.string(e.label)&&(eB.boolean(e.needsConfirmation)||void 0===e.needsConfirmation)&&(eB.string(e.description)||void 0===e.description)}tS(tC,"create"),tE.create=tC,tS(tA,"is"),tE.is=tA;var tk=M||(M={});function tx(e){return eB.string(e)}tS(tx,"is"),tk.is=tx,function(e){function t(e,t,r){return{range:e,newText:t,annotationId:r}}function r(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}}function n(e,t){return{range:e,newText:"",annotationId:t}}function i(e){return D.is(e)&&(L.is(e.annotationId)||M.is(e.annotationId))}tS(t,"replace"),e.replace=t,tS(r,"insert"),e.insert=r,tS(n,"del"),e.del=n,tS(i,"is"),e.is=i}(j||(j={}));var tN=F||(F={});function tw(e,t){return{textDocument:e,edits:t}}function t_(e){return eB.defined(e)&&Y.is(e.textDocument)&&Array.isArray(e.edits)}tS(tw,"create"),tN.create=tw,tS(t_,"is"),tN.is=t_;var tI=z||(z={});function tP(e,t,r){let n={kind:"create",uri:e};return void 0!==t&&(void 0!==t.overwrite||void 0!==t.ignoreIfExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n}function tO(e){return e&&"create"===e.kind&&eB.string(e.uri)&&(void 0===e.options||(void 0===e.options.overwrite||eB.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||eB.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||M.is(e.annotationId))}tS(tP,"create"),tI.create=tP,tS(tO,"is"),tI.is=tO;var tD=q||(q={});function tL(e,t,r,n){let i={kind:"rename",oldUri:e,newUri:t};return void 0!==r&&(void 0!==r.overwrite||void 0!==r.ignoreIfExists)&&(i.options=r),void 0!==n&&(i.annotationId=n),i}function tM(e){return e&&"rename"===e.kind&&eB.string(e.oldUri)&&eB.string(e.newUri)&&(void 0===e.options||(void 0===e.options.overwrite||eB.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||eB.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||M.is(e.annotationId))}tS(tL,"create"),tD.create=tL,tS(tM,"is"),tD.is=tM;var tj=G||(G={});function tF(e,t,r){let n={kind:"delete",uri:e};return void 0!==t&&(void 0!==t.recursive||void 0!==t.ignoreIfNotExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n}function tz(e){return e&&"delete"===e.kind&&eB.string(e.uri)&&(void 0===e.options||(void 0===e.options.recursive||eB.boolean(e.options.recursive))&&(void 0===e.options.ignoreIfNotExists||eB.boolean(e.options.ignoreIfNotExists)))&&(void 0===e.annotationId||M.is(e.annotationId))}tS(tF,"create"),tj.create=tF,tS(tz,"is"),tj.is=tz;var tq=U||(U={});function tG(e){return e&&(void 0!==e.changes||void 0!==e.documentChanges)&&(void 0===e.documentChanges||e.documentChanges.every(e=>eB.string(e.kind)?z.is(e)||q.is(e)||G.is(e):F.is(e)))}tS(tG,"is"),tq.is=tG,K=class{static{tS(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,i;if(void 0===r?n=D.insert(e,t):M.is(r)?(i=r,n=j.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=j.insert(e,t,i)),this.edits.push(n),void 0!==i)return i}replace(e,t,r){let n,i;if(void 0===r?n=D.replace(e,t):M.is(r)?(i=r,n=j.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=j.replace(e,t,i)),this.edits.push(n),void 0!==i)return i}delete(e,t){let r,n;if(void 0===t?r=D.del(e):M.is(t)?(n=t,r=j.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=j.del(e,n)),this.edits.push(r),void 0!==n)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(void 0===e)throw Error("Text edit change is not configured to manage change annotations.")}},W=class{static{tS(this,"ChangeAnnotations")}constructor(e){this._annotations=void 0===e?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(M.is(e)?r=e:(r=this.nextId(),t=e),void 0!==this._annotations[r])throw Error(`Id ${r} is already in use.`);if(void 0===t)throw Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},B=class{static{tS(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),void 0!==e?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new W(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(e=>{if(F.is(e)){let t=new K(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}})):e.changes&&Object.keys(e.changes).forEach(t=>{let r=new K(e.changes[t]);this._textEditChanges[t]=r})):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(e){if(Y.is(e)){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");let t={uri:e.uri,version:e.version},r=this._textEditChanges[t.uri];if(!r){let e=[];this._workspaceEdit.documentChanges.push({textDocument:t,edits:e}),r=new K(e,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}{if(this.initChanges(),void 0===this._workspaceEdit.changes)throw Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){let r=[];this._workspaceEdit.changes[e]=r,t=new K(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._changeAnnotations=new W,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(e,t,r){let n,i,a;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(L.is(t)||M.is(t)?n=t:r=t,void 0===n?i=z.create(e,r):(a=M.is(n)?n:this._changeAnnotations.manage(n),i=z.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}renameFile(e,t,r,n){let i,a,s;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(L.is(r)||M.is(r)?i=r:n=r,void 0===i?a=q.create(e,t,n):(s=M.is(i)?i:this._changeAnnotations.manage(i),a=q.create(e,t,n,s)),this._workspaceEdit.documentChanges.push(a),void 0!==s)return s}deleteFile(e,t,r){let n,i,a;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(L.is(t)||M.is(t)?n=t:r=t,void 0===n?i=G.create(e,r):(a=M.is(n)?n:this._changeAnnotations.manage(n),i=G.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}};var tU=V||(V={});function tK(e){return{uri:e}}function tW(e){return eB.defined(e)&&eB.string(e.uri)}tS(tK,"create"),tU.create=tK,tS(tW,"is"),tU.is=tW;var tB=H||(H={});function tV(e,t){return{uri:e,version:t}}function tH(e){return eB.defined(e)&&eB.string(e.uri)&&eB.integer(e.version)}tS(tV,"create"),tB.create=tV,tS(tH,"is"),tB.is=tH;var tY=Y||(Y={});function tJ(e,t){return{uri:e,version:t}}function tX(e){return eB.defined(e)&&eB.string(e.uri)&&(null===e.version||eB.integer(e.version))}tS(tJ,"create"),tY.create=tJ,tS(tX,"is"),tY.is=tX;var tZ=J||(J={});function tQ(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}}function t0(e){return eB.defined(e)&&eB.string(e.uri)&&eB.string(e.languageId)&&eB.integer(e.version)&&eB.string(e.text)}tS(tQ,"create"),tZ.create=tQ,tS(t0,"is"),tZ.is=t0;var t1=X||(X={});function t2(e){return e===t1.PlainText||e===t1.Markdown}t1.PlainText="plaintext",t1.Markdown="markdown",tS(t2,"is"),t1.is=t2;var t3=Z||(Z={});function t9(e){return eB.objectLiteral(e)&&X.is(e.kind)&&eB.string(e.value)}tS(t9,"is"),t3.is=t9,(n=Q||(Q={})).Text=1,n.Method=2,n.Function=3,n.Constructor=4,n.Field=5,n.Variable=6,n.Class=7,n.Interface=8,n.Module=9,n.Property=10,n.Unit=11,n.Value=12,n.Enum=13,n.Keyword=14,n.Snippet=15,n.Color=16,n.File=17,n.Reference=18,n.Folder=19,n.EnumMember=20,n.Constant=21,n.Struct=22,n.Event=23,n.Operator=24,n.TypeParameter=25,(i=ee||(ee={})).PlainText=1,i.Snippet=2,(et||(et={})).Deprecated=1;var t4=er||(er={});function t5(e,t,r){return{newText:e,insert:t,replace:r}}function t8(e){return e&&eB.string(e.newText)&&$.is(e.insert)&&$.is(e.replace)}tS(t5,"create"),t4.create=t5,tS(t8,"is"),t4.is=t8,(a=en||(en={})).asIs=1,a.adjustIndentation=2;var t7=ei||(ei={});function t6(e){return e&&(eB.string(e.detail)||void 0===e.detail)&&(eB.string(e.description)||void 0===e.description)}tS(t6,"is"),t7.is=t6;var re=ea||(ea={});function rt(e){return{label:e}}tS(rt,"create"),re.create=rt;var rr=es||(es={});function rn(e,t){return{items:e||[],isIncomplete:!!t}}tS(rn,"create"),rr.create=rn;var ri=eo||(eo={});function ra(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}function rs(e){return eB.string(e)||eB.objectLiteral(e)&&eB.string(e.language)&&eB.string(e.value)}tS(ra,"fromPlainText"),ri.fromPlainText=ra,tS(rs,"is"),ri.is=rs;var ro=el||(el={});function rl(e){return!!e&&eB.objectLiteral(e)&&(Z.is(e.contents)||eo.is(e.contents)||eB.typedArray(e.contents,eo.is))&&(void 0===e.range||$.is(e.range))}tS(rl,"is"),ro.is=rl;var ru=eu||(eu={});function rc(e,t){return t?{label:e,documentation:t}:{label:e}}tS(rc,"create"),ru.create=rc;var rp=ec||(ec={});function rd(e,t,...r){let n={label:e};return eB.defined(t)&&(n.documentation=t),eB.defined(r)?n.parameters=r:n.parameters=[],n}tS(rd,"create"),rp.create=rd,(s=ep||(ep={})).Text=1,s.Read=2,s.Write=3;var rf=ed||(ed={});function rh(e,t){let r={range:e};return eB.number(t)&&(r.kind=t),r}tS(rh,"create"),rf.create=rh,(o=ef||(ef={})).File=1,o.Module=2,o.Namespace=3,o.Package=4,o.Class=5,o.Method=6,o.Property=7,o.Field=8,o.Constructor=9,o.Enum=10,o.Interface=11,o.Function=12,o.Variable=13,o.Constant=14,o.String=15,o.Number=16,o.Boolean=17,o.Array=18,o.Object=19,o.Key=20,o.Null=21,o.EnumMember=22,o.Struct=23,o.Event=24,o.Operator=25,o.TypeParameter=26,(eh||(eh={})).Deprecated=1;var rm=em||(em={});function ry(e,t,r,n,i){let a={name:e,kind:t,location:{uri:n,range:r}};return i&&(a.containerName=i),a}tS(ry,"create"),rm.create=ry;var rg=ey||(ey={});function rv(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}}tS(rv,"create"),rg.create=rv;var rT=eg||(eg={});function rR(e,t,r,n,i,a){let s={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==a&&(s.children=a),s}function r$(e){return e&&eB.string(e.name)&&eB.number(e.kind)&&$.is(e.range)&&$.is(e.selectionRange)&&(void 0===e.detail||eB.string(e.detail))&&(void 0===e.deprecated||eB.boolean(e.deprecated))&&(void 0===e.children||Array.isArray(e.children))&&(void 0===e.tags||Array.isArray(e.tags))}tS(rR,"create"),rT.create=rR,tS(r$,"is"),rT.is=r$,(l=ev||(ev={})).Empty="",l.QuickFix="quickfix",l.Refactor="refactor",l.RefactorExtract="refactor.extract",l.RefactorInline="refactor.inline",l.RefactorRewrite="refactor.rewrite",l.Source="source",l.SourceOrganizeImports="source.organizeImports",l.SourceFixAll="source.fixAll",(u=eT||(eT={})).Invoked=1,u.Automatic=2;var rb=eR||(eR={});function rE(e,t,r){let n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n}function rC(e){return eB.defined(e)&&eB.typedArray(e.diagnostics,P.is)&&(void 0===e.only||eB.typedArray(e.only,eB.string))&&(void 0===e.triggerKind||e.triggerKind===eT.Invoked||e.triggerKind===eT.Automatic)}tS(rE,"create"),rb.create=rE,tS(rC,"is"),rb.is=rC;var rA=e$||(e$={});function rS(e,t,r){let n={title:e},i=!0;return"string"==typeof t?(i=!1,n.kind=t):O.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n}function rk(e){return e&&eB.string(e.title)&&(void 0===e.diagnostics||eB.typedArray(e.diagnostics,P.is))&&(void 0===e.kind||eB.string(e.kind))&&(void 0!==e.edit||void 0!==e.command)&&(void 0===e.command||O.is(e.command))&&(void 0===e.isPreferred||eB.boolean(e.isPreferred))&&(void 0===e.edit||U.is(e.edit))}tS(rS,"create"),rA.create=rS,tS(rk,"is"),rA.is=rk;var rx=eb||(eb={});function rN(e,t){let r={range:e};return eB.defined(t)&&(r.data=t),r}function rw(e){return eB.defined(e)&&$.is(e.range)&&(eB.undefined(e.command)||O.is(e.command))}tS(rN,"create"),rx.create=rN,tS(rw,"is"),rx.is=rw;var r_=eE||(eE={});function rI(e,t){return{tabSize:e,insertSpaces:t}}function rP(e){return eB.defined(e)&&eB.uinteger(e.tabSize)&&eB.boolean(e.insertSpaces)}tS(rI,"create"),r_.create=rI,tS(rP,"is"),r_.is=rP;var rO=eC||(eC={});function rD(e,t,r){return{range:e,target:t,data:r}}function rL(e){return eB.defined(e)&&$.is(e.range)&&(eB.undefined(e.target)||eB.string(e.target))}tS(rD,"create"),rO.create=rD,tS(rL,"is"),rO.is=rL;var rM=eA||(eA={});function rj(e,t){return{range:e,parent:t}}function rF(e){return eB.objectLiteral(e)&&$.is(e.range)&&(void 0===e.parent||rM.is(e.parent))}tS(rj,"create"),rM.create=rj,tS(rF,"is"),rM.is=rF,(c=eS||(eS={})).namespace="namespace",c.type="type",c.class="class",c.enum="enum",c.interface="interface",c.struct="struct",c.typeParameter="typeParameter",c.parameter="parameter",c.variable="variable",c.property="property",c.enumMember="enumMember",c.event="event",c.function="function",c.method="method",c.macro="macro",c.keyword="keyword",c.modifier="modifier",c.comment="comment",c.string="string",c.number="number",c.regexp="regexp",c.operator="operator",c.decorator="decorator",(p=ek||(ek={})).declaration="declaration",p.definition="definition",p.readonly="readonly",p.static="static",p.deprecated="deprecated",p.abstract="abstract",p.async="async",p.modification="modification",p.documentation="documentation",p.defaultLibrary="defaultLibrary";var rz=ex||(ex={});function rq(e){return eB.objectLiteral(e)&&(void 0===e.resultId||"string"==typeof e.resultId)&&Array.isArray(e.data)&&(0===e.data.length||"number"==typeof e.data[0])}tS(rq,"is"),rz.is=rq;var rG=eN||(eN={});function rU(e,t){return{range:e,text:t}}function rK(e){return null!=e&&$.is(e.range)&&eB.string(e.text)}tS(rU,"create"),rG.create=rU,tS(rK,"is"),rG.is=rK;var rW=ew||(ew={});function rB(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}}function rV(e){return null!=e&&$.is(e.range)&&eB.boolean(e.caseSensitiveLookup)&&(eB.string(e.variableName)||void 0===e.variableName)}tS(rB,"create"),rW.create=rB,tS(rV,"is"),rW.is=rV;var rH=e_||(e_={});function rY(e,t){return{range:e,expression:t}}function rJ(e){return null!=e&&$.is(e.range)&&(eB.string(e.expression)||void 0===e.expression)}tS(rY,"create"),rH.create=rY,tS(rJ,"is"),rH.is=rJ;var rX=eI||(eI={});function rZ(e,t){return{frameId:e,stoppedLocation:t}}function rQ(e){return eB.defined(e)&&$.is(e.stoppedLocation)}tS(rZ,"create"),rX.create=rZ,tS(rQ,"is"),rX.is=rQ;var r0=eP||(eP={});function r1(e){return 1===e||2===e}r0.Type=1,r0.Parameter=2,tS(r1,"is"),r0.is=r1;var r2=eO||(eO={});function r3(e){return{value:e}}function r9(e){return eB.objectLiteral(e)&&(void 0===e.tooltip||eB.string(e.tooltip)||Z.is(e.tooltip))&&(void 0===e.location||b.is(e.location))&&(void 0===e.command||O.is(e.command))}tS(r3,"create"),r2.create=r3,tS(r9,"is"),r2.is=r9;var r4=eD||(eD={});function r5(e,t,r){let n={position:e,label:t};return void 0!==r&&(n.kind=r),n}function r8(e){return eB.objectLiteral(e)&&R.is(e.position)&&(eB.string(e.label)||eB.typedArray(e.label,eO.is))&&(void 0===e.kind||eP.is(e.kind))&&void 0===e.textEdits||eB.typedArray(e.textEdits,D.is)&&(void 0===e.tooltip||eB.string(e.tooltip)||Z.is(e.tooltip))&&(void 0===e.paddingLeft||eB.boolean(e.paddingLeft))&&(void 0===e.paddingRight||eB.boolean(e.paddingRight))}tS(r5,"create"),r4.create=r5,tS(r8,"is"),r4.is=r8;var r7=eL||(eL={});function r6(e){return{kind:"snippet",value:e}}tS(r6,"createSnippet"),r7.createSnippet=r6;var ne=eM||(eM={});function nt(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}}tS(nt,"create"),ne.create=nt;var nr=ej||(ej={});function nn(e){return{items:e}}tS(nn,"create"),nr.create=nn,(d=eF||(eF={})).Invoked=0,d.Automatic=1;var ni=ez||(ez={});function na(e,t){return{range:e,text:t}}tS(na,"create"),ni.create=na;var ns=eq||(eq={});function no(e,t){return{triggerKind:e,selectedCompletionInfo:t}}tS(no,"create"),ns.create=no;var nl=eG||(eG={});function nu(e){return eB.objectLiteral(e)&&g.is(e.uri)&&eB.string(e.name)}tS(nu,"is"),nl.is=nu,eU=["\n","\r\n","\r"],function(e){function t(e,t,r,n){return new eW(e,t,r,n)}function r(e){return!!(eB.defined(e)&&eB.string(e.uri)&&(eB.undefined(e.languageId)||eB.string(e.languageId))&&eB.uinteger(e.lineCount)&&eB.func(e.getText)&&eB.func(e.positionAt)&&eB.func(e.offsetAt))}function n(e,t){let r=e.getText(),n=i(t,(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),a=r.length;for(let t=n.length-1;t>=0;t--){let i=n[t],s=e.offsetAt(i.range.start),o=e.offsetAt(i.range.end);if(o<=a)r=r.substring(0,s)+i.newText+r.substring(o,r.length);else throw Error("Overlapping edit");a=s}return r}function i(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),a=e.slice(r);i(n,t),i(a,t);let s=0,o=0,l=0;for(;s<n.length&&o<a.length;)0>=t(n[s],a[o])?e[l++]=n[s++]:e[l++]=a[o++];for(;s<n.length;)e[l++]=n[s++];for(;o<a.length;)e[l++]=a[o++];return e}tS(t,"create"),e.create=t,tS(r,"is"),e.is=r,tS(n,"applyEdits"),e.applyEdits=n,tS(i,"mergeSort")}(eK||(eK={})),eW=class{static{tS(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return R.create(0,e);for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return R.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}},function(e){let t=Object.prototype.toString;function r(e){return void 0!==e}function n(e){return void 0===e}function i(e){return!0===e||!1===e}function a(e){return"[object String]"===t.call(e)}function s(e){return"[object Number]"===t.call(e)}function o(e,r,n){return"[object Number]"===t.call(e)&&r<=e&&e<=n}function l(e){return"[object Number]"===t.call(e)&&-0x80000000<=e&&e<=0x7fffffff}function u(e){return"[object Number]"===t.call(e)&&0<=e&&e<=0x7fffffff}function c(e){return"[object Function]"===t.call(e)}function p(e){return null!==e&&"object"==typeof e}function d(e,t){return Array.isArray(e)&&e.every(t)}tS(r,"defined"),e.defined=r,tS(n,"undefined"),e.undefined=n,tS(i,"boolean"),e.boolean=i,tS(a,"string"),e.string=a,tS(s,"number"),e.number=s,tS(o,"numberRange"),e.numberRange=o,tS(l,"integer"),e.integer=l,tS(u,"uinteger"),e.uinteger=u,tS(c,"func"),e.func=c,tS(p,"objectLiteral"),e.objectLiteral=p,tS(d,"typedArray"),e.typedArray=d}(eB||(eB={}))}},function(){return n&&(i=(0,n[tE(n)[0]])(n=0)),i}),tD=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(e){function t(){if(void 0===r)throw Error("No runtime abstraction layer installed");return r}Object.defineProperty(e,"__esModule",{value:!0}),tS(t,"RAL");var r,n=t||(t={});function i(e){if(void 0===e)throw Error("No runtime abstraction layer provided");r=e}tS(i,"install"),n.install=i,e.default=t}}),tL=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}Object.defineProperty(e,"__esModule",{value:!0}),e.stringArray=e.array=e.func=e.error=e.number=e.string=e.boolean=void 0,tS(t,"boolean"),e.boolean=t,tS(r,"string"),e.string=r,tS(n,"number"),e.number=n,tS(i,"error"),e.error=i,tS(a,"func"),e.func=a,tS(s,"array"),e.array=s,tS(o,"stringArray"),e.stringArray=o}}),tM=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(e){let t;Object.defineProperty(e,"__esModule",{value:!0}),e.Emitter=e.Event=void 0;var r,n,i=tD();r=n||(e.Event=n={}),t={dispose(){}},r.None=function(){return t};var a=class{static{tS(this,"CallbackList")}add(e,t=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(r)&&r.push({dispose:tS(()=>this.remove(e,t),"dispose")})}remove(e,t=null){if(!this._callbacks)return;let r=!1;for(let n=0,i=this._callbacks.length;n<i;n++)if(this._callbacks[n]===e)if(this._contexts[n]===t){this._callbacks.splice(n,1),this._contexts.splice(n,1);return}else r=!0;if(r)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let t=[],r=this._callbacks.slice(0),n=this._contexts.slice(0);for(let a=0,s=r.length;a<s;a++)try{t.push(r[a].apply(n[a],e))}catch(e){(0,i.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}},s=class e{static{tS(this,"Emitter")}constructor(e){this._options=e}get event(){return this._event||(this._event=(t,r,n)=>{this._callbacks||(this._callbacks=new a),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,r);let i={dispose:tS(()=>{this._callbacks&&(this._callbacks.remove(t,r),i.dispose=e._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};e.Emitter=s,s._noop=function(){}}}),tj=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CancellationTokenSource=e.CancellationToken=void 0;var t,r=tD(),n=tL(),i=tM(),a=t||(e.CancellationToken=t={});function s(e){return e&&(e===a.None||e===a.Cancelled||n.boolean(e.isCancellationRequested)&&!!e.onCancellationRequested)}a.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:i.Event.None}),a.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:i.Event.None}),tS(s,"is"),a.is=s;var o=Object.freeze(function(e,t){let n=(0,r.default)().timer.setTimeout(e.bind(t),0);return{dispose(){n.dispose()}}}),l=class{static{tS(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?o:(this._emitter||(this._emitter=new i.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}};e.CancellationTokenSource=class{static{tS(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new l),this._token}cancel(){this._token?this._token.cancel():this._token=t.Cancelled}dispose(){this._token?this._token instanceof l&&this._token.dispose():this._token=t.None}}}}),tF=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Message=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType=e.RequestType0=e.AbstractMessageSignature=e.ParameterStructures=e.ResponseError=e.ErrorCodes=void 0;var t,r,n,i=tL();(t=r||(e.ErrorCodes=r={})).ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3,e.ResponseError=class e extends Error{static{tS(this,"ResponseError")}constructor(t,n,a){super(n),this.code=i.number(t)?t:r.UnknownErrorCode,this.data=a,Object.setPrototypeOf(this,e.prototype)}toJson(){let e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data),e}};var a=class e{static{tS(this,"ParameterStructures")}constructor(e){this.kind=e}static is(t){return t===e.auto||t===e.byName||t===e.byPosition}toString(){return this.kind}};e.ParameterStructures=a,a.auto=new a("auto"),a.byPosition=new a("byPosition"),a.byName=new a("byName");var s=class{static{tS(this,"AbstractMessageSignature")}constructor(e,t){this.method=e,this.numberOfParams=t}get parameterStructures(){return a.auto}};e.AbstractMessageSignature=s,e.RequestType0=class extends s{static{tS(this,"RequestType0")}constructor(e){super(e,0)}},e.RequestType=class extends s{static{tS(this,"RequestType")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType1=class extends s{static{tS(this,"RequestType1")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType2=class extends s{static{tS(this,"RequestType2")}constructor(e){super(e,2)}},e.RequestType3=class extends s{static{tS(this,"RequestType3")}constructor(e){super(e,3)}},e.RequestType4=class extends s{static{tS(this,"RequestType4")}constructor(e){super(e,4)}},e.RequestType5=class extends s{static{tS(this,"RequestType5")}constructor(e){super(e,5)}},e.RequestType6=class extends s{static{tS(this,"RequestType6")}constructor(e){super(e,6)}},e.RequestType7=class extends s{static{tS(this,"RequestType7")}constructor(e){super(e,7)}},e.RequestType8=class extends s{static{tS(this,"RequestType8")}constructor(e){super(e,8)}},e.RequestType9=class extends s{static{tS(this,"RequestType9")}constructor(e){super(e,9)}},e.NotificationType=class extends s{static{tS(this,"NotificationType")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType0=class extends s{static{tS(this,"NotificationType0")}constructor(e){super(e,0)}},e.NotificationType1=class extends s{static{tS(this,"NotificationType1")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType2=class extends s{static{tS(this,"NotificationType2")}constructor(e){super(e,2)}},e.NotificationType3=class extends s{static{tS(this,"NotificationType3")}constructor(e){super(e,3)}},e.NotificationType4=class extends s{static{tS(this,"NotificationType4")}constructor(e){super(e,4)}},e.NotificationType5=class extends s{static{tS(this,"NotificationType5")}constructor(e){super(e,5)}},e.NotificationType6=class extends s{static{tS(this,"NotificationType6")}constructor(e){super(e,6)}},e.NotificationType7=class extends s{static{tS(this,"NotificationType7")}constructor(e){super(e,7)}},e.NotificationType8=class extends s{static{tS(this,"NotificationType8")}constructor(e){super(e,8)}},e.NotificationType9=class extends s{static{tS(this,"NotificationType9")}constructor(e){super(e,9)}},function(e){function t(e){return e&&i.string(e.method)&&(i.string(e.id)||i.number(e.id))}function r(e){return e&&i.string(e.method)&&void 0===e.id}function n(e){return e&&(void 0!==e.result||!!e.error)&&(i.string(e.id)||i.number(e.id)||null===e.id)}tS(t,"isRequest"),e.isRequest=t,tS(r,"isNotification"),e.isNotification=r,tS(n,"isResponse"),e.isResponse=n}(n||(e.Message=n={}))}}),tz=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LRUCache=e.LinkedMap=e.Touch=void 0,(t=n||(e.Touch=n={})).None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last;var t,r,n,i=class{static{tS(this,"LinkedMap")}constructor(){this[r]="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(e){return this._map.has(e)}get(e,t=n.None){let r=this._map.get(e);if(r)return t!==n.None&&this.touch(r,t),r.value}set(e,t,r=n.None){let i=this._map.get(e);if(i)i.value=t,r!==n.None&&this.touch(i,r);else{switch(i={key:e,value:t,next:void 0,previous:void 0},r){case n.None:this.addItemLast(i);break;case n.First:this.addItemFirst(i);break;case n.Last:default:this.addItemLast(i)}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){let r=this._state,n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==r)throw Error("LinkedMap got modified during iteration.");n=n.next}}keys(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tS(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:t.key,done:!1};return t=t.next,e}},"next")};return r}values(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tS(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:t.value,done:!1};return t=t.next,e}},"next")};return r}entries(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tS(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:[t.key,t.value],done:!1};return t=t.next,e}},"next")};return r}[(r=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.next,r--;this._head=t,this._size=r,t&&(t.previous=void 0),this._state++}addItemFirst(e){if(this._head||this._tail)if(this._head)e.next=this._head,this._head.previous=e;else throw Error("Invalid list");else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail)if(this._tail)e.previous=this._tail,this._tail.next=e;else throw Error("Invalid list");else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let t=e.next,r=e.previous;if(!t||!r)throw Error("Invalid list");t.previous=r,r.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw Error("Invalid list");if(t===n.First||t===n.Last){if(t===n.First){if(e===this._head)return;let t=e.next,r=e.previous;e===this._tail?(r.next=void 0,this._tail=r):(t.previous=r,r.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===n.Last){if(e===this._tail)return;let t=e.next,r=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=r,r.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((t,r)=>{e.push([r,t])}),e}fromJSON(e){for(let[t,r]of(this.clear(),e))this.set(t,r)}};e.LinkedMap=i,e.LRUCache=class extends i{static{tS(this,"LRUCache")}constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,t=n.AsNew){return super.get(e,t)}peek(e){return super.get(e,n.None)}set(e,t){return super.set(e,t,n.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}}}),tq=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Disposable=void 0;var t,r=t||(e.Disposable=t={});function n(e){return{dispose:e}}tS(n,"create"),r.create=n}}),tG=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=void 0;var t,r,n=tj();(t=r||(r={})).Continue=0,t.Cancelled=1,e.SharedArraySenderStrategy=class{static{tS(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(e){if(null===e.id)return;let t=new SharedArrayBuffer(4);new Int32Array(t,0,1)[0]=r.Continue,this.buffers.set(e.id,t),e.$cancellationData=t}async sendCancellation(e,t){let n=this.buffers.get(t);if(void 0===n)return;let i=new Int32Array(n,0,1);Atomics.store(i,0,r.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};var i=class{static{tS(this,"SharedArrayBufferCancellationToken")}constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===r.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},a=class{static{tS(this,"SharedArrayBufferCancellationTokenSource")}constructor(e){this.token=new i(e)}cancel(){}dispose(){}};e.SharedArrayReceiverStrategy=class{static{tS(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(e){let t=e.$cancellationData;return void 0===t?new n.CancellationTokenSource:new a(t)}}}}),tU=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Semaphore=void 0;var t=tD();e.Semaphore=class{static{tS(this,"Semaphore")}constructor(e=1){if(e<=0)throw Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((t,r)=>{this._waiting.push({thunk:e,resolve:t,reject:r}),this.runNext()})}get active(){return this._active}runNext(){0!==this._waiting.length&&this._active!==this._capacity&&(0,t.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(0===this._waiting.length||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let t=e.thunk();t instanceof Promise?t.then(t=>{this._active--,e.resolve(t),this.runNext()},t=>{this._active--,e.reject(t),this.runNext()}):(this._active--,e.resolve(t),this.runNext())}catch(t){this._active--,e.reject(t),this.runNext()}}}}}),tK=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=void 0;var t,r,n=tD(),i=tL(),a=tM(),s=tU(),o=t||(e.MessageReader=t={});function l(e){return e&&i.func(e.listen)&&i.func(e.dispose)&&i.func(e.onError)&&i.func(e.onClose)&&i.func(e.onPartialMessage)}tS(l,"is"),o.is=l;var u=class{static{tS(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new a.Emitter,this.closeEmitter=new a.Emitter,this.partialMessageEmitter=new a.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:Error(`Reader received error. Reason: ${i.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageReader=u;var c=r||(r={});function p(e){let t,r,i,a=new Map,s=new Map;if(void 0===e||"string"==typeof e)t=e??"utf-8";else{if(t=e.charset??"utf-8",void 0!==e.contentDecoder&&(r=e.contentDecoder,a.set(r.name,r)),void 0!==e.contentDecoders)for(let t of e.contentDecoders)a.set(t.name,t);if(void 0!==e.contentTypeDecoder&&(i=e.contentTypeDecoder,s.set(i.name,i)),void 0!==e.contentTypeDecoders)for(let t of e.contentTypeDecoders)s.set(t.name,t)}return void 0===i&&(i=(0,n.default)().applicationJson.decoder,s.set(i.name,i)),{charset:t,contentDecoder:r,contentDecoders:a,contentTypeDecoder:i,contentTypeDecoders:s}}tS(p,"fromOptions"),c.fromOptions=p,e.ReadableStreamMessageReader=class extends u{static{tS(this,"ReadableStreamMessageReader")}constructor(e,t){super(),this.readable=e,this.options=r.fromOptions(t),this.buffer=(0,n.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new s.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let t=this.readable.onData(e=>{this.onData(e)});return this.readable.onError(e=>this.fireError(e)),this.readable.onClose(()=>this.fireClose()),t}onData(e){try{for(this.buffer.append(e);;){if(-1===this.nextMessageLength){let e=this.buffer.tryReadHeaders(!0);if(!e)return;let t=e.get("content-length");if(!t)return void this.fireError(Error(`Header must provide a Content-Length property.
2
+ ${JSON.stringify(Object.fromEntries(e))}`));let r=parseInt(t);if(isNaN(r))return void this.fireError(Error(`Content-Length value must be a number. Got ${t}`));this.nextMessageLength=r}let e=this.buffer.tryReadBody(this.nextMessageLength);if(void 0===e)return void this.setPartialMessageTimer();this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let t=void 0!==this.options.contentDecoder?await this.options.contentDecoder.decode(e):e,r=await this.options.contentTypeDecoder.decode(t,this.options);this.callback(r)}).catch(e=>{this.fireError(e)})}}catch(e){this.fireError(e)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),this._partialMessageTimeout<=0||(this.partialMessageTimer=(0,n.default)().timer.setTimeout((e,t)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:t}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}}}}),tW=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=void 0;var t,r,n=tD(),i=tL(),a=tU(),s=tM(),o=t||(e.MessageWriter=t={});function l(e){return e&&i.func(e.dispose)&&i.func(e.onClose)&&i.func(e.onError)&&i.func(e.write)}tS(l,"is"),o.is=l;var u=class{static{tS(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new s.Emitter,this.closeEmitter=new s.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,t,r){this.errorEmitter.fire([this.asError(e),t,r])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:Error(`Writer received error. Reason: ${i.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageWriter=u;var c=r||(r={});function p(e){return void 0===e||"string"==typeof e?{charset:e??"utf-8",contentTypeEncoder:(0,n.default)().applicationJson.encoder}:{charset:e.charset??"utf-8",contentEncoder:e.contentEncoder,contentTypeEncoder:e.contentTypeEncoder??(0,n.default)().applicationJson.encoder}}tS(p,"fromOptions"),c.fromOptions=p,e.WriteableStreamMessageWriter=class extends u{static{tS(this,"WriteableStreamMessageWriter")}constructor(e,t){super(),this.writable=e,this.options=r.fromOptions(t),this.errorCount=0,this.writeSemaphore=new a.Semaphore(1),this.writable.onError(e=>this.fireError(e)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(e=>void 0!==this.options.contentEncoder?this.options.contentEncoder.encode(e):e).then(t=>{let r=[];return r.push("Content-Length: ",t.byteLength.toString(),"\r\n"),r.push("\r\n"),this.doWrite(e,r,t)},e=>{throw this.fireError(e),e}))}async doWrite(e,t,r){try{return await this.writable.write(t.join(""),"ascii"),this.writable.write(r)}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){this.writable.end()}}}}),tB=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMessageBuffer=void 0,e.AbstractMessageBuffer=class{static{tS(this,"AbstractMessageBuffer")}constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let t="string"==typeof e?this.fromString(e,this._encoding):e;this._chunks.push(t),this._totalLength+=t.byteLength}tryReadHeaders(e=!1){if(0===this._chunks.length)return;let t=0,r=0,n=0,i=0;e:for(;r<this._chunks.length;){let e=this._chunks[r];for(n=0;n<e.length;){switch(e[n]){case 13:switch(t){case 0:t=1;break;case 2:t=3;break;default:t=0}break;case 10:switch(t){case 1:t=2;break;case 3:t=4,n++;break e;default:t=0}break;default:t=0}n++}i+=e.byteLength,r++}if(4!==t)return;let a=this._read(i+n),s=new Map,o=this.toString(a,"ascii").split("\r\n");if(o.length<2)return s;for(let t=0;t<o.length-2;t++){let r=o[t],n=r.indexOf(":");if(-1===n)throw Error(`Message header must separate key and value using ':'
3
+ ${r}`);let i=r.substr(0,n),a=r.substr(n+1).trim();s.set(e?i.toLowerCase():i,a)}return s}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(0===e)return this.emptyBuffer();if(e>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let t=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(t)}if(this._chunks[0].byteLength>e){let t=this._chunks[0],r=this.asNative(t,e);return this._chunks[0]=t.slice(e),this._totalLength-=e,r}let t=this.allocNative(e),r=0;for(;e>0;){let n=this._chunks[0];if(n.byteLength>e){let i=n.slice(0,e);t.set(i,r),r+=e,this._chunks[0]=n.slice(e),this._totalLength-=e,e-=e}else t.set(n,r),r+=n.byteLength,this._chunks.shift(),this._totalLength-=n.byteLength,e-=n.byteLength}return t}}}}),tV=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createMessageConnection=e.ConnectionOptions=e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.ConnectionStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.Trace=e.NullLogger=e.ProgressType=e.ProgressToken=void 0;var t,r,n,i,a,s,o,l,u,c,p,d,f,h,m,y,g,v,T,R,$,b,E,C,A=tD(),S=tL(),k=tF(),x=tz(),N=tM(),w=tj();(s||(s={})).type=new k.NotificationType("$/cancelRequest");var _=o||(e.ProgressToken=o={});function I(e){return"string"==typeof e||"number"==typeof e}tS(I,"is"),_.is=I,(l||(l={})).type=new k.NotificationType("$/progress"),e.ProgressType=class{static{tS(this,"ProgressType")}};var P=u||(u={});function O(e){return S.func(e)}tS(O,"is"),P.is=O,e.NullLogger=Object.freeze({error:tS(()=>{},"error"),warn:tS(()=>{},"warn"),info:tS(()=>{},"info"),log:tS(()=>{},"log")}),(t=c||(e.Trace=c={}))[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose",(r=p||(e.TraceValues=p={})).Off="off",r.Messages="messages",r.Compact="compact",r.Verbose="verbose";var D=c||(e.Trace=c={});function L(e){if(!S.string(e))return D.Off;switch(e=e.toLowerCase()){case"off":default:return D.Off;case"messages":return D.Messages;case"compact":return D.Compact;case"verbose":return D.Verbose}}function M(e){switch(e){case D.Off:return"off";case D.Messages:return"messages";case D.Compact:return"compact";case D.Verbose:return"verbose";default:return"off"}}tS(L,"fromString"),D.fromString=L,tS(M,"toString"),D.toString=M,(n=d||(e.TraceFormat=d={})).Text="text",n.JSON="json";var j=d||(e.TraceFormat=d={});function F(e){return S.string(e)&&"json"===(e=e.toLowerCase())?j.JSON:j.Text}tS(F,"fromString"),j.fromString=F,(f||(e.SetTraceNotification=f={})).type=new k.NotificationType("$/setTrace"),(h||(e.LogTraceNotification=h={})).type=new k.NotificationType("$/logTrace"),(i=m||(e.ConnectionErrors=m={}))[i.Closed=1]="Closed",i[i.Disposed=2]="Disposed",i[i.AlreadyListening=3]="AlreadyListening";var z=class e extends Error{static{tS(this,"ConnectionError")}constructor(t,r){super(r),this.code=t,Object.setPrototypeOf(this,e.prototype)}};e.ConnectionError=z;var q=y||(e.ConnectionStrategy=y={});function G(e){return e&&S.func(e.cancelUndispatched)}tS(G,"is"),q.is=G;var U=g||(e.IdCancellationReceiverStrategy=g={});function K(e){return e&&(void 0===e.kind||"id"===e.kind)&&S.func(e.createCancellationTokenSource)&&(void 0===e.dispose||S.func(e.dispose))}tS(K,"is"),U.is=K;var W=v||(e.RequestCancellationReceiverStrategy=v={});function B(e){return e&&"request"===e.kind&&S.func(e.createCancellationTokenSource)&&(void 0===e.dispose||S.func(e.dispose))}tS(B,"is"),W.is=B;var V=T||(e.CancellationReceiverStrategy=T={});function H(e){return g.is(e)||v.is(e)}V.Message=Object.freeze({createCancellationTokenSource:e=>new w.CancellationTokenSource}),tS(H,"is"),V.is=H;var Y=R||(e.CancellationSenderStrategy=R={});function J(e){return e&&S.func(e.sendCancellation)&&S.func(e.cleanup)}Y.Message=Object.freeze({sendCancellation:(e,t)=>e.sendNotification(s.type,{id:t}),cleanup(e){}}),tS(J,"is"),Y.is=J;var X=$||(e.CancellationStrategy=$={});function Z(e){return e&&T.is(e.receiver)&&R.is(e.sender)}X.Message=Object.freeze({receiver:T.Message,sender:R.Message}),tS(Z,"is"),X.is=Z;var Q=b||(e.MessageStrategy=b={});function ee(e){return e&&S.func(e.handleMessage)}tS(ee,"is"),Q.is=ee;var et=E||(e.ConnectionOptions=E={});function er(e){return e&&($.is(e.cancellationStrategy)||y.is(e.connectionStrategy)||b.is(e.messageStrategy))}function en(t,r,n,i){let a,p,y,v,T=void 0!==n?n:e.NullLogger,R=0,E=0,_=0,I=new Map,P=new Map,O=new Map,D=new x.LinkedMap,L=new Map,M=new Set,j=new Map,F=c.Off,q=d.Text,G=C.New,U=new N.Emitter,K=new N.Emitter,W=new N.Emitter,B=new N.Emitter,V=new N.Emitter,H=i&&i.cancellationStrategy?i.cancellationStrategy:$.Message;function Y(e){if(null===e)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+e.toString()}function J(e){return null===e?"res-unknown-"+(++_).toString():"res-"+e.toString()}function X(){return"not-"+(++E).toString()}function Z(e,t){k.Message.isRequest(t)?e.set(Y(t.id),t):k.Message.isResponse(t)?e.set(J(t.id),t):e.set(X(),t)}function Q(e){}function ee(){return G===C.Listening}function et(){return G===C.Closed}function er(){return G===C.Disposed}function en(){(G===C.New||G===C.Listening)&&(G=C.Closed,K.fire(void 0))}function ei(e){U.fire([e,void 0,void 0])}function ea(e){U.fire(e)}function es(){a||0===D.size||(a=(0,A.default)().timer.setImmediate(()=>{a=void 0,el()}))}function eo(e){k.Message.isRequest(e)?ec(e):k.Message.isNotification(e)?ed(e):k.Message.isResponse(e)?ep(e):ef(e)}function el(){if(0===D.size)return;let e=D.shift();try{let t=i?.messageStrategy;b.is(t)?t.handleMessage(e,eo):eo(e)}finally{es()}}tS(Y,"createRequestQueueKey"),tS(J,"createResponseQueueKey"),tS(X,"createNotificationQueueKey"),tS(Z,"addMessageToQueue"),tS(Q,"cancelUndispatched"),tS(ee,"isListening"),tS(et,"isClosed"),tS(er,"isDisposed"),tS(en,"closeHandler"),tS(ei,"readErrorHandler"),tS(ea,"writeErrorHandler"),t.onClose(en),t.onError(ei),r.onClose(en),r.onError(ea),tS(es,"triggerMessageQueue"),tS(eo,"handleMessage"),tS(el,"processMessageQueue");let eu=tS(e=>{try{if(k.Message.isNotification(e)&&e.method===s.type.method){let t=e.params.id,n=Y(t),a=D.get(n);if(k.Message.isRequest(a)){let s=i?.connectionStrategy,o=s&&s.cancelUndispatched?s.cancelUndispatched(a,Q):Q(a);if(o&&(void 0!==o.error||void 0!==o.result)){D.delete(n),j.delete(t),o.id=a.id,eg(o,e.method,Date.now()),r.write(o).catch(()=>T.error("Sending response for canceled message failed."));return}}let s=j.get(t);if(void 0!==s){s.cancel(),eT(e);return}M.add(t)}Z(D,e)}finally{es()}},"callback");function ec(e){let t,n;if(er())return;function i(t,n,i){let a={jsonrpc:"2.0",id:e.id};t instanceof k.ResponseError?a.error=t.toJson():a.result=void 0===t?null:t,eg(a,n,i),r.write(a).catch(()=>T.error("Sending response failed."))}function a(t,n,i){let a={jsonrpc:"2.0",id:e.id,error:t.toJson()};eg(a,n,i),r.write(a).catch(()=>T.error("Sending response failed."))}function s(t,n,i){void 0===t&&(t=null);let a={jsonrpc:"2.0",id:e.id,result:t};eg(a,n,i),r.write(a).catch(()=>T.error("Sending response failed."))}tS(i,"reply"),tS(a,"replyError"),tS(s,"replySuccess"),ev(e);let o=I.get(e.method);o&&(t=o.type,n=o.handler);let l=Date.now();if(n||y){let r=e.id??String(Date.now()),o=g.is(H.receiver)?H.receiver.createCancellationTokenSource(r):H.receiver.createCancellationTokenSource(e);null!==e.id&&M.has(e.id)&&o.cancel(),null!==e.id&&j.set(r,o);try{let u;if(n)if(void 0===e.params){if(void 0!==t&&0!==t.numberOfParams)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines ${t.numberOfParams} params but received none.`),e.method,l);u=n(o.token)}else if(Array.isArray(e.params)){if(void 0!==t&&t.parameterStructures===k.ParameterStructures.byName)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by name but received parameters by position`),e.method,l);u=n(...e.params,o.token)}else{if(void 0!==t&&t.parameterStructures===k.ParameterStructures.byPosition)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by position but received parameters by name`),e.method,l);u=n(e.params,o.token)}else y&&(u=y(e.method,e.params,o.token));let c=u;u?c.then?c.then(t=>{j.delete(r),i(t,e.method,l)},t=>{j.delete(r),t instanceof k.ResponseError?a(t,e.method,l):t&&S.string(t.message)?a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,l):a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,l)}):(j.delete(r),i(u,e.method,l)):(j.delete(r),s(u,e.method,l))}catch(t){j.delete(r),t instanceof k.ResponseError?i(t,e.method,l):t&&S.string(t.message)?a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,l):a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,l)}}else a(new k.ResponseError(k.ErrorCodes.MethodNotFound,`Unhandled method ${e.method}`),e.method,l)}function ep(e){if(!er())if(null===e.id)e.error?T.error(`Received response message without id: Error is:
4
+ ${JSON.stringify(e.error,void 0,4)}`):T.error("Received response message without id. No further error information provided.");else{let t=e.id,r=L.get(t);if(eR(e,r),void 0!==r){L.delete(t);try{if(e.error){let t=e.error;r.reject(new k.ResponseError(t.code,t.message,t.data))}else if(void 0!==e.result)r.resolve(e.result);else throw Error("Should never happen.")}catch(e){e.message?T.error(`Response handler '${r.method}' failed with message: ${e.message}`):T.error(`Response handler '${r.method}' failed unexpectedly.`)}}}}function ed(e){let t,r;if(!er()){if(e.method===s.type.method){let t=e.params.id;M.delete(t),eT(e);return}{let n=P.get(e.method);n&&(t=n.handler,r=n.type)}if(t||v)try{if(eT(e),t)if(void 0===e.params)void 0!==r&&0!==r.numberOfParams&&r.parameterStructures!==k.ParameterStructures.byName&&T.error(`Notification ${e.method} defines ${r.numberOfParams} params but received none.`),t();else if(Array.isArray(e.params)){let n=e.params;e.method===l.type.method&&2===n.length&&o.is(n[0])?t({token:n[0],value:n[1]}):(void 0!==r&&(r.parameterStructures===k.ParameterStructures.byName&&T.error(`Notification ${e.method} defines parameters by name but received parameters by position`),r.numberOfParams!==e.params.length&&T.error(`Notification ${e.method} defines ${r.numberOfParams} params but received ${n.length} arguments`)),t(...n))}else void 0!==r&&r.parameterStructures===k.ParameterStructures.byPosition&&T.error(`Notification ${e.method} defines parameters by position but received parameters by name`),t(e.params);else v&&v(e.method,e.params)}catch(t){t.message?T.error(`Notification handler '${e.method}' failed with message: ${t.message}`):T.error(`Notification handler '${e.method}' failed unexpectedly.`)}else W.fire(e)}}function ef(e){if(!e)return void T.error("Received empty message.");if(T.error(`Received message which is neither a response nor a notification message:
5
+ ${JSON.stringify(e,null,4)}`),S.string(e.id)||S.number(e.id)){let t=e.id,r=L.get(t);r&&r.reject(Error("The received response has neither a result nor an error property."))}}function eh(e){if(null!=e)switch(F){case c.Verbose:return JSON.stringify(e,null,4);case c.Compact:return JSON.stringify(e);default:return}}function em(e){if(F!==c.Off&&p)if(q===d.Text){let t;(F===c.Verbose||F===c.Compact)&&e.params&&(t=`Params: ${eh(e.params)}
6
+
7
+ `),p.log(`Sending request '${e.method} - (${e.id})'.`,t)}else e$("send-request",e)}function ey(e){if(F!==c.Off&&p)if(q===d.Text){let t;(F===c.Verbose||F===c.Compact)&&(t=e.params?`Params: ${eh(e.params)}
8
+
9
+ `:"No parameters provided.\n\n"),p.log(`Sending notification '${e.method}'.`,t)}else e$("send-notification",e)}function eg(e,t,r){if(F!==c.Off&&p)if(q===d.Text){let n;(F===c.Verbose||F===c.Compact)&&(e.error&&e.error.data?n=`Error data: ${eh(e.error.data)}
10
+
11
+ `:e.result?n=`Result: ${eh(e.result)}
12
+
13
+ `:void 0===e.error&&(n="No result returned.\n\n")),p.log(`Sending response '${t} - (${e.id})'. Processing request took ${Date.now()-r}ms`,n)}else e$("send-response",e)}function ev(e){if(F!==c.Off&&p)if(q===d.Text){let t;(F===c.Verbose||F===c.Compact)&&e.params&&(t=`Params: ${eh(e.params)}
14
+
15
+ `),p.log(`Received request '${e.method} - (${e.id})'.`,t)}else e$("receive-request",e)}function eT(e){if(F!==c.Off&&p&&e.method!==h.type.method)if(q===d.Text){let t;(F===c.Verbose||F===c.Compact)&&(t=e.params?`Params: ${eh(e.params)}
16
+
17
+ `:"No parameters provided.\n\n"),p.log(`Received notification '${e.method}'.`,t)}else e$("receive-notification",e)}function eR(e,t){if(F!==c.Off&&p)if(q===d.Text){let r;if((F===c.Verbose||F===c.Compact)&&(e.error&&e.error.data?r=`Error data: ${eh(e.error.data)}
18
+
19
+ `:e.result?r=`Result: ${eh(e.result)}
20
+
21
+ `:void 0===e.error&&(r="No result returned.\n\n")),t){let n=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:"";p.log(`Received response '${t.method} - (${e.id})' in ${Date.now()-t.timerStart}ms.${n}`,r)}else p.log(`Received response ${e.id} without active response promise.`,r)}else e$("receive-response",e)}function e$(e,t){if(!p||F===c.Off)return;let r={isLSPMessage:!0,type:e,message:t,timestamp:Date.now()};p.log(r)}function eb(){if(et())throw new z(m.Closed,"Connection is closed.");if(er())throw new z(m.Disposed,"Connection is disposed.")}function eE(){if(ee())throw new z(m.AlreadyListening,"Connection is already listening")}function eC(){if(!ee())throw Error("Call listen() first.")}function eA(e){return void 0===e?null:e}function eS(e){if(null!==e)return e}function ek(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}function ex(e,t){switch(e){case k.ParameterStructures.auto:if(ek(t))return eS(t);return[eA(t)];case k.ParameterStructures.byName:if(!ek(t))throw Error("Received parameters by name but param is not an object literal.");return eS(t);case k.ParameterStructures.byPosition:return[eA(t)];default:throw Error(`Unknown parameter structure ${e.toString()}`)}}function eN(e,t){let r,n=e.numberOfParams;switch(n){case 0:r=void 0;break;case 1:r=ex(e.parameterStructures,t[0]);break;default:r=[];for(let e=0;e<t.length&&e<n;e++)r.push(eA(t[e]));if(t.length<n)for(let e=t.length;e<n;e++)r.push(null)}return r}tS(ec,"handleRequest"),tS(ep,"handleResponse"),tS(ed,"handleNotification"),tS(ef,"handleInvalidMessage"),tS(eh,"stringifyTrace"),tS(em,"traceSendingRequest"),tS(ey,"traceSendingNotification"),tS(eg,"traceSendingResponse"),tS(ev,"traceReceivedRequest"),tS(eT,"traceReceivedNotification"),tS(eR,"traceReceivedResponse"),tS(e$,"logLSPMessage"),tS(eb,"throwIfClosedOrDisposed"),tS(eE,"throwIfListening"),tS(eC,"throwIfNotListening"),tS(eA,"undefinedToNull"),tS(eS,"nullToUndefined"),tS(ek,"isNamedParam"),tS(ex,"computeSingleParam"),tS(eN,"computeMessageParams");let ew={sendNotification:tS((e,...t)=>{let n,i;if(eb(),S.string(e)){n=e;let r=t[0],a=0,s=k.ParameterStructures.auto;k.ParameterStructures.is(r)&&(a=1,s=r);let o=t.length,l=o-a;switch(l){case 0:i=void 0;break;case 1:i=ex(s,t[a]);break;default:if(s===k.ParameterStructures.byName)throw Error(`Received ${l} parameters for 'by Name' notification parameter structure.`);i=t.slice(a,o).map(e=>eA(e))}}else n=e.method,i=eN(e,t);let a={jsonrpc:"2.0",method:n,params:i};return ey(a),r.write(a).catch(e=>{throw T.error("Sending notification failed."),e})},"sendNotification"),onNotification:tS((e,t)=>{let r;return eb(),S.func(e)?v=e:t&&(S.string(e)?(r=e,P.set(e,{type:void 0,handler:t})):(r=e.method,P.set(e.method,{type:e,handler:t}))),{dispose:tS(()=>{void 0!==r?P.delete(r):v=void 0},"dispose")}},"onNotification"),onProgress:tS((e,t,r)=>{if(O.has(t))throw Error(`Progress handler for token ${t} already registered`);return O.set(t,r),{dispose:tS(()=>{O.delete(t)},"dispose")}},"onProgress"),sendProgress:tS((e,t,r)=>ew.sendNotification(l.type,{token:t,value:r}),"sendProgress"),onUnhandledProgress:B.event,sendRequest:tS((e,...t)=>{let n,i,a,s;if(eb(),eC(),S.string(e)){n=e;let r=t[0],a=t[t.length-1],o=0,l=k.ParameterStructures.auto;k.ParameterStructures.is(r)&&(o=1,l=r);let u=t.length;w.CancellationToken.is(a)&&(u-=1,s=a);let c=u-o;switch(c){case 0:i=void 0;break;case 1:i=ex(l,t[o]);break;default:if(l===k.ParameterStructures.byName)throw Error(`Received ${c} parameters for 'by Name' request parameter structure.`);i=t.slice(o,u).map(e=>eA(e))}}else{n=e.method,i=eN(e,t);let r=e.numberOfParams;s=w.CancellationToken.is(t[r])?t[r]:void 0}let o=R++;s&&(a=s.onCancellationRequested(()=>{let e=H.sender.sendCancellation(ew,o);return void 0===e?(T.log(`Received no promise from cancellation strategy when cancelling id ${o}`),Promise.resolve()):e.catch(()=>{T.log(`Sending cancellation messages for id ${o} failed`)})}));let l={jsonrpc:"2.0",id:o,method:n,params:i};return em(l),"function"==typeof H.sender.enableCancellation&&H.sender.enableCancellation(l),new Promise(async(e,t)=>{let i=tS(t=>{e(t),H.sender.cleanup(o),a?.dispose()},"resolveWithCleanup"),s=tS(e=>{t(e),H.sender.cleanup(o),a?.dispose()},"rejectWithCleanup"),u={method:n,timerStart:Date.now(),resolve:i,reject:s};try{await r.write(l),L.set(o,u)}catch(e){throw T.error("Sending request failed."),u.reject(new k.ResponseError(k.ErrorCodes.MessageWriteError,e.message?e.message:"Unknown reason")),e}})},"sendRequest"),onRequest:tS((e,t)=>{eb();let r=null;return u.is(e)?(r=void 0,y=e):S.string(e)?(r=null,void 0!==t&&(r=e,I.set(e,{handler:t,type:void 0}))):void 0!==t&&(r=e.method,I.set(e.method,{type:e,handler:t})),{dispose:tS(()=>{null!==r&&(void 0!==r?I.delete(r):y=void 0)},"dispose")}},"onRequest"),hasPendingResponse:tS(()=>L.size>0,"hasPendingResponse"),trace:tS(async(e,t,r)=>{let n=!1,i=d.Text;void 0!==r&&(S.boolean(r)?n=r:(n=r.sendNotification||!1,i=r.traceFormat||d.Text)),F=e,q=i,p=F===c.Off?void 0:t,!n||et()||er()||await ew.sendNotification(f.type,{value:c.toString(e)})},"trace"),onError:U.event,onClose:K.event,onUnhandledNotification:W.event,onDispose:V.event,end:tS(()=>{r.end()},"end"),dispose:tS(()=>{if(er())return;G=C.Disposed,V.fire(void 0);let e=new k.ResponseError(k.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let t of L.values())t.reject(e);L=new Map,j=new Map,M=new Set,D=new x.LinkedMap,S.func(r.dispose)&&r.dispose(),S.func(t.dispose)&&t.dispose()},"dispose"),listen:tS(()=>{eb(),eE(),G=C.Listening,t.listen(eu)},"listen"),inspect:tS(()=>{(0,A.default)().console.log("inspect")},"inspect")};return ew.onNotification(h.type,e=>{if(F===c.Off||!p)return;let t=F===c.Verbose||F===c.Compact;p.log(e.message,t?e.verbose:void 0)}),ew.onNotification(l.type,e=>{let t=O.get(e.token);t?t(e.value):B.fire(e)}),ew}tS(er,"is"),et.is=er,(a=C||(C={}))[a.New=1]="New",a[a.Listening=2]="Listening",a[a.Closed=3]="Closed",a[a.Disposed=4]="Disposed",tS(en,"createMessageConnection"),e.createMessageConnection=en}}),tH=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ProgressType=e.ProgressToken=e.createMessageConnection=e.NullLogger=e.ConnectionOptions=e.ConnectionStrategy=e.AbstractMessageBuffer=e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=e.CancellationToken=e.CancellationTokenSource=e.Emitter=e.Event=e.Disposable=e.LRUCache=e.Touch=e.LinkedMap=e.ParameterStructures=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.ErrorCodes=e.ResponseError=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType0=e.RequestType=e.Message=e.RAL=void 0,e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.Trace=void 0;var t=tF();Object.defineProperty(e,"Message",{enumerable:!0,get:tS(function(){return t.Message},"get")}),Object.defineProperty(e,"RequestType",{enumerable:!0,get:tS(function(){return t.RequestType},"get")}),Object.defineProperty(e,"RequestType0",{enumerable:!0,get:tS(function(){return t.RequestType0},"get")}),Object.defineProperty(e,"RequestType1",{enumerable:!0,get:tS(function(){return t.RequestType1},"get")}),Object.defineProperty(e,"RequestType2",{enumerable:!0,get:tS(function(){return t.RequestType2},"get")}),Object.defineProperty(e,"RequestType3",{enumerable:!0,get:tS(function(){return t.RequestType3},"get")}),Object.defineProperty(e,"RequestType4",{enumerable:!0,get:tS(function(){return t.RequestType4},"get")}),Object.defineProperty(e,"RequestType5",{enumerable:!0,get:tS(function(){return t.RequestType5},"get")}),Object.defineProperty(e,"RequestType6",{enumerable:!0,get:tS(function(){return t.RequestType6},"get")}),Object.defineProperty(e,"RequestType7",{enumerable:!0,get:tS(function(){return t.RequestType7},"get")}),Object.defineProperty(e,"RequestType8",{enumerable:!0,get:tS(function(){return t.RequestType8},"get")}),Object.defineProperty(e,"RequestType9",{enumerable:!0,get:tS(function(){return t.RequestType9},"get")}),Object.defineProperty(e,"ResponseError",{enumerable:!0,get:tS(function(){return t.ResponseError},"get")}),Object.defineProperty(e,"ErrorCodes",{enumerable:!0,get:tS(function(){return t.ErrorCodes},"get")}),Object.defineProperty(e,"NotificationType",{enumerable:!0,get:tS(function(){return t.NotificationType},"get")}),Object.defineProperty(e,"NotificationType0",{enumerable:!0,get:tS(function(){return t.NotificationType0},"get")}),Object.defineProperty(e,"NotificationType1",{enumerable:!0,get:tS(function(){return t.NotificationType1},"get")}),Object.defineProperty(e,"NotificationType2",{enumerable:!0,get:tS(function(){return t.NotificationType2},"get")}),Object.defineProperty(e,"NotificationType3",{enumerable:!0,get:tS(function(){return t.NotificationType3},"get")}),Object.defineProperty(e,"NotificationType4",{enumerable:!0,get:tS(function(){return t.NotificationType4},"get")}),Object.defineProperty(e,"NotificationType5",{enumerable:!0,get:tS(function(){return t.NotificationType5},"get")}),Object.defineProperty(e,"NotificationType6",{enumerable:!0,get:tS(function(){return t.NotificationType6},"get")}),Object.defineProperty(e,"NotificationType7",{enumerable:!0,get:tS(function(){return t.NotificationType7},"get")}),Object.defineProperty(e,"NotificationType8",{enumerable:!0,get:tS(function(){return t.NotificationType8},"get")}),Object.defineProperty(e,"NotificationType9",{enumerable:!0,get:tS(function(){return t.NotificationType9},"get")}),Object.defineProperty(e,"ParameterStructures",{enumerable:!0,get:tS(function(){return t.ParameterStructures},"get")});var r=tz();Object.defineProperty(e,"LinkedMap",{enumerable:!0,get:tS(function(){return r.LinkedMap},"get")}),Object.defineProperty(e,"LRUCache",{enumerable:!0,get:tS(function(){return r.LRUCache},"get")}),Object.defineProperty(e,"Touch",{enumerable:!0,get:tS(function(){return r.Touch},"get")});var n=tq();Object.defineProperty(e,"Disposable",{enumerable:!0,get:tS(function(){return n.Disposable},"get")});var i=tM();Object.defineProperty(e,"Event",{enumerable:!0,get:tS(function(){return i.Event},"get")}),Object.defineProperty(e,"Emitter",{enumerable:!0,get:tS(function(){return i.Emitter},"get")});var a=tj();Object.defineProperty(e,"CancellationTokenSource",{enumerable:!0,get:tS(function(){return a.CancellationTokenSource},"get")}),Object.defineProperty(e,"CancellationToken",{enumerable:!0,get:tS(function(){return a.CancellationToken},"get")});var s=tG();Object.defineProperty(e,"SharedArraySenderStrategy",{enumerable:!0,get:tS(function(){return s.SharedArraySenderStrategy},"get")}),Object.defineProperty(e,"SharedArrayReceiverStrategy",{enumerable:!0,get:tS(function(){return s.SharedArrayReceiverStrategy},"get")});var o=tK();Object.defineProperty(e,"MessageReader",{enumerable:!0,get:tS(function(){return o.MessageReader},"get")}),Object.defineProperty(e,"AbstractMessageReader",{enumerable:!0,get:tS(function(){return o.AbstractMessageReader},"get")}),Object.defineProperty(e,"ReadableStreamMessageReader",{enumerable:!0,get:tS(function(){return o.ReadableStreamMessageReader},"get")});var l=tW();Object.defineProperty(e,"MessageWriter",{enumerable:!0,get:tS(function(){return l.MessageWriter},"get")}),Object.defineProperty(e,"AbstractMessageWriter",{enumerable:!0,get:tS(function(){return l.AbstractMessageWriter},"get")}),Object.defineProperty(e,"WriteableStreamMessageWriter",{enumerable:!0,get:tS(function(){return l.WriteableStreamMessageWriter},"get")});var u=tB();Object.defineProperty(e,"AbstractMessageBuffer",{enumerable:!0,get:tS(function(){return u.AbstractMessageBuffer},"get")});var c=tV();Object.defineProperty(e,"ConnectionStrategy",{enumerable:!0,get:tS(function(){return c.ConnectionStrategy},"get")}),Object.defineProperty(e,"ConnectionOptions",{enumerable:!0,get:tS(function(){return c.ConnectionOptions},"get")}),Object.defineProperty(e,"NullLogger",{enumerable:!0,get:tS(function(){return c.NullLogger},"get")}),Object.defineProperty(e,"createMessageConnection",{enumerable:!0,get:tS(function(){return c.createMessageConnection},"get")}),Object.defineProperty(e,"ProgressToken",{enumerable:!0,get:tS(function(){return c.ProgressToken},"get")}),Object.defineProperty(e,"ProgressType",{enumerable:!0,get:tS(function(){return c.ProgressType},"get")}),Object.defineProperty(e,"Trace",{enumerable:!0,get:tS(function(){return c.Trace},"get")}),Object.defineProperty(e,"TraceValues",{enumerable:!0,get:tS(function(){return c.TraceValues},"get")}),Object.defineProperty(e,"TraceFormat",{enumerable:!0,get:tS(function(){return c.TraceFormat},"get")}),Object.defineProperty(e,"SetTraceNotification",{enumerable:!0,get:tS(function(){return c.SetTraceNotification},"get")}),Object.defineProperty(e,"LogTraceNotification",{enumerable:!0,get:tS(function(){return c.LogTraceNotification},"get")}),Object.defineProperty(e,"ConnectionErrors",{enumerable:!0,get:tS(function(){return c.ConnectionErrors},"get")}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:tS(function(){return c.ConnectionError},"get")}),Object.defineProperty(e,"CancellationReceiverStrategy",{enumerable:!0,get:tS(function(){return c.CancellationReceiverStrategy},"get")}),Object.defineProperty(e,"CancellationSenderStrategy",{enumerable:!0,get:tS(function(){return c.CancellationSenderStrategy},"get")}),Object.defineProperty(e,"CancellationStrategy",{enumerable:!0,get:tS(function(){return c.CancellationStrategy},"get")}),Object.defineProperty(e,"MessageStrategy",{enumerable:!0,get:tS(function(){return c.MessageStrategy},"get")}),e.RAL=tD().default}}),tY=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(e){Object.defineProperty(e,"__esModule",{value:!0});var t=tH(),r=class e extends t.AbstractMessageBuffer{static{tS(this,"MessageBuffer")}constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return e.emptyBuffer}fromString(e,t){return new TextEncoder().encode(e)}toString(e,t){return"ascii"===t?this.asciiDecoder.decode(e):new TextDecoder(t).decode(e)}asNative(e,t){return void 0===t?e:e.slice(0,t)}allocNative(e){return new Uint8Array(e)}};r.emptyBuffer=new Uint8Array(0);var n=class{static{tS(this,"ReadableStreamWrapper")}constructor(e){this.socket=e,this._onData=new t.Emitter,this._messageListener=e=>{e.data.arrayBuffer().then(e=>{this._onData.fire(new Uint8Array(e))},()=>{(0,t.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),t.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),t.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),t.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}},i=class{static{tS(this,"WritableStreamWrapper")}constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),t.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),t.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),t.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,t){if("string"==typeof e){if(void 0!==t&&"utf-8"!==t)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${t}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}},a=new TextEncoder,s=Object.freeze({messageBuffer:Object.freeze({create:tS(e=>new r(e),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:tS((e,t)=>{if("utf-8"!==t.charset)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${t.charset}`);return Promise.resolve(a.encode(JSON.stringify(e,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:tS((e,t)=>{if(!(e instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(t.charset).decode(e)))},"decode")})}),stream:Object.freeze({asReadableStream:tS(e=>new n(e),"asReadableStream"),asWritableStream:tS(e=>new i(e),"asWritableStream")}),console,timer:Object.freeze({setTimeout(e,t,...r){let n=setTimeout(e,t,...r);return{dispose:tS(()=>clearTimeout(n),"dispose")}},setImmediate(e,...t){let r=setTimeout(e,0,...t);return{dispose:tS(()=>clearTimeout(r),"dispose")}},setInterval(e,t,...r){let n=setInterval(e,t,...r);return{dispose:tS(()=>clearInterval(n),"dispose")}}})});function o(){return s}tS(o,"RIL");var l=o||(o={});function u(){t.RAL.install(s)}tS(u,"install"),l.install=u,e.default=o}}),tJ=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tS(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__exportStar||function(e,r){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(r,n)||t(r,e,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.createMessageConnection=e.BrowserMessageWriter=e.BrowserMessageReader=void 0,tY().default.install();var n=tH();function i(e,t,r,i){return void 0===r&&(r=n.NullLogger),n.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,n.createMessageConnection)(e,t,r,i)}r(tH(),e),e.BrowserMessageReader=class extends n.AbstractMessageReader{static{tS(this,"BrowserMessageReader")}constructor(e){super(),this._onData=new n.Emitter,this._messageListener=e=>{this._onData.fire(e.data)},e.addEventListener("error",e=>this.fireError(e)),e.onmessage=this._messageListener}listen(e){return this._onData.event(e)}},e.BrowserMessageWriter=class extends n.AbstractMessageWriter{static{tS(this,"BrowserMessageWriter")}constructor(e){super(),this.port=e,this.errorCount=0,e.addEventListener("error",e=>this.fireError(e))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}},tS(i,"createMessageConnection"),e.createMessageConnection=i}}),tX=tk({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(e,t){t.exports=tJ()}}),tZ=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ProtocolNotificationType=e.ProtocolNotificationType0=e.ProtocolRequestType=e.ProtocolRequestType0=e.RegistrationType=e.MessageDirection=void 0;var t,r,n=tJ();(t=r||(e.MessageDirection=r={})).clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both",e.RegistrationType=class{static{tS(this,"RegistrationType")}constructor(e){this.method=e}},e.ProtocolRequestType0=class extends n.RequestType0{static{tS(this,"ProtocolRequestType0")}constructor(e){super(e)}},e.ProtocolRequestType=class extends n.RequestType{static{tS(this,"ProtocolRequestType")}constructor(e){super(e,n.ParameterStructures.byName)}},e.ProtocolNotificationType0=class extends n.NotificationType0{static{tS(this,"ProtocolNotificationType0")}constructor(e){super(e)}},e.ProtocolNotificationType=class extends n.NotificationType{static{tS(this,"ProtocolNotificationType")}constructor(e){super(e,n.ParameterStructures.byName)}}}}),tQ=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}function l(e,t){return Array.isArray(e)&&e.every(t)}function u(e){return null!==e&&"object"==typeof e}Object.defineProperty(e,"__esModule",{value:!0}),e.objectLiteral=e.typedArray=e.stringArray=e.array=e.func=e.error=e.number=e.string=e.boolean=void 0,tS(t,"boolean"),e.boolean=t,tS(r,"string"),e.string=r,tS(n,"number"),e.number=n,tS(i,"error"),e.error=i,tS(a,"func"),e.func=a,tS(s,"array"),e.array=s,tS(o,"stringArray"),e.stringArray=o,tS(l,"typedArray"),e.typedArray=l,tS(u,"objectLiteral"),e.objectLiteral=u}}),t0=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ImplementationRequest=void 0;var t,r,n=tZ();(t=r||(e.ImplementationRequest=r={})).method="textDocument/implementation",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),t1=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeDefinitionRequest=void 0;var t,r,n=tZ();(t=r||(e.TypeDefinitionRequest=r={})).method="textDocument/typeDefinition",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),t2=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=void 0;var t,r,n,i,a=tZ();(t=n||(e.WorkspaceFoldersRequest=n={})).method="workspace/workspaceFolders",t.messageDirection=a.MessageDirection.serverToClient,t.type=new a.ProtocolRequestType0(t.method),(r=i||(e.DidChangeWorkspaceFoldersNotification=i={})).method="workspace/didChangeWorkspaceFolders",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolNotificationType(r.method)}}),t3=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigurationRequest=void 0;var t,r,n=tZ();(t=r||(e.ConfigurationRequest=r={})).method="workspace/configuration",t.messageDirection=n.MessageDirection.serverToClient,t.type=new n.ProtocolRequestType(t.method)}}),t9=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ColorPresentationRequest=e.DocumentColorRequest=void 0;var t,r,n,i,a=tZ();(t=n||(e.DocumentColorRequest=n={})).method="textDocument/documentColor",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.ColorPresentationRequest=i={})).method="textDocument/colorPresentation",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method)}}),t4=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=void 0;var t,r,n,i,a=tZ();(t=n||(e.FoldingRangeRequest=n={})).method="textDocument/foldingRange",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.FoldingRangeRefreshRequest=i={})).method="workspace/foldingRange/refresh",r.messageDirection=a.MessageDirection.serverToClient,r.type=new a.ProtocolRequestType0(r.method)}}),t5=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DeclarationRequest=void 0;var t,r,n=tZ();(t=r||(e.DeclarationRequest=r={})).method="textDocument/declaration",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),t8=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionRangeRequest=void 0;var t,r,n=tZ();(t=r||(e.SelectionRangeRequest=r={})).method="textDocument/selectionRange",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),t7=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=void 0;var t,r,n,i,a,s=tJ(),o=tZ(),l=n||(e.WorkDoneProgress=n={});function u(e){return e===l.type}l.type=new s.ProgressType,tS(u,"is"),l.is=u,(t=i||(e.WorkDoneProgressCreateRequest=i={})).method="window/workDoneProgress/create",t.messageDirection=o.MessageDirection.serverToClient,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.WorkDoneProgressCancelNotification=a={})).method="window/workDoneProgress/cancel",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolNotificationType(r.method)}}),t6=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.CallHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=tZ();(t=i||(e.CallHierarchyPrepareRequest=i={})).method="textDocument/prepareCallHierarchy",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.CallHierarchyIncomingCallsRequest=a={})).method="callHierarchy/incomingCalls",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.CallHierarchyOutgoingCallsRequest=s={})).method="callHierarchy/outgoingCalls",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),re=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.SemanticTokensRegistrationType=e.TokenFormat=void 0;var t,r,n,i,a,s,o,l,u,c,p,d=tZ();(s||(e.TokenFormat=s={})).Relative="relative",(t=o||(e.SemanticTokensRegistrationType=o={})).method="textDocument/semanticTokens",t.type=new d.RegistrationType(t.method),(r=l||(e.SemanticTokensRequest=l={})).method="textDocument/semanticTokens/full",r.messageDirection=d.MessageDirection.clientToServer,r.type=new d.ProtocolRequestType(r.method),r.registrationMethod=o.method,(n=u||(e.SemanticTokensDeltaRequest=u={})).method="textDocument/semanticTokens/full/delta",n.messageDirection=d.MessageDirection.clientToServer,n.type=new d.ProtocolRequestType(n.method),n.registrationMethod=o.method,(i=c||(e.SemanticTokensRangeRequest=c={})).method="textDocument/semanticTokens/range",i.messageDirection=d.MessageDirection.clientToServer,i.type=new d.ProtocolRequestType(i.method),i.registrationMethod=o.method,(a=p||(e.SemanticTokensRefreshRequest=p={})).method="workspace/semanticTokens/refresh",a.messageDirection=d.MessageDirection.serverToClient,a.type=new d.ProtocolRequestType0(a.method)}}),rt=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ShowDocumentRequest=void 0;var t,r,n=tZ();(t=r||(e.ShowDocumentRequest=r={})).method="window/showDocument",t.messageDirection=n.MessageDirection.serverToClient,t.type=new n.ProtocolRequestType(t.method)}}),rr=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedEditingRangeRequest=void 0;var t,r,n=tZ();(t=r||(e.LinkedEditingRangeRequest=r={})).method="textDocument/linkedEditingRange",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),rn=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.DidRenameFilesNotification=e.WillRenameFilesRequest=e.DidCreateFilesNotification=e.WillCreateFilesRequest=e.FileOperationPatternKind=void 0;var t,r,n,i,a,s,o,l,u,c,p,d,f,h,m=tZ();(t=l||(e.FileOperationPatternKind=l={})).file="file",t.folder="folder",(r=u||(e.WillCreateFilesRequest=u={})).method="workspace/willCreateFiles",r.messageDirection=m.MessageDirection.clientToServer,r.type=new m.ProtocolRequestType(r.method),(n=c||(e.DidCreateFilesNotification=c={})).method="workspace/didCreateFiles",n.messageDirection=m.MessageDirection.clientToServer,n.type=new m.ProtocolNotificationType(n.method),(i=p||(e.WillRenameFilesRequest=p={})).method="workspace/willRenameFiles",i.messageDirection=m.MessageDirection.clientToServer,i.type=new m.ProtocolRequestType(i.method),(a=d||(e.DidRenameFilesNotification=d={})).method="workspace/didRenameFiles",a.messageDirection=m.MessageDirection.clientToServer,a.type=new m.ProtocolNotificationType(a.method),(s=f||(e.DidDeleteFilesNotification=f={})).method="workspace/didDeleteFiles",s.messageDirection=m.MessageDirection.clientToServer,s.type=new m.ProtocolNotificationType(s.method),(o=h||(e.WillDeleteFilesRequest=h={})).method="workspace/willDeleteFiles",o.messageDirection=m.MessageDirection.clientToServer,o.type=new m.ProtocolRequestType(o.method)}}),ri=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=void 0;var t,r,n,i,a,s,o=tZ();(t=i||(e.UniquenessLevel=i={})).document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global",(r=a||(e.MonikerKind=a={})).$import="import",r.$export="export",r.local="local",(n=s||(e.MonikerRequest=s={})).method="textDocument/moniker",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),ra=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHierarchySubtypesRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=tZ();(t=i||(e.TypeHierarchyPrepareRequest=i={})).method="textDocument/prepareTypeHierarchy",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.TypeHierarchySupertypesRequest=a={})).method="typeHierarchy/supertypes",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.TypeHierarchySubtypesRequest=s={})).method="typeHierarchy/subtypes",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),rs=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineValueRefreshRequest=e.InlineValueRequest=void 0;var t,r,n,i,a=tZ();(t=n||(e.InlineValueRequest=n={})).method="textDocument/inlineValue",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.InlineValueRefreshRequest=i={})).method="workspace/inlineValue/refresh",r.messageDirection=a.MessageDirection.serverToClient,r.type=new a.ProtocolRequestType0(r.method)}}),ro=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=void 0;var t,r,n,i,a,s,o=tZ();(t=i||(e.InlayHintRequest=i={})).method="textDocument/inlayHint",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.InlayHintResolveRequest=a={})).method="inlayHint/resolve",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.InlayHintRefreshRequest=s={})).method="workspace/inlayHint/refresh",n.messageDirection=o.MessageDirection.serverToClient,n.type=new o.ProtocolRequestType0(n.method)}}),rl=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=void 0;var t,r,n,i,a,s,o,l,u,c=tJ(),p=tQ(),d=tZ(),f=a||(e.DiagnosticServerCancellationData=a={});function h(e){return e&&p.boolean(e.retriggerRequest)}tS(h,"is"),f.is=h,(t=s||(e.DocumentDiagnosticReportKind=s={})).Full="full",t.Unchanged="unchanged",(r=o||(e.DocumentDiagnosticRequest=o={})).method="textDocument/diagnostic",r.messageDirection=d.MessageDirection.clientToServer,r.type=new d.ProtocolRequestType(r.method),r.partialResult=new c.ProgressType,(n=l||(e.WorkspaceDiagnosticRequest=l={})).method="workspace/diagnostic",n.messageDirection=d.MessageDirection.clientToServer,n.type=new d.ProtocolRequestType(n.method),n.partialResult=new c.ProgressType,(i=u||(e.DiagnosticRefreshRequest=u={})).method="workspace/diagnostic/refresh",i.messageDirection=d.MessageDirection.serverToClient,i.type=new d.ProtocolRequestType0(i.method)}}),ru=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=void 0;var t,r,n,i,a,s,o,l,u,c,p,d,f,h,m,y=(tO(),tI(tP)),g=tQ(),v=tZ(),T=s||(e.NotebookCellKind=s={});function R(e){return 1===e||2===e}T.Markup=1,T.Code=2,tS(R,"is"),T.is=R,function(e){function t(e,t){let r={executionOrder:e};return(!0===t||!1===t)&&(r.success=t),r}function r(e){return g.objectLiteral(e)&&y.uinteger.is(e.executionOrder)&&(void 0===e.success||g.boolean(e.success))}function n(e,t){return e===t||null!=e&&null!=t&&e.executionOrder===t.executionOrder&&e.success===t.success}tS(t,"create"),e.create=t,tS(r,"is"),e.is=r,tS(n,"equals"),e.equals=n}(o||(e.ExecutionSummary=o={})),function(e){function t(e,t){return{kind:e,document:t}}function r(e){return g.objectLiteral(e)&&s.is(e.kind)&&y.DocumentUri.is(e.document)&&(void 0===e.metadata||g.objectLiteral(e.metadata))}function n(e,t){let r=new Set;return e.document!==t.document&&r.add("document"),e.kind!==t.kind&&r.add("kind"),e.executionSummary!==t.executionSummary&&r.add("executionSummary"),void 0===e.metadata&&void 0===t.metadata||i(e.metadata,t.metadata)||r.add("metadata"),void 0===e.executionSummary&&void 0===t.executionSummary||o.equals(e.executionSummary,t.executionSummary)||r.add("executionSummary"),r}function i(e,t){if(e===t)return!0;if(null==e||null==t||typeof e!=typeof t||"object"!=typeof e)return!1;let r=Array.isArray(e),n=Array.isArray(t);if(r!==n)return!1;if(r&&n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!i(e[r],t[r]))return!1}if(g.objectLiteral(e)&&g.objectLiteral(t)){let r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length||(r.sort(),n.sort(),!i(r,n)))return!1;for(let n=0;n<r.length;n++){let a=r[n];if(!i(e[a],t[a]))return!1}}return!0}tS(t,"create"),e.create=t,tS(r,"is"),e.is=r,tS(n,"diff"),e.diff=n,tS(i,"equalsMetadata")}(l||(e.NotebookCell=l={}));var $=u||(e.NotebookDocument=u={});function b(e,t,r,n){return{uri:e,notebookType:t,version:r,cells:n}}function E(e){return g.objectLiteral(e)&&g.string(e.uri)&&y.integer.is(e.version)&&g.typedArray(e.cells,l.is)}tS(b,"create"),$.create=b,tS(E,"is"),$.is=E,(t=c||(e.NotebookDocumentSyncRegistrationType=c={})).method="notebookDocument/sync",t.messageDirection=v.MessageDirection.clientToServer,t.type=new v.RegistrationType(t.method),(r=p||(e.DidOpenNotebookDocumentNotification=p={})).method="notebookDocument/didOpen",r.messageDirection=v.MessageDirection.clientToServer,r.type=new v.ProtocolNotificationType(r.method),r.registrationMethod=c.method;var C=d||(e.NotebookCellArrayChange=d={});function A(e){return g.objectLiteral(e)&&y.uinteger.is(e.start)&&y.uinteger.is(e.deleteCount)&&(void 0===e.cells||g.typedArray(e.cells,l.is))}function S(e,t,r){let n={start:e,deleteCount:t};return void 0!==r&&(n.cells=r),n}tS(A,"is"),C.is=A,tS(S,"create"),C.create=S,(n=f||(e.DidChangeNotebookDocumentNotification=f={})).method="notebookDocument/didChange",n.messageDirection=v.MessageDirection.clientToServer,n.type=new v.ProtocolNotificationType(n.method),n.registrationMethod=c.method,(i=h||(e.DidSaveNotebookDocumentNotification=h={})).method="notebookDocument/didSave",i.messageDirection=v.MessageDirection.clientToServer,i.type=new v.ProtocolNotificationType(i.method),i.registrationMethod=c.method,(a=m||(e.DidCloseNotebookDocumentNotification=m={})).method="notebookDocument/didClose",a.messageDirection=v.MessageDirection.clientToServer,a.type=new v.ProtocolNotificationType(a.method),a.registrationMethod=c.method}}),rc=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineCompletionRequest=void 0;var t,r,n=tZ();(t=r||(e.InlineCompletionRequest=r={})).method="textDocument/inlineCompletion",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),rp=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspaceSymbolRequest=e.CodeActionResolveRequest=e.CodeActionRequest=e.DocumentSymbolRequest=e.DocumentHighlightRequest=e.ReferencesRequest=e.DefinitionRequest=e.SignatureHelpRequest=e.SignatureHelpTriggerKind=e.HoverRequest=e.CompletionResolveRequest=e.CompletionRequest=e.CompletionTriggerKind=e.PublishDiagnosticsNotification=e.WatchKind=e.RelativePattern=e.FileChangeType=e.DidChangeWatchedFilesNotification=e.WillSaveTextDocumentWaitUntilRequest=e.WillSaveTextDocumentNotification=e.TextDocumentSaveReason=e.DidSaveTextDocumentNotification=e.DidCloseTextDocumentNotification=e.DidChangeTextDocumentNotification=e.TextDocumentContentChangeEvent=e.DidOpenTextDocumentNotification=e.TextDocumentSyncKind=e.TelemetryEventNotification=e.LogMessageNotification=e.ShowMessageRequest=e.ShowMessageNotification=e.MessageType=e.DidChangeConfigurationNotification=e.ExitNotification=e.ShutdownRequest=e.InitializedNotification=e.InitializeErrorCodes=e.InitializeRequest=e.WorkDoneProgressOptions=e.TextDocumentRegistrationOptions=e.StaticRegistrationOptions=e.PositionEncodingKind=e.FailureHandlingKind=e.ResourceOperationKind=e.UnregistrationRequest=e.RegistrationRequest=e.DocumentSelector=e.NotebookCellTextDocumentFilter=e.NotebookDocumentFilter=e.TextDocumentFilter=void 0,e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.WillRenameFilesRequest=e.DidRenameFilesNotification=e.WillCreateFilesRequest=e.DidCreateFilesNotification=e.FileOperationPatternKind=e.LinkedEditingRangeRequest=e.ShowDocumentRequest=e.SemanticTokensRegistrationType=e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.TokenFormat=e.CallHierarchyPrepareRequest=e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=e.SelectionRangeRequest=e.DeclarationRequest=e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=e.ColorPresentationRequest=e.DocumentColorRequest=e.ConfigurationRequest=e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=e.TypeDefinitionRequest=e.ImplementationRequest=e.ApplyWorkspaceEditRequest=e.ExecuteCommandRequest=e.PrepareRenameRequest=e.RenameRequest=e.PrepareSupportDefaultBehavior=e.DocumentOnTypeFormattingRequest=e.DocumentRangesFormattingRequest=e.DocumentRangeFormattingRequest=e.DocumentFormattingRequest=e.DocumentLinkResolveRequest=e.DocumentLinkRequest=e.CodeLensRefreshRequest=e.CodeLensResolveRequest=e.CodeLensRequest=e.WorkspaceSymbolResolveRequest=void 0,e.InlineCompletionRequest=e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=e.InlineValueRefreshRequest=e.InlineValueRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchySubtypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o,l,u,c,p,d,f,h,m,y,g,v,T,R,$,b,E,C,A,S,k,x,N,w,_,I,P,O,D,L,M,j,F,z,q,G,U,K,W,B,V,H,Y,J,X,Z,Q,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ep,ed,ef,eh,em,ey,eg,ev,eT,eR,e$,eb,eE,eC,eA,eS,ek,ex,eN,ew,e_,eI,eP,eO,eD,eL,eM,ej,eF,ez,eq,eG,eU,eK,eW,eB,eV,eH,eY,eJ,eX,eZ,eQ,e0,e1,e2,e3,e9,e4,e5,e8,e7,e6,te,tt,tr=tZ(),tn=(tO(),tI(tP)),ti=tQ(),ta=t0();Object.defineProperty(e,"ImplementationRequest",{enumerable:!0,get:tS(function(){return ta.ImplementationRequest},"get")});var ts=t1();Object.defineProperty(e,"TypeDefinitionRequest",{enumerable:!0,get:tS(function(){return ts.TypeDefinitionRequest},"get")});var to=t2();Object.defineProperty(e,"WorkspaceFoldersRequest",{enumerable:!0,get:tS(function(){return to.WorkspaceFoldersRequest},"get")}),Object.defineProperty(e,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:tS(function(){return to.DidChangeWorkspaceFoldersNotification},"get")});var tl=t3();Object.defineProperty(e,"ConfigurationRequest",{enumerable:!0,get:tS(function(){return tl.ConfigurationRequest},"get")});var tu=t9();Object.defineProperty(e,"DocumentColorRequest",{enumerable:!0,get:tS(function(){return tu.DocumentColorRequest},"get")}),Object.defineProperty(e,"ColorPresentationRequest",{enumerable:!0,get:tS(function(){return tu.ColorPresentationRequest},"get")});var tc=t4();Object.defineProperty(e,"FoldingRangeRequest",{enumerable:!0,get:tS(function(){return tc.FoldingRangeRequest},"get")}),Object.defineProperty(e,"FoldingRangeRefreshRequest",{enumerable:!0,get:tS(function(){return tc.FoldingRangeRefreshRequest},"get")});var tp=t5();Object.defineProperty(e,"DeclarationRequest",{enumerable:!0,get:tS(function(){return tp.DeclarationRequest},"get")});var td=t8();Object.defineProperty(e,"SelectionRangeRequest",{enumerable:!0,get:tS(function(){return td.SelectionRangeRequest},"get")});var tf=t7();Object.defineProperty(e,"WorkDoneProgress",{enumerable:!0,get:tS(function(){return tf.WorkDoneProgress},"get")}),Object.defineProperty(e,"WorkDoneProgressCreateRequest",{enumerable:!0,get:tS(function(){return tf.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(e,"WorkDoneProgressCancelNotification",{enumerable:!0,get:tS(function(){return tf.WorkDoneProgressCancelNotification},"get")});var th=t6();Object.defineProperty(e,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:tS(function(){return th.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:tS(function(){return th.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyPrepareRequest",{enumerable:!0,get:tS(function(){return th.CallHierarchyPrepareRequest},"get")});var tm=re();Object.defineProperty(e,"TokenFormat",{enumerable:!0,get:tS(function(){return tm.TokenFormat},"get")}),Object.defineProperty(e,"SemanticTokensRequest",{enumerable:!0,get:tS(function(){return tm.SemanticTokensRequest},"get")}),Object.defineProperty(e,"SemanticTokensDeltaRequest",{enumerable:!0,get:tS(function(){return tm.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(e,"SemanticTokensRangeRequest",{enumerable:!0,get:tS(function(){return tm.SemanticTokensRangeRequest},"get")}),Object.defineProperty(e,"SemanticTokensRefreshRequest",{enumerable:!0,get:tS(function(){return tm.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(e,"SemanticTokensRegistrationType",{enumerable:!0,get:tS(function(){return tm.SemanticTokensRegistrationType},"get")});var ty=rt();Object.defineProperty(e,"ShowDocumentRequest",{enumerable:!0,get:tS(function(){return ty.ShowDocumentRequest},"get")});var tg=rr();Object.defineProperty(e,"LinkedEditingRangeRequest",{enumerable:!0,get:tS(function(){return tg.LinkedEditingRangeRequest},"get")});var tv=rn();Object.defineProperty(e,"FileOperationPatternKind",{enumerable:!0,get:tS(function(){return tv.FileOperationPatternKind},"get")}),Object.defineProperty(e,"DidCreateFilesNotification",{enumerable:!0,get:tS(function(){return tv.DidCreateFilesNotification},"get")}),Object.defineProperty(e,"WillCreateFilesRequest",{enumerable:!0,get:tS(function(){return tv.WillCreateFilesRequest},"get")}),Object.defineProperty(e,"DidRenameFilesNotification",{enumerable:!0,get:tS(function(){return tv.DidRenameFilesNotification},"get")}),Object.defineProperty(e,"WillRenameFilesRequest",{enumerable:!0,get:tS(function(){return tv.WillRenameFilesRequest},"get")}),Object.defineProperty(e,"DidDeleteFilesNotification",{enumerable:!0,get:tS(function(){return tv.DidDeleteFilesNotification},"get")}),Object.defineProperty(e,"WillDeleteFilesRequest",{enumerable:!0,get:tS(function(){return tv.WillDeleteFilesRequest},"get")});var tT=ri();Object.defineProperty(e,"UniquenessLevel",{enumerable:!0,get:tS(function(){return tT.UniquenessLevel},"get")}),Object.defineProperty(e,"MonikerKind",{enumerable:!0,get:tS(function(){return tT.MonikerKind},"get")}),Object.defineProperty(e,"MonikerRequest",{enumerable:!0,get:tS(function(){return tT.MonikerRequest},"get")});var tR=ra();Object.defineProperty(e,"TypeHierarchyPrepareRequest",{enumerable:!0,get:tS(function(){return tR.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(e,"TypeHierarchySubtypesRequest",{enumerable:!0,get:tS(function(){return tR.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(e,"TypeHierarchySupertypesRequest",{enumerable:!0,get:tS(function(){return tR.TypeHierarchySupertypesRequest},"get")});var t$=rs();Object.defineProperty(e,"InlineValueRequest",{enumerable:!0,get:tS(function(){return t$.InlineValueRequest},"get")}),Object.defineProperty(e,"InlineValueRefreshRequest",{enumerable:!0,get:tS(function(){return t$.InlineValueRefreshRequest},"get")});var tb=ro();Object.defineProperty(e,"InlayHintRequest",{enumerable:!0,get:tS(function(){return tb.InlayHintRequest},"get")}),Object.defineProperty(e,"InlayHintResolveRequest",{enumerable:!0,get:tS(function(){return tb.InlayHintResolveRequest},"get")}),Object.defineProperty(e,"InlayHintRefreshRequest",{enumerable:!0,get:tS(function(){return tb.InlayHintRefreshRequest},"get")});var tE=rl();Object.defineProperty(e,"DiagnosticServerCancellationData",{enumerable:!0,get:tS(function(){return tE.DiagnosticServerCancellationData},"get")}),Object.defineProperty(e,"DocumentDiagnosticReportKind",{enumerable:!0,get:tS(function(){return tE.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(e,"DocumentDiagnosticRequest",{enumerable:!0,get:tS(function(){return tE.DocumentDiagnosticRequest},"get")}),Object.defineProperty(e,"WorkspaceDiagnosticRequest",{enumerable:!0,get:tS(function(){return tE.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(e,"DiagnosticRefreshRequest",{enumerable:!0,get:tS(function(){return tE.DiagnosticRefreshRequest},"get")});var tC=ru();Object.defineProperty(e,"NotebookCellKind",{enumerable:!0,get:tS(function(){return tC.NotebookCellKind},"get")}),Object.defineProperty(e,"ExecutionSummary",{enumerable:!0,get:tS(function(){return tC.ExecutionSummary},"get")}),Object.defineProperty(e,"NotebookCell",{enumerable:!0,get:tS(function(){return tC.NotebookCell},"get")}),Object.defineProperty(e,"NotebookDocument",{enumerable:!0,get:tS(function(){return tC.NotebookDocument},"get")}),Object.defineProperty(e,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:tS(function(){return tC.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(e,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:tS(function(){return tC.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(e,"NotebookCellArrayChange",{enumerable:!0,get:tS(function(){return tC.NotebookCellArrayChange},"get")}),Object.defineProperty(e,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:tS(function(){return tC.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:tS(function(){return tC.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:tS(function(){return tC.DidCloseNotebookDocumentNotification},"get")});var tA=rc();Object.defineProperty(e,"InlineCompletionRequest",{enumerable:!0,get:tS(function(){return tA.InlineCompletionRequest},"get")});var tk=et||(e.TextDocumentFilter=et={});function tx(e){return ti.string(e)||ti.string(e.language)||ti.string(e.scheme)||ti.string(e.pattern)}tS(tx,"is"),tk.is=tx;var tN=er||(e.NotebookDocumentFilter=er={});function tw(e){return ti.objectLiteral(e)&&(ti.string(e.notebookType)||ti.string(e.scheme)||ti.string(e.pattern))}tS(tw,"is"),tN.is=tw;var t_=en||(e.NotebookCellTextDocumentFilter=en={});function tD(e){return ti.objectLiteral(e)&&(ti.string(e.notebook)||er.is(e.notebook))&&(void 0===e.language||ti.string(e.language))}tS(tD,"is"),t_.is=tD;var tL=ei||(e.DocumentSelector=ei={});function tM(e){if(!Array.isArray(e))return!1;for(let t of e)if(!ti.string(t)&&!et.is(t)&&!en.is(t))return!1;return!0}tS(tM,"is"),tL.is=tM,(t=ea||(e.RegistrationRequest=ea={})).method="client/registerCapability",t.messageDirection=tr.MessageDirection.serverToClient,t.type=new tr.ProtocolRequestType(t.method),(r=es||(e.UnregistrationRequest=es={})).method="client/unregisterCapability",r.messageDirection=tr.MessageDirection.serverToClient,r.type=new tr.ProtocolRequestType(r.method),(n=eo||(e.ResourceOperationKind=eo={})).Create="create",n.Rename="rename",n.Delete="delete",(i=el||(e.FailureHandlingKind=el={})).Abort="abort",i.Transactional="transactional",i.TextOnlyTransactional="textOnlyTransactional",i.Undo="undo",(a=eu||(e.PositionEncodingKind=eu={})).UTF8="utf-8",a.UTF16="utf-16",a.UTF32="utf-32";var tj=ec||(e.StaticRegistrationOptions=ec={});function tF(e){return e&&ti.string(e.id)&&e.id.length>0}tS(tF,"hasId"),tj.hasId=tF;var tz=ep||(e.TextDocumentRegistrationOptions=ep={});function tq(e){return e&&(null===e.documentSelector||ei.is(e.documentSelector))}tS(tq,"is"),tz.is=tq;var tG=ed||(e.WorkDoneProgressOptions=ed={});function tU(e){return ti.objectLiteral(e)&&(void 0===e.workDoneProgress||ti.boolean(e.workDoneProgress))}function tK(e){return e&&ti.boolean(e.workDoneProgress)}tS(tU,"is"),tG.is=tU,tS(tK,"hasWorkDoneProgress"),tG.hasWorkDoneProgress=tK,(s=ef||(e.InitializeRequest=ef={})).method="initialize",s.messageDirection=tr.MessageDirection.clientToServer,s.type=new tr.ProtocolRequestType(s.method),(eh||(e.InitializeErrorCodes=eh={})).unknownProtocolVersion=1,(o=em||(e.InitializedNotification=em={})).method="initialized",o.messageDirection=tr.MessageDirection.clientToServer,o.type=new tr.ProtocolNotificationType(o.method),(l=ey||(e.ShutdownRequest=ey={})).method="shutdown",l.messageDirection=tr.MessageDirection.clientToServer,l.type=new tr.ProtocolRequestType0(l.method),(u=eg||(e.ExitNotification=eg={})).method="exit",u.messageDirection=tr.MessageDirection.clientToServer,u.type=new tr.ProtocolNotificationType0(u.method),(c=ev||(e.DidChangeConfigurationNotification=ev={})).method="workspace/didChangeConfiguration",c.messageDirection=tr.MessageDirection.clientToServer,c.type=new tr.ProtocolNotificationType(c.method),(p=eT||(e.MessageType=eT={})).Error=1,p.Warning=2,p.Info=3,p.Log=4,p.Debug=5,(d=eR||(e.ShowMessageNotification=eR={})).method="window/showMessage",d.messageDirection=tr.MessageDirection.serverToClient,d.type=new tr.ProtocolNotificationType(d.method),(f=e$||(e.ShowMessageRequest=e$={})).method="window/showMessageRequest",f.messageDirection=tr.MessageDirection.serverToClient,f.type=new tr.ProtocolRequestType(f.method),(h=eb||(e.LogMessageNotification=eb={})).method="window/logMessage",h.messageDirection=tr.MessageDirection.serverToClient,h.type=new tr.ProtocolNotificationType(h.method),(m=eE||(e.TelemetryEventNotification=eE={})).method="telemetry/event",m.messageDirection=tr.MessageDirection.serverToClient,m.type=new tr.ProtocolNotificationType(m.method),(y=eC||(e.TextDocumentSyncKind=eC={})).None=0,y.Full=1,y.Incremental=2,(g=eA||(e.DidOpenTextDocumentNotification=eA={})).method="textDocument/didOpen",g.messageDirection=tr.MessageDirection.clientToServer,g.type=new tr.ProtocolNotificationType(g.method);var tW=eS||(e.TextDocumentContentChangeEvent=eS={});function tB(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}function tV(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}tS(tB,"isIncremental"),tW.isIncremental=tB,tS(tV,"isFull"),tW.isFull=tV,(v=ek||(e.DidChangeTextDocumentNotification=ek={})).method="textDocument/didChange",v.messageDirection=tr.MessageDirection.clientToServer,v.type=new tr.ProtocolNotificationType(v.method),(T=ex||(e.DidCloseTextDocumentNotification=ex={})).method="textDocument/didClose",T.messageDirection=tr.MessageDirection.clientToServer,T.type=new tr.ProtocolNotificationType(T.method),(R=eN||(e.DidSaveTextDocumentNotification=eN={})).method="textDocument/didSave",R.messageDirection=tr.MessageDirection.clientToServer,R.type=new tr.ProtocolNotificationType(R.method),($=ew||(e.TextDocumentSaveReason=ew={})).Manual=1,$.AfterDelay=2,$.FocusOut=3,(b=e_||(e.WillSaveTextDocumentNotification=e_={})).method="textDocument/willSave",b.messageDirection=tr.MessageDirection.clientToServer,b.type=new tr.ProtocolNotificationType(b.method),(E=eI||(e.WillSaveTextDocumentWaitUntilRequest=eI={})).method="textDocument/willSaveWaitUntil",E.messageDirection=tr.MessageDirection.clientToServer,E.type=new tr.ProtocolRequestType(E.method),(C=eP||(e.DidChangeWatchedFilesNotification=eP={})).method="workspace/didChangeWatchedFiles",C.messageDirection=tr.MessageDirection.clientToServer,C.type=new tr.ProtocolNotificationType(C.method),(A=eO||(e.FileChangeType=eO={})).Created=1,A.Changed=2,A.Deleted=3;var tH=eD||(e.RelativePattern=eD={});function tY(e){return ti.objectLiteral(e)&&(tn.URI.is(e.baseUri)||tn.WorkspaceFolder.is(e.baseUri))&&ti.string(e.pattern)}tS(tY,"is"),tH.is=tY,(S=eL||(e.WatchKind=eL={})).Create=1,S.Change=2,S.Delete=4,(k=eM||(e.PublishDiagnosticsNotification=eM={})).method="textDocument/publishDiagnostics",k.messageDirection=tr.MessageDirection.serverToClient,k.type=new tr.ProtocolNotificationType(k.method),(x=ej||(e.CompletionTriggerKind=ej={})).Invoked=1,x.TriggerCharacter=2,x.TriggerForIncompleteCompletions=3,(N=eF||(e.CompletionRequest=eF={})).method="textDocument/completion",N.messageDirection=tr.MessageDirection.clientToServer,N.type=new tr.ProtocolRequestType(N.method),(w=ez||(e.CompletionResolveRequest=ez={})).method="completionItem/resolve",w.messageDirection=tr.MessageDirection.clientToServer,w.type=new tr.ProtocolRequestType(w.method),(_=eq||(e.HoverRequest=eq={})).method="textDocument/hover",_.messageDirection=tr.MessageDirection.clientToServer,_.type=new tr.ProtocolRequestType(_.method),(I=eG||(e.SignatureHelpTriggerKind=eG={})).Invoked=1,I.TriggerCharacter=2,I.ContentChange=3,(P=eU||(e.SignatureHelpRequest=eU={})).method="textDocument/signatureHelp",P.messageDirection=tr.MessageDirection.clientToServer,P.type=new tr.ProtocolRequestType(P.method),(O=eK||(e.DefinitionRequest=eK={})).method="textDocument/definition",O.messageDirection=tr.MessageDirection.clientToServer,O.type=new tr.ProtocolRequestType(O.method),(D=eW||(e.ReferencesRequest=eW={})).method="textDocument/references",D.messageDirection=tr.MessageDirection.clientToServer,D.type=new tr.ProtocolRequestType(D.method),(L=eB||(e.DocumentHighlightRequest=eB={})).method="textDocument/documentHighlight",L.messageDirection=tr.MessageDirection.clientToServer,L.type=new tr.ProtocolRequestType(L.method),(M=eV||(e.DocumentSymbolRequest=eV={})).method="textDocument/documentSymbol",M.messageDirection=tr.MessageDirection.clientToServer,M.type=new tr.ProtocolRequestType(M.method),(j=eH||(e.CodeActionRequest=eH={})).method="textDocument/codeAction",j.messageDirection=tr.MessageDirection.clientToServer,j.type=new tr.ProtocolRequestType(j.method),(F=eY||(e.CodeActionResolveRequest=eY={})).method="codeAction/resolve",F.messageDirection=tr.MessageDirection.clientToServer,F.type=new tr.ProtocolRequestType(F.method),(z=eJ||(e.WorkspaceSymbolRequest=eJ={})).method="workspace/symbol",z.messageDirection=tr.MessageDirection.clientToServer,z.type=new tr.ProtocolRequestType(z.method),(q=eX||(e.WorkspaceSymbolResolveRequest=eX={})).method="workspaceSymbol/resolve",q.messageDirection=tr.MessageDirection.clientToServer,q.type=new tr.ProtocolRequestType(q.method),(G=eZ||(e.CodeLensRequest=eZ={})).method="textDocument/codeLens",G.messageDirection=tr.MessageDirection.clientToServer,G.type=new tr.ProtocolRequestType(G.method),(U=eQ||(e.CodeLensResolveRequest=eQ={})).method="codeLens/resolve",U.messageDirection=tr.MessageDirection.clientToServer,U.type=new tr.ProtocolRequestType(U.method),(K=e0||(e.CodeLensRefreshRequest=e0={})).method="workspace/codeLens/refresh",K.messageDirection=tr.MessageDirection.serverToClient,K.type=new tr.ProtocolRequestType0(K.method),(W=e1||(e.DocumentLinkRequest=e1={})).method="textDocument/documentLink",W.messageDirection=tr.MessageDirection.clientToServer,W.type=new tr.ProtocolRequestType(W.method),(B=e2||(e.DocumentLinkResolveRequest=e2={})).method="documentLink/resolve",B.messageDirection=tr.MessageDirection.clientToServer,B.type=new tr.ProtocolRequestType(B.method),(V=e3||(e.DocumentFormattingRequest=e3={})).method="textDocument/formatting",V.messageDirection=tr.MessageDirection.clientToServer,V.type=new tr.ProtocolRequestType(V.method),(H=e9||(e.DocumentRangeFormattingRequest=e9={})).method="textDocument/rangeFormatting",H.messageDirection=tr.MessageDirection.clientToServer,H.type=new tr.ProtocolRequestType(H.method),(Y=e4||(e.DocumentRangesFormattingRequest=e4={})).method="textDocument/rangesFormatting",Y.messageDirection=tr.MessageDirection.clientToServer,Y.type=new tr.ProtocolRequestType(Y.method),(J=e5||(e.DocumentOnTypeFormattingRequest=e5={})).method="textDocument/onTypeFormatting",J.messageDirection=tr.MessageDirection.clientToServer,J.type=new tr.ProtocolRequestType(J.method),(e8||(e.PrepareSupportDefaultBehavior=e8={})).Identifier=1,(X=e7||(e.RenameRequest=e7={})).method="textDocument/rename",X.messageDirection=tr.MessageDirection.clientToServer,X.type=new tr.ProtocolRequestType(X.method),(Z=e6||(e.PrepareRenameRequest=e6={})).method="textDocument/prepareRename",Z.messageDirection=tr.MessageDirection.clientToServer,Z.type=new tr.ProtocolRequestType(Z.method),(Q=te||(e.ExecuteCommandRequest=te={})).method="workspace/executeCommand",Q.messageDirection=tr.MessageDirection.clientToServer,Q.type=new tr.ProtocolRequestType(Q.method),(ee=tt||(e.ApplyWorkspaceEditRequest=tt={})).method="workspace/applyEdit",ee.messageDirection=tr.MessageDirection.serverToClient,ee.type=new tr.ProtocolRequestType("workspace/applyEdit")}}),rd=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=void 0;var t=tJ();function r(e,r,n,i){return t.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,t.createMessageConnection)(e,r,n,i)}tS(r,"createProtocolConnection"),e.createProtocolConnection=r}}),rf=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(e){var t,r,n=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tS(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=e&&e.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.LSPErrorCodes=e.createProtocolConnection=void 0,i(tJ(),e),i((tO(),tI(tP)),e),i(tZ(),e),i(rp(),e);var a=rd();Object.defineProperty(e,"createProtocolConnection",{enumerable:!0,get:tS(function(){return a.createProtocolConnection},"get")}),(t=r||(e.LSPErrorCodes=r={})).lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800}}),rh=tk({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tS(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__exportStar||function(e,r){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(r,n)||t(r,e,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=void 0;var n=tX();function i(e,t,r,i){return(0,n.createMessageConnection)(e,t,r,i)}r(tX(),e),r(rf(),e),tS(i,"createProtocolConnection"),e.createProtocolConnection=i}}),rm={};tx(rm,{AbstractAstReflection:()=>rb,AbstractCstNode:()=>vK,AbstractLangiumParser:()=>vZ,AbstractParserErrorMessageProvider:()=>v0,AbstractThreadedAsyncParser:()=>RZ,AstUtils:()=>rP,BiMap:()=>TB,Cancellation:()=>TT,CompositeCstNodeImpl:()=>vB,ContextCache:()=>T0,CstNodeBuilder:()=>vU,CstUtils:()=>ry,DEFAULT_TOKENIZE_OPTIONS:()=>Rg,DONE_RESULT:()=>rw,DatatypeSymbol:()=>vY,DefaultAstNodeDescriptionProvider:()=>Ra,DefaultAstNodeLocator:()=>Ro,DefaultAsyncParser:()=>RX,DefaultCommentProvider:()=>RJ,DefaultConfigurationProvider:()=>Ru,DefaultDocumentBuilder:()=>Rf,DefaultDocumentValidator:()=>Rt,DefaultHydrator:()=>R1,DefaultIndexManager:()=>Rh,DefaultJsonSerializer:()=>T5,DefaultLangiumDocumentFactory:()=>Tj,DefaultLangiumDocuments:()=>TF,DefaultLangiumProfiler:()=>$p,DefaultLexer:()=>Rv,DefaultLexerErrorMessageProvider:()=>Ry,DefaultLinker:()=>Tq,DefaultNameProvider:()=>TU,DefaultReferenceDescriptionProvider:()=>Rs,DefaultReferences:()=>TK,DefaultScopeComputation:()=>TV,DefaultScopeProvider:()=>T3,DefaultServiceRegistry:()=>T8,DefaultTokenBuilder:()=>Tg,DefaultValueConverter:()=>Tv,DefaultWorkspaceLock:()=>R0,DefaultWorkspaceManager:()=>Rm,Deferred:()=>Tx,Disposable:()=>e5,DisposableCache:()=>TZ,DocumentCache:()=>T1,DocumentState:()=>e3,DocumentValidator:()=>e4,EMPTY_SCOPE:()=>TX,EMPTY_STREAM:()=>rN,EmptyFileSystem:()=>$s,EmptyFileSystemProvider:()=>$a,ErrorWithLocation:()=>iJ,GrammarAST:()=>rH,GrammarUtils:()=>iY,IndentationAwareLexer:()=>$n,IndentationAwareTokenBuilder:()=>$r,JSDocDocumentationProvider:()=>RY,LangiumCompletionParser:()=>v2,LangiumParser:()=>vQ,LangiumParserErrorMessageProvider:()=>v1,LeafCstNodeImpl:()=>vW,LexingMode:()=>e7,MapScope:()=>TY,Module:()=>e8,MultiMap:()=>TW,MultiMapScope:()=>TJ,OperationCancelled:()=>TA,ParserWorker:()=>RQ,ProfilingTask:()=>$d,Reduction:()=>eV,RefResolving:()=>Tz,RegExpUtils:()=>iQ,RootCstNodeImpl:()=>vH,SimpleCache:()=>TQ,StreamImpl:()=>rS,StreamScope:()=>TH,TextDocument:()=>e0,TreeStreamImpl:()=>rI,URI:()=>TD,UriTrie:()=>TM,UriUtils:()=>e2,VALIDATE_EACH_NODE:()=>Re,ValidationCategory:()=>e9,ValidationRegistry:()=>T6,ValueConverter:()=>eQ,WorkspaceCache:()=>T2,assertCondition:()=>iZ,assertUnreachable:()=>iX,createCompletionParser:()=>Th,createDefaultCoreModule:()=>R2,createDefaultSharedCoreModule:()=>R3,createGrammarConfig:()=>aQ,createLangiumParser:()=>Tm,createParser:()=>v5,delayNextTick:()=>TR,diagnosticData:()=>T7,eagerLoad:()=>R5,getDiagnosticRange:()=>Rr,indentationBuilderDefaultOptions:()=>$t,inject:()=>R9,interruptAndCheck:()=>Tk,isAstNode:()=>rg,isAstNodeDescription:()=>rR,isAstNodeWithComment:()=>T9,isCompositeCstNode:()=>rE,isIMultiModeLexerDefinition:()=>RR,isJSDoc:()=>RE,isLeafCstNode:()=>rC,isLinkingError:()=>r$,isMultiReference:()=>rT,isNamed:()=>TG,isOperationCancelled:()=>TS,isReference:()=>rv,isRootCstNode:()=>rA,isTokenTypeArray:()=>RT,isTokenTypeDictionary:()=>R$,loadGrammarFromJson:()=>$c,parseJSDoc:()=>Rb,prepareLangiumParser:()=>Ty,setInterruptionPeriod:()=>TC,startCancelableOperation:()=>TE,stream:()=>r_,toDiagnosticData:()=>Ri,toDiagnosticSeverity:()=>Rn});var ry={};function rg(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function rv(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"ref"in e}function rT(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"items"in e}function rR(e){return"object"==typeof e&&null!==e&&"string"==typeof e.name&&"string"==typeof e.type&&"string"==typeof e.path}function r$(e){return"object"==typeof e&&null!==e&&"object"==typeof e.info&&"string"==typeof e.message}tx(ry,{DefaultNameRegexp:()=>iL,RangeComparison:()=>eH,compareRange:()=>iO,findCommentNode:()=>ij,findDeclarationNodeAtOffset:()=>iM,findLeafNodeAtOffset:()=>iz,findLeafNodeBeforeOffset:()=>iq,flattenCst:()=>iw,getDatatypeNode:()=>ix,getInteriorNodes:()=>iB,getNextNode:()=>iK,getPreviousNode:()=>iU,getStartlineNode:()=>iW,inRange:()=>iD,isChildNode:()=>i_,isCommentNode:()=>iF,streamCst:()=>iN,toDocumentSegment:()=>iP,tokenToRange:()=>iI}),tS(rg,"isAstNode"),tS(rv,"isReference"),tS(rT,"isMultiReference"),tS(rR,"isAstNodeDescription"),tS(r$,"isLinkingError");var rb=class{static{tS(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let t=this.types[e.container.$type];if(!t)throw Error(`Type ${e.container.$type||"undefined"} not found.`);let r=t.properties[e.property]?.referenceType;if(!r)throw Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){let t=this.types[e];return t||{name:e,properties:{},superTypes:[]}}isInstance(e,t){return rg(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});let n=r[t];if(void 0!==n)return n;{let n=this.types[e],i=!!n&&n.superTypes.some(e=>this.isSubtype(e,t));return r[t]=i,i}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let t=this.getAllTypes(),r=[];for(let n of t)this.isSubtype(n,e)&&r.push(n);return this.allSubtypes[e]=r,r}}};function rE(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function rC(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function rA(e){return rE(e)&&"string"==typeof e.fullText}tS(rE,"isCompositeCstNode"),tS(rC,"isLeafCstNode"),tS(rA,"isRootCstNode");var rS=class e{static{tS(this,"StreamImpl")}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:tS(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),t=0,r=e.next();for(;!r.done;)t++,r=e.next();return t}toArray(){let e,t=[],r=this.iterator();do void 0!==(e=r.next()).value&&t.push(e.value);while(!e.done);return t}toSet(){return new Set(this)}toMap(e,t){return new Map(this.map(r=>[e?e(r):r,t?t(r):r]))}toString(){return this.join()}concat(t){return new e(()=>({first:this.startFn(),firstDone:!1,iterator:t[Symbol.iterator]()}),e=>{let t;if(!e.firstDone){do if(!(t=this.nextFn(e.first)).done)return t;while(!t.done);e.firstDone=!0}do if(!(t=e.iterator.next()).done)return t;while(!t.done);return rw})}join(e=","){let t,r=this.iterator(),n="",i=!1;do(t=r.next()).done||(i&&(n+=e),n+=rk(t.value)),i=!0;while(!t.done);return n}indexOf(e,t=0){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(n>=t&&i.value===e)return n;i=r.next(),n++}return -1}every(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)e(n.value,r),n=t.next(),r++}map(t){return new e(this.startFn,e=>{let{done:r,value:n}=this.nextFn(e);return r?rw:{done:!1,value:t(n)}})}filter(t){return new e(this.startFn,e=>{let r;do if(!(r=this.nextFn(e)).done&&t(r.value))return r;while(!r.done);return rw})}nonNullable(){return this.filter(e=>null!=e)}reduce(e,t){let r=this.iterator(),n=t,i=r.next();for(;!i.done;)n=void 0===n?i.value:e(n,i.value),i=r.next();return n}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let n=e.next();if(n.done)return r;let i=this.recursiveReduce(e,t,r);return void 0===i?n.value:t(i,n.value)}find(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return r.value;r=t.next()}}findIndex(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;){if(e(n.value))return r;n=t.next(),r++}return -1}includes(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(r.value===e)return!0;r=t.next()}return!1}flatMap(t){return new e(()=>({this:this.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:r,value:n}=this.nextFn(e.this);if(!r){let r=t(n);if(!rx(r))return{done:!1,value:r};e.iterator=r[Symbol.iterator]()}}while(e.iterator);return rw})}flat(t){if(void 0===t&&(t=1),t<=0)return this;let r=t>1?this.flat(t-1):this;return new e(()=>({this:r.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:t,value:n}=r.nextFn(e.this);if(!t)if(!rx(n))return{done:!1,value:n};else e.iterator=n[Symbol.iterator]()}while(e.iterator);return rw})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(t=1){return new e(()=>{let e=this.startFn();for(let r=0;r<t&&!this.nextFn(e).done;r++);return e},this.nextFn)}limit(t){return new e(()=>({size:0,state:this.startFn()}),e=>(e.size++,e.size>t)?rw:this.nextFn(e.state))}distinct(t){return new e(()=>({set:new Set,internalState:this.startFn()}),e=>{let r;do if(!(r=this.nextFn(e.internalState)).done){let n=t?t(r.value):r.value;if(!e.set.has(n))return e.set.add(n),r}while(!r.done);return rw})}exclude(e,t){let r=new Set;for(let n of e){let e=t?t(n):n;r.add(e)}return this.filter(e=>{let n=t?t(e):e;return!r.has(n)})}};function rk(e){return"string"==typeof e?e:void 0===e?"undefined":"function"==typeof e.toString?e.toString():Object.prototype.toString.call(e)}function rx(e){return!!e&&"function"==typeof e[Symbol.iterator]}tS(rk,"toString"),tS(rx,"isIterable");var rN=new rS(()=>void 0,()=>rw),rw=Object.freeze({done:!0,value:void 0});function r_(...e){if(1===e.length){let t=e[0];if(t instanceof rS)return t;if(rx(t))return new rS(()=>t[Symbol.iterator](),e=>e.next());if("number"==typeof t.length)return new rS(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:rw)}return e.length>1?new rS(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){let r=e[t.collIndex++];rx(r)?t.iterator=r[Symbol.iterator]():r&&"number"==typeof r.length&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length);return rw}):rN}tS(r_,"stream");var rI=class extends rS{static{tS(this,"TreeStreamImpl")}constructor(e,t,r){super(()=>({iterators:r?.includeRoot?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){let r=e.iterators[e.iterators.length-1].next();if(!r.done)return e.iterators.push(t(r.value)[Symbol.iterator]()),r;e.iterators.pop()}return rw})}iterator(){let e={state:this.startFn(),next:tS(()=>this.nextFn(e.state),"next"),prune:tS(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};!function(e){function t(e){return e.reduce((e,t)=>e+t,0)}function r(e){return e.reduce((e,t)=>e*t,0)}function n(e){return e.reduce((e,t)=>Math.min(e,t))}function i(e){return e.reduce((e,t)=>Math.max(e,t))}tS(t,"sum"),e.sum=t,tS(r,"product"),e.product=r,tS(n,"min"),e.min=n,tS(i,"max"),e.max=i}(eV||(eV={}));var rP={};function rO(e,t={}){for(let[r,n]of Object.entries(e))!r.startsWith("$")&&(Array.isArray(n)?n.forEach((n,i)=>{rg(n)&&(n.$container=e,n.$containerProperty=r,n.$containerIndex=i,t.deep&&rO(n,t))}):rg(n)&&(n.$container=e,n.$containerProperty=r,t.deep&&rO(n,t)))}function rD(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function rL(e,t){let r=e;for(;r;){if(t(r))return!0;r=r.$container}return!1}function rM(e){let t=rj(e).$document;if(!t)throw Error("AST node has no document.");return t}function rj(e){for(;e.$container;)e=e.$container;return e}function rF(e){return rv(e)?e.ref?[e.ref]:[]:rT(e)?e.items.map(e=>e.ref):[]}function rz(e,t){if(!e)throw Error("Node must be an AstNode.");let r=t?.range;return new rS(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let n=t.keys[t.keyIndex];if(!n.startsWith("$")){let i=e[n];if(rg(i)){if(t.keyIndex++,rU(i,r))return{done:!1,value:i}}else if(Array.isArray(i)){for(;t.arrayIndex<i.length;){let e=i[t.arrayIndex++];if(rg(e)&&rU(e,r))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return rw})}function rq(e,t){if(!e)throw Error("Root node must be an AstNode.");return new rI(e,e=>rz(e,t))}function rG(e,t){if(e){if(t?.range&&!rU(e,t.range))return new rI(e,()=>[])}else throw Error("Root node must be an AstNode.");return new rI(e,e=>rz(e,t),{includeRoot:!0})}function rU(e,t){if(!t)return!0;let r=e.$cstNode?.range;return!!r&&iD(r,t)}function rK(e){return new rS(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let r=t.keys[t.keyIndex];if(!r.startsWith("$")){let n=e[r];if(rv(n)||rT(n))return t.keyIndex++,{done:!1,value:{reference:n,container:e,property:r}};if(Array.isArray(n)){for(;t.arrayIndex<n.length;){let i=t.arrayIndex++,a=n[i];if(rv(a)||rT(n))return{done:!1,value:{reference:a,container:e,property:r,index:i}}}t.arrayIndex=0}}t.keyIndex++}return rw})}function rW(e,t){for(let r of Object.values(e.getTypeMetaData(t.$type).properties))void 0!==r.defaultValue&&void 0===t[r.name]&&(t[r.name]=rB(r.defaultValue))}function rB(e){return Array.isArray(e)?[...e.map(rB)]:e}function rV(e,t,r){let n={$type:e.$type};for(let[i,a]of(r&&(r.set(e,n),r.set(n,e)),Object.entries(e)))if(!i.startsWith("$"))if(rg(a))n[i]=rV(a,t,r);else if(rv(a))n[i]=t(n,i,a.$refNode,a.$refText,a);else if(Array.isArray(a)){let e=[];for(let s of a)rg(s)?e.push(rV(s,t,r)):rv(s)?e.push(t(n,i,s.$refNode,s.$refText,s)):e.push(s);n[i]=e}else n[i]=a;return rO(n,{deep:!0}),n}tx(rP,{assignMandatoryProperties:()=>rW,copyAstNode:()=>rV,findRootNode:()=>rj,getContainerOfType:()=>rD,getDocument:()=>rM,getReferenceNodes:()=>rF,hasContainerOfType:()=>rL,linkContentToContainer:()=>rO,streamAllContents:()=>rq,streamAst:()=>rG,streamContents:()=>rz,streamReferences:()=>rK}),tS(rO,"linkContentToContainer"),tS(rD,"getContainerOfType"),tS(rL,"hasContainerOfType"),tS(rM,"getDocument"),tS(rj,"findRootNode"),tS(rF,"getReferenceNodes"),tS(rz,"streamContents"),tS(rq,"streamAllContents"),tS(rG,"streamAst"),tS(rU,"isAstNodeInRange"),tS(rK,"streamReferences"),tS(rW,"assignMandatoryProperties"),tS(rB,"copyDefaultValue"),tS(rV,"copyAstNode");var rH={};tx(rH,{AbstractElement:()=>rJ,AbstractParserRule:()=>rZ,AbstractRule:()=>r0,AbstractType:()=>r2,Action:()=>r9,Alternatives:()=>r5,ArrayLiteral:()=>r7,ArrayType:()=>ne,Assignment:()=>nr,BooleanLiteral:()=>ni,CharacterRange:()=>ns,Condition:()=>nl,Conjunction:()=>nc,CrossReference:()=>nd,Disjunction:()=>nh,EndOfFile:()=>ny,Grammar:()=>nv,GrammarImport:()=>nR,Group:()=>nb,InferredType:()=>nC,InfixRule:()=>nS,InfixRuleOperatorList:()=>nx,InfixRuleOperators:()=>nw,Interface:()=>nI,Keyword:()=>nO,LangiumGrammarAstReflection:()=>iS,LangiumGrammarTerminals:()=>rY,NamedArgument:()=>nL,NegatedToken:()=>nj,Negation:()=>nz,NumberLiteral:()=>nG,Parameter:()=>nK,ParameterReference:()=>nB,ParserRule:()=>nH,ReferenceType:()=>nJ,RegexToken:()=>nZ,ReturnType:()=>n0,RuleCall:()=>n2,SimpleType:()=>n9,StringLiteral:()=>n5,TerminalAlternatives:()=>n7,TerminalElement:()=>ie,TerminalGroup:()=>ir,TerminalRule:()=>ia,TerminalRuleCall:()=>io,Type:()=>iu,TypeAttribute:()=>ip,TypeDefinition:()=>ih,UnionType:()=>iy,UnorderedGroup:()=>iv,UntilToken:()=>iR,ValueLiteral:()=>ib,Wildcard:()=>iC,isAbstractElement:()=>rX,isAbstractParserRule:()=>rQ,isAbstractRule:()=>r1,isAbstractType:()=>r3,isAction:()=>r4,isAlternatives:()=>r8,isArrayLiteral:()=>r6,isArrayType:()=>nt,isAssignment:()=>nn,isBooleanLiteral:()=>na,isCharacterRange:()=>no,isCondition:()=>nu,isConjunction:()=>np,isCrossReference:()=>nf,isDisjunction:()=>nm,isEndOfFile:()=>ng,isGrammar:()=>nT,isGrammarImport:()=>n$,isGroup:()=>nE,isInferredType:()=>nA,isInfixRule:()=>nk,isInfixRuleOperatorList:()=>nN,isInfixRuleOperators:()=>n_,isInterface:()=>nP,isKeyword:()=>nD,isNamedArgument:()=>nM,isNegatedToken:()=>nF,isNegation:()=>nq,isNumberLiteral:()=>nU,isParameter:()=>nW,isParameterReference:()=>nV,isParserRule:()=>nY,isReferenceType:()=>nX,isRegexToken:()=>nQ,isReturnType:()=>n1,isRuleCall:()=>n3,isSimpleType:()=>n4,isStringLiteral:()=>n8,isTerminalAlternatives:()=>n6,isTerminalElement:()=>it,isTerminalGroup:()=>ii,isTerminalRule:()=>is,isTerminalRuleCall:()=>il,isType:()=>ic,isTypeAttribute:()=>id,isTypeDefinition:()=>im,isUnionType:()=>ig,isUnorderedGroup:()=>iT,isUntilToken:()=>i$,isValueLiteral:()=>iE,isWildcard:()=>iA,reflection:()=>ik});var rY={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]*/},rJ={$type:"AbstractElement",cardinality:"cardinality"};function rX(e){return ik.isInstance(e,rJ.$type)}tS(rX,"isAbstractElement");var rZ={$type:"AbstractParserRule"};function rQ(e){return ik.isInstance(e,rZ.$type)}tS(rQ,"isAbstractParserRule");var r0={$type:"AbstractRule"};function r1(e){return ik.isInstance(e,r0.$type)}tS(r1,"isAbstractRule");var r2={$type:"AbstractType"};function r3(e){return ik.isInstance(e,r2.$type)}tS(r3,"isAbstractType");var r9={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function r4(e){return ik.isInstance(e,r9.$type)}tS(r4,"isAction");var r5={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function r8(e){return ik.isInstance(e,r5.$type)}tS(r8,"isAlternatives");var r7={$type:"ArrayLiteral",elements:"elements"};function r6(e){return ik.isInstance(e,r7.$type)}tS(r6,"isArrayLiteral");var ne={$type:"ArrayType",elementType:"elementType"};function nt(e){return ik.isInstance(e,ne.$type)}tS(nt,"isArrayType");var nr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function nn(e){return ik.isInstance(e,nr.$type)}tS(nn,"isAssignment");var ni={$type:"BooleanLiteral",true:"true"};function na(e){return ik.isInstance(e,ni.$type)}tS(na,"isBooleanLiteral");var ns={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function no(e){return ik.isInstance(e,ns.$type)}tS(no,"isCharacterRange");var nl={$type:"Condition"};function nu(e){return ik.isInstance(e,nl.$type)}tS(nu,"isCondition");var nc={$type:"Conjunction",left:"left",right:"right"};function np(e){return ik.isInstance(e,nc.$type)}tS(np,"isConjunction");var nd={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function nf(e){return ik.isInstance(e,nd.$type)}tS(nf,"isCrossReference");var nh={$type:"Disjunction",left:"left",right:"right"};function nm(e){return ik.isInstance(e,nh.$type)}tS(nm,"isDisjunction");var ny={$type:"EndOfFile",cardinality:"cardinality"};function ng(e){return ik.isInstance(e,ny.$type)}tS(ng,"isEndOfFile");var nv={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function nT(e){return ik.isInstance(e,nv.$type)}tS(nT,"isGrammar");var nR={$type:"GrammarImport",path:"path"};function n$(e){return ik.isInstance(e,nR.$type)}tS(n$,"isGrammarImport");var nb={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function nE(e){return ik.isInstance(e,nb.$type)}tS(nE,"isGroup");var nC={$type:"InferredType",name:"name"};function nA(e){return ik.isInstance(e,nC.$type)}tS(nA,"isInferredType");var nS={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function nk(e){return ik.isInstance(e,nS.$type)}tS(nk,"isInfixRule");var nx={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function nN(e){return ik.isInstance(e,nx.$type)}tS(nN,"isInfixRuleOperatorList");var nw={$type:"InfixRuleOperators",precedences:"precedences"};function n_(e){return ik.isInstance(e,nw.$type)}tS(n_,"isInfixRuleOperators");var nI={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function nP(e){return ik.isInstance(e,nI.$type)}tS(nP,"isInterface");var nO={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function nD(e){return ik.isInstance(e,nO.$type)}tS(nD,"isKeyword");var nL={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function nM(e){return ik.isInstance(e,nL.$type)}tS(nM,"isNamedArgument");var nj={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function nF(e){return ik.isInstance(e,nj.$type)}tS(nF,"isNegatedToken");var nz={$type:"Negation",value:"value"};function nq(e){return ik.isInstance(e,nz.$type)}tS(nq,"isNegation");var nG={$type:"NumberLiteral",value:"value"};function nU(e){return ik.isInstance(e,nG.$type)}tS(nU,"isNumberLiteral");var nK={$type:"Parameter",name:"name"};function nW(e){return ik.isInstance(e,nK.$type)}tS(nW,"isParameter");var nB={$type:"ParameterReference",parameter:"parameter"};function nV(e){return ik.isInstance(e,nB.$type)}tS(nV,"isParameterReference");var nH={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function nY(e){return ik.isInstance(e,nH.$type)}tS(nY,"isParserRule");var nJ={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function nX(e){return ik.isInstance(e,nJ.$type)}tS(nX,"isReferenceType");var nZ={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function nQ(e){return ik.isInstance(e,nZ.$type)}tS(nQ,"isRegexToken");var n0={$type:"ReturnType",name:"name"};function n1(e){return ik.isInstance(e,n0.$type)}tS(n1,"isReturnType");var n2={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function n3(e){return ik.isInstance(e,n2.$type)}tS(n3,"isRuleCall");var n9={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function n4(e){return ik.isInstance(e,n9.$type)}tS(n4,"isSimpleType");var n5={$type:"StringLiteral",value:"value"};function n8(e){return ik.isInstance(e,n5.$type)}tS(n8,"isStringLiteral");var n7={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function n6(e){return ik.isInstance(e,n7.$type)}tS(n6,"isTerminalAlternatives");var ie={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function it(e){return ik.isInstance(e,ie.$type)}tS(it,"isTerminalElement");var ir={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function ii(e){return ik.isInstance(e,ir.$type)}tS(ii,"isTerminalGroup");var ia={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function is(e){return ik.isInstance(e,ia.$type)}tS(is,"isTerminalRule");var io={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function il(e){return ik.isInstance(e,io.$type)}tS(il,"isTerminalRuleCall");var iu={$type:"Type",name:"name",type:"type"};function ic(e){return ik.isInstance(e,iu.$type)}tS(ic,"isType");var ip={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function id(e){return ik.isInstance(e,ip.$type)}tS(id,"isTypeAttribute");var ih={$type:"TypeDefinition"};function im(e){return ik.isInstance(e,ih.$type)}tS(im,"isTypeDefinition");var iy={$type:"UnionType",types:"types"};function ig(e){return ik.isInstance(e,iy.$type)}tS(ig,"isUnionType");var iv={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function iT(e){return ik.isInstance(e,iv.$type)}tS(iT,"isUnorderedGroup");var iR={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function i$(e){return ik.isInstance(e,iR.$type)}tS(i$,"isUntilToken");var ib={$type:"ValueLiteral"};function iE(e){return ik.isInstance(e,ib.$type)}tS(iE,"isValueLiteral");var iC={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function iA(e){return ik.isInstance(e,iC.$type)}tS(iA,"isWildcard");var iS=class extends rb{static{tS(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:rJ.$type,properties:{cardinality:{name:rJ.cardinality}},superTypes:[]},AbstractParserRule:{name:rZ.$type,properties:{},superTypes:[r0.$type,r2.$type]},AbstractRule:{name:r0.$type,properties:{},superTypes:[]},AbstractType:{name:r2.$type,properties:{},superTypes:[]},Action:{name:r9.$type,properties:{cardinality:{name:r9.cardinality},feature:{name:r9.feature},inferredType:{name:r9.inferredType},operator:{name:r9.operator},type:{name:r9.type,referenceType:r2.$type}},superTypes:[rJ.$type]},Alternatives:{name:r5.$type,properties:{cardinality:{name:r5.cardinality},elements:{name:r5.elements,defaultValue:[]}},superTypes:[rJ.$type]},ArrayLiteral:{name:r7.$type,properties:{elements:{name:r7.elements,defaultValue:[]}},superTypes:[ib.$type]},ArrayType:{name:ne.$type,properties:{elementType:{name:ne.elementType}},superTypes:[ih.$type]},Assignment:{name:nr.$type,properties:{cardinality:{name:nr.cardinality},feature:{name:nr.feature},operator:{name:nr.operator},predicate:{name:nr.predicate},terminal:{name:nr.terminal}},superTypes:[rJ.$type]},BooleanLiteral:{name:ni.$type,properties:{true:{name:ni.true,defaultValue:!1}},superTypes:[nl.$type,ib.$type]},CharacterRange:{name:ns.$type,properties:{cardinality:{name:ns.cardinality},left:{name:ns.left},lookahead:{name:ns.lookahead},parenthesized:{name:ns.parenthesized,defaultValue:!1},right:{name:ns.right}},superTypes:[ie.$type]},Condition:{name:nl.$type,properties:{},superTypes:[]},Conjunction:{name:nc.$type,properties:{left:{name:nc.left},right:{name:nc.right}},superTypes:[nl.$type]},CrossReference:{name:nd.$type,properties:{cardinality:{name:nd.cardinality},deprecatedSyntax:{name:nd.deprecatedSyntax,defaultValue:!1},isMulti:{name:nd.isMulti,defaultValue:!1},terminal:{name:nd.terminal},type:{name:nd.type,referenceType:r2.$type}},superTypes:[rJ.$type]},Disjunction:{name:nh.$type,properties:{left:{name:nh.left},right:{name:nh.right}},superTypes:[nl.$type]},EndOfFile:{name:ny.$type,properties:{cardinality:{name:ny.cardinality}},superTypes:[rJ.$type]},Grammar:{name:nv.$type,properties:{imports:{name:nv.imports,defaultValue:[]},interfaces:{name:nv.interfaces,defaultValue:[]},isDeclared:{name:nv.isDeclared,defaultValue:!1},name:{name:nv.name},rules:{name:nv.rules,defaultValue:[]},types:{name:nv.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:nR.$type,properties:{path:{name:nR.path}},superTypes:[]},Group:{name:nb.$type,properties:{cardinality:{name:nb.cardinality},elements:{name:nb.elements,defaultValue:[]},guardCondition:{name:nb.guardCondition},predicate:{name:nb.predicate}},superTypes:[rJ.$type]},InferredType:{name:nC.$type,properties:{name:{name:nC.name}},superTypes:[r2.$type]},InfixRule:{name:nS.$type,properties:{call:{name:nS.call},dataType:{name:nS.dataType},inferredType:{name:nS.inferredType},name:{name:nS.name},operators:{name:nS.operators},parameters:{name:nS.parameters,defaultValue:[]},returnType:{name:nS.returnType,referenceType:r2.$type}},superTypes:[rZ.$type]},InfixRuleOperatorList:{name:nx.$type,properties:{associativity:{name:nx.associativity},operators:{name:nx.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:nw.$type,properties:{precedences:{name:nw.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:nI.$type,properties:{attributes:{name:nI.attributes,defaultValue:[]},name:{name:nI.name},superTypes:{name:nI.superTypes,defaultValue:[],referenceType:r2.$type}},superTypes:[r2.$type]},Keyword:{name:nO.$type,properties:{cardinality:{name:nO.cardinality},predicate:{name:nO.predicate},value:{name:nO.value}},superTypes:[rJ.$type]},NamedArgument:{name:nL.$type,properties:{calledByName:{name:nL.calledByName,defaultValue:!1},parameter:{name:nL.parameter,referenceType:nK.$type},value:{name:nL.value}},superTypes:[]},NegatedToken:{name:nj.$type,properties:{cardinality:{name:nj.cardinality},lookahead:{name:nj.lookahead},parenthesized:{name:nj.parenthesized,defaultValue:!1},terminal:{name:nj.terminal}},superTypes:[ie.$type]},Negation:{name:nz.$type,properties:{value:{name:nz.value}},superTypes:[nl.$type]},NumberLiteral:{name:nG.$type,properties:{value:{name:nG.value}},superTypes:[ib.$type]},Parameter:{name:nK.$type,properties:{name:{name:nK.name}},superTypes:[]},ParameterReference:{name:nB.$type,properties:{parameter:{name:nB.parameter,referenceType:nK.$type}},superTypes:[nl.$type]},ParserRule:{name:nH.$type,properties:{dataType:{name:nH.dataType},definition:{name:nH.definition},entry:{name:nH.entry,defaultValue:!1},fragment:{name:nH.fragment,defaultValue:!1},inferredType:{name:nH.inferredType},name:{name:nH.name},parameters:{name:nH.parameters,defaultValue:[]},returnType:{name:nH.returnType,referenceType:r2.$type}},superTypes:[rZ.$type]},ReferenceType:{name:nJ.$type,properties:{isMulti:{name:nJ.isMulti,defaultValue:!1},referenceType:{name:nJ.referenceType}},superTypes:[ih.$type]},RegexToken:{name:nZ.$type,properties:{cardinality:{name:nZ.cardinality},lookahead:{name:nZ.lookahead},parenthesized:{name:nZ.parenthesized,defaultValue:!1},regex:{name:nZ.regex}},superTypes:[ie.$type]},ReturnType:{name:n0.$type,properties:{name:{name:n0.name}},superTypes:[]},RuleCall:{name:n2.$type,properties:{arguments:{name:n2.arguments,defaultValue:[]},cardinality:{name:n2.cardinality},predicate:{name:n2.predicate},rule:{name:n2.rule,referenceType:r0.$type}},superTypes:[rJ.$type]},SimpleType:{name:n9.$type,properties:{primitiveType:{name:n9.primitiveType},stringType:{name:n9.stringType},typeRef:{name:n9.typeRef,referenceType:r2.$type}},superTypes:[ih.$type]},StringLiteral:{name:n5.$type,properties:{value:{name:n5.value}},superTypes:[ib.$type]},TerminalAlternatives:{name:n7.$type,properties:{cardinality:{name:n7.cardinality},elements:{name:n7.elements,defaultValue:[]},lookahead:{name:n7.lookahead},parenthesized:{name:n7.parenthesized,defaultValue:!1}},superTypes:[ie.$type]},TerminalElement:{name:ie.$type,properties:{cardinality:{name:ie.cardinality},lookahead:{name:ie.lookahead},parenthesized:{name:ie.parenthesized,defaultValue:!1}},superTypes:[rJ.$type]},TerminalGroup:{name:ir.$type,properties:{cardinality:{name:ir.cardinality},elements:{name:ir.elements,defaultValue:[]},lookahead:{name:ir.lookahead},parenthesized:{name:ir.parenthesized,defaultValue:!1}},superTypes:[ie.$type]},TerminalRule:{name:ia.$type,properties:{definition:{name:ia.definition},fragment:{name:ia.fragment,defaultValue:!1},hidden:{name:ia.hidden,defaultValue:!1},name:{name:ia.name},type:{name:ia.type}},superTypes:[r0.$type]},TerminalRuleCall:{name:io.$type,properties:{cardinality:{name:io.cardinality},lookahead:{name:io.lookahead},parenthesized:{name:io.parenthesized,defaultValue:!1},rule:{name:io.rule,referenceType:ia.$type}},superTypes:[ie.$type]},Type:{name:iu.$type,properties:{name:{name:iu.name},type:{name:iu.type}},superTypes:[r2.$type]},TypeAttribute:{name:ip.$type,properties:{defaultValue:{name:ip.defaultValue},isOptional:{name:ip.isOptional,defaultValue:!1},name:{name:ip.name},type:{name:ip.type}},superTypes:[]},TypeDefinition:{name:ih.$type,properties:{},superTypes:[]},UnionType:{name:iy.$type,properties:{types:{name:iy.types,defaultValue:[]}},superTypes:[ih.$type]},UnorderedGroup:{name:iv.$type,properties:{cardinality:{name:iv.cardinality},elements:{name:iv.elements,defaultValue:[]}},superTypes:[rJ.$type]},UntilToken:{name:iR.$type,properties:{cardinality:{name:iR.cardinality},lookahead:{name:iR.lookahead},parenthesized:{name:iR.parenthesized,defaultValue:!1},terminal:{name:iR.terminal}},superTypes:[ie.$type]},ValueLiteral:{name:ib.$type,properties:{},superTypes:[]},Wildcard:{name:iC.$type,properties:{cardinality:{name:iC.cardinality},lookahead:{name:iC.lookahead},parenthesized:{name:iC.parenthesized,defaultValue:!1}},superTypes:[ie.$type]}}}},ik=new iS;function ix(e){let t=e,r=!1;for(;t;){let e=rD(t.grammarSource,nY);if(e&&e.dataType)t=t.container,r=!0;else if(r)return t;else break}}function iN(e){return new rI(e,e=>rE(e)?e.content:[],{includeRoot:!0})}function iw(e){return iN(e).filter(rC)}function i_(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}function iI(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function iP(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function iO(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return eH.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return eH.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?eH.Inside:r?eH.OverlapBack:n?eH.OverlapFront:eH.Outside}function iD(e,t){return iO(e,t)>eH.After}tS(ix,"getDatatypeNode"),tS(iN,"streamCst"),tS(iw,"flattenCst"),tS(i_,"isChildNode"),tS(iI,"tokenToRange"),tS(iP,"toDocumentSegment"),(a=eH||(eH={}))[a.Before=0]="Before",a[a.After=1]="After",a[a.OverlapFront=2]="OverlapFront",a[a.OverlapBack=3]="OverlapBack",a[a.Inside=4]="Inside",a[a.Outside=5]="Outside",tS(iO,"compareRange"),tS(iD,"inRange");var iL=/^[\w\p{L}]$/u;function iM(e,t,r=iL){if(e){if(t>0){let n=t-e.offset,i=e.text.charAt(n);!r.test(i)&&t--}return iz(e,t)}}function ij(e,t){if(e){let r=iU(e,!0);if(r&&iF(r,t))return r;if(rA(e)){let r=e.content.findIndex(e=>!e.hidden);for(let n=r-1;n>=0;n--){let r=e.content[n];if(iF(r,t))return r}}}}function iF(e,t){return rC(e)&&t.includes(e.tokenType.name)}function iz(e,t){if(rC(e))return e;if(rE(e)){let r=iG(e,t,!1);if(r)return iz(r,t)}}function iq(e,t){if(rC(e))return e;if(rE(e)){let r=iG(e,t,!0);if(r)return iq(r,t)}}function iG(e,t,r){let n,i=0,a=e.content.length-1;for(;i<=a;){let s=Math.floor((i+a)/2),o=e.content[s];if(o.offset<=t&&o.end>t)return o;o.end<=t?(n=r?o:void 0,i=s+1):a=s-1}return n}function iU(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let e=r.content[n];if(t||!e.hidden)return e}e=r}}function iK(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e),i=r.content.length-1;for(;n<i;){n++;let e=r.content[n];if(t||!e.hidden)return e}e=r}}function iW(e){let t;if(0===e.range.start.character)return e;let r=e.range.start.line,n=e;for(;e.container;){let i=e.container,a=t??i.content.indexOf(e);if(0===a?(e=i,t=void 0):(t=a-1,e=i.content[t]),e.range.start.line!==r)break;n=e}return n}function iB(e,t){let r=iV(e,t);return r?r.parent.content.slice(r.a+1,r.b):[]}function iV(e,t){let r,n=iH(e),i=iH(t);for(let e=0;e<n.length&&e<i.length;e++){let t=n[e],a=i[e];if(t.parent===a.parent)r={parent:t.parent,a:t.index,b:a.index};else break}return r}function iH(e){let t=[];for(;e.container;){let r=e.container,n=r.content.indexOf(e);t.push({parent:r,index:n}),e=r}return t.reverse()}tS(iM,"findDeclarationNodeAtOffset"),tS(ij,"findCommentNode"),tS(iF,"isCommentNode"),tS(iz,"findLeafNodeAtOffset"),tS(iq,"findLeafNodeBeforeOffset"),tS(iG,"binarySearch"),tS(iU,"getPreviousNode"),tS(iK,"getNextNode"),tS(iW,"getStartlineNode"),tS(iB,"getInteriorNodes"),tS(iV,"getCommonParent"),tS(iH,"getParentChain");var iY={};tx(iY,{findAssignment:()=>ak,findNameAssignment:()=>ax,findNodeForKeyword:()=>aA,findNodeForProperty:()=>ab,findNodesForKeyword:()=>aC,findNodesForKeywordInternal:()=>aS,findNodesForProperty:()=>a$,getActionAtElement:()=>aw,getActionType:()=>az,getAllReachableRules:()=>ay,getAllRulesUsedForCrossReferences:()=>av,getCrossReferenceTerminal:()=>aT,getEntryRule:()=>ah,getExplicitRuleType:()=>aj,getHiddenRules:()=>am,getRuleType:()=>aG,getRuleTypeName:()=>aq,getTypeName:()=>aF,isArrayCardinality:()=>aI,isArrayOperator:()=>aP,isCommentTerminal:()=>aR,isDataType:()=>aL,isDataTypeRule:()=>aO,isOptionalCardinality:()=>a_,terminalRegex:()=>aU});var iJ=class extends Error{static{tS(this,"ErrorWithLocation")}constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}};function iX(e,t="Error: Got unexpected value."){throw Error(t)}function iZ(e,t="Error: Condition is violated."){if(!e)throw Error(t)}tS(iX,"assertUnreachable"),tS(iZ,"assertCondition");var iQ={};function i0(e){return e.charCodeAt(0)}function i1(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function i2(e,t){if(!0===e[t])throw"duplicate flag "+t;e[t],e[t]=!0}function i3(e){if(void 0===e)throw Error("Internal Error - Should never get here!");return!0}function i9(){throw Error("Internal Error - Should never get here!")}function i4(e){return"Character"===e.type}tx(iQ,{NEWLINE_REGEXP:()=>ai,escapeRegExp:()=>ap,getTerminalParts:()=>ao,isMultilineComment:()=>al,isWhitespace:()=>ac,partialMatches:()=>ad,partialRegExp:()=>af,whitespaceCharacters:()=>au}),tS(i0,"cc"),tS(i1,"insertToSet"),tS(i2,"addFlag"),tS(i3,"ASSERT_EXISTS"),tS(i9,"ASSERT_NEVER_REACH_HERE"),tS(i4,"isCharacter");var i5=[];for(let e=i0("0");e<=i0("9");e++)i5.push(e);var i8=[i0("_")].concat(i5);for(let e=i0("a");e<=i0("z");e++)i8.push(e);for(let e=i0("A");e<=i0("Z");e++)i8.push(e);var i7=[i0(" "),i0("\f"),i0("\n"),i0("\r"),i0(" "),i0("\v"),i0(" "),i0("\xa0"),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0(" "),i0("\u2028"),i0("\u2029"),i0(" "),i0(" "),i0(" "),i0("\uFEFF")],i6=/[0-9a-fA-F]/,ae=/[0-9]/,at=/[1-9]/,ar=class{static{tS(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let t=this.disjunction();this.consumeChar("/");let r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":i2(r,"global");break;case"i":i2(r,"ignoreCase");break;case"m":i2(r,"multiLine");break;case"u":i2(r,"unicode");break;case"y":i2(r,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":let t;switch(this.consumeChar("?"),this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}}i3(t);let r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return i9()}quantifier(e=!1){let t,r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":let n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":t=this.isDigit()?{atLeast:n,atMost:this.integerIncludingZero()}:{atLeast:n,atMost:1/0},this.consumeChar("}")}if(!0===e&&void 0===t)return;i3(t)}if((!0!==e||void 0!==t)&&i3(t))return"?"===this.peekChar(0)?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t}atom(){let e,t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group()}return(void 0===e&&this.isPatternCharacter()&&(e=this.patternCharacter()),i3(e))?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):i9()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[i0("\n"),i0("\r"),i0("\u2028"),i0("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=i5;break;case"D":e=i5,t=!0;break;case"s":e=i7;break;case"S":e=i7,t=!0;break;case"w":e=i8;break;case"W":e=i8,t=!0}return i3(e)?{type:"Set",value:e,complement:t}:i9()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=i0("\f");break;case"n":e=i0("\n");break;case"r":e=i0("\r");break;case"t":e=i0(" ");break;case"v":e=i0("\v")}return i3(e)?{type:"Character",value:e}:i9()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(!1===/[a-zA-Z]/.test(e))throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:i0("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:i0(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:i0(this.popChar())}}}characterClass(){let e=[],t=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),t=!0);this.isClassAtom();){let t=this.classAtom();if(t.type,i4(t)&&this.isRangeDash()){this.consumeChar("-");let r=this.classAtom();if(r.type,i4(r)){if(r.value<t.value)throw Error("Range out of order in character class");e.push({from:t.value,to:r.value})}else i1(t.value,e),e.push(i0("-")),i1(r.value,e)}else i1(t.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:i0("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;this.consumeChar("("),"?"===this.peekChar(0)?(this.consumeChar("?"),this.consumeChar(":"),e=!1):this.groupIdx++;let t=this.disjunction();this.consumeChar(")");let r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(!1===at.test(e))throw Error("Expecting a positive integer");for(;ae.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(!1===ae.test(e))throw Error("Expecting an integer");for(;ae.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:i0(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return"-"===this.peekChar()&&this.isClassAtom(1)}isDigit(){return ae.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2)||"<"===this.peekChar(2)&&("="===this.peekChar(3)||"!"===this.peekChar(3)));default:return!1}}isQuantifier(){let e=this.saveState();try{return void 0!==this.quantifier(!0)}catch(e){return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let r=0;r<e;r++){let e=this.popChar();if(!1===i6.test(e))throw Error("Expecting a HexDecimal digits");t+=e}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(void 0!==e&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}},an=class{static{tS(this,"BaseRegExpVisitor")}visitChildren(e){for(let t in e){let r=e[t];e.hasOwnProperty(t)&&(void 0!==r.type?this.visit(r):Array.isArray(r)&&r.forEach(e=>{this.visit(e)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}},ai=/\r?\n/gm,aa=new ar,as=new class extends an{static{tS(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=ap(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){let t=new RegExp(this.regex.substring(e.loc.begin,e.loc.end));this.multiline=!!"\n".match(t)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}};function ao(e){try{"string"!=typeof e&&(e=e.source),e=`/${e}/`;let t=aa.pattern(e),r=[];for(let n of t.value.value)as.reset(e),as.visit(n),r.push({start:as.startRegexp,end:as.endRegex});return r}catch{return[]}}function al(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),as.reset(e),as.visit(aa.pattern(e)),as.multiline}catch{return!1}}tS(ao,"getTerminalParts"),tS(al,"isMultilineComment");var au="\f\n\r \v \xa0            \u2028\u2029   \uFEFF".split("");function ac(e){let t="string"==typeof e?new RegExp(e):e;return au.some(e=>t.test(e))}function ap(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ad(e,t){let r=af(e),n=t.match(r);return!!n&&n[0].length>0}function af(e){"string"==typeof e&&(e=new RegExp(e));let t=e,r=e.source,n=0;function i(){let e="",a;function s(t){e+=r.substr(n,t),n+=t}function o(t){e+="(?:"+r.substr(n,t)+"|$)",n+=t}for(tS(s,"appendRaw"),tS(o,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":o(3);break;case"x":o(4);break;case"u":o(t.unicode?"{"===r[n+2]?r.indexOf("}",n)-n+1:6:2);break;case"p":case"P":o(t.unicode?r.indexOf("}",n)-n+1:2);break;case"k":o(r.indexOf(">",n)-n+1);break;default:o(2)}break;case"[":(a=/\[(?:\\.|.)*?\]/g).lastIndex=n,o((a=a.exec(r)||[])[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":s(1);break;case"{":(a=/\{\d+,?\d*\}/g).lastIndex=n,(a=a.exec(r))?s(a[0].length):o(1);break;case"(":if("?"===r[n+1])switch(r[n+2]){case":":e+="(?:",n+=3,e+=i()+"|$)";break;case"=":e+="(?=",n+=3,e+=i()+")";break;case"!":a=n,n+=3,i(),e+=r.substr(a,n-a);break;case"<":switch(r[n+3]){case"=":case"!":a=n,n+=4,i(),e+=r.substr(a,n-a);break;default:s(r.indexOf(">",n)-n+1),e+=i()+"|$)"}}else s(1),e+=i()+"|$)";break;case")":return++n,e;default:o(1)}return e}return tS(i,"process"),new RegExp(i(),e.flags)}function ah(e){return e.rules.find(e=>nY(e)&&e.entry)}function am(e){return e.rules.filter(e=>is(e)&&e.hidden)}function ay(e,t){let r=new Set,n=ah(e);if(!n)return new Set(e.rules);for(let i of[n].concat(am(e)))ag(i,r,t);let i=new Set;for(let t of e.rules)(r.has(t.name)||is(t)&&t.hidden)&&i.add(t);return i}function ag(e,t,r){t.add(e.name),rq(e).forEach(e=>{if(n3(e)||r&&il(e)){let n=e.rule.ref;n&&!t.has(n.name)&&ag(n,t,r)}})}function av(e){let t=new Set;return rq(e).forEach(e=>{nf(e)&&(nY(e.type.ref)&&t.add(e.type.ref),nA(e.type.ref)&&nY(e.type.ref.$container)&&t.add(e.type.ref.$container))}),t}function aT(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=ax(e.type.ref);return t?.terminal}}function aR(e){return e.hidden&&!ac(aU(e))}function a$(e,t){return e&&t?aE(e,t,e.astNode,!0):[]}function ab(e,t,r){if(!e||!t)return;let n=aE(e,t,e.astNode,!0);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function aE(e,t,r,n){if(!n){let r=rD(e.grammarSource,nn);if(r&&r.feature===t)return[e]}return rE(e)&&e.astNode===r?e.content.flatMap(e=>aE(e,t,r,!1)):[]}function aC(e,t){return e?aS(e,t,e?.astNode):[]}function aA(e,t,r){if(!e)return;let n=aS(e,t,e?.astNode);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function aS(e,t,r){let n;if(e.astNode!==r)return[];if(nD(e.grammarSource)&&e.grammarSource.value===t)return[e];let i=iN(e).iterator(),a=[];do if(!(n=i.next()).done){let e=n.value;e.astNode===r?nD(e.grammarSource)&&e.grammarSource.value===t&&a.push(e):i.prune()}while(!n.done);return a}function ak(e){let t=e.astNode;for(;t===e.container?.astNode;){let t=rD(e.grammarSource,nn);if(t)return t;e=e.container}}function ax(e){let t=e;return nA(t)&&(r4(t.$container)?t=t.$container.$container:rQ(t.$container)?t=t.$container:iX(t.$container)),aN(e,t,new Map)}function aN(e,t,r){function n(t,n){let i;return rD(t,nn)||(i=aN(n,n,r)),r.set(e,i),i}if(tS(n,"go"),r.has(e))return r.get(e);for(let i of(r.set(e,void 0),rq(t)))if(nn(i)&&"name"===i.feature.toLowerCase())return r.set(e,i),i;else if(n3(i)&&nY(i.rule.ref))return n(i,i.rule.ref);else if(n4(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}function aw(e){let t=e.$container;if(nE(t)){let r=t.elements,n=r.indexOf(e);for(let e=n-1;e>=0;e--){let t=r[e];if(r4(t))return t;{let t=rq(r[e]).find(r4);if(t)return t}}}return rX(t)?aw(t):void 0}function a_(e,t){return"?"===e||"*"===e||nE(t)&&!!t.guardCondition}function aI(e){return"*"===e||"+"===e}function aP(e){return"+="===e}function aO(e){return aD(e,new Set)}function aD(e,t){if(t.has(e))return!0;for(let r of(t.add(e),rq(e)))if(n3(r)){if(!r.rule.ref||nY(r.rule.ref)&&!aD(r.rule.ref,t)||nk(r.rule.ref))return!1}else if(nn(r))return!1;else if(r4(r))return!1;return!!e.definition}function aL(e){return aM(e.type,new Set)}function aM(e,t){if(t.has(e))return!0;if(t.add(e),nt(e)||nX(e))return!1;if(ig(e))return e.types.every(e=>aM(e,t));{if(!n4(e))return!1;if(void 0!==e.primitiveType||void 0!==e.stringType)return!0;if(void 0===e.typeRef)return!1;let r=e.typeRef.ref;return!!ic(r)&&aM(r.type,t)}}function aj(e){if(!is(e)){if(e.inferredType)return e.inferredType.name;else if(e.dataType)return e.dataType;else if(e.returnType){let t=e.returnType.ref;if(t)return t.name}}}function aF(e){if(rQ(e))return nY(e)&&aO(e)?e.name:aj(e)??e.name;if(nP(e)||ic(e)||n1(e))return e.name;if(r4(e)){let t=az(e);if(t)return t}else if(nA(e))return e.name;throw Error("Cannot get name of Unknown Type")}function az(e){return e.inferredType?e.inferredType.name:e.type?.ref?aF(e.type.ref):void 0}function aq(e){return is(e)?e.type?.name??"string":nY(e)&&aO(e)?e.name:aj(e)??e.name}function aG(e){return is(e)?e.type?.name??"string":aj(e)??e.name}function aU(e){let t={s:!1,i:!1,u:!1};return new RegExp(aW(e.definition,t),Object.entries(t).filter(([,e])=>e).map(([e])=>e).join(""))}tS(ac,"isWhitespace"),tS(ap,"escapeRegExp"),tS(ad,"partialMatches"),tS(af,"partialRegExp"),tS(ah,"getEntryRule"),tS(am,"getHiddenRules"),tS(ay,"getAllReachableRules"),tS(ag,"ruleDfs"),tS(av,"getAllRulesUsedForCrossReferences"),tS(aT,"getCrossReferenceTerminal"),tS(aR,"isCommentTerminal"),tS(a$,"findNodesForProperty"),tS(ab,"findNodeForProperty"),tS(aE,"findNodesForPropertyInternal"),tS(aC,"findNodesForKeyword"),tS(aA,"findNodeForKeyword"),tS(aS,"findNodesForKeywordInternal"),tS(ak,"findAssignment"),tS(ax,"findNameAssignment"),tS(aN,"findNameAssignmentInternal"),tS(aw,"getActionAtElement"),tS(a_,"isOptionalCardinality"),tS(aI,"isArrayCardinality"),tS(aP,"isArrayOperator"),tS(aO,"isDataTypeRule"),tS(aD,"isDataTypeRuleInternal"),tS(aL,"isDataType"),tS(aM,"isDataTypeInternal"),tS(aj,"getExplicitRuleType"),tS(aF,"getTypeName"),tS(az,"getActionType"),tS(aq,"getRuleTypeName"),tS(aG,"getRuleType"),tS(aU,"terminalRegex");var aK=/[\s\S]/.source;function aW(e,t){if(n6(e))return aB(e);if(ii(e))return aV(e);if(no(e))return aJ(e);if(il(e)){let t=e.rule.ref;if(!t)throw Error("Missing rule reference.");return aZ(aW(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}if(nF(e))return aY(e);else if(i$(e))return aH(e);else if(nQ(e)){let r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),i=e.regex.substring(r+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),aZ(n,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}else if(iA(e))return aZ(aK,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized});else throw Error(`Invalid terminal element: ${e?.$type}, ${e?.$cstNode?.text}`)}function aB(e){return aZ(e.elements.map(e=>aW(e)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function aV(e){return aZ(e.elements.map(e=>aW(e)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function aH(e){return aZ(`${aK}*?${aW(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function aY(e){return aZ(`(?!${aW(e.terminal)})${aK}*?`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function aJ(e){return e.right?aZ(`[${aX(e.left)}-${aX(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1}):aZ(aX(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function aX(e){return ap(e.value)}function aZ(e,t){if(t.parenthesized||t.lookahead||!1!==t.wrap){let r=t.lookahead??(t.parenthesized?"":"?:");e=`(${r}${e})`}return t.cardinality?`${e}${t.cardinality}`:e}function aQ(e){let t=[];for(let r of e.Grammar.rules)is(r)&&aR(r)&&al(aU(r))&&t.push(r.name);return{multilineCommentRules:t,nameRegexp:iL}}tS(aW,"abstractElementToRegex"),tS(aB,"terminalAlternativesToRegex"),tS(aV,"terminalGroupToRegex"),tS(aH,"untilTokenToRegex"),tS(aY,"negateTokenToRegex"),tS(aJ,"characterRangeToRegex"),tS(aX,"keywordToRegex"),tS(aZ,"withCardinality"),tS(aQ,"createGrammarConfig");var a0="object"==typeof global&&global&&global.Object===Object&&global,a1="object"==typeof self&&self&&self.Object===Object&&self,a2=a0||a1||Function("return this")(),a3=a2.Symbol,a9=Object.prototype,a4=a9.hasOwnProperty,a5=a9.toString,a8=a3?a3.toStringTag:void 0;function a7(e){var t=a4.call(e,a8),r=e[a8];try{e[a8]=void 0;var n=!0}catch(e){}var i=a5.call(e);return n&&(t?e[a8]=r:delete e[a8]),i}tS(a7,"getRawTag");var a6=Object.prototype.toString;function se(e){return a6.call(e)}tS(se,"objectToString");var st=a3?a3.toStringTag:void 0;function sr(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":st&&st in Object(e)?a7(e):se(e)}function sn(e){return null!=e&&"object"==typeof e}function si(e){return"symbol"==typeof e||sn(e)&&"[object Symbol]"==sr(e)}function sa(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}tS(sr,"baseGetTag"),tS(sn,"isObjectLike"),tS(si,"isSymbol"),tS(sa,"arrayMap");var ss=Array.isArray,so=1/0,sl=a3?a3.prototype:void 0,su=sl?sl.toString:void 0;function sc(e){if("string"==typeof e)return e;if(ss(e))return sa(e,sc)+"";if(si(e))return su?su.call(e):"";var t=e+"";return"0"==t&&1/e==-so?"-0":t}tS(sc,"baseToString");var sp=/\s/;function sd(e){for(var t=e.length;t--&&sp.test(e.charAt(t)););return t}tS(sd,"trimmedEndIndex");var sf=/^\s+/;function sh(e){return e?e.slice(0,sd(e)+1).replace(sf,""):e}function sm(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}tS(sh,"baseTrim"),tS(sm,"isObject");var sy=0/0,sg=/^[-+]0x[0-9a-f]+$/i,sv=/^0b[01]+$/i,sT=/^0o[0-7]+$/i,sR=parseInt;function s$(e){if("number"==typeof e)return e;if(si(e))return sy;if(sm(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=sm(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=sh(e);var r=sv.test(e);return r||sT.test(e)?sR(e.slice(2),r?2:8):sg.test(e)?sy:+e}tS(s$,"toNumber");var sb=1/0;function sE(e){return e?(e=s$(e))===sb||e===-sb?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}function sC(e){var t=sE(e),r=t%1;return t==t?r?t-r:t:0}function sA(e){return e}function sS(e){if(!sm(e))return!1;var t=sr(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}tS(sE,"toFinite"),tS(sC,"toInteger"),tS(sA,"identity"),tS(sS,"isFunction");var sk=a2["__core-js_shared__"],sx=(s=/[^.]+$/.exec(sk&&sk.keys&&sk.keys.IE_PROTO||""))?"Symbol(src)_1."+s:"";function sN(e){return!!sx&&sx in e}tS(sN,"isMasked");var sw=Function.prototype.toString;function s_(e){if(null!=e){try{return sw.call(e)}catch(e){}try{return e+""}catch(e){}}return""}tS(s_,"toSource");var sI=/^\[object .+?Constructor\]$/,sP=Object.prototype,sO=Function.prototype.toString,sD=sP.hasOwnProperty,sL=RegExp("^"+sO.call(sD).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function sM(e){return!(!sm(e)||sN(e))&&(sS(e)?sL:sI).test(s_(e))}function sj(e,t){return null==e?void 0:e[t]}function sF(e,t){var r=sj(e,t);return sM(r)?r:void 0}tS(sM,"baseIsNative"),tS(sj,"getValue"),tS(sF,"getNative");var sz=sF(a2,"WeakMap"),sq=Object.create,sG=function(){function e(){}return tS(e,"object"),function(t){if(!sm(t))return{};if(sq)return sq(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function sU(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function sK(){}function sW(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}tS(sU,"apply"),tS(sK,"noop"),tS(sW,"copyArray");var sB=Date.now;function sV(e){var t=0,r=0;return function(){var n=sB(),i=16-(n-r);if(r=n,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function sH(e){return function(){return e}}tS(sV,"shortOut"),tS(sH,"constant");var sY=function(){try{var e=sF(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),sJ=sV(sY?function(e,t){return sY(e,"toString",{configurable:!0,enumerable:!1,value:sH(t),writable:!0})}:sA);function sX(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function sZ(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return -1}function sQ(e){return e!=e}function s0(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return -1}function s1(e,t,r){return t==t?s0(e,t,r):sZ(e,sQ,r)}function s2(e,t){return!!(null==e?0:e.length)&&s1(e,t,0)>-1}tS(sX,"arrayEach"),tS(sZ,"baseFindIndex"),tS(sQ,"baseIsNaN"),tS(s0,"strictIndexOf"),tS(s1,"baseIndexOf"),tS(s2,"arrayIncludes");var s3=/^(?:0|[1-9]\d*)$/;function s9(e,t){var r=typeof e;return!!(t=null==t?0x1fffffffffffff:t)&&("number"==r||"symbol"!=r&&s3.test(e))&&e>-1&&e%1==0&&e<t}function s4(e,t,r){"__proto__"==t&&sY?sY(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function s5(e,t){return e===t||e!=e&&t!=t}tS(s9,"isIndex"),tS(s4,"baseAssignValue"),tS(s5,"eq");var s8=Object.prototype.hasOwnProperty;function s7(e,t,r){var n=e[t];s8.call(e,t)&&s5(n,r)&&(void 0!==r||t in e)||s4(e,t,r)}function s6(e,t,r,n){var i=!r;r||(r={});for(var a=-1,s=t.length;++a<s;){var o=t[a],l=n?n(r[o],e[o],o,r,e):void 0;void 0===l&&(l=e[o]),i?s4(r,o,l):s7(r,o,l)}return r}tS(s7,"assignValue"),tS(s6,"copyObject");var oe=Math.max;function ot(e,t,r){return t=oe(void 0===t?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=oe(n.length-t,0),s=Array(a);++i<a;)s[i]=n[t+i];i=-1;for(var o=Array(t+1);++i<t;)o[i]=n[i];return o[t]=r(s),sU(e,this,o)}}function or(e,t){return sJ(ot(e,t,sA),e+"")}function on(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}function oi(e){return null!=e&&on(e.length)&&!sS(e)}function oa(e,t,r){if(!sm(r))return!1;var n=typeof t;return("number"==n?!!(oi(r)&&s9(t,r.length)):"string"==n&&t in r)&&s5(r[t],e)}function os(e){return or(function(t,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,s&&oa(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++n<i;){var o=r[n];o&&e(t,o,n,a)}return t})}tS(ot,"overRest"),tS(or,"baseRest"),tS(on,"isLength"),tS(oi,"isArrayLike"),tS(oa,"isIterateeCall"),tS(os,"createAssigner");var oo=Object.prototype;function ol(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||oo)}function ou(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function oc(e){return sn(e)&&"[object Arguments]"==sr(e)}tS(ol,"isPrototype"),tS(ou,"baseTimes"),tS(oc,"baseIsArguments");var op=Object.prototype,od=op.hasOwnProperty,of=op.propertyIsEnumerable,oh=oc(function(){return arguments}())?oc:function(e){return sn(e)&&od.call(e,"callee")&&!of.call(e,"callee")};function om(){return!1}tS(om,"stubFalse");var oy="object"==typeof exports&&exports&&!exports.nodeType&&exports,og=oy&&"object"==typeof module&&module&&!module.nodeType&&module,ov=og&&og.exports===oy?a2.Buffer:void 0,oT=(ov?ov.isBuffer:void 0)||om,oR={};function o$(e){return sn(e)&&on(e.length)&&!!oR[sr(e)]}function ob(e){return function(t){return e(t)}}oR["[object Float32Array]"]=oR["[object Float64Array]"]=oR["[object Int8Array]"]=oR["[object Int16Array]"]=oR["[object Int32Array]"]=oR["[object Uint8Array]"]=oR["[object Uint8ClampedArray]"]=oR["[object Uint16Array]"]=oR["[object Uint32Array]"]=!0,oR["[object Arguments]"]=oR["[object Array]"]=oR["[object ArrayBuffer]"]=oR["[object Boolean]"]=oR["[object DataView]"]=oR["[object Date]"]=oR["[object Error]"]=oR["[object Function]"]=oR["[object Map]"]=oR["[object Number]"]=oR["[object Object]"]=oR["[object RegExp]"]=oR["[object Set]"]=oR["[object String]"]=oR["[object WeakMap]"]=!1,tS(o$,"baseIsTypedArray"),tS(ob,"baseUnary");var oE="object"==typeof exports&&exports&&!exports.nodeType&&exports,oC=oE&&"object"==typeof module&&module&&!module.nodeType&&module,oA=oC&&oC.exports===oE&&a0.process,oS=function(){try{var e=oC&&oC.require&&oC.require("util").types;if(e)return e;return oA&&oA.binding&&oA.binding("util")}catch(e){}}(),ok=oS&&oS.isTypedArray,ox=ok?ob(ok):o$,oN=Object.prototype.hasOwnProperty;function ow(e,t){var r=ss(e),n=!r&&oh(e),i=!r&&!n&&oT(e),a=!r&&!n&&!i&&ox(e),s=r||n||i||a,o=s?ou(e.length,String):[],l=o.length;for(var u in e)(t||oN.call(e,u))&&!(s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||s9(u,l)))&&o.push(u);return o}function o_(e,t){return function(r){return e(t(r))}}tS(ow,"arrayLikeKeys"),tS(o_,"overArg");var oI=o_(Object.keys,Object),oP=Object.prototype.hasOwnProperty;function oO(e){if(!ol(e))return oI(e);var t=[];for(var r in Object(e))oP.call(e,r)&&"constructor"!=r&&t.push(r);return t}function oD(e){return oi(e)?ow(e):oO(e)}tS(oO,"baseKeys"),tS(oD,"keys");var oL=Object.prototype.hasOwnProperty,oM=os(function(e,t){if(ol(t)||oi(t))return void s6(t,oD(t),e);for(var r in t)oL.call(t,r)&&s7(e,r,t[r])});function oj(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}tS(oj,"nativeKeysIn");var oF=Object.prototype.hasOwnProperty;function oz(e){if(!sm(e))return oj(e);var t=ol(e),r=[];for(var n in e)"constructor"==n&&(t||!oF.call(e,n))||r.push(n);return r}function oq(e){return oi(e)?ow(e,!0):oz(e)}tS(oz,"baseKeysIn"),tS(oq,"keysIn");var oG=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,oU=/^\w*$/;function oK(e,t){if(ss(e))return!1;var r=typeof e;return!!("number"==r||"symbol"==r||"boolean"==r||null==e||si(e))||oU.test(e)||!oG.test(e)||null!=t&&e in Object(t)}tS(oK,"isKey");var oW=sF(Object,"create");function oB(){this.__data__=oW?oW(null):{},this.size=0}function oV(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=!!t,t}tS(oB,"hashClear"),tS(oV,"hashDelete");var oH=Object.prototype.hasOwnProperty;function oY(e){var t=this.__data__;if(oW){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return oH.call(t,e)?t[e]:void 0}tS(oY,"hashGet");var oJ=Object.prototype.hasOwnProperty;function oX(e){var t=this.__data__;return oW?void 0!==t[e]:oJ.call(t,e)}function oZ(e,t){var r=this.__data__;return this.size+=+!this.has(e),r[e]=oW&&void 0===t?"__lodash_hash_undefined__":t,this}function oQ(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function o0(){this.__data__=[],this.size=0}function o1(e,t){for(var r=e.length;r--;)if(s5(e[r][0],t))return r;return -1}tS(oX,"hashHas"),tS(oZ,"hashSet"),tS(oQ,"Hash"),oQ.prototype.clear=oB,oQ.prototype.delete=oV,oQ.prototype.get=oY,oQ.prototype.has=oX,oQ.prototype.set=oZ,tS(o0,"listCacheClear"),tS(o1,"assocIndexOf");var o2=Array.prototype.splice;function o3(e){var t=this.__data__,r=o1(t,e);return!(r<0)&&(r==t.length-1?t.pop():o2.call(t,r,1),--this.size,!0)}function o9(e){var t=this.__data__,r=o1(t,e);return r<0?void 0:t[r][1]}function o4(e){return o1(this.__data__,e)>-1}function o5(e,t){var r=this.__data__,n=o1(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function o8(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}tS(o3,"listCacheDelete"),tS(o9,"listCacheGet"),tS(o4,"listCacheHas"),tS(o5,"listCacheSet"),tS(o8,"ListCache"),o8.prototype.clear=o0,o8.prototype.delete=o3,o8.prototype.get=o9,o8.prototype.has=o4,o8.prototype.set=o5;var o7=sF(a2,"Map");function o6(){this.size=0,this.__data__={hash:new oQ,map:new(o7||o8),string:new oQ}}function le(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function lt(e,t){var r=e.__data__;return le(t)?r["string"==typeof t?"string":"hash"]:r.map}function lr(e){var t=lt(this,e).delete(e);return this.size-=!!t,t}function ln(e){return lt(this,e).get(e)}function li(e){return lt(this,e).has(e)}function la(e,t){var r=lt(this,e),n=r.size;return r.set(e,t),this.size+=+(r.size!=n),this}function ls(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function lo(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var r=tS(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(lo.Cache||ls),r}function ll(e){var t=lo(e,function(e){return 500===r.size&&r.clear(),e}),r=t.cache;return t}tS(o6,"mapCacheClear"),tS(le,"isKeyable"),tS(lt,"getMapData"),tS(lr,"mapCacheDelete"),tS(ln,"mapCacheGet"),tS(li,"mapCacheHas"),tS(la,"mapCacheSet"),tS(ls,"MapCache"),ls.prototype.clear=o6,ls.prototype.delete=lr,ls.prototype.get=ln,ls.prototype.has=li,ls.prototype.set=la,tS(lo,"memoize"),lo.Cache=ls,tS(ll,"memoizeCapped");var lu=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,lc=/\\(\\)?/g,lp=ll(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(lu,function(e,r,n,i){t.push(n?i.replace(lc,"$1"):r||e)}),t});function ld(e){return null==e?"":sc(e)}function lf(e,t){return ss(e)?e:oK(e,t)?[e]:lp(ld(e))}tS(ld,"toString"),tS(lf,"castPath");var lh=1/0;function lm(e){if("string"==typeof e||si(e))return e;var t=e+"";return"0"==t&&1/e==-lh?"-0":t}function ly(e,t){t=lf(t,e);for(var r=0,n=t.length;null!=e&&r<n;)e=e[lm(t[r++])];return r&&r==n?e:void 0}function lg(e,t,r){var n=null==e?void 0:ly(e,t);return void 0===n?r:n}function lv(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}tS(lm,"toKey"),tS(ly,"baseGet"),tS(lg,"get"),tS(lv,"arrayPush");var lT=a3?a3.isConcatSpreadable:void 0;function lR(e){return ss(e)||oh(e)||!!(lT&&e&&e[lT])}function l$(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=lR),i||(i=[]);++a<s;){var o=e[a];t>0&&r(o)?t>1?l$(o,t-1,r,n,i):lv(i,o):n||(i[i.length]=o)}return i}function lb(e){return(null==e?0:e.length)?l$(e,1):[]}tS(lR,"isFlattenable"),tS(l$,"baseFlatten"),tS(lb,"flatten");var lE=o_(Object.getPrototypeOf,Object);function lC(e,t,r){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(r=r>i?i:r)<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n<i;)a[n]=e[n+t];return a}function lA(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function lS(){this.__data__=new o8,this.size=0}function lk(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function lx(e){return this.__data__.get(e)}function lN(e){return this.__data__.has(e)}function lw(e,t){var r=this.__data__;if(r instanceof o8){var n=r.__data__;if(!o7||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new ls(n)}return r.set(e,t),this.size=r.size,this}function l_(e){var t=this.__data__=new o8(e);this.size=t.size}function lI(e,t){return e&&s6(t,oD(t),e)}function lP(e,t){return e&&s6(t,oq(t),e)}tS(lC,"baseSlice"),tS(lA,"arrayReduce"),tS(lS,"stackClear"),tS(lk,"stackDelete"),tS(lx,"stackGet"),tS(lN,"stackHas"),tS(lw,"stackSet"),tS(l_,"Stack"),l_.prototype.clear=lS,l_.prototype.delete=lk,l_.prototype.get=lx,l_.prototype.has=lN,l_.prototype.set=lw,tS(lI,"baseAssign"),tS(lP,"baseAssignIn");var lO="object"==typeof exports&&exports&&!exports.nodeType&&exports,lD=lO&&"object"==typeof module&&module&&!module.nodeType&&module,lL=lD&&lD.exports===lO?a2.Buffer:void 0,lM=lL?lL.allocUnsafe:void 0;function lj(e,t){if(t)return e.slice();var r=e.length,n=lM?lM(r):new e.constructor(r);return e.copy(n),n}function lF(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[i++]=s)}return a}function lz(){return[]}tS(lj,"cloneBuffer"),tS(lF,"arrayFilter"),tS(lz,"stubArray");var lq=Object.prototype.propertyIsEnumerable,lG=Object.getOwnPropertySymbols,lU=lG?function(e){return null==e?[]:lF(lG(e=Object(e)),function(t){return lq.call(e,t)})}:lz;function lK(e,t){return s6(e,lU(e),t)}tS(lK,"copySymbols");var lW=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)lv(t,lU(e)),e=lE(e);return t}:lz;function lB(e,t){return s6(e,lW(e),t)}function lV(e,t,r){var n=t(e);return ss(e)?n:lv(n,r(e))}function lH(e){return lV(e,oD,lU)}function lY(e){return lV(e,oq,lW)}tS(lB,"copySymbolsIn"),tS(lV,"baseGetAllKeys"),tS(lH,"getAllKeys"),tS(lY,"getAllKeysIn");var lJ=sF(a2,"DataView"),lX=sF(a2,"Promise"),lZ=sF(a2,"Set"),lQ="[object Map]",l0="[object Promise]",l1="[object Set]",l2="[object WeakMap]",l3="[object DataView]",l9=s_(lJ),l4=s_(o7),l5=s_(lX),l8=s_(lZ),l7=s_(sz),l6=sr;(lJ&&l6(new lJ(new ArrayBuffer(1)))!=l3||o7&&l6(new o7)!=lQ||lX&&l6(lX.resolve())!=l0||lZ&&l6(new lZ)!=l1||sz&&l6(new sz)!=l2)&&(l6=tS(function(e){var t=sr(e),r="[object Object]"==t?e.constructor:void 0,n=r?s_(r):"";if(n)switch(n){case l9:return l3;case l4:return lQ;case l5:return l0;case l8:return l1;case l7:return l2}return t},"getTag"));var ue=l6,ut=Object.prototype.hasOwnProperty;function ur(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&ut.call(e,"index")&&(r.index=e.index,r.input=e.input),r}tS(ur,"initCloneArray");var un=a2.Uint8Array;function ui(e){var t=new e.constructor(e.byteLength);return new un(t).set(new un(e)),t}function ua(e,t){var r=t?ui(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}tS(ui,"cloneArrayBuffer"),tS(ua,"cloneDataView");var us=/\w*$/;function uo(e){var t=new e.constructor(e.source,us.exec(e));return t.lastIndex=e.lastIndex,t}tS(uo,"cloneRegExp");var ul=a3?a3.prototype:void 0,uu=ul?ul.valueOf:void 0;function uc(e){return uu?Object(uu.call(e)):{}}function up(e,t){var r=t?ui(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function ud(e,t,r){var n=e.constructor;switch(t){case"[object ArrayBuffer]":return ui(e);case"[object Boolean]":case"[object Date]":return new n(+e);case"[object DataView]":return ua(e,r);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 up(e,r);case"[object Map]":case"[object Set]":return new n;case"[object Number]":case"[object String]":return new n(e);case"[object RegExp]":return uo(e);case"[object Symbol]":return uc(e)}}function uf(e){return"function"!=typeof e.constructor||ol(e)?{}:sG(lE(e))}function uh(e){return sn(e)&&"[object Map]"==ue(e)}tS(uc,"cloneSymbol"),tS(up,"cloneTypedArray"),tS(ud,"initCloneByTag"),tS(uf,"initCloneObject"),tS(uh,"baseIsMap");var um=oS&&oS.isMap,uy=um?ob(um):uh;function ug(e){return sn(e)&&"[object Set]"==ue(e)}tS(ug,"baseIsSet");var uv=oS&&oS.isSet,uT=uv?ob(uv):ug,uR="[object Arguments]",u$="[object Function]",ub="[object Object]",uE={};function uC(e,t,r,n,i,a){var s,o=1&t,l=2&t,u=4&t;if(r&&(s=i?r(e,n,i,a):r(e)),void 0!==s)return s;if(!sm(e))return e;var c=ss(e);if(c){if(s=ur(e),!o)return sW(e,s)}else{var p=ue(e),d=p==u$||"[object GeneratorFunction]"==p;if(oT(e))return lj(e,o);if(p==ub||p==uR||d&&!i){if(s=l||d?{}:uf(e),!o)return l?lB(e,lP(s,e)):lK(e,lI(s,e))}else{if(!uE[p])return i?e:{};s=ud(e,p,o)}}a||(a=new l_);var f=a.get(e);if(f)return f;a.set(e,s),uT(e)?e.forEach(function(n){s.add(uC(n,t,r,n,e,a))}):uy(e)&&e.forEach(function(n,i){s.set(i,uC(n,t,r,i,e,a))});var h=u?l?lY:lH:l?oq:oD,m=c?void 0:h(e);return sX(m||e,function(n,i){m&&(n=e[i=n]),s7(s,i,uC(n,t,r,i,e,a))}),s}function uA(e){return uC(e,4)}function uS(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var a=e[t];a&&(i[n++]=a)}return i}function uk(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}function ux(e){return this.__data__.has(e)}function uN(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new ls;++t<r;)this.add(e[t])}function uw(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function u_(e,t){return e.has(t)}function uI(e,t,r,n,i,a){var s=1&r,o=e.length,l=t.length;if(o!=l&&!(s&&l>o))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var p=-1,d=!0,f=2&r?new uN:void 0;for(a.set(e,t),a.set(t,e);++p<o;){var h=e[p],m=t[p];if(n)var y=s?n(m,h,p,t,e,a):n(h,m,p,e,t,a);if(void 0!==y){if(y)continue;d=!1;break}if(f){if(!uw(t,function(e,t){if(!u_(f,t)&&(h===e||i(h,e,r,n,a)))return f.push(t)})){d=!1;break}}else if(!(h===m||i(h,m,r,n,a))){d=!1;break}}return a.delete(e),a.delete(t),d}function uP(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r}function uO(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}uE[uR]=uE["[object Array]"]=uE["[object ArrayBuffer]"]=uE["[object DataView]"]=uE["[object Boolean]"]=uE["[object Date]"]=uE["[object Float32Array]"]=uE["[object Float64Array]"]=uE["[object Int8Array]"]=uE["[object Int16Array]"]=uE["[object Int32Array]"]=uE["[object Map]"]=uE["[object Number]"]=uE[ub]=uE["[object RegExp]"]=uE["[object Set]"]=uE["[object String]"]=uE["[object Symbol]"]=uE["[object Uint8Array]"]=uE["[object Uint8ClampedArray]"]=uE["[object Uint16Array]"]=uE["[object Uint32Array]"]=!0,uE["[object Error]"]=uE[u$]=uE["[object WeakMap]"]=!1,tS(uC,"baseClone"),tS(uA,"clone"),tS(uS,"compact"),tS(uk,"setCacheAdd"),tS(ux,"setCacheHas"),tS(uN,"SetCache"),uN.prototype.add=uN.prototype.push=uk,uN.prototype.has=ux,tS(uw,"arraySome"),tS(u_,"cacheHas"),tS(uI,"equalArrays"),tS(uP,"mapToArray"),tS(uO,"setToArray");var uD=a3?a3.prototype:void 0,uL=uD?uD.valueOf:void 0;function uM(e,t,r,n,i,a,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":if(e.byteLength!=t.byteLength||!a(new un(e),new un(t)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return s5(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var o=uP;case"[object Set]":var l=1&n;if(o||(o=uO),e.size!=t.size&&!l)break;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=uI(o(e),o(t),n,i,a,s);return s.delete(e),c;case"[object Symbol]":if(uL)return uL.call(e)==uL.call(t)}return!1}tS(uM,"equalByTag");var uj=Object.prototype.hasOwnProperty;function uF(e,t,r,n,i,a){var s=1&r,o=lH(e),l=o.length;if(l!=lH(t).length&&!s)return!1;for(var u=l;u--;){var c=o[u];if(!(s?c in t:uj.call(t,c)))return!1}var p=a.get(e),d=a.get(t);if(p&&d)return p==t&&d==e;var f=!0;a.set(e,t),a.set(t,e);for(var h=s;++u<l;){var m=e[c=o[u]],y=t[c];if(n)var g=s?n(y,m,c,t,e,a):n(m,y,c,e,t,a);if(!(void 0===g?m===y||i(m,y,r,n,a):g)){f=!1;break}h||(h="constructor"==c)}if(f&&!h){var v=e.constructor,T=t.constructor;v!=T&&"constructor"in e&&"constructor"in t&&!("function"==typeof v&&v instanceof v&&"function"==typeof T&&T instanceof T)&&(f=!1)}return a.delete(e),a.delete(t),f}tS(uF,"equalObjects");var uz="[object Arguments]",uq="[object Array]",uG="[object Object]",uU=Object.prototype.hasOwnProperty;function uK(e,t,r,n,i,a){var s=ss(e),o=ss(t),l=s?uq:ue(e),u=o?uq:ue(t);l=l==uz?uG:l,u=u==uz?uG:u;var c=l==uG,p=u==uG,d=l==u;if(d&&oT(e)){if(!oT(t))return!1;s=!0,c=!1}if(d&&!c)return a||(a=new l_),s||ox(e)?uI(e,t,r,n,i,a):uM(e,t,l,r,n,i,a);if(!(1&r)){var f=c&&uU.call(e,"__wrapped__"),h=p&&uU.call(t,"__wrapped__");if(f||h){var m=f?e.value():e,y=h?t.value():t;return a||(a=new l_),i(m,y,r,n,a)}}return!!d&&(a||(a=new l_),uF(e,t,r,n,i,a))}function uW(e,t,r,n,i){return e===t||(null!=e&&null!=t&&(sn(e)||sn(t))?uK(e,t,r,n,uW,i):e!=e&&t!=t)}function uB(e,t,r,n){var i=r.length,a=i,s=!n;if(null==e)return!a;for(e=Object(e);i--;){var o=r[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var l=(o=r[i])[0],u=e[l],c=o[1];if(s&&o[2]){if(void 0===u&&!(l in e))return!1}else{var p=new l_;if(n)var d=n(u,c,l,e,t,p);if(!(void 0===d?uW(c,u,3,n,p):d))return!1}}return!0}function uV(e){return e==e&&!sm(e)}function uH(e){for(var t=oD(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,uV(i)]}return t}function uY(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}}function uJ(e){var t=uH(e);return 1==t.length&&t[0][2]?uY(t[0][0],t[0][1]):function(r){return r===e||uB(r,e,t)}}function uX(e,t){return null!=e&&t in Object(e)}function uZ(e,t,r){t=lf(t,e);for(var n=-1,i=t.length,a=!1;++n<i;){var s=lm(t[n]);if(!(a=null!=e&&r(e,s)))break;e=e[s]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&on(i)&&s9(s,i)&&(ss(e)||oh(e))}function uQ(e,t){return null!=e&&uZ(e,t,uX)}function u0(e,t){return oK(e)&&uV(t)?uY(lm(e),t):function(r){var n=lg(r,e);return void 0===n&&n===t?uQ(r,e):uW(t,n,3)}}function u1(e){return function(t){return null==t?void 0:t[e]}}function u2(e){return function(t){return ly(t,e)}}function u3(e){return oK(e)?u1(lm(e)):u2(e)}function u9(e){return"function"==typeof e?e:null==e?sA:"object"==typeof e?ss(e)?u0(e[0],e[1]):uJ(e):u3(e)}function u4(e,t,r,n){for(var i=-1,a=null==e?0:e.length;++i<a;){var s=e[i];t(n,s,r(s),e)}return n}function u5(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===r(a[l],l,a))break}return t}}tS(uK,"baseIsEqualDeep"),tS(uW,"baseIsEqual"),tS(uB,"baseIsMatch"),tS(uV,"isStrictComparable"),tS(uH,"getMatchData"),tS(uY,"matchesStrictComparable"),tS(uJ,"baseMatches"),tS(uX,"baseHasIn"),tS(uZ,"hasPath"),tS(uQ,"hasIn"),tS(u0,"baseMatchesProperty"),tS(u1,"baseProperty"),tS(u2,"basePropertyDeep"),tS(u3,"property"),tS(u9,"baseIteratee"),tS(u4,"arrayAggregator"),tS(u5,"createBaseFor");var u8=u5();function u7(e,t){return e&&u8(e,t,oD)}function u6(e,t){return function(r,n){if(null==r)return r;if(!oi(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a<i)&&!1!==n(s[a],a,s););return r}}tS(u7,"baseForOwn"),tS(u6,"createBaseEach");var ce=u6(u7);function ct(e,t,r,n){return ce(e,function(e,i,a){t(n,e,r(e),a)}),n}function cr(e,t){return function(r,n){var i=ss(r)?u4:ct,a=t?t():{};return i(r,e,u9(n,2),a)}}tS(ct,"baseAggregator"),tS(cr,"createAggregator");var cn=Object.prototype,ci=cn.hasOwnProperty,ca=or(function(e,t){e=Object(e);var r=-1,n=t.length,i=n>2?t[2]:void 0;for(i&&oa(t[0],t[1],i)&&(n=1);++r<n;)for(var a=t[r],s=oq(a),o=-1,l=s.length;++o<l;){var u=s[o],c=e[u];(void 0===c||s5(c,cn[u])&&!ci.call(e,u))&&(e[u]=a[u])}return e});function cs(e){return sn(e)&&oi(e)}function co(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function cl(e,t,r,n){var i=-1,a=s2,s=!0,o=e.length,l=[],u=t.length;if(!o)return l;r&&(t=sa(t,ob(r))),n?(a=co,s=!1):t.length>=200&&(a=u_,s=!1,t=new uN(t));t:for(;++i<o;){var c=e[i],p=null==r?c:r(c);if(c=n||0!==c?c:0,s&&p==p){for(var d=u;d--;)if(t[d]===p)continue t;l.push(c)}else a(t,p,n)||l.push(c)}return l}tS(cs,"isArrayLikeObject"),tS(co,"arrayIncludesWith"),tS(cl,"baseDifference");var cu=or(function(e,t){return cs(e)?cl(e,l$(t,1,cs,!0)):[]});function cc(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}function cp(e,t,r){var n=null==e?0:e.length;return n?lC(e,(t=r||void 0===t?1:sC(t))<0?0:t,n):[]}function cd(e,t,r){var n=null==e?0:e.length;return n?lC(e,0,(t=n-(t=r||void 0===t?1:sC(t)))<0?0:t):[]}function cf(e){return"function"==typeof e?e:sA}function ch(e,t){return(ss(e)?sX:ce)(e,cf(t))}function cm(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function cy(e,t){var r=!0;return ce(e,function(e,n,i){return r=!!t(e,n,i)}),r}function cg(e,t,r){var n=ss(e)?cm:cy;return r&&oa(e,t,r)&&(t=void 0),n(e,u9(t,3))}function cv(e,t){var r=[];return ce(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}function cT(e,t){return(ss(e)?lF:cv)(e,u9(t,3))}function cR(e){return function(t,r,n){var i=Object(t);if(!oi(t)){var a=u9(r,3);t=oD(t),r=tS(function(e){return a(i[e],e,i)},"predicate")}var s=e(t,r,n);return s>-1?i[a?t[s]:s]:void 0}}tS(cc,"last"),tS(cp,"drop"),tS(cd,"dropRight"),tS(cf,"castFunction"),tS(ch,"forEach"),tS(cm,"arrayEvery"),tS(cy,"baseEvery"),tS(cg,"every"),tS(cv,"baseFilter"),tS(cT,"filter"),tS(cR,"createFind");var c$=Math.max;function cb(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var i=null==r?0:sC(r);return i<0&&(i=c$(n+i,0)),sZ(e,u9(t,3),i)}tS(cb,"findIndex");var cE=cR(cb);function cC(e){return e&&e.length?e[0]:void 0}function cA(e,t){var r=-1,n=oi(e)?Array(e.length):[];return ce(e,function(e,i,a){n[++r]=t(e,i,a)}),n}function cS(e,t){return(ss(e)?sa:cA)(e,u9(t,3))}function ck(e,t){return l$(cS(e,t),1)}tS(cC,"head"),tS(cA,"baseMap"),tS(cS,"map"),tS(ck,"flatMap");var cx=Object.prototype.hasOwnProperty,cN=cr(function(e,t,r){cx.call(e,r)?e[r].push(t):s4(e,r,[t])}),cw=Object.prototype.hasOwnProperty;function c_(e,t){return null!=e&&cw.call(e,t)}function cI(e,t){return null!=e&&uZ(e,t,c_)}function cP(e){return"string"==typeof e||!ss(e)&&sn(e)&&"[object String]"==sr(e)}function cO(e,t){return sa(t,function(t){return e[t]})}function cD(e){return null==e?[]:cO(e,oD(e))}tS(c_,"baseHas"),tS(cI,"has"),tS(cP,"isString"),tS(cO,"baseValues"),tS(cD,"values");var cL=Math.max;function cM(e,t,r,n){e=oi(e)?e:cD(e),r=r&&!n?sC(r):0;var i=e.length;return r<0&&(r=cL(i+r,0)),cP(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&s1(e,t,r)>-1}tS(cM,"includes");var cj=Math.max;function cF(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var i=null==r?0:sC(r);return i<0&&(i=cj(n+i,0)),s1(e,t,i)}tS(cF,"indexOf");var cz=Object.prototype.hasOwnProperty;function cq(e){if(null==e)return!0;if(oi(e)&&(ss(e)||"string"==typeof e||"function"==typeof e.splice||oT(e)||ox(e)||oh(e)))return!e.length;var t=ue(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(ol(e))return!oO(e).length;for(var r in e)if(cz.call(e,r))return!1;return!0}function cG(e){return sn(e)&&"[object RegExp]"==sr(e)}tS(cq,"isEmpty"),tS(cG,"baseIsRegExp");var cU=oS&&oS.isRegExp,cK=cU?ob(cU):cG;function cW(e){return void 0===e}function cB(e){if("function"!=typeof e)throw TypeError("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function cV(e,t,r,n){if(!sm(e))return e;t=lf(t,e);for(var i=-1,a=t.length,s=a-1,o=e;null!=o&&++i<a;){var l=lm(t[i]),u=r;if("__proto__"===l||"constructor"===l||"prototype"===l)break;if(i!=s){var c=o[l];void 0===(u=n?n(c,l,o):void 0)&&(u=sm(c)?c:s9(t[i+1])?[]:{})}s7(o,l,u),o=o[l]}return e}function cH(e,t,r){for(var n=-1,i=t.length,a={};++n<i;){var s=t[n],o=ly(e,s);r(o,s)&&cV(a,lf(s,e),o)}return a}function cY(e,t){if(null==e)return{};var r=sa(lY(e),function(e){return[e]});return t=u9(t),cH(e,r,function(e,r){return t(e,r[0])})}function cJ(e,t,r,n,i){return i(e,function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)}),r}function cX(e,t,r){var n=ss(e)?lA:cJ,i=arguments.length<3;return n(e,u9(t,4),r,i,ce)}function cZ(e,t){return(ss(e)?lF:cv)(e,cB(u9(t,3)))}function cQ(e,t){var r;return ce(e,function(e,n,i){return!(r=t(e,n,i))}),!!r}function c0(e,t,r){var n=ss(e)?uw:cQ;return r&&oa(e,t,r)&&(t=void 0),n(e,u9(t,3))}tS(cW,"isUndefined"),tS(cB,"negate"),tS(cV,"baseSet"),tS(cH,"basePickBy"),tS(cY,"pickBy"),tS(cJ,"baseReduce"),tS(cX,"reduce"),tS(cZ,"reject"),tS(cQ,"baseSome"),tS(c0,"some");var c1=lZ&&1/uO(new lZ([,-0]))[1]==1/0?function(e){return new lZ(e)}:sK;function c2(e,t,r){var n=-1,i=s2,a=e.length,s=!0,o=[],l=o;if(r)s=!1,i=co;else if(a>=200){var u=t?null:c1(e);if(u)return uO(u);s=!1,i=u_,l=new uN}else l=t?[]:o;t:for(;++n<a;){var c=e[n],p=t?t(c):c;if(c=r||0!==c?c:0,s&&p==p){for(var d=l.length;d--;)if(l[d]===p)continue t;t&&l.push(p),o.push(c)}else i(l,p,r)||(l!==o&&l.push(p),o.push(c))}return o}function c3(e){return e&&e.length?c2(e):[]}function c9(e){console&&console.error&&console.error(`Error: ${e}`)}function c4(e){console&&console.warn&&console.warn(`Warning: ${e}`)}function c5(e){let t=new Date().getTime(),r=e();return{time:new Date().getTime()-t,value:r}}function c8(e){function t(){}tS(t,"FakeConstructor"),t.prototype=e;let r=new t;function n(){return typeof r.bar}return tS(n,"fakeAccess"),n(),n(),e}function c7(e){return c6(e)?e.LABEL:e.name}function c6(e){return cP(e.LABEL)&&""!==e.LABEL}tS(c2,"baseUniq"),tS(c3,"uniq"),tS(c9,"PRINT_ERROR"),tS(c4,"PRINT_WARNING"),tS(c5,"timer"),tS(c8,"toFastProperties"),tS(c7,"tokenLabel"),tS(c6,"hasTokenLabel");var pe=class{static{tS(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),ch(this.definition,t=>{t.accept(e)})}},pt=class extends pe{static{tS(this,"NonTerminal")}constructor(e){super([]),this.idx=1,oM(this,cY(e,e=>void 0!==e))}set definition(e){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(e){e.visit(this)}},pr=class extends pe{static{tS(this,"Rule")}constructor(e){super(e.definition),this.orgText="",oM(this,cY(e,e=>void 0!==e))}},pn=class extends pe{static{tS(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,oM(this,cY(e,e=>void 0!==e))}},pi=class extends pe{static{tS(this,"Option")}constructor(e){super(e.definition),this.idx=1,oM(this,cY(e,e=>void 0!==e))}},pa=class extends pe{static{tS(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,oM(this,cY(e,e=>void 0!==e))}},ps=class extends pe{static{tS(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,oM(this,cY(e,e=>void 0!==e))}},po=class extends pe{static{tS(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,oM(this,cY(e,e=>void 0!==e))}},pl=class extends pe{static{tS(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,oM(this,cY(e,e=>void 0!==e))}},pu=class extends pe{static{tS(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,oM(this,cY(e,e=>void 0!==e))}},pc=class{static{tS(this,"Terminal")}constructor(e){this.idx=1,oM(this,cY(e,e=>void 0!==e))}accept(e){e.visit(this)}};function pp(e){return cS(e,pd)}function pd(e){function t(e){return cS(e,pd)}if(tS(t,"convertDefinition"),e instanceof pt){let t={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return cP(e.label)&&(t.label=e.label),t}if(e instanceof pn)return{type:"Alternative",definition:t(e.definition)};if(e instanceof pi)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof pa)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof ps)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:pd(new pc({terminalType:e.separator})),definition:t(e.definition)};else if(e instanceof pl)return{type:"RepetitionWithSeparator",idx:e.idx,separator:pd(new pc({terminalType:e.separator})),definition:t(e.definition)};else if(e instanceof po)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};else if(e instanceof pu)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};else if(e instanceof pc){let t={type:"Terminal",name:e.terminalType.name,label:c7(e.terminalType),idx:e.idx};cP(e.label)&&(t.terminalLabel=e.label);let r=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=cK(r)?r.source:r),t}else if(e instanceof pr)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};else throw Error("non exhaustive match")}tS(pp,"serializeGrammar"),tS(pd,"serializeProduction");var pf=class{static{tS(this,"GAstVisitor")}visit(e){switch(e.constructor){case pt:return this.visitNonTerminal(e);case pn:return this.visitAlternative(e);case pi:return this.visitOption(e);case pa:return this.visitRepetitionMandatory(e);case ps:return this.visitRepetitionMandatoryWithSeparator(e);case pl:return this.visitRepetitionWithSeparator(e);case po:return this.visitRepetition(e);case pu:return this.visitAlternation(e);case pc:return this.visitTerminal(e);case pr:return this.visitRule(e);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function ph(e){return e instanceof pn||e instanceof pi||e instanceof po||e instanceof pa||e instanceof ps||e instanceof pl||e instanceof pc||e instanceof pr}function pm(e,t=[]){return e instanceof pi||e instanceof po||e instanceof pl||(e instanceof pu?c0(e.definition,e=>pm(e,t)):!(e instanceof pt&&cM(t,e))&&e instanceof pe&&(e instanceof pt&&t.push(e),cg(e.definition,e=>pm(e,t))))}function py(e){return e instanceof pu}function pg(e){if(e instanceof pt)return"SUBRULE";if(e instanceof pi)return"OPTION";if(e instanceof pu)return"OR";if(e instanceof pa)return"AT_LEAST_ONE";if(e instanceof ps)return"AT_LEAST_ONE_SEP";else if(e instanceof pl)return"MANY_SEP";else if(e instanceof po)return"MANY";else if(e instanceof pc)return"CONSUME";else throw Error("non exhaustive match")}tS(ph,"isSequenceProd"),tS(pm,"isOptionalProd"),tS(py,"isBranchingProd"),tS(pg,"getProductionDslName");var pv=class{static{tS(this,"RestWalker")}walk(e,t=[]){ch(e.definition,(r,n)=>{let i=cp(e.definition,n+1);if(r instanceof pt)this.walkProdRef(r,i,t);else if(r instanceof pc)this.walkTerminal(r,i,t);else if(r instanceof pn)this.walkFlat(r,i,t);else if(r instanceof pi)this.walkOption(r,i,t);else if(r instanceof pa)this.walkAtLeastOne(r,i,t);else if(r instanceof ps)this.walkAtLeastOneSep(r,i,t);else if(r instanceof pl)this.walkManySep(r,i,t);else if(r instanceof po)this.walkMany(r,i,t);else if(r instanceof pu)this.walkOr(r,i,t);else throw Error("non exhaustive match")})}walkTerminal(e,t,r){}walkProdRef(e,t,r){}walkFlat(e,t,r){let n=t.concat(r);this.walk(e,n)}walkOption(e,t,r){let n=t.concat(r);this.walk(e,n)}walkAtLeastOne(e,t,r){let n=[new pi({definition:e.definition})].concat(t,r);this.walk(e,n)}walkAtLeastOneSep(e,t,r){let n=pT(e,t,r);this.walk(e,n)}walkMany(e,t,r){let n=[new pi({definition:e.definition})].concat(t,r);this.walk(e,n)}walkManySep(e,t,r){let n=pT(e,t,r);this.walk(e,n)}walkOr(e,t,r){let n=t.concat(r);ch(e.definition,e=>{let t=new pn({definition:[e]});this.walk(t,n)})}};function pT(e,t,r){return[new pi({definition:[new pc({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}function pR(e){if(e instanceof pt)return pR(e.referencedRule);if(e instanceof pc)return pE(e);if(ph(e))return p$(e);if(py(e))return pb(e);throw Error("non exhaustive match")}function p$(e){let t,r=[],n=e.definition,i=0,a=n.length>i,s=!0;for(;a&&s;)s=pm(t=n[i]),r=r.concat(pR(t)),i+=1,a=n.length>i;return c3(r)}function pb(e){return c3(lb(cS(e.definition,e=>pR(e))))}function pE(e){return[e.terminalType]}tS(pT,"restForRepetitionWithSeparator"),tS(pR,"first"),tS(p$,"firstForSequence"),tS(pb,"firstForBranching"),tS(pE,"firstForTerminal");var pC="_~IN~_",pA=class extends pv{static{tS(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,r){}walkProdRef(e,t,r){let n=pk(e.referencedRule,e.idx)+this.topProd.name,i=pR(new pn({definition:t.concat(r)}));this.follows[n]=i}};function pS(e){let t={};return ch(e,e=>{oM(t,new pA(e).startWalking())}),t}function pk(e,t){return e.name+t+pC}tS(pS,"computeAllProdsFollows"),tS(pk,"buildBetweenProdsFollowPrefix");var px={},pN=new ar;function pw(e){let t=e.toString();if(px.hasOwnProperty(t))return px[t];{let e=pN.pattern(t);return px[t]=e,e}}function p_(){px={}}tS(pw,"getRegExpAst"),tS(p_,"clearRegExpParserCache");var pI="Complement Sets are not supported for first char optimization",pP='Unable to use "first char" lexer optimizations:\n';function pO(e,t=!1){try{let t=pw(e);return pD(t.value,{},t.flags.ignoreCase)}catch(r){if(r.message===pI)t&&c4(`${pP} Unable to optimize: < ${e.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 r="";t&&(r="\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."),c9(`${pP}
25
+ Failed parsing: < ${e.toString()} >
26
+ Using the @chevrotain/regexp-to-ast library
27
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function pD(e,t,r){switch(e.type){case"Disjunction":for(let n=0;n<e.value.length;n++)pD(e.value[n],t,r);break;case"Alternative":let n=e.value;for(let e=0;e<n.length;e++){let i=n[e];switch(i.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}switch(i.type){case"Character":pL(i.value,t,r);break;case"Set":if(!0===i.complement)throw Error(pI);ch(i.value,e=>{if("number"==typeof e)pL(e,t,r);else if(!0===r)for(let n=e.from;n<=e.to;n++)pL(n,t,r);else{for(let n=e.from;n<=e.to&&n<df;n++)pL(n,t,r);if(e.to>=df){let r=e.from>=df?e.from:df,n=e.to,i=dm(r),a=dm(n);for(let e=i;e<=a;e++)t[e]=e}}});break;case"Group":pD(i.value,t,r);break;default:throw Error("Non Exhaustive Match")}let a=void 0!==i.quantifier&&0===i.quantifier.atLeast;if("Group"===i.type&&!1===pF(i)||"Group"!==i.type&&!1===a)break}break;default:throw Error("non exhaustive match!")}return cD(t)}function pL(e,t,r){let n=dm(e);t[n]=n,!0===r&&pM(e,t)}function pM(e,t){let r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){let e=dm(n.charCodeAt(0));t[e]=e}else{let e=r.toLowerCase();if(e!==r){let r=dm(e.charCodeAt(0));t[r]=r}}}function pj(e,t){return cE(e.value,e=>"number"==typeof e?cM(t,e):void 0!==cE(t,t=>e.from<=t&&t<=e.to))}function pF(e){let t=e.quantifier;return!!t&&0===t.atLeast||!!e.value&&(ss(e.value)?cg(e.value,pF):pF(e.value))}tS(pO,"getOptimizedStartCodesIndices"),tS(pD,"firstCharOptimizedIndices"),tS(pL,"addOptimizedIdxToResult"),tS(pM,"handleIgnoreCase"),tS(pj,"findCode"),tS(pF,"isWholeOptional");var pz=class extends an{static{tS(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(!0!==this.found){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){cM(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?void 0===pj(e,this.targetCharCodes)&&(this.found=!0):void 0!==pj(e,this.targetCharCodes)&&(this.found=!0)}};function pq(e,t){if(!(t instanceof RegExp))return void 0!==cE(t,t=>cM(e,t.charCodeAt(0)));{let r=pw(t),n=new pz(e);return n.visit(r),n.found}}tS(pq,"canMatchCharCode");var pG="PATTERN",pU="defaultMode",pK="modes",pW="boolean"==typeof RegExp("(?:)").sticky;function pB(e,t){let r,n,i,a,s,o,l,u,c,p,d,f,h=(t=ca(t,{useSticky:pW,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:tS((e,t)=>t(),"tracer")})).tracer;h("initCharCodeToOptimizedIndexMap",()=>{dy()}),h("Reject Lexer.NA",()=>{r=cZ(e,e=>e[pG]===dO.NA)});let m=!1;h("Transform Patterns",()=>{m=!1,n=cS(r,e=>{let r=e[pG];if(cK(r)){let e=r.source;return 1!==e.length||"^"===e||"$"===e||"."===e||r.ignoreCase?2!==e.length||"\\"!==e[0]||cM(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],e[1])?t.useSticky?dt(r):de(r):e[1]:e}if(sS(r))return m=!0,{exec:r};if("object"==typeof r)return m=!0,r;if("string"==typeof r)if(1===r.length)return r;else{let e=new RegExp(r.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"));return t.useSticky?dt(e):de(e)}throw Error("non exhaustive match")})}),h("misc mapping",()=>{i=cS(r,e=>e.tokenTypeIdx),a=cS(r,e=>{let t=e.GROUP;if(t!==dO.SKIPPED){if(cP(t))return t;if(cW(t))return!1;throw Error("non exhaustive match")}}),s=cS(r,e=>{let t=e.LONGER_ALT;if(t)return ss(t)?cS(t,e=>cF(r,e)):[cF(r,t)]}),o=cS(r,e=>e.PUSH_MODE),l=cS(r,e=>cI(e,"POP_MODE"))}),h("Line Terminator Handling",()=>{let e=dp(t.lineTerminatorCharacters);u=cS(r,e=>!1),"onlyOffset"!==t.positionTracking&&(u=cS(r,t=>cI(t,"LINE_BREAKS")?!!t.LINE_BREAKS:!1===du(t,e)&&pq(e,t.PATTERN)))}),h("Misc Mapping #2",()=>{c=cS(r,da),p=cS(n,ds),d=cX(r,(e,t)=>{let r=t.GROUP;return cP(r)&&r!==dO.SKIPPED&&(e[r]=[]),e},{}),f=cS(n,(e,t)=>({pattern:n[t],longerAlt:s[t],canLineTerminator:u[t],isCustom:c[t],short:p[t],group:a[t],push:o[t],pop:l[t],tokenTypeIdx:i[t],tokenType:r[t]}))});let y=!0,g=[];return t.safeMode||h("First Char Optimization",()=>{g=cX(r,(e,r,n)=>{if("string"==typeof r.PATTERN)dd(e,dm(r.PATTERN.charCodeAt(0)),f[n]);else if(ss(r.START_CHARS_HINT)){let t;ch(r.START_CHARS_HINT,r=>{let i=dm("string"==typeof r?r.charCodeAt(0):r);t!==i&&(t=i,dd(e,i,f[n]))})}else if(cK(r.PATTERN))if(r.PATTERN.unicode)y=!1,t.ensureOptimizations&&c9(`${pP} Unable to analyze < ${r.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 i=pO(r.PATTERN,t.ensureOptimizations);cq(i)&&(y=!1),ch(i,t=>{dd(e,t,f[n])})}else t.ensureOptimizations&&c9(`${pP} TokenType: <${r.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`),y=!1;return e},[])}),{emptyGroups:d,patternIdxToConfig:f,charCodeToPatternIdxToConfig:g,hasCustom:m,canBeOptimized:y}}function pV(e,t){let r=[],n=pY(e);r=r.concat(n.errors);let i=pJ(n.valid),a=i.valid;return(r=(r=(r=(r=r.concat(i.errors)).concat(pH(a))).concat(p9(a))).concat(p4(a,t))).concat(p5(a))}function pH(e){let t=[],r=cT(e,e=>cK(e[pG]));return(t=(t=(t=(t=t.concat(pZ(r))).concat(p1(r))).concat(p2(r))).concat(p3(r))).concat(pQ(r))}function pY(e){let t=cT(e,e=>!cI(e,pG));return{errors:cS(t,e=>({message:"Token Type: ->"+e.name+"<- missing static 'PATTERN' property",type:eY.MISSING_PATTERN,tokenTypes:[e]})),valid:cu(e,t)}}function pJ(e){let t=cT(e,e=>{let t=e[pG];return!cK(t)&&!sS(t)&&!cI(t,"exec")&&!cP(t)});return{errors:cS(t,e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:eY.INVALID_PATTERN,tokenTypes:[e]})),valid:cu(e,t)}}tS(pB,"analyzeTokenTypes"),tS(pV,"validatePatterns"),tS(pH,"validateRegExpPattern"),tS(pY,"findMissingPatterns"),tS(pJ,"findInvalidPatterns");var pX=/[^\\][$]/;function pZ(e){class t extends an{static{tS(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}return cS(cT(e,e=>{let r=e.PATTERN;try{let e=pw(r),n=new t;return n.visit(e),n.found}catch(e){return pX.test(r.source)}}),e=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+e.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:eY.EOI_ANCHOR_FOUND,tokenTypes:[e]}))}function pQ(e){return cS(cT(e,e=>e.PATTERN.test("")),e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' must not match an empty string",type:eY.EMPTY_MATCH_PATTERN,tokenTypes:[e]}))}tS(pZ,"findEndOfInputAnchor"),tS(pQ,"findEmptyMatchRegExps");var p0=/[^\\[][\^]|^\^/;function p1(e){class t extends an{static{tS(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}return cS(cT(e,e=>{let r=e.PATTERN;try{let e=pw(r),n=new t;return n.visit(e),n.found}catch(e){return p0.test(r.source)}}),e=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+e.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:eY.SOI_ANCHOR_FOUND,tokenTypes:[e]}))}function p2(e){return cS(cT(e,e=>{let t=e[pG];return t instanceof RegExp&&(t.multiline||t.global)}),e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:eY.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]}))}function p3(e){let t=[],r=cS(e,r=>cX(e,(e,n)=>(r.PATTERN.source!==n.PATTERN.source||cM(t,n)||n.PATTERN===dO.NA||(t.push(n),e.push(n)),e),[]));return cS(cT(r=uS(r),e=>e.length>1),e=>{let t=cS(e,e=>e.name),r=cC(e).PATTERN;return{message:`The same RegExp pattern ->${r}<-has been used in all of the following Token Types: ${t.join(", ")} <-`,type:eY.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}})}function p9(e){return cS(cT(e,e=>{if(!cI(e,"GROUP"))return!1;let t=e.GROUP;return t!==dO.SKIPPED&&t!==dO.NA&&!cP(t)}),e=>({message:"Token Type: ->"+e.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:eY.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]}))}function p4(e,t){return cS(cT(e,e=>void 0!==e.PUSH_MODE&&!cM(t,e.PUSH_MODE)),e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:eY.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]}))}function p5(e){let t=[],r=cX(e,(e,t,r)=>{let n=t.PATTERN;return n===dO.NA||(cP(n)?e.push({str:n,idx:r,tokenType:t}):cK(n)&&p7(n)&&e.push({str:n.source,idx:r,tokenType:t})),e},[]);return ch(e,(e,n)=>{ch(r,({str:r,idx:i,tokenType:a})=>{if(n<i&&p8(r,e.PATTERN)){let r=`Token: ->${a.name}<- can never be matched.
33
+ Because it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.
34
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:r,type:eY.UNREACHABLE_PATTERN,tokenTypes:[e,a]})}})}),t}function p8(e,t){if(cK(t)){if(p6(t))return!1;let r=t.exec(e);return null!==r&&0===r.index}if(sS(t))return t(e,0,[],{});if(cI(t,"exec"))return t.exec(e,0,[],{});if("string"==typeof t)return t===e;throw Error("non exhaustive match")}function p7(e){return void 0===cE([".","\\","[","]","|","^","$","(",")","?","*","+","{"],t=>-1!==e.source.indexOf(t))}function p6(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}function de(e){let t=e.ignoreCase?"i":"";return RegExp(`^(?:${e.source})`,t)}function dt(e){let t=e.ignoreCase?"iy":"y";return RegExp(`${e.source}`,t)}function dr(e,t,r){let n=[];return cI(e,pU)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+pU+"> property in its definition\n",type:eY.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),cI(e,pK)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+pK+"> property in its definition\n",type:eY.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),cI(e,pK)&&cI(e,pU)&&!cI(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${pU}: <${e.defaultMode}>which does not exist
35
+ `,type:eY.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),cI(e,pK)&&ch(e.modes,(e,t)=>{ch(e,(r,i)=>{cW(r)?n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${t}> at index: <${i}>
36
+ `,type:eY.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):cI(r,"LONGER_ALT")&&ch(ss(r.LONGER_ALT)?r.LONGER_ALT:[r.LONGER_ALT],i=>{cW(i)||cM(e,i)||n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${r.name}> outside of mode <${t}>
37
+ `,type:eY.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),n}function dn(e,t,r){let n=[],i=!1,a=cZ(uS(lb(cD(e.modes))),e=>e[pG]===dO.NA),s=dp(r);return t&&ch(a,e=>{let t=du(e,s);if(!1!==t){let r={message:dc(e,t),type:t.issue,tokenType:e};n.push(r)}else cI(e,"LINE_BREAKS")?!0===e.LINE_BREAKS&&(i=!0):pq(s,e.PATTERN)&&(i=!0)}),t&&!i&&n.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:eY.NO_LINE_BREAKS_FLAGS}),n}function di(e){let t={};return ch(oD(e),r=>{if(ss(e[r]))t[r]=[];else throw Error("non exhaustive match")}),t}function da(e){let t=e.PATTERN;if(cK(t))return!1;if(sS(t))return!0;if(cI(t,"exec"))return!0;if(cP(t))return!1;throw Error("non exhaustive match")}function ds(e){return!!cP(e)&&1===e.length&&e.charCodeAt(0)}tS(p1,"findStartOfInputAnchor"),tS(p2,"findUnsupportedFlags"),tS(p3,"findDuplicatePatterns"),tS(p9,"findInvalidGroupType"),tS(p4,"findModesThatDoNotExist"),tS(p5,"findUnreachablePatterns"),tS(p8,"tryToMatchStrToPattern"),tS(p7,"noMetaChar"),tS(p6,"usesLookAheadOrBehind"),tS(de,"addStartOfInput"),tS(dt,"addStickyFlag"),tS(dr,"performRuntimeChecks"),tS(dn,"performWarningRuntimeChecks"),tS(di,"cloneEmptyGroups"),tS(da,"isCustomPattern"),tS(ds,"isShortPattern");var dl={test:tS(function(e){let t=e.length;for(let r=this.lastIndex;r<t;r++){let t=e.charCodeAt(r);if(10===t)return this.lastIndex=r+1,!0;if(13===t)return 10===e.charCodeAt(r+1)?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function du(e,t){if(cI(e,"LINE_BREAKS"))return!1;if(cK(e.PATTERN)){try{pq(t,e.PATTERN)}catch(e){return{issue:eY.IDENTIFY_TERMINATOR,errMsg:e.message}}return!1}if(cP(e.PATTERN))return!1;if(da(e))return{issue:eY.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}function dc(e,t){if(t.issue===eY.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
38
+ The problem is in the <${e.name}> Token Type
39
+ Root cause: ${t.errMsg}.
40
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===eY.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
41
+ The problem is in the <${e.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 dp(e){return cS(e,e=>cP(e)?e.charCodeAt(0):e)}function dd(e,t,r){void 0===e[t]?e[t]=[r]:e[t].push(r)}tS(du,"checkLineBreaksIssues"),tS(dc,"buildLineBreakIssueMessage"),tS(dp,"getCharCodes"),tS(dd,"addToMapOfArrays");var df=256,dh=[];function dm(e){return e<df?e:dh[e]}function dy(){if(cq(dh)){dh=Array(65536);for(let e=0;e<65536;e++)dh[e]=e>255?255+~~(e/255):e}}function dg(e,t){let r=e.tokenTypeIdx;return r===t.tokenTypeIdx||!0===t.isParent&&!0===t.categoryMatchesMap[r]}function dv(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}tS(dm,"charCodeToOptimizedIndex"),tS(dy,"initCharCodeToOptimizedIndexMap"),tS(dg,"tokenStructuredMatcher"),tS(dv,"tokenStructuredMatcherNoCategories");var dT=1,dR={};function d$(e){let t=db(e);dE(t),dA(t),dC(t),ch(t,e=>{e.isParent=e.categoryMatches.length>0})}function db(e){let t=uA(e),r=e,n=!0;for(;n;){let e=cu(r=uS(lb(cS(r,e=>e.CATEGORIES))),t);t=t.concat(e),cq(e)?n=!1:r=e}return t}function dE(e){ch(e,e=>{dk(e)||(dR[dT]=e,e.tokenTypeIdx=dT++),dx(e)&&!ss(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),dx(e)||(e.CATEGORIES=[]),dN(e)||(e.categoryMatches=[]),dw(e)||(e.categoryMatchesMap={})})}function dC(e){ch(e,e=>{e.categoryMatches=[],ch(e.categoryMatchesMap,(t,r)=>{e.categoryMatches.push(dR[r].tokenTypeIdx)})})}function dA(e){ch(e,e=>{dS([],e)})}function dS(e,t){ch(e,e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0}),ch(t.CATEGORIES,r=>{let n=e.concat(t);cM(n,r)||dS(n,r)})}function dk(e){return cI(e,"tokenTypeIdx")}function dx(e){return cI(e,"CATEGORIES")}function dN(e){return cI(e,"categoryMatches")}function dw(e){return cI(e,"categoryMatchesMap")}function d_(e){return cI(e,"tokenTypeIdx")}tS(d$,"augmentTokenTypes"),tS(db,"expandCategories"),tS(dE,"assignTokenDefaultProps"),tS(dC,"assignCategoriesTokensProp"),tS(dA,"assignCategoriesMapProp"),tS(dS,"singleAssignCategoriesToksMap"),tS(dk,"hasShortKeyProperty"),tS(dx,"hasCategoriesProperty"),tS(dN,"hasExtendingTokensTypesProperty"),tS(dw,"hasExtendingTokensTypesMapProperty"),tS(d_,"isTokenType");var dI={buildUnableToPopLexerModeMessage:e=>`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(e,t,r,n,i,a)=>`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`};(o=eY||(eY={}))[o.MISSING_PATTERN=0]="MISSING_PATTERN",o[o.INVALID_PATTERN=1]="INVALID_PATTERN",o[o.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",o[o.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",o[o.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",o[o.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",o[o.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",o[o.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",o[o.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",o[o.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",o[o.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",o[o.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",o[o.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",o[o.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",o[o.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",o[o.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",o[o.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",o[o.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE";var dP={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:dI,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(dP);var dO=class{static{tS(this,"Lexer")}constructor(e,t=dP){if(this.lexerDefinition=e,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=(e,t)=>{if(!0!==this.traceInitPerf)return t();{this.traceInitIndent++;let r=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:i}=c5(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}},"boolean"==typeof t)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=oM({},dP,t);const r=this.config.traceInitPerf;!0===r?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof r&&(this.traceInitMaxIdent=r,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,n=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===dP.lineTerminatorsPattern)this.config.lineTerminatorsPattern=dl;else if(this.config.lineTerminatorCharacters===dP.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(t.safeMode&&t.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),ss(e)?r={modes:{defaultMode:uA(e)},defaultMode:pU}:(n=!1,r=uA(e))}),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(dr(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(dn(r,this.trackStartLines,this.config.lineTerminatorCharacters))})),r.modes=r.modes?r.modes:{},ch(r.modes,(e,t)=>{r.modes[t]=cZ(e,e=>cW(e))});let i=oD(r.modes);if(ch(r.modes,(e,r)=>{this.TRACE_INIT(`Mode: <${r}> processing`,()=>{if(this.modes.push(r),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(pV(e,i))}),cq(this.lexerDefinitionErrors)){let n;d$(e),this.TRACE_INIT("analyzeTokenTypes",()=>{n=pB(e,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[r]=n.patternIdxToConfig,this.charCodeToPatternIdxToConfig[r]=n.charCodeToPatternIdxToConfig,this.emptyGroups=oM({},this.emptyGroups,n.emptyGroups),this.hasCustom=n.hasCustom||this.hasCustom,this.canModeBeOptimized[r]=n.canBeOptimized}})}),this.defaultMode=r.defaultMode,!cq(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling)throw Error("Errors detected in definition of Lexer:\n"+cS(this.lexerDefinitionErrors,e=>e.message).join("-----------------------\n"));ch(this.lexerDefinitionWarning,e=>{c4(e.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(pW?(this.chopInput=sA,this.match=this.matchWithTest):(this.updateLastIndex=sK,this.match=this.matchWithExec),n&&(this.handleModes=sK),!1===this.trackStartLines&&(this.computeNewColumn=sA),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=sK),/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 e=cX(this.canModeBeOptimized,(e,t,r)=>(!1===t&&e.push(r),e),[]);if(t.ensureOptimizations&&!cq(e))throw Error(`Lexer Modes: < ${e.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",()=>{p_()}),this.TRACE_INIT("toFastProperties",()=>{c8(this)})})}tokenize(e,t=this.defaultMode){if(!cq(this.lexerDefinitionErrors))throw Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+cS(this.lexerDefinitionErrors,e=>e.message).join("-----------------------\n"));return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let r,n,i,a,s,o,l,u,c,p,d,f,h,m,y,g,v,T=e,R=T.length,$=0,b=0,E=Array(this.hasCustom?0:Math.floor(e.length/10)),C=[],A=this.trackStartLines?1:void 0,S=this.trackStartLines?1:void 0,k=di(this.emptyGroups),x=this.trackStartLines,N=this.config.lineTerminatorsPattern,w=0,_=[],I=[],P=[],O=[];function D(){return _}function L(e){let t=I[dm(e)];return void 0===t?O:t}Object.freeze(O),tS(D,"getPossiblePatternsSlow"),tS(L,"getPossiblePatternsOptimized");let M=tS(e=>{if(1===P.length&&void 0===e.tokenType.PUSH_MODE){let t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);C.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{P.pop();let e=cc(P);_=this.patternIdxToConfig[e],I=this.charCodeToPatternIdxToConfig[e],w=_.length;let t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;g=I&&t?L:D}},"pop_mode");function j(e){P.push(e),I=this.charCodeToPatternIdxToConfig[e],w=(_=this.patternIdxToConfig[e]).length,w=_.length;let t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;g=I&&t?L:D}tS(j,"push_mode"),j.call(this,t);let F=this.config.recoveryEnabled;for(;$<R;){o=null;let t=T.charCodeAt($),I=g(t),O=I.length;for(r=0;r<O;r++){let n=(v=I[r]).pattern;l=null;let c=v.short;if(!1!==c?t===c&&(o=n):!0===v.isCustom?null!==(y=n.exec(T,$,E,k))?(o=y[0],void 0!==y.payload&&(l=y.payload)):o=null:(this.updateLastIndex(n,$),o=this.match(n,e,$)),null!==o){if(void 0!==(s=v.longerAlt)){let t=s.length;for(i=0;i<t;i++){let t=_[s[i]],r=t.pattern;if(u=null,!0===t.isCustom?null!==(y=r.exec(T,$,E,k))?(a=y[0],void 0!==y.payload&&(u=y.payload)):a=null:(this.updateLastIndex(r,$),a=this.match(r,e,$)),a&&a.length>o.length){o=a,l=u,v=t;break}}}break}}if(null!==o){if(c=o.length,void 0!==(p=v.group)&&(d=v.tokenTypeIdx,f=this.createTokenInstance(o,$,d,v.tokenType,A,S,c),this.handlePayload(f,l),!1===p?b=this.addToken(E,b,f):k[p].push(f)),e=this.chopInput(e,c),$+=c,S=this.computeNewColumn(S,c),!0===x&&!0===v.canLineTerminator){let e,t,r=0;N.lastIndex=0;do!0===(e=N.test(o))&&(t=N.lastIndex-1,r++);while(!0===e);0!==r&&(A+=r,S=c-t,this.updateTokenEndLineColumnLocation(f,p,t,r,A,S,c))}this.handleModes(v,M,j,f)}else{let t=$,r=A,i=S,a=!1===F;for(;!1===a&&$<R;)for(e=this.chopInput(e,1),$++,n=0;n<w;n++){let t=_[n],r=t.pattern,i=t.short;if(!1!==i?T.charCodeAt($)===i&&(a=!0):!0===t.isCustom?a=null!==r.exec(T,$,E,k):(this.updateLastIndex(r,$),a=null!==r.exec(e)),!0===a)break}if(h=$-t,S=this.computeNewColumn(S,h),m=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(T,t,h,r,i,cc(P)),C.push({offset:t,line:r,column:i,length:h,message:m}),!1===F)break}}return this.hasCustom||(E.length=b),{tokens:E,groups:k,errors:C}}handleModes(e,t,r,n){if(!0===e.pop){let i=e.push;t(n),void 0!==i&&r.call(this,i)}else void 0!==e.push&&r.call(this,e.push)}chopInput(e,t){return e.substring(t)}updateLastIndex(e,t){e.lastIndex=t}updateTokenEndLineColumnLocation(e,t,r,n,i,a,s){let o,l;void 0!==t&&(l=(o=r===s-1)?-1:0,(1!==n||!0!==o)&&(e.endLine=i+l,e.endColumn=a-1+-l))}computeNewColumn(e,t){return e+t}createOffsetOnlyToken(e,t,r,n){return{image:e,startOffset:t,tokenTypeIdx:r,tokenType:n}}createStartOnlyToken(e,t,r,n,i,a){return{image:e,startOffset:t,startLine:i,startColumn:a,tokenTypeIdx:r,tokenType:n}}createFullToken(e,t,r,n,i,a,s){return{image:e,startOffset:t,endOffset:t+s-1,startLine:i,endLine:i,startColumn:a,endColumn:a+s-1,tokenTypeIdx:r,tokenType:n}}addTokenUsingPush(e,t,r){return e.push(r),t}addTokenUsingMemberAccess(e,t,r){return e[t]=r,++t}handlePayloadNoCustom(e,t){}handlePayloadWithCustom(e,t){null!==t&&(e.payload=t)}matchWithTest(e,t,r){return!0===e.test(t)?t.substring(r,e.lastIndex):null}matchWithExec(e,t){let r=e.exec(t);return null!==r?r[0]:null}};function dD(e){return dL(e)?e.LABEL:e.name}function dL(e){return cP(e.LABEL)&&""!==e.LABEL}dO.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.",dO.NA=/NOT_APPLICABLE/,tS(dD,"tokenLabel"),tS(dL,"hasTokenLabel");var dM="categories",dj="label",dF="group",dz="push_mode",dq="pop_mode",dG="longer_alt",dU="line_breaks",dK="start_chars_hint";function dW(e){return dB(e)}function dB(e){let t=e.pattern,r={};if(r.name=e.name,cW(t)||(r.PATTERN=t),cI(e,"parent"))throw"The parent property is no longer supported.\nSee: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.";return cI(e,dM)&&(r.CATEGORIES=e[dM]),d$([r]),cI(e,dj)&&(r.LABEL=e[dj]),cI(e,dF)&&(r.GROUP=e[dF]),cI(e,dq)&&(r.POP_MODE=e[dq]),cI(e,dz)&&(r.PUSH_MODE=e[dz]),cI(e,dG)&&(r.LONGER_ALT=e[dG]),cI(e,dU)&&(r.LINE_BREAKS=e[dU]),cI(e,dK)&&(r.START_CHARS_HINT=e[dK]),r}tS(dW,"createToken"),tS(dB,"createTokenInternal");var dV=dW({name:"EOF",pattern:dO.NA});function dH(e,t,r,n,i,a,s,o){return{image:t,startOffset:r,endOffset:n,startLine:i,endLine:a,startColumn:s,endColumn:o,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}function dY(e,t){return dg(e,t)}d$([dV]),tS(dH,"createTokenInstance"),tS(dY,"tokenMatcher");var dJ={buildMismatchTokenMessage({expected:e,actual:t,previous:r,ruleName:n}){let i=dL(e)?`--> ${dD(e)} <--`:`token of type --> ${e.name} <--`;return`Expecting ${i} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage:({firstRedundant:e,ruleName:t})=>"Redundant input, expecting EOF but found: "+e.image,buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",s="\nbut found: '"+cC(t).image+"'";if(n)return a+n+s;{let t=cS(cX(e,(e,t)=>e.concat(t),[]),e=>`[${cS(e,e=>dD(e)).join(", ")}]`),r=cS(t,(e,t)=>` ${t+1}. ${e}`);return a+`one of these possible Token sequences:
45
+ ${r.join("\n")}`+s}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){let i="Expecting: ",a="\nbut found: '"+cC(t).image+"'";if(r)return i+r+a;{let t=cS(e,e=>`[${cS(e,e=>dD(e)).join(",")}]`);return i+`expecting at least one iteration which starts with one of these possible Token sequences::
46
+ <${t.join(" ,")}>`+a}}};Object.freeze(dJ);var dX={buildRuleNotFoundError:(e,t)=>"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+"<-\ninside top level rule: ->"+e.name+"<-"},dZ={buildDuplicateFoundError(e,t){function r(e){return e instanceof pc?e.terminalType.name:e instanceof pt?e.nonTerminalName:""}tS(r,"getExtraProductionArgument");let n=e.name,i=cC(t),a=i.idx,s=pg(i),o=r(i),l=`->${s}${a>0?a:""}<- ${o?`with argument: ->${o}<-`:""}
47
+ appears more than once (${t.length} times) in the top level rule: ->${n}<-.
48
+ For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
49
+ `;return(l=l.replace(/[ \t]+/g," ")).replace(/\s\s+/g,"\n")},buildNamespaceConflictError:e=>`Namespace conflict found in grammar.
50
+ The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.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(e){let t=cS(e.prefixPath,e=>dD(e)).join(", "),r=0===e.alternation.idx?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix
54
+ in <OR${r}> inside <${e.topLevelRule.name}> Rule,
55
+ <${t}> 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(e){let t=cS(e.prefixPath,e=>dD(e)).join(", "),r=0===e.alternation.idx?"":e.alternation.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${r}> inside <${e.topLevelRule.name}> Rule,
58
+ <${t}> may appears as a prefix path in all these alternatives.
59
+ `;return n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
60
+ For Further details.`},buildEmptyRepetitionError(e){let t=pg(e.repetition);return 0!==e.repetition.idx&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
61
+ This could lead to an infinite loop.`},buildTokenNameError:e=>"deprecated",buildEmptyAlternationError:e=>`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
62
+ Only the last alternative may be an empty alternative.`,buildTooManyAlternativesError:e=>`An Alternation cannot have more than 256 alternatives:
63
+ <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
64
+ has ${e.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(e){let t=e.topLevelRule.name,r=cS(e.leftRecursionPath,e=>e.name),n=`${t} --> ${r.concat([t]).join(" --\x3e ")}`;return`Left Recursion found in grammar.
65
+ rule: <${t}> can be invoked from itself (directly or indirectly)
66
+ without consuming any Tokens. The grammar path that causes this is:
67
+ ${n}
68
+ To fix this refactor your grammar to remove the left recursion.
69
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:e=>"deprecated",buildDuplicateRuleNameError(e){let t;return t=e.topLevelRule instanceof pr?e.topLevelRule.name:e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function dQ(e,t){let r=new d0(e,t);return r.resolveRefs(),r.errors}tS(dQ,"resolveGrammar");var d0=class extends pf{static{tS(this,"GastRefResolverVisitor")}constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){ch(cD(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{let t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:t,type:eZ.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},d1=class extends pv{static{tS(this,"AbstractNextPossibleTokensWalker")}constructor(e,t){super(),this.topProd=e,this.path=t,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=uA(this.path.ruleStack).reverse(),this.occurrenceStack=uA(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,t=[]){this.found||super.walk(e,t)}walkProdRef(e,t,r){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let n=t.concat(r);this.updateExpectedNext(),this.walk(e.referencedRule,n)}}updateExpectedNext(){cq(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},d2=class extends d1{static{tS(this,"NextAfterTokenWalker")}constructor(e,t){super(e,t),this.path=t,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,t,r){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let e=new pn({definition:t.concat(r)});this.possibleTokTypes=pR(e),this.found=!0}}},d3=class extends pv{static{tS(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,t){super(),this.topRule=e,this.occurrence=t,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},d9=class extends d3{static{tS(this,"NextTerminalAfterManyWalker")}walkMany(e,t,r){if(e.idx===this.occurrence){let e=cC(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof pc&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkMany(e,t,r)}},d4=class extends d3{static{tS(this,"NextTerminalAfterManySepWalker")}walkManySep(e,t,r){if(e.idx===this.occurrence){let e=cC(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof pc&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkManySep(e,t,r)}},d5=class extends d3{static{tS(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,t,r){if(e.idx===this.occurrence){let e=cC(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof pc&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOne(e,t,r)}},d8=class extends d3{static{tS(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,t,r){if(e.idx===this.occurrence){let e=cC(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof pc&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOneSep(e,t,r)}};function d7(e,t,r=[]){r=uA(r);let n=[],i=0;function a(t){return t.concat(cp(e,i+1))}function s(e){let i=d7(a(e),t,r);return n.concat(i)}for(tS(a,"remainingPathWith"),tS(s,"getAlternativesForProd");r.length<t&&i<e.length;){let t=e[i];if(t instanceof pn)return s(t.definition);if(t instanceof pt)return s(t.definition);if(t instanceof pi)n=s(t.definition);else if(t instanceof pa)return s(t.definition.concat([new po({definition:t.definition})]));else if(t instanceof ps)return s([new pn({definition:t.definition}),new po({definition:[new pc({terminalType:t.separator})].concat(t.definition)})]);else if(t instanceof pl)n=s(t.definition.concat([new po({definition:[new pc({terminalType:t.separator})].concat(t.definition)})]));else if(t instanceof po)n=s(t.definition.concat([new po({definition:t.definition})]));else if(t instanceof pu)return ch(t.definition,e=>{!1===cq(e.definition)&&(n=s(e.definition))}),n;else if(t instanceof pc)r.push(t.terminalType);else throw Error("non exhaustive match");i++}return n.push({partialPath:r,suffixDef:cp(e,i)}),n}function d6(e,t,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",o=!1,l=t.length,u=l-n-1,c=[],p=[];for(p.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!cq(p);){let e=p.pop();if(e===s){o&&cc(p).idx<=u&&p.pop();continue}let n=e.def,d=e.idx,f=e.ruleStack,h=e.occurrenceStack;if(cq(n))continue;let m=n[0];if(m===i){let e={idx:d,def:cp(n),ruleStack:cd(f),occurrenceStack:cd(h)};p.push(e)}else if(m instanceof pc)if(d<l-1){let e=d+1;if(r(t[e],m.terminalType)){let t={idx:e,def:cp(n),ruleStack:f,occurrenceStack:h};p.push(t)}}else if(d===l-1)c.push({nextTokenType:m.terminalType,nextTokenOccurrence:m.idx,ruleStack:f,occurrenceStack:h}),o=!0;else throw Error("non exhaustive match");else if(m instanceof pt){let e=uA(f);e.push(m.nonTerminalName);let t=uA(h);t.push(m.idx);let r={idx:d,def:m.definition.concat(a,cp(n)),ruleStack:e,occurrenceStack:t};p.push(r)}else if(m instanceof pi){let e={idx:d,def:cp(n),ruleStack:f,occurrenceStack:h};p.push(e),p.push(s);let t={idx:d,def:m.definition.concat(cp(n)),ruleStack:f,occurrenceStack:h};p.push(t)}else if(m instanceof pa){let e=new po({definition:m.definition,idx:m.idx}),t={idx:d,def:m.definition.concat([e],cp(n)),ruleStack:f,occurrenceStack:h};p.push(t)}else if(m instanceof ps){let e=new po({definition:[new pc({terminalType:m.separator})].concat(m.definition),idx:m.idx}),t={idx:d,def:m.definition.concat([e],cp(n)),ruleStack:f,occurrenceStack:h};p.push(t)}else if(m instanceof pl){let e={idx:d,def:cp(n),ruleStack:f,occurrenceStack:h};p.push(e),p.push(s);let t=new po({definition:[new pc({terminalType:m.separator})].concat(m.definition),idx:m.idx}),r={idx:d,def:m.definition.concat([t],cp(n)),ruleStack:f,occurrenceStack:h};p.push(r)}else if(m instanceof po){let e={idx:d,def:cp(n),ruleStack:f,occurrenceStack:h};p.push(e),p.push(s);let t=new po({definition:m.definition,idx:m.idx}),r={idx:d,def:m.definition.concat([t],cp(n)),ruleStack:f,occurrenceStack:h};p.push(r)}else if(m instanceof pu)for(let e=m.definition.length-1;e>=0;e--){let t={idx:d,def:m.definition[e].definition.concat(cp(n)),ruleStack:f,occurrenceStack:h};p.push(t),p.push(s)}else if(m instanceof pn)p.push({idx:d,def:m.definition.concat(cp(n)),ruleStack:f,occurrenceStack:h});else if(m instanceof pr)p.push(fe(m,d,f,h));else throw Error("non exhaustive match")}return c}function fe(e,t,r,n){let i=uA(r);i.push(e.name);let a=uA(n);return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}function ft(e){if(e instanceof pi||"Option"===e)return eJ.OPTION;if(e instanceof po||"Repetition"===e)return eJ.REPETITION;if(e instanceof pa||"RepetitionMandatory"===e)return eJ.REPETITION_MANDATORY;if(e instanceof ps||"RepetitionMandatoryWithSeparator"===e)return eJ.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof pl||"RepetitionWithSeparator"===e)return eJ.REPETITION_WITH_SEPARATOR;else if(e instanceof pu||"Alternation"===e)return eJ.ALTERNATION;else throw Error("non exhaustive match")}function fr(e){let{occurrence:t,rule:r,prodType:n,maxLookahead:i}=e,a=ft(n);return a===eJ.ALTERNATION?ff(t,r,i):fh(t,r,a,i)}function fn(e,t,r,n,i,a){let s=ff(e,t,r),o=fg(s)?dv:dg;return a(s,n,o,i)}function fi(e,t,r,n,i,a){let s=fh(e,t,i,r),o=fg(s)?dv:dg;return a(s[0],o,n)}function fa(e,t,r,n){let i=e.length,a=cg(e,e=>cg(e,e=>1===e.length));if(t)return function(t){let n=cS(t,e=>e.GATE);for(let t=0;t<i;t++){let i=e[t],a=i.length,s=n[t];if(void 0===s||!1!==s.call(this))r:for(let e=0;e<a;e++){let n=i[e],a=n.length;for(let e=0;e<a;e++)if(!1===r(this.LA(e+1),n[e]))continue r;return t}}};if(!a||n)return function(){for(let t=0;t<i;t++){let n=e[t],i=n.length;r:for(let e=0;e<i;e++){let i=n[e],a=i.length;for(let e=0;e<a;e++)if(!1===r(this.LA(e+1),i[e]))continue r;return t}}};{let t=cX(cS(e,e=>lb(e)),(e,t,r)=>(ch(t,t=>{cI(e,t.tokenTypeIdx)||(e[t.tokenTypeIdx]=r),ch(t.categoryMatches,t=>{cI(e,t)||(e[t]=r)})}),e),{});return function(){return t[this.LA(1).tokenTypeIdx]}}}function fs(e,t,r){let n=cg(e,e=>1===e.length),i=e.length;if(!n||r)return function(){r:for(let r=0;r<i;r++){let n=e[r],i=n.length;for(let e=0;e<i;e++)if(!1===t(this.LA(e+1),n[e]))continue r;return!0}return!1};{let t=lb(e);if(1===t.length&&cq(t[0].categoryMatches)){let e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{let e=cX(t,(e,t,r)=>(e[t.tokenTypeIdx]=!0,ch(t.categoryMatches,t=>{e[t]=!0}),e),[]);return function(){return!0===e[this.LA(1).tokenTypeIdx]}}}}tS(d7,"possiblePathsFrom"),tS(d6,"nextPossibleTokensAfter"),tS(fe,"expandTopLevelRule"),(l=eJ||(eJ={}))[l.OPTION=0]="OPTION",l[l.REPETITION=1]="REPETITION",l[l.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",l[l.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",l[l.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",l[l.ALTERNATION=5]="ALTERNATION",tS(ft,"getProdType"),tS(fr,"getLookaheadPaths"),tS(fn,"buildLookaheadFuncForOr"),tS(fi,"buildLookaheadFuncForOptionalProd"),tS(fa,"buildAlternativesLookAheadFunc"),tS(fs,"buildSingleAlternativeLookaheadFunction");var fo=class extends pv{static{tS(this,"RestDefinitionFinderWalker")}constructor(e,t,r){super(),this.topProd=e,this.targetOccurrence=t,this.targetProdType=r}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,t,r,n){return e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.restDef=r.concat(n),!0)}walkOption(e,t,r){this.checkIsTarget(e,eJ.OPTION,t,r)||super.walkOption(e,t,r)}walkAtLeastOne(e,t,r){this.checkIsTarget(e,eJ.REPETITION_MANDATORY,t,r)||super.walkOption(e,t,r)}walkAtLeastOneSep(e,t,r){this.checkIsTarget(e,eJ.REPETITION_MANDATORY_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}walkMany(e,t,r){this.checkIsTarget(e,eJ.REPETITION,t,r)||super.walkOption(e,t,r)}walkManySep(e,t,r){this.checkIsTarget(e,eJ.REPETITION_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}},fl=class extends pf{static{tS(this,"InsideDefinitionFinderVisitor")}constructor(e,t,r){super(),this.targetOccurrence=e,this.targetProdType=t,this.targetRef=r,this.result=[]}checkIsTarget(e,t){e.idx===this.targetOccurrence&&this.targetProdType===t&&(void 0===this.targetRef||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,eJ.OPTION)}visitRepetition(e){this.checkIsTarget(e,eJ.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,eJ.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,eJ.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,eJ.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,eJ.ALTERNATION)}};function fu(e){let t=Array(e);for(let r=0;r<e;r++)t[r]=[];return t}function fc(e){let t=[""];for(let r=0;r<e.length;r++){let n=e[r],i=[];for(let e=0;e<t.length;e++){let r=t[e];i.push(r+"_"+n.tokenTypeIdx);for(let e=0;e<n.categoryMatches.length;e++){let t="_"+n.categoryMatches[e];i.push(r+t)}}t=i}return t}function fp(e,t,r){for(let n=0;n<e.length;n++){if(n===r)continue;let i=e[n];for(let e=0;e<t.length;e++)if(!0===i[t[e]])return!1}return!0}function fd(e,t){let r=cS(e,e=>d7([e],1)),n=fu(r.length),i=cS(r,e=>{let t={};return ch(e,e=>{ch(fc(e.partialPath),e=>{t[e]=!0})}),t}),a=r;for(let e=1;e<=t;e++){let r=a;a=fu(r.length);for(let s=0;s<r.length;s++){let o=r[s];for(let r=0;r<o.length;r++){let l=o[r].partialPath,u=o[r].suffixDef,c=fc(l);if(fp(i,c,s)||cq(u)||l.length===t){let e=n[s];if(!1===fm(e,l)){e.push(l);for(let e=0;e<c.length;e++){let t=c[e];i[s][t]=!0}}}else{let t=d7(u,e+1,l);a[s]=a[s].concat(t),ch(t,e=>{ch(fc(e.partialPath),e=>{i[s][e]=!0})})}}}}return n}function ff(e,t,r,n){let i=new fl(e,eJ.ALTERNATION,n);return t.accept(i),fd(i.result,r)}function fh(e,t,r,n){let i=new fl(e,r);t.accept(i);let a=i.result,s=new fo(t,e,r).startWalking();return fd([new pn({definition:a}),new pn({definition:s})],n)}function fm(e,t){n:for(let r=0;r<e.length;r++){let n=e[r];if(n.length===t.length){for(let e=0;e<n.length;e++){let r=t[e],i=n[e];if(!1==(r===i||void 0!==i.categoryMatchesMap[r.tokenTypeIdx]))continue n}return!0}}return!1}function fy(e,t){return e.length<t.length&&cg(e,(e,r)=>{let n=t[r];return e===n||n.categoryMatchesMap[e.tokenTypeIdx]})}function fg(e){return cg(e,e=>cg(e,e=>cg(e,e=>cq(e.categoryMatches))))}function fv(e){return cS(e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName}),e=>Object.assign({type:eZ.CUSTOM_LOOKAHEAD_VALIDATION},e))}function fT(e,t,r,n){let i=ck(e,e=>fR(e,r)),a=fL(e,t,r),s=ck(e,e=>fI(e,r)),o=ck(e,t=>fC(t,e,n,r));return i.concat(a,s,o)}function fR(e,t){let r=new fE;return e.accept(r),cS(cD(cY(cN(r.allProductions,f$),e=>e.length>1)),r=>{let n=cC(r),i=t.buildDuplicateFoundError(e,r),a=pg(n),s={message:i,type:eZ.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:a,occurrence:n.idx},o=fb(n);return o&&(s.parameter=o),s})}function f$(e){return`${pg(e)}_#_${e.idx}_#_${fb(e)}`}function fb(e){return e instanceof pc?e.terminalType.name:e instanceof pt?e.nonTerminalName:""}tS(fu,"initializeArrayOfArrays"),tS(fc,"pathToHashKeys"),tS(fp,"isUniquePrefixHash"),tS(fd,"lookAheadSequenceFromAlternatives"),tS(ff,"getLookaheadPathsForOr"),tS(fh,"getLookaheadPathsForOptionalProd"),tS(fm,"containsPath"),tS(fy,"isStrictPrefixOfPath"),tS(fg,"areTokenCategoriesNotUsed"),tS(fv,"validateLookahead"),tS(fT,"validateGrammar"),tS(fR,"validateDuplicateProductions"),tS(f$,"identifyProductionForDuplicates"),tS(fb,"getExtraProductionArgument");var fE=class extends pf{static{tS(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function fC(e,t,r,n){let i=[];if(cX(t,(t,r)=>r.name===e.name?t+1:t,0)>1){let t=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:t,type:eZ.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}function fA(e,t,r){let n=[];return cM(t,e)||n.push({message:`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,type:eZ.INVALID_RULE_OVERRIDE,ruleName:e}),n}function fS(e,t,r,n=[]){let i=[],a=fk(t.definition);if(cq(a))return[];{let t=e.name;cM(a,e)&&i.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:eZ.LEFT_RECURSION,ruleName:t});let s=ck(cu(a,n.concat([e])),t=>{let i=uA(n);return i.push(t),fS(e,t,r,i)});return i.concat(s)}}function fk(e){let t=[];if(cq(e))return t;let r=cC(e);if(r instanceof pt)t.push(r.referencedRule);else if(r instanceof pn||r instanceof pi||r instanceof pa||r instanceof ps||r instanceof pl||r instanceof po)t=t.concat(fk(r.definition));else if(r instanceof pu)t=lb(cS(r.definition,e=>fk(e.definition)));else if(r instanceof pc);else throw Error("non exhaustive match");let n=pm(r),i=e.length>1;if(!n||!i)return t;{let r=cp(e);return t.concat(fk(r))}}tS(fC,"validateRuleDoesNotAlreadyExist"),tS(fA,"validateRuleIsOverridden"),tS(fS,"validateNoLeftRecursion"),tS(fk,"getFirstNoneTerminal");var fx=class extends pf{static{tS(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function fN(e,t){let r=new fx;return e.accept(r),ck(r.alternations,r=>ck(cd(r.definition),(n,i)=>cq(d6([n],[],dg,1))?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:r,emptyChoiceIdx:i}),type:eZ.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:r.idx,alternative:i+1}]:[]))}function fw(e,t,r){let n=new fx;e.accept(n);let i=n.alternations;return ck(i=cZ(i,e=>!0===e.ignoreAmbiguities),n=>{let i=ff(n.idx,e,n.maxLookahead||t,n),a=fO(i,n,e,r),s=fD(i,n,e,r);return a.concat(s)})}tS(fN,"validateEmptyOrAlternative"),tS(fw,"validateAmbiguousAlternationAlternatives");var f_=class extends pf{static{tS(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function fI(e,t){let r=new fx;return e.accept(r),ck(r.alternations,r=>r.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:r}),type:eZ.TOO_MANY_ALTS,ruleName:e.name,occurrence:r.idx}]:[])}function fP(e,t,r){let n=[];return ch(e,e=>{let i=new f_;e.accept(i),ch(i.allProductions,i=>{let a=ft(i),s=i.maxLookahead||t;if(cq(lb(fh(i.idx,e,a,s)[0]))){let t=r.buildEmptyRepetitionError({topLevelRule:e,repetition:i});n.push({message:t,type:eZ.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}})}),n}function fO(e,t,r,n){let i=[];return cS(cX(e,(r,n,a)=>(!0===t.definition[a].ignoreAmbiguities||ch(n,n=>{let s=[a];ch(e,(e,r)=>{a!==r&&fm(e,n)&&!0!==t.definition[r].ignoreAmbiguities&&s.push(r)}),s.length>1&&!fm(i,n)&&(i.push(n),r.push({alts:s,path:n}))}),r),[]),e=>{let i=cS(e.alts,e=>e+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:eZ.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:e.alts}})}function fD(e,t,r,n){let i=cX(e,(e,t,r)=>{let n=cS(t,e=>({idx:r,path:e}));return e.concat(n)},[]);return uS(ck(i,e=>{if(!0===t.definition[e.idx].ignoreAmbiguities)return[];let a=e.idx,s=e.path;return cS(cT(i,e=>!0!==t.definition[e.idx].ignoreAmbiguities&&e.idx<a&&fy(e.path,s)),e=>{let i=[e.idx+1,a+1],s=0===t.idx?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:eZ.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:s,alternatives:i}})}))}function fL(e,t,r){let n=[],i=cS(t,e=>e.name);return ch(e,e=>{let t=e.name;if(cM(i,t)){let i=r.buildNamespaceConflictError(e);n.push({message:i,type:eZ.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}}),n}function fM(e){let t=ca(e,{errMsgProvider:dX}),r={};return ch(e.rules,e=>{r[e.name]=e}),dQ(r,t.errMsgProvider)}function fj(e){return fT((e=ca(e,{errMsgProvider:dZ})).rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}tS(fI,"validateTooManyAlts"),tS(fP,"validateSomeNonEmptyLookaheadPath"),tS(fO,"checkAlternativesAmbiguities"),tS(fD,"checkPrefixAlternativesAmbiguities"),tS(fL,"checkTerminalAndNoneTerminalsNameSpace"),tS(fM,"resolveGrammar"),tS(fj,"validateGrammar");var fF="MismatchedTokenException",fz="NoViableAltException",fq="EarlyExitException",fG="NotAllInputParsedException",fU=[fF,fz,fq,fG];function fK(e){return cM(fU,e.name)}Object.freeze(fU),tS(fK,"isRecognitionException");var fW=class extends Error{static{tS(this,"RecognitionException")}constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},fB=class extends fW{static{tS(this,"MismatchedTokenException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=fF}},fV=class extends fW{static{tS(this,"NoViableAltException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=fz}},fH=class extends fW{static{tS(this,"NotAllInputParsedException")}constructor(e,t){super(e,t),this.name=fG}},fY=class extends fW{static{tS(this,"EarlyExitException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=fq}},fJ={},fX="InRuleRecoveryException",fZ=class extends Error{static{tS(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=fX}},fQ=class{static{tS(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=cI(e,"recoveryEnabled")?e.recoveryEnabled:hC.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=f0)}getTokenToInsert(e){let t=dH(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,r,n){let i=this.findReSyncTokenType(),a=this.exportLexerState(),s=[],o=!1,l=this.LA(1),u=this.LA(1),c=tS(()=>{let e=this.LA(0),t=new fB(this.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:l,previous:e,ruleName:this.getCurrRuleFullName()}),l,this.LA(0));t.resyncedTokens=cd(s),this.SAVE_ERROR(t)},"generateErrorMessage");for(;!o;)if(this.tokenMatcher(u,n))return void c();else if(r.call(this)){c(),e.apply(this,t);return}else this.tokenMatcher(u,i)?o=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,s));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,t,r){return!(!1===r||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t)))}getFollowsForInRuleRecovery(e,t){let r=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(r)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let e=this.SKIP_TOKEN();return this.consumeToken(),e}throw new fZ("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e)||cq(t))return!1;let r=this.LA(1);return void 0!==cE(t,e=>this.tokenMatcher(r,e))}canRecoverWithSingleTokenDeletion(e){return!!this.canTokenTypeBeDeletedInRecovery(e)&&this.tokenMatcher(this.LA(2),e)}isInCurrentRuleReSyncSet(e){let t=this.getCurrFollowKey();return cM(this.getFollowSetFromFollowKey(t),e)}findReSyncTokenType(){let e=this.flattenFollowSet(),t=this.LA(1),r=2;for(;;){let n=cE(e,e=>dY(t,e));if(void 0!==n)return n;t=this.LA(r),r++}}getCurrFollowKey(){if(1===this.RULE_STACK.length)return fJ;let e=this.getLastExplicitRuleShortName(),t=this.getLastExplicitRuleOccurrenceIndex(),r=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(r)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK;return cS(e,(r,n)=>0===n?fJ:{ruleName:this.shortRuleNameToFullName(r),idxInCallingRule:t[n],inRule:this.shortRuleNameToFullName(e[n-1])})}flattenFollowSet(){return lb(cS(this.buildFullFollowKeyStack(),e=>this.getFollowSetFromFollowKey(e)))}getFollowSetFromFollowKey(e){if(e===fJ)return[dV];let t=e.ruleName+e.idxInCallingRule+pC+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,dV)||t.push(e),t}reSyncTo(e){let t=[],r=this.LA(1);for(;!1===this.tokenMatcher(r,e);)r=this.SKIP_TOKEN(),this.addToResyncTokens(r,t);return cd(t)}attemptInRepetitionRecovery(e,t,r,n,i,a,s){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:uA(this.RULE_OCCURRENCE_STACK),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){return cS(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};function f0(e,t,r,n,i,a,s){let o=this.getKeyForAutomaticLookahead(n,i),l=this.firstAfterRepMap[o];if(void 0===l){let e=this.getCurrRuleFullName();l=new a(this.getGAstProductions()[e],i).startWalking(),this.firstAfterRepMap[o]=l}let u=l.token,c=l.occurrence,p=l.isEndOfRule;1===this.RULE_STACK.length&&p&&void 0===u&&(u=dV,c=1),void 0!==u&&void 0!==c&&this.shouldInRepetitionRecoveryBeTried(u,c,s)&&this.tryInRepetitionRecovery(e,t,r,u)}tS(f0,"attemptInRepetitionRecovery");function f1(e,t,r){return r|t|e}tS(f1,"getKeyForAutomaticLookahead");var f2=class{static{tS(this,"LLkLookaheadStrategy")}constructor(e){var t;this.maxLookahead=null!=(t=null==e?void 0:e.maxLookahead)?t:hC.maxLookahead}validate(e){let t=this.validateNoLeftRecursion(e.rules);return cq(t)?[...t,...this.validateEmptyOrAlternatives(e.rules),...this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),...this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead)]:t}validateNoLeftRecursion(e){return ck(e,e=>fS(e,e,dZ))}validateEmptyOrAlternatives(e){return ck(e,e=>fN(e,dZ))}validateAmbiguousAlternationAlternatives(e,t){return ck(e,e=>fw(e,t,dZ))}validateSomeNonEmptyLookaheadPath(e,t){return fP(e,t,dZ)}buildLookaheadForAlternation(e){return fn(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,fa)}buildLookaheadForOptional(e){return fi(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,ft(e.prodType),fs)}},f3=class{static{tS(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=cI(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:hC.dynamicTokensEnabled,this.maxLookahead=cI(e,"maxLookahead")?e.maxLookahead:hC.maxLookahead,this.lookaheadStrategy=cI(e,"lookaheadStrategy")?e.lookaheadStrategy:new f2({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){ch(e,e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{let{alternation:t,repetition:r,option:n,repetitionMandatory:i,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:s}=f4(e);ch(t,t=>{let r=0===t.idx?"":t.idx;this.TRACE_INIT(`${pg(t)}${r}`,()=>{let r=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),n=f1(this.fullRuleNameToShort[e.name],256,t.idx);this.setLaFuncCache(n,r)})}),ch(r,t=>{this.computeLookaheadFunc(e,t.idx,768,"Repetition",t.maxLookahead,pg(t))}),ch(n,t=>{this.computeLookaheadFunc(e,t.idx,512,"Option",t.maxLookahead,pg(t))}),ch(i,t=>{this.computeLookaheadFunc(e,t.idx,1024,"RepetitionMandatory",t.maxLookahead,pg(t))}),ch(a,t=>{this.computeLookaheadFunc(e,t.idx,1536,"RepetitionMandatoryWithSeparator",t.maxLookahead,pg(t))}),ch(s,t=>{this.computeLookaheadFunc(e,t.idx,1280,"RepetitionWithSeparator",t.maxLookahead,pg(t))})})})}computeLookaheadFunc(e,t,r,n,i,a){this.TRACE_INIT(`${a}${0===t?"":t}`,()=>{let a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:n}),s=f1(this.fullRuleNameToShort[e.name],r,t);this.setLaFuncCache(s,a)})}getKeyForAutomaticLookahead(e,t){return f1(this.getLastExplicitRuleShortName(),e,t)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,t){this.lookAheadFuncsCache.set(e,t)}},f9=new class extends pf{static{tS(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}};function f4(e){f9.reset(),e.accept(f9);let t=f9.dslMethods;return f9.reset(),t}function f5(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset)}function f8(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.startColumn=t.startColumn,e.startLine=t.startLine,e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}function f7(e,t,r){void 0===e.children[r]?e.children[r]=[t]:e.children[r].push(t)}function f6(e,t,r){void 0===e.children[t]?e.children[t]=[r]:e.children[t].push(r)}function he(e,t){Object.defineProperty(e,"name",{enumerable:!1,configurable:!0,writable:!1,value:t})}function ht(e,t){let r=oD(e),n=r.length;for(let i=0;i<n;i++){let n=e[r[i]],a=n.length;for(let e=0;e<a;e++){let r=n[e];void 0===r.tokenTypeIdx&&this[r.name](r.children,t)}}}function hr(e,t){let r=tS(function(){},"derivedConstructor");return he(r,e+"BaseSemantics"),r.prototype={visit:tS(function(e,t){if(ss(e)&&(e=e[0]),!cW(e))return this[e.name](e.children,t)},"visit"),validateVisitor:tS(function(){let e=hi(this,t);if(!cq(e)){let t=cS(e,e=>e.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
70
+ ${t.join("\n\n").replace(/\n/g,"\n ")}`)}},"validateVisitor")},r.prototype.constructor=r,r._RULE_NAMES=t,r}function hn(e,t,r){let n=tS(function(){},"derivedConstructor");he(n,e+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return ch(t,e=>{i[e]=ht}),n.prototype=i,n.prototype.constructor=n,n}function hi(e,t){return ha(e,t)}function ha(e,t){return uS(cS(cT(t,t=>!1===sS(e[t])),t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:eX.MISSING_METHOD,methodName:t})))}tS(f4,"collectMethods"),tS(f5,"setNodeLocationOnlyOffset"),tS(f8,"setNodeLocationFull"),tS(f7,"addTerminalToCst"),tS(f6,"addNoneTerminalToCst"),tS(he,"defineNameProp"),tS(ht,"defaultVisit"),tS(hr,"createBaseSemanticVisitorConstructor"),tS(hn,"createBaseVisitorConstructorWithDefaults"),(u=eX||(eX={}))[u.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",u[u.MISSING_METHOD=1]="MISSING_METHOD",tS(hi,"validateVisitor"),tS(ha,"validateMissingCstMethods");var hs=class{static{tS(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=cI(e,"nodeLocationTracking")?e.nodeLocationTracking:hC.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=f8,this.setNodeLocationFromNode=f8,this.cstPostRule=sK,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=sK,this.setNodeLocationFromNode=sK,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=f5,this.setNodeLocationFromNode=f5,this.cstPostRule=sK,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=sK,this.setNodeLocationFromNode=sK,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=sK,this.setNodeLocationFromNode=sK,this.cstPostRule=sK,this.setInitialNodeLocation=sK;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`);else this.cstInvocationStateUpdate=sK,this.cstFinallyStateUpdate=sK,this.cstPostTerminal=sK,this.cstPostNonTerminal=sK,this.cstPostRule=sK}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let t=this.LA(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let t=this.LA(0),r=e.location;r.startOffset<=t.startOffset==!0?(r.endOffset=t.endOffset,r.endLine=t.endLine,r.endColumn=t.endColumn):(r.startOffset=NaN,r.startLine=NaN,r.startColumn=NaN)}cstPostRuleOnlyOffset(e){let t=this.LA(0),r=e.location;r.startOffset<=t.startOffset==!0?r.endOffset=t.endOffset:r.startOffset=NaN}cstPostTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];f7(r,t,e),this.setNodeLocationFromToken(r.location,t)}cstPostNonTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];f6(r,t,e),this.setNodeLocationFromNode(r.location,e.location)}getBaseCstVisitorConstructor(){if(cW(this.baseCstVisitorConstructor)){let e=hr(this.className,oD(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(cW(this.baseCstVisitorWithDefaultsConstructor)){let e=hn(this.className,oD(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},ho=class{static{tS(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(!0!==this.selfAnalysisDone)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):hE}LA(e){let t=this.currIdx+e;return t<0||this.tokVectorLength<=t?hE:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},hl=class{static{tS(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,t,r){return this.consumeInternal(t,e,r)}subrule(e,t,r){return this.subruleInternal(t,e,r)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,r=hA){if(cM(this.definedRulesNames,e)){let t={message:dZ.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:eZ.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);let n=this.defineRule(e,t,r);return this[e]=n,n}OVERRIDE_RULE(e,t,r=hA){let n=fA(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(n);let i=this.defineRule(e,t,r);return this[e]=i,i}BACKTRACK(e,t){return function(){this.isBackTrackingStack.push(1);let r=this.saveRecogState();try{return e.apply(this,t),!0}catch(e){if(fK(e))return!1;throw e}finally{this.reloadRecogState(r),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return pp(cD(this.gastProductionsCache))}},hu=class{static{tS(this,"RecognizerEngine")}initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=dv,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},cI(t,"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(ss(e)){if(cq(e))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 e[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(ss(e))this.tokensMap=cX(e,(e,t)=>(e[t.name]=t,e),{});else if(cI(e,"modes")&&cg(lb(cD(e.modes)),d_)){let t=c3(lb(cD(e.modes)));this.tokensMap=cX(t,(e,t)=>(e[t.name]=t,e),{})}else if(sm(e))this.tokensMap=uA(e);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=dV;let r=cg(cI(e,"modes")?lb(cD(e.modes)):cD(e),e=>cq(e.categoryMatches));this.tokenMatcher=r?dv:dg,d$(cD(this.tokensMap))}defineRule(e,t,r){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> 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 n=cI(r,"resyncEnabled")?r.resyncEnabled:hA.resyncEnabled,i=cI(r,"recoveryValueFunc")?r.recoveryValueFunc:hA.recoveryValueFunc,a=this.ruleShortNameIdx<<12;return this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a,Object.assign(!0===this.outputCst?tS(function(...r){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r);let n=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(n),n}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):tS(function(...r){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r)}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),{ruleName:e,originalGrammarAction:t})}invokeRuleCatch(e,t,r){let n=1===this.RULE_STACK.length,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(fK(e)){if(i){let t=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(t)){if(e.resyncedTokens=this.reSyncTo(t),!this.outputCst)return r(e);{let e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}}if(this.outputCst){let t=this.CST_STACK[this.CST_STACK.length-1];t.recoveredNode=!0,e.partialCstResult=t}throw e}if(n)return this.moveToTerminatedState(),r(e)}throw e}optionInternal(e,t){let r=this.getKeyForAutomaticLookahead(512,t);return this.optionInternalLogic(e,t,r)}optionInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof e){n=e.DEF;let t=e.GATE;if(void 0!==t){let e=i;i=tS(()=>t.call(this)&&e.call(this),"lookAheadFunc")}}else n=e;if(!0===i.call(this))return n.call(this)}atLeastOneInternal(e,t){let r=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,t,r)}atLeastOneInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof t){n=t.DEF;let e=t.GATE;if(void 0!==e){let t=i;i=tS(()=>e.call(this)&&t.call(this),"lookAheadFunc")}}else n=t;if(!0===i.call(this)){let e=this.doSingleRepetition(n);for(;!0===i.call(this)&&!0===e;)e=this.doSingleRepetition(n)}else throw this.raiseEarlyExitException(e,eJ.REPETITION_MANDATORY,t.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],i,1024,e,d5)}atLeastOneSepFirstInternal(e,t){let r=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,t,r)}atLeastOneSepFirstInternalLogic(e,t,r){let n=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(r).call(this)){n.call(this);let t=tS(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,d8],t,1536,e,d8)}else throw this.raiseEarlyExitException(e,eJ.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG)}manyInternal(e,t){let r=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,t,r)}manyInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof t){n=t.DEF;let e=t.GATE;if(void 0!==e){let t=i;i=tS(()=>e.call(this)&&t.call(this),"lookaheadFunction")}}else n=t;let a=!0;for(;!0===i.call(this)&&!0===a;)a=this.doSingleRepetition(n);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],i,768,e,d9,a)}manySepFirstInternal(e,t){let r=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,t,r)}manySepFirstInternalLogic(e,t,r){let n=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(r).call(this)){n.call(this);let t=tS(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,d4],t,1280,e,d4)}}repetitionSepSecondInternal(e,t,r,n,i){for(;r();)this.CONSUME(t),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,r,n,i],r,1536,e,i)}doSingleRepetition(e){let t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){let r=this.getKeyForAutomaticLookahead(256,t),n=ss(e)?e:e.DEF,i=this.getLaFuncFromCache(r).call(this,n);if(void 0!==i)return n[i].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),0===this.RULE_STACK.length&&!1===this.isAtEndOfInput()){let e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new fH(t,e))}}subruleInternal(e,t,r){let n;try{let i=void 0!==r?r.ARGS:void 0;return this.subruleIdx=t,n=e.apply(this,i),this.cstPostNonTerminal(n,void 0!==r&&void 0!==r.LABEL?r.LABEL:e.ruleName),n}catch(t){throw this.subruleInternalError(t,r,e.ruleName)}}subruleInternalError(e,t,r){throw fK(e)&&void 0!==e.partialCstResult&&(this.cstPostNonTerminal(e.partialCstResult,void 0!==t&&void 0!==t.LABEL?t.LABEL:r),delete e.partialCstResult),e}consumeInternal(e,t,r){let n;try{let t=this.LA(1);!0===this.tokenMatcher(t,e)?(this.consumeToken(),n=t):this.consumeInternalError(e,t,r)}catch(r){n=this.consumeInternalRecovery(e,t,r)}return this.cstPostTerminal(void 0!==r&&void 0!==r.LABEL?r.LABEL:e.name,n),n}consumeInternalError(e,t,r){let n,i=this.LA(0);throw n=void 0!==r&&r.ERR_MSG?r.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new fB(n,t,i))}consumeInternalRecovery(e,t,r){if(this.recoveryEnabled&&"MismatchedTokenException"===r.name&&!this.isBackTracking()){let n=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,n)}catch(e){if(e.name===fX)throw r;throw e}}throw r}saveRecogState(){let e=this.errors,t=uA(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,t,r){this.RULE_OCCURRENCE_STACK.push(r),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(t)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),dV)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},hc=class{static{tS(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=cI(e,"errorMessageProvider")?e.errorMessageProvider:hC.errorMessageProvider}SAVE_ERROR(e){if(fK(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:uA(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return uA(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,t,r){let n=this.getCurrRuleFullName(),i=fh(e,this.getGAstProductions()[n],t,this.maxLookahead)[0],a=[];for(let e=1;e<=this.maxLookahead;e++)a.push(this.LA(e));let s=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:i,actual:a,previous:this.LA(0),customUserDescription:r,ruleName:n});throw this.SAVE_ERROR(new fY(s,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){let r=this.getCurrRuleFullName(),n=ff(e,this.getGAstProductions()[r],this.maxLookahead),i=[];for(let e=1;e<=this.maxLookahead;e++)i.push(this.LA(e));let a=this.LA(0),s=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:n,actual:i,previous:a,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new fV(s,this.LA(1),a))}},hp=class{static{tS(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,t){let r=this.gastProductionsCache[e];if(cW(r))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return d6([r],t,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let t=cC(e.ruleStack);return new d2(this.getGAstProductions()[t],e).startWalking()}},hd={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(hd);var hf=dW({name:"RECORDING_PHASE_TOKEN",pattern:dO.NA});d$([hf]);var hh=dH(hf,"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(hh);var hm={name:"This CSTNode indicates the Parser is in Recording Phase\n See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",children:{}},hy=class{static{tS(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let t=e>0?e:"";this[`CONSUME${t}`]=function(t,r){return this.consumeInternalRecord(t,e,r)},this[`SUBRULE${t}`]=function(t,r){return this.subruleInternalRecord(t,e,r)},this[`OPTION${t}`]=function(t){return this.optionInternalRecord(t,e)},this[`OR${t}`]=function(t){return this.orInternalRecord(t,e)},this[`MANY${t}`]=function(t){this.manyInternalRecord(e,t)},this[`MANY_SEP${t}`]=function(t){this.manySepFirstInternalRecord(e,t)},this[`AT_LEAST_ONE${t}`]=function(t){this.atLeastOneInternalRecord(e,t)},this[`AT_LEAST_ONE_SEP${t}`]=function(t){this.atLeastOneSepFirstInternalRecord(e,t)}}this.consume=function(e,t,r){return this.consumeInternalRecord(t,e,r)},this.subrule=function(e,t,r){return this.subruleInternalRecord(t,e,r)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},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 e=0;e<10;e++){let t=e>0?e:"";delete this[`CONSUME${t}`],delete this[`SUBRULE${t}`],delete this[`OPTION${t}`],delete this[`OR${t}`],delete this[`MANY${t}`],delete this[`MANY_SEP${t}`],delete this[`AT_LEAST_ONE${t}`],delete this[`AT_LEAST_ONE_SEP${t}`]}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(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return hE}topLevelRuleRecord(e,t){try{let r=new pr({definition:[],name:e});return r.name=e,this.recordingProdStack.push(r),t.call(this),this.recordingProdStack.pop(),r}catch(e){if(!0!==e.KNOWN_RECORDER_ERROR)try{e.message=e.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(e){}throw e}}optionInternalRecord(e,t){return hg.call(this,pi,e,t)}atLeastOneInternalRecord(e,t){hg.call(this,pa,t,e)}atLeastOneSepFirstInternalRecord(e,t){hg.call(this,ps,t,e,!0)}manyInternalRecord(e,t){hg.call(this,po,t,e)}manySepFirstInternalRecord(e,t){hg.call(this,pl,t,e,!0)}orInternalRecord(e,t){return hv.call(this,e,t)}subruleInternalRecord(e,t,r){if(hR(t),!e||!1===cI(e,"ruleName")){let r=Error(`<SUBRULE${hT(t)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
72
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=cc(this.recordingProdStack),i=new pt({idx:t,nonTerminalName:e.ruleName,label:null==r?void 0:r.LABEL,referencedRule:void 0});return n.definition.push(i),this.outputCst?hm:hd}consumeInternalRecord(e,t,r){if(hR(t),!dk(e)){let r=Error(`<CONSUME${hT(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
73
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=cc(this.recordingProdStack),i=new pc({idx:t,terminalType:e,label:null==r?void 0:r.LABEL});return n.definition.push(i),hh}};function hg(e,t,r,n=!1){hR(r);let i=cc(this.recordingProdStack),a=sS(t)?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),cI(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),hd}function hv(e,t){hR(t);let r=cc(this.recordingProdStack),n=!1===ss(e),i=!1===n?e:e.DEF,a=new pu({definition:[],idx:t,ignoreAmbiguities:n&&!0===e.IGNORE_AMBIGUITIES});return cI(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),a.hasPredicates=c0(i,e=>sS(e.GATE)),r.definition.push(a),ch(i,e=>{let t=new pn({definition:[]});a.definition.push(t),cI(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:cI(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()}),hd}function hT(e){return 0===e?"":`${e}`}function hR(e){if(e<0||e>255){let t=Error(`Invalid DSL Method idx value: <${e}>
74
+ Idx value must be a none negative value smaller than ${256}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}tS(hg,"recordProd"),tS(hv,"recordOrProd"),tS(hT,"getIdxSuffix"),tS(hR,"assertMethodIdxIsValid");var h$=class{static{tS(this,"PerformanceTracer")}initPerformanceTracer(e){if(cI(e,"traceInitPerf")){let t=e.traceInitPerf,r="number"==typeof t;this.traceInitMaxIdent=r?t:1/0,this.traceInitPerf=r?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=hC.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0!==this.traceInitPerf)return t();{this.traceInitIndent++;let r=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:i}=c5(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}}};function hb(e,t){t.forEach(t=>{let r=t.prototype;Object.getOwnPropertyNames(r).forEach(n=>{if("constructor"===n)return;let i=Object.getOwnPropertyDescriptor(r,n);i&&(i.get||i.set)?Object.defineProperty(e.prototype,n,i):e.prototype[n]=t.prototype[n]})})}tS(hb,"applyMixins");var hE=dH(dV,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(hE);var hC=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:dJ,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),hA=Object.freeze({recoveryValueFunc:tS(()=>void 0,"recoveryValueFunc"),resyncEnabled:!0});function hS(e){return function(){return e}}(c=eZ||(eZ={}))[c.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",c[c.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",c[c.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",c[c.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",c[c.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",c[c.LEFT_RECURSION=5]="LEFT_RECURSION",c[c.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",c[c.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",c[c.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",c[c.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",c[c.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",c[c.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",c[c.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",c[c.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",tS(hS,"EMPTY_ALT");var hk=class e{static{tS(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{c8(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),ch(this.definedRulesNames,e=>{let t,r=this[e].originalGrammarAction;this.TRACE_INIT(`${e} Rule`,()=>{t=this.topLevelRuleRecord(e,r)}),this.gastProductionsCache[e]=t})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=fM({rules:cD(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cq(n)&&!1===this.skipValidations){let e=fj({rules:cD(this.gastProductionsCache),tokenTypes:cD(this.tokensMap),errMsgProvider:dZ,grammarName:r}),t=fv({lookaheadStrategy:this.lookaheadStrategy,rules:cD(this.gastProductionsCache),tokenTypes:cD(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(e,t)}}),cq(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let e=pS(cD(this.gastProductionsCache));this.resyncFollows=e}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var e,t;null==(t=(e=this.lookaheadStrategy).initialize)||t.call(e,{rules:cD(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(cD(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!cq(this.definitionErrors))throw t=cS(this.definitionErrors,e=>e.message),Error(`Parser Definition Errors detected:
75
+ ${t.join("\n-------------------------------\n")}`)})}constructor(e,t){if(this.definitionErrors=[],this.selfAnalysisDone=!1,this.initErrorHandler(t),this.initLexerAdapter(),this.initLooksAhead(t),this.initRecognizerEngine(e,t),this.initRecoverable(t),this.initTreeBuilder(t),this.initContentAssist(),this.initGastRecorder(t),this.initPerformanceTracer(t),cI(t,"ignoredIssues"))throw Error("The <ignoredIssues> IParserConfig property has been deprecated.\n Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n For further details.");this.skipValidations=cI(t,"skipValidations")?t.skipValidations:hC.skipValidations}};hk.DEFER_DEFINITION_ERRORS_HANDLING=!1,hb(hk,[fQ,f3,hs,ho,hu,hl,hc,hp,hy,h$]);var hx=class extends hk{static{tS(this,"EmbeddedActionsParser")}constructor(e,t=hC){const r=uA(t);r.outputCst=!1,super(e,r)}};function hN(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function hw(){this.__data__=[],this.size=0}function h_(e,t){return e===t||e!=e&&t!=t}function hI(e,t){for(var r=e.length;r--;)if(h_(e[r][0],t))return r;return -1}tS(hN,"arrayMap"),tS(hw,"listCacheClear"),tS(h_,"eq"),tS(hI,"assocIndexOf");var hP=Array.prototype.splice;function hO(e){var t=this.__data__,r=hI(t,e);return!(r<0)&&(r==t.length-1?t.pop():hP.call(t,r,1),--this.size,!0)}function hD(e){var t=this.__data__,r=hI(t,e);return r<0?void 0:t[r][1]}function hL(e){return hI(this.__data__,e)>-1}function hM(e,t){var r=this.__data__,n=hI(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function hj(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function hF(){this.__data__=new hj,this.size=0}function hz(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function hq(e){return this.__data__.get(e)}function hG(e){return this.__data__.has(e)}tS(hO,"listCacheDelete"),tS(hD,"listCacheGet"),tS(hL,"listCacheHas"),tS(hM,"listCacheSet"),tS(hj,"ListCache"),hj.prototype.clear=hw,hj.prototype.delete=hO,hj.prototype.get=hD,hj.prototype.has=hL,hj.prototype.set=hM,tS(hF,"stackClear"),tS(hz,"stackDelete"),tS(hq,"stackGet"),tS(hG,"stackHas");var hU="object"==typeof global&&global&&global.Object===Object&&global,hK="object"==typeof self&&self&&self.Object===Object&&self,hW=hU||hK||Function("return this")(),hB=hW.Symbol,hV=Object.prototype,hH=hV.hasOwnProperty,hY=hV.toString,hJ=hB?hB.toStringTag:void 0;function hX(e){var t=hH.call(e,hJ),r=e[hJ];try{e[hJ]=void 0;var n=!0}catch(e){}var i=hY.call(e);return n&&(t?e[hJ]=r:delete e[hJ]),i}tS(hX,"getRawTag");var hZ=Object.prototype.toString;function hQ(e){return hZ.call(e)}tS(hQ,"objectToString");var h0=hB?hB.toStringTag:void 0;function h1(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":h0&&h0 in Object(e)?hX(e):hQ(e)}function h2(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function h3(e){if(!h2(e))return!1;var t=h1(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}tS(h1,"baseGetTag"),tS(h2,"isObject"),tS(h3,"isFunction");var h9=hW["__core-js_shared__"],h4=(p=/[^.]+$/.exec(h9&&h9.keys&&h9.keys.IE_PROTO||""))?"Symbol(src)_1."+p:"";function h5(e){return!!h4&&h4 in e}tS(h5,"isMasked");var h8=Function.prototype.toString;function h7(e){if(null!=e){try{return h8.call(e)}catch(e){}try{return e+""}catch(e){}}return""}tS(h7,"toSource");var h6=/^\[object .+?Constructor\]$/,me=Object.prototype,mt=Function.prototype.toString,mr=me.hasOwnProperty,mn=RegExp("^"+mt.call(mr).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function mi(e){return!(!h2(e)||h5(e))&&(h3(e)?mn:h6).test(h7(e))}function ma(e,t){return null==e?void 0:e[t]}function ms(e,t){var r=ma(e,t);return mi(r)?r:void 0}tS(mi,"baseIsNative"),tS(ma,"getValue"),tS(ms,"getNative");var mo=ms(hW,"Map"),ml=ms(Object,"create");function mu(){this.__data__=ml?ml(null):{},this.size=0}function mc(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=!!t,t}tS(mu,"hashClear"),tS(mc,"hashDelete");var mp=Object.prototype.hasOwnProperty;function md(e){var t=this.__data__;if(ml){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return mp.call(t,e)?t[e]:void 0}tS(md,"hashGet");var mf=Object.prototype.hasOwnProperty;function mh(e){var t=this.__data__;return ml?void 0!==t[e]:mf.call(t,e)}function mm(e,t){var r=this.__data__;return this.size+=+!this.has(e),r[e]=ml&&void 0===t?"__lodash_hash_undefined__":t,this}function my(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function mg(){this.size=0,this.__data__={hash:new my,map:new(mo||hj),string:new my}}function mv(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function mT(e,t){var r=e.__data__;return mv(t)?r["string"==typeof t?"string":"hash"]:r.map}function mR(e){var t=mT(this,e).delete(e);return this.size-=!!t,t}function m$(e){return mT(this,e).get(e)}function mb(e){return mT(this,e).has(e)}function mE(e,t){var r=mT(this,e),n=r.size;return r.set(e,t),this.size+=+(r.size!=n),this}function mC(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function mA(e,t){var r=this.__data__;if(r instanceof hj){var n=r.__data__;if(!mo||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new mC(n)}return r.set(e,t),this.size=r.size,this}function mS(e){var t=this.__data__=new hj(e);this.size=t.size}function mk(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}function mx(e){return this.__data__.has(e)}function mN(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new mC;++t<r;)this.add(e[t])}function mw(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function m_(e,t){return e.has(t)}function mI(e,t,r,n,i,a){var s=1&r,o=e.length,l=t.length;if(o!=l&&!(s&&l>o))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var p=-1,d=!0,f=2&r?new mN:void 0;for(a.set(e,t),a.set(t,e);++p<o;){var h=e[p],m=t[p];if(n)var y=s?n(m,h,p,t,e,a):n(h,m,p,e,t,a);if(void 0!==y){if(y)continue;d=!1;break}if(f){if(!mw(t,function(e,t){if(!m_(f,t)&&(h===e||i(h,e,r,n,a)))return f.push(t)})){d=!1;break}}else if(!(h===m||i(h,m,r,n,a))){d=!1;break}}return a.delete(e),a.delete(t),d}tS(mh,"hashHas"),tS(mm,"hashSet"),tS(my,"Hash"),my.prototype.clear=mu,my.prototype.delete=mc,my.prototype.get=md,my.prototype.has=mh,my.prototype.set=mm,tS(mg,"mapCacheClear"),tS(mv,"isKeyable"),tS(mT,"getMapData"),tS(mR,"mapCacheDelete"),tS(m$,"mapCacheGet"),tS(mb,"mapCacheHas"),tS(mE,"mapCacheSet"),tS(mC,"MapCache"),mC.prototype.clear=mg,mC.prototype.delete=mR,mC.prototype.get=m$,mC.prototype.has=mb,mC.prototype.set=mE,tS(mA,"stackSet"),tS(mS,"Stack"),mS.prototype.clear=hF,mS.prototype.delete=hz,mS.prototype.get=hq,mS.prototype.has=hG,mS.prototype.set=mA,tS(mk,"setCacheAdd"),tS(mx,"setCacheHas"),tS(mN,"SetCache"),mN.prototype.add=mN.prototype.push=mk,mN.prototype.has=mx,tS(mw,"arraySome"),tS(m_,"cacheHas"),tS(mI,"equalArrays");var mP=hW.Uint8Array;function mO(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r}function mD(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}tS(mO,"mapToArray"),tS(mD,"setToArray");var mL=hB?hB.prototype:void 0,mM=mL?mL.valueOf:void 0;function mj(e,t,r,n,i,a,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":if(e.byteLength!=t.byteLength||!a(new mP(e),new mP(t)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return h_(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var o=mO;case"[object Set]":var l=1&n;if(o||(o=mD),e.size!=t.size&&!l)break;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=mI(o(e),o(t),n,i,a,s);return s.delete(e),c;case"[object Symbol]":if(mM)return mM.call(e)==mM.call(t)}return!1}function mF(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}tS(mj,"equalByTag"),tS(mF,"arrayPush");var mz=Array.isArray;function mq(e,t,r){var n=t(e);return mz(e)?n:mF(n,r(e))}function mG(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[i++]=s)}return a}function mU(){return[]}tS(mq,"baseGetAllKeys"),tS(mG,"arrayFilter"),tS(mU,"stubArray");var mK=Object.prototype.propertyIsEnumerable,mW=Object.getOwnPropertySymbols,mB=mW?function(e){return null==e?[]:mG(mW(e=Object(e)),function(t){return mK.call(e,t)})}:mU;function mV(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function mH(e){return null!=e&&"object"==typeof e}function mY(e){return mH(e)&&"[object Arguments]"==h1(e)}tS(mV,"baseTimes"),tS(mH,"isObjectLike"),tS(mY,"baseIsArguments");var mJ=Object.prototype,mX=mJ.hasOwnProperty,mZ=mJ.propertyIsEnumerable,mQ=mY(function(){return arguments}())?mY:function(e){return mH(e)&&mX.call(e,"callee")&&!mZ.call(e,"callee")};function m0(){return!1}tS(m0,"stubFalse");var m1="object"==typeof exports&&exports&&!exports.nodeType&&exports,m2=m1&&"object"==typeof module&&module&&!module.nodeType&&module,m3=m2&&m2.exports===m1?hW.Buffer:void 0,m9=(m3?m3.isBuffer:void 0)||m0,m4=/^(?:0|[1-9]\d*)$/;function m5(e,t){var r=typeof e;return!!(t=null==t?0x1fffffffffffff:t)&&("number"==r||"symbol"!=r&&m4.test(e))&&e>-1&&e%1==0&&e<t}function m8(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}tS(m5,"isIndex"),tS(m8,"isLength");var m7={};function m6(e){return mH(e)&&m8(e.length)&&!!m7[h1(e)]}function ye(e){return function(t){return e(t)}}m7["[object Float32Array]"]=m7["[object Float64Array]"]=m7["[object Int8Array]"]=m7["[object Int16Array]"]=m7["[object Int32Array]"]=m7["[object Uint8Array]"]=m7["[object Uint8ClampedArray]"]=m7["[object Uint16Array]"]=m7["[object Uint32Array]"]=!0,m7["[object Arguments]"]=m7["[object Array]"]=m7["[object ArrayBuffer]"]=m7["[object Boolean]"]=m7["[object DataView]"]=m7["[object Date]"]=m7["[object Error]"]=m7["[object Function]"]=m7["[object Map]"]=m7["[object Number]"]=m7["[object Object]"]=m7["[object RegExp]"]=m7["[object Set]"]=m7["[object String]"]=m7["[object WeakMap]"]=!1,tS(m6,"baseIsTypedArray"),tS(ye,"baseUnary");var yt="object"==typeof exports&&exports&&!exports.nodeType&&exports,yr=yt&&"object"==typeof module&&module&&!module.nodeType&&module,yn=yr&&yr.exports===yt&&hU.process,yi=function(){try{var e=yr&&yr.require&&yr.require("util").types;if(e)return e;return yn&&yn.binding&&yn.binding("util")}catch(e){}}(),ya=yi&&yi.isTypedArray,ys=ya?ye(ya):m6,yo=Object.prototype.hasOwnProperty;function yl(e,t){var r=mz(e),n=!r&&mQ(e),i=!r&&!n&&m9(e),a=!r&&!n&&!i&&ys(e),s=r||n||i||a,o=s?mV(e.length,String):[],l=o.length;for(var u in e)(t||yo.call(e,u))&&!(s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||m5(u,l)))&&o.push(u);return o}tS(yl,"arrayLikeKeys");var yu=Object.prototype;function yc(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||yu)}function yp(e,t){return function(r){return e(t(r))}}tS(yc,"isPrototype"),tS(yp,"overArg");var yd=yp(Object.keys,Object),yf=Object.prototype.hasOwnProperty;function yh(e){if(!yc(e))return yd(e);var t=[];for(var r in Object(e))yf.call(e,r)&&"constructor"!=r&&t.push(r);return t}function ym(e){return null!=e&&m8(e.length)&&!h3(e)}function yy(e){return ym(e)?yl(e):yh(e)}function yg(e){return mq(e,yy,mB)}tS(yh,"baseKeys"),tS(ym,"isArrayLike"),tS(yy,"keys"),tS(yg,"getAllKeys");var yv=Object.prototype.hasOwnProperty;function yT(e,t,r,n,i,a){var s=1&r,o=yg(e),l=o.length;if(l!=yg(t).length&&!s)return!1;for(var u=l;u--;){var c=o[u];if(!(s?c in t:yv.call(t,c)))return!1}var p=a.get(e),d=a.get(t);if(p&&d)return p==t&&d==e;var f=!0;a.set(e,t),a.set(t,e);for(var h=s;++u<l;){var m=e[c=o[u]],y=t[c];if(n)var g=s?n(y,m,c,t,e,a):n(m,y,c,e,t,a);if(!(void 0===g?m===y||i(m,y,r,n,a):g)){f=!1;break}h||(h="constructor"==c)}if(f&&!h){var v=e.constructor,T=t.constructor;v!=T&&"constructor"in e&&"constructor"in t&&!("function"==typeof v&&v instanceof v&&"function"==typeof T&&T instanceof T)&&(f=!1)}return a.delete(e),a.delete(t),f}tS(yT,"equalObjects");var yR=ms(hW,"DataView"),y$=ms(hW,"Promise"),yb=ms(hW,"Set"),yE=ms(hW,"WeakMap"),yC="[object Map]",yA="[object Promise]",yS="[object Set]",yk="[object WeakMap]",yx="[object DataView]",yN=h7(yR),yw=h7(mo),y_=h7(y$),yI=h7(yb),yP=h7(yE),yO=h1;(yR&&yO(new yR(new ArrayBuffer(1)))!=yx||mo&&yO(new mo)!=yC||y$&&yO(y$.resolve())!=yA||yb&&yO(new yb)!=yS||yE&&yO(new yE)!=yk)&&(yO=tS(function(e){var t=h1(e),r="[object Object]"==t?e.constructor:void 0,n=r?h7(r):"";if(n)switch(n){case yN:return yx;case yw:return yC;case y_:return yA;case yI:return yS;case yP:return yk}return t},"getTag"));var yD=yO,yL="[object Arguments]",yM="[object Array]",yj="[object Object]",yF=Object.prototype.hasOwnProperty;function yz(e,t,r,n,i,a){var s=mz(e),o=mz(t),l=s?yM:yD(e),u=o?yM:yD(t);l=l==yL?yj:l,u=u==yL?yj:u;var c=l==yj,p=u==yj,d=l==u;if(d&&m9(e)){if(!m9(t))return!1;s=!0,c=!1}if(d&&!c)return a||(a=new mS),s||ys(e)?mI(e,t,r,n,i,a):mj(e,t,l,r,n,i,a);if(!(1&r)){var f=c&&yF.call(e,"__wrapped__"),h=p&&yF.call(t,"__wrapped__");if(f||h){var m=f?e.value():e,y=h?t.value():t;return a||(a=new mS),i(m,y,r,n,a)}}return!!d&&(a||(a=new mS),yT(e,t,r,n,i,a))}function yq(e,t,r,n,i){return e===t||(null!=e&&null!=t&&(mH(e)||mH(t))?yz(e,t,r,n,yq,i):e!=e&&t!=t)}function yG(e,t,r,n){var i=r.length,a=i,s=!n;if(null==e)return!a;for(e=Object(e);i--;){var o=r[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var l=(o=r[i])[0],u=e[l],c=o[1];if(s&&o[2]){if(void 0===u&&!(l in e))return!1}else{var p=new mS;if(n)var d=n(u,c,l,e,t,p);if(!(void 0===d?yq(c,u,3,n,p):d))return!1}}return!0}function yU(e){return e==e&&!h2(e)}function yK(e){for(var t=yy(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,yU(i)]}return t}function yW(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}}function yB(e){var t=yK(e);return 1==t.length&&t[0][2]?yW(t[0][0],t[0][1]):function(r){return r===e||yG(r,e,t)}}function yV(e){return"symbol"==typeof e||mH(e)&&"[object Symbol]"==h1(e)}tS(yz,"baseIsEqualDeep"),tS(yq,"baseIsEqual"),tS(yG,"baseIsMatch"),tS(yU,"isStrictComparable"),tS(yK,"getMatchData"),tS(yW,"matchesStrictComparable"),tS(yB,"baseMatches"),tS(yV,"isSymbol");var yH=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,yY=/^\w*$/;function yJ(e,t){if(mz(e))return!1;var r=typeof e;return!!("number"==r||"symbol"==r||"boolean"==r||null==e||yV(e))||yY.test(e)||!yH.test(e)||null!=t&&e in Object(t)}function yX(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var r=tS(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(yX.Cache||mC),r}function yZ(e){var t=yX(e,function(e){return 500===r.size&&r.clear(),e}),r=t.cache;return t}tS(yJ,"isKey"),tS(yX,"memoize"),yX.Cache=mC,tS(yZ,"memoizeCapped");var yQ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,y0=/\\(\\)?/g,y1=yZ(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(yQ,function(e,r,n,i){t.push(n?i.replace(y0,"$1"):r||e)}),t}),y2=1/0,y3=hB?hB.prototype:void 0,y9=y3?y3.toString:void 0;function y4(e){if("string"==typeof e)return e;if(mz(e))return hN(e,y4)+"";if(yV(e))return y9?y9.call(e):"";var t=e+"";return"0"==t&&1/e==-y2?"-0":t}function y5(e){return null==e?"":y4(e)}function y8(e,t){return mz(e)?e:yJ(e,t)?[e]:y1(y5(e))}tS(y4,"baseToString"),tS(y5,"toString"),tS(y8,"castPath");var y7=1/0;function y6(e){if("string"==typeof e||yV(e))return e;var t=e+"";return"0"==t&&1/e==-y7?"-0":t}function ge(e,t){t=y8(t,e);for(var r=0,n=t.length;null!=e&&r<n;)e=e[y6(t[r++])];return r&&r==n?e:void 0}function gt(e,t,r){var n=null==e?void 0:ge(e,t);return void 0===n?r:n}function gr(e,t){return null!=e&&t in Object(e)}function gn(e,t,r){t=y8(t,e);for(var n=-1,i=t.length,a=!1;++n<i;){var s=y6(t[n]);if(!(a=null!=e&&r(e,s)))break;e=e[s]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&m8(i)&&m5(s,i)&&(mz(e)||mQ(e))}function gi(e,t){return null!=e&&gn(e,t,gr)}function ga(e,t){return yJ(e)&&yU(t)?yW(y6(e),t):function(r){var n=gt(r,e);return void 0===n&&n===t?gi(r,e):yq(t,n,3)}}function gs(e){return e}function go(e){return function(t){return null==t?void 0:t[e]}}function gl(e){return function(t){return ge(t,e)}}function gu(e){return yJ(e)?go(y6(e)):gl(e)}function gc(e){return"function"==typeof e?e:null==e?gs:"object"==typeof e?mz(e)?ga(e[0],e[1]):yB(e):gu(e)}function gp(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===r(a[l],l,a))break}return t}}tS(y6,"toKey"),tS(ge,"baseGet"),tS(gt,"get"),tS(gr,"baseHasIn"),tS(gn,"hasPath"),tS(gi,"hasIn"),tS(ga,"baseMatchesProperty"),tS(gs,"identity"),tS(go,"baseProperty"),tS(gl,"basePropertyDeep"),tS(gu,"property"),tS(gc,"baseIteratee"),tS(gp,"createBaseFor");var gd=gp();function gf(e,t){return e&&gd(e,t,yy)}function gh(e,t){return function(r,n){if(null==r)return r;if(!ym(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a<i)&&!1!==n(s[a],a,s););return r}}tS(gf,"baseForOwn"),tS(gh,"createBaseEach");var gm=gh(gf);function gy(e,t){var r=-1,n=ym(e)?Array(e.length):[];return gm(e,function(e,i,a){n[++r]=t(e,i,a)}),n}function gg(e,t){return(mz(e)?hN:gy)(e,gc(t,3))}function gv(e,t){var r=[];return gm(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}function gT(e,t){return(mz(e)?mG:gv)(e,gc(t,3))}function gR(e,t,r){return`${e.name}_${t}_${r}`}tS(gy,"baseMap"),tS(gg,"map"),tS(gv,"baseFilter"),tS(gT,"filter"),tS(gR,"buildATNKey");var g$=class{static{tS(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},gb=class extends g${static{tS(this,"AtomTransition")}constructor(e,t){super(e),this.tokenType=t}},gE=class extends g${static{tS(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},gC=class extends g${static{tS(this,"RuleTransition")}constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}};function gA(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};gS(t,e);let r=e.length;for(let n=0;n<r;n++){let r=e[n],i=gO(t,r,r);void 0!==i&&gK(t,r,i)}return t}function gS(e,t){let r=t.length;for(let n=0;n<r;n++){let r=t[n],i=gB(e,r,void 0,{type:2}),a=gB(e,r,void 0,{type:7});i.stop=a,e.ruleToStartState.set(r,i),e.ruleToStopState.set(r,a)}}function gk(e,t,r){if(r instanceof pc)return gG(e,t,r.terminalType,r);if(r instanceof pt)return gU(e,t,r);if(r instanceof pu)return gI(e,t,r);if(r instanceof pi)return gP(e,t,r);if(r instanceof po)return gx(e,t,r);else if(r instanceof pl)return gN(e,t,r);else if(r instanceof pa)return gw(e,t,r);else if(r instanceof ps)return g_(e,t,r);else return gO(e,t,r)}function gx(e,t,r){let n=gB(e,t,r,{type:5});gj(e,n);let i=gF(e,t,n,r,gO(e,t,r));return gL(e,t,r,i)}function gN(e,t,r){let n=gB(e,t,r,{type:5});gj(e,n);let i=gF(e,t,n,r,gO(e,t,r)),a=gG(e,t,r.separator,r);return gL(e,t,r,i,a)}function gw(e,t,r){let n=gB(e,t,r,{type:4});gj(e,n);let i=gF(e,t,n,r,gO(e,t,r));return gD(e,t,r,i)}function g_(e,t,r){let n=gB(e,t,r,{type:4});gj(e,n);let i=gF(e,t,n,r,gO(e,t,r)),a=gG(e,t,r.separator,r);return gD(e,t,r,i,a)}function gI(e,t,r){let n=gB(e,t,r,{type:1});gj(e,n);let i=gg(r.definition,r=>gk(e,t,r));return gF(e,t,n,r,...i)}function gP(e,t,r){let n=gB(e,t,r,{type:1});gj(e,n);let i=gF(e,t,n,r,gO(e,t,r));return gM(e,t,r,i)}function gO(e,t,r){let n=gT(gg(r.definition,r=>gk(e,t,r)),e=>void 0!==e);return 1===n.length?n[0]:0===n.length?void 0:gq(e,n)}function gD(e,t,r,n,i){let a=n.left,s=n.right,o=gB(e,t,r,{type:11});gj(e,o);let l=gB(e,t,r,{type:12});return a.loopback=o,l.loopback=o,e.decisionMap[gR(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,gW(s,o),void 0===i?(gW(o,a),gW(o,l)):(gW(o,l),gW(o,i.left),gW(i.right,a)),{left:a,right:l}}function gL(e,t,r,n,i){let a=n.left,s=n.right,o=gB(e,t,r,{type:10});gj(e,o);let l=gB(e,t,r,{type:12}),u=gB(e,t,r,{type:9});return o.loopback=u,l.loopback=u,gW(o,a),gW(o,l),gW(s,u),void 0!==i?(gW(u,l),gW(u,i.left),gW(i.right,a)):gW(u,o),e.decisionMap[gR(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function gM(e,t,r,n){let i=n.left;return gW(i,n.right),e.decisionMap[gR(t,"Option",r.idx)]=i,n}function gj(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function gF(e,t,r,n,...i){let a=gB(e,t,n,{type:8,start:r});for(let e of(r.end=a,i))void 0!==e?(gW(r,e.left),gW(e.right,a)):gW(r,a);return e.decisionMap[gR(t,gz(n),n.idx)]=r,{left:r,right:a}}function gz(e){if(e instanceof pu)return"Alternation";if(e instanceof pi)return"Option";if(e instanceof po)return"Repetition";if(e instanceof pl)return"RepetitionWithSeparator";if(e instanceof pa)return"RepetitionMandatory";else if(e instanceof ps)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function gq(e,t){let r=t.length;for(let n=0;n<r-1;n++){let r,i=t[n];1===i.left.transitions.length&&(r=i.left.transitions[0]);let a=r instanceof gC,s=r,o=t[n+1].left;1===i.left.type&&1===i.right.type&&void 0!==r&&(a&&s.followState===i.right||r.target===i.right)?(a?s.followState=o:r.target=o,gH(e,i.right)):gW(i.right,o)}let n=t[0],i=t[r-1];return{left:n.left,right:i.right}}function gG(e,t,r,n){let i=gB(e,t,n,{type:1}),a=gB(e,t,n,{type:1});return gV(i,new gb(a,r)),{left:i,right:a}}function gU(e,t,r){let n=r.referencedRule,i=e.ruleToStartState.get(n),a=gB(e,t,r,{type:1}),s=gB(e,t,r,{type:1});return gV(a,new gC(i,n,s)),{left:a,right:s}}function gK(e,t,r){let n=e.ruleToStartState.get(t);gW(n,r.left);let i=e.ruleToStopState.get(t);return gW(r.right,i),{left:n,right:i}}function gW(e,t){gV(e,new gE(t))}function gB(e,t,r,n){let i=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(i),i}function gV(e,t){0===e.transitions.length&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}function gH(e,t){e.states.splice(e.states.indexOf(t),1)}tS(gA,"createATN"),tS(gS,"createRuleStartAndStopATNStates"),tS(gk,"atom"),tS(gx,"repetition"),tS(gN,"repetitionSep"),tS(gw,"repetitionMandatory"),tS(g_,"repetitionMandatorySep"),tS(gI,"alternation"),tS(gP,"option"),tS(gO,"block"),tS(gD,"plus"),tS(gL,"star"),tS(gM,"optional"),tS(gj,"defineDecisionState"),tS(gF,"makeAlts"),tS(gz,"getProdType"),tS(gq,"makeBlock"),tS(gG,"tokenRef"),tS(gU,"ruleRef"),tS(gK,"buildRuleHandle"),tS(gW,"epsilon"),tS(gB,"newState"),tS(gV,"addTransition"),tS(gH,"removeState");var gY={},gJ=class{static{tS(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=gX(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return gg(this.configs,e=>e.alt)}get key(){let e="";for(let t in this.map)e+=t+":";return e}};function gX(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join("_")}`}function gZ(e,t,r){for(var n=-1,i=e.length;++n<i;){var a=e[n],s=t(a);if(null!=s&&(void 0===o?s==s&&!yV(s):r(s,o)))var o=s,l=a}return l}function gQ(e,t){return e<t}function g0(e){return e&&e.length?gZ(e,gs,gQ):void 0}tS(gX,"getATNConfigKey"),tS(gZ,"baseExtremum"),tS(gQ,"baseLt"),tS(g0,"min");var g1=hB?hB.isConcatSpreadable:void 0;function g2(e){return mz(e)||mQ(e)||!!(g1&&e&&e[g1])}function g3(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=g2),i||(i=[]);++a<s;){var o=e[a];t>0&&r(o)?t>1?g3(o,t-1,r,n,i):mF(i,o):n||(i[i.length]=o)}return i}function g9(e,t){return g3(gg(e,t),1)}function g4(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return -1}function g5(e){return e!=e}function g8(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return -1}function g7(e,t,r){return t==t?g8(e,t,r):g4(e,g5,r)}function g6(e,t){return!!(null==e?0:e.length)&&g7(e,t,0)>-1}function ve(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function vt(){}tS(g2,"isFlattenable"),tS(g3,"baseFlatten"),tS(g9,"flatMap"),tS(g4,"baseFindIndex"),tS(g5,"baseIsNaN"),tS(g8,"strictIndexOf"),tS(g7,"baseIndexOf"),tS(g6,"arrayIncludes"),tS(ve,"arrayIncludesWith"),tS(vt,"noop");var vr=yb&&1/mD(new yb([,-0]))[1]==1/0?function(e){return new yb(e)}:vt;function vn(e,t,r){var n=-1,i=g6,a=e.length,s=!0,o=[],l=o;if(r)s=!1,i=ve;else if(a>=200){var u=t?null:vr(e);if(u)return mD(u);s=!1,i=m_,l=new mN}else l=t?[]:o;t:for(;++n<a;){var c=e[n],p=t?t(c):c;if(c=r||0!==c?c:0,s&&p==p){for(var d=l.length;d--;)if(l[d]===p)continue t;t&&l.push(p),o.push(c)}else i(l,p,r)||(l!==o&&l.push(p),o.push(c))}return o}function vi(e,t){return e&&e.length?vn(e,gc(t,2)):[]}function va(e){return(null==e?0:e.length)?g3(e,1):[]}function vs(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function vo(e){return"function"==typeof e?e:gs}function vl(e,t){return(mz(e)?vs:gm)(e,vo(t))}tS(vn,"baseUniq"),tS(vi,"uniqBy"),tS(va,"flatten"),tS(vs,"arrayEach"),tS(vo,"castFunction"),tS(vl,"forEach");var vu=Object.prototype.hasOwnProperty;function vc(e){if(null==e)return!0;if(ym(e)&&(mz(e)||"string"==typeof e||"function"==typeof e.splice||m9(e)||ys(e)||mQ(e)))return!e.length;var t=yD(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(yc(e))return!yh(e).length;for(var r in e)if(vu.call(e,r))return!1;return!0}function vp(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function vd(e,t,r,n,i){return i(e,function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)}),r}function vf(e,t,r){var n=mz(e)?vp:vd,i=arguments.length<3;return n(e,gc(t,4),r,i,gm)}function vh(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return void 0!==a||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}tS(vc,"isEmpty"),tS(vp,"arrayReduce"),tS(vd,"baseReduce"),tS(vf,"reduce"),tS(vh,"createDFACache");var vm=class{static{tS(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="",t=this.predicates.length;for(let r=0;r<t;r++)e+=!0===this.predicates[r]?"1":"0";return e}},vy=new vm,vg=class extends f2{static{tS(this,"LLStarLookaheadStrategy")}constructor(e){var t;super(),this.logging=null!=(t=null==e?void 0:e.logging)?t:e=>console.log(e)}initialize(e){this.atn=gA(e.rules),this.dfas=vT(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=gR(r,"Alternation",t),l=this.atn.decisionMap[o].decision,u=gg(fr({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),e=>gg(e,e=>e[0]));if(vv(u,!1)&&!i){let e=vf(u,(e,t,r)=>(vl(t,t=>{t&&(e[t.tokenTypeIdx]=r,vl(t.categoryMatches,t=>{e[t]=r}))}),e),{});return n?function(t){var r;let n=e[this.LA(1).tokenTypeIdx];if(void 0!==t&&void 0!==n){let e=null==(r=t[n])?void 0:r.GATE;if(void 0!==e&&!1===e.call(this))return}return n}:function(){return e[this.LA(1).tokenTypeIdx]}}return n?function(e){let t=new vm,r=void 0===e?0:e.length;for(let n=0;n<r;n++){let r=null==e?void 0:e[n].GATE;t.set(n,void 0===r||r.call(this))}let n=vR.call(this,a,l,t,s);return"number"==typeof n?n:void 0}:function(){let e=vR.call(this,a,l,vy,s);return"number"==typeof e?e:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=gR(r,n,t),l=this.atn.decisionMap[o].decision,u=gg(fr({maxLookahead:1,occurrence:t,prodType:n,rule:r}),e=>gg(e,e=>e[0]));if(vv(u)&&u[0][0]&&!i){let e=va(u[0]);if(1===e.length&&vc(e[0].categoryMatches)){let t=e[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===t}}{let t=vf(e,(e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,vl(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){return!0===t[this.LA(1).tokenTypeIdx]}}}return function(){let e=vR.call(this,a,l,vy,s);return"object"!=typeof e&&0===e}}};function vv(e,t=!0){let r=new Set;for(let n of e){let e=new Set;for(let i of n){if(void 0===i)if(!t)return!1;else break;for(let t of[i.tokenTypeIdx].concat(i.categoryMatches))if(r.has(t)){if(!e.has(t))return!1}else r.add(t),e.add(t)}}return!0}function vT(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=vh(e.decisionStates[n],n);return r}function vR(e,t,r,n){let i=e[t](r),a=i.start;if(void 0===a){let e=vO(i.atnStartState);a=vP(i,v_(e)),i.start=a}return v$.apply(this,[i,a,r,n])}function v$(e,t,r,n){let i=t,a=1,s=[],o=this.LA(a++);for(;;){let t=vk(i,o);if(void 0===t&&(t=vb.apply(this,[e,i,o,a,r,n])),t===gY)return vS(s,i,o);if(!0===t.isAcceptState)return t.prediction;i=t,s.push(o),o=this.LA(a++)}}function vb(e,t,r,n,i,a){let s=vx(t.configs,r,i);if(0===s.size)return vI(e,t,r,gY),gY;let o=v_(s),l=vw(s,i);if(void 0!==l)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(vF(s)){let t=g0(s.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,vE.apply(this,[e,n,s.alts,a])}return vI(e,t,r,o)}function vE(e,t,r,n){let i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);let a=e.atnStartState;n(vC({topLevelRule:a.rule,ambiguityIndices:r,production:a.production,prefixPath:i}))}function vC(e){let t=gg(e.prefixPath,e=>dD(e)).join(", "),r=0===e.production.idx?"":e.production.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${vA(e.production)}${r}> inside <${e.topLevelRule.name}> Rule,
76
+ <${t}> may appears as a prefix path in all these alternatives.
77
+ `;return n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
78
+ For Further details.`}function vA(e){if(e instanceof pt)return"SUBRULE";if(e instanceof pi)return"OPTION";if(e instanceof pu)return"OR";if(e instanceof pa)return"AT_LEAST_ONE";if(e instanceof ps)return"AT_LEAST_ONE_SEP";else if(e instanceof pl)return"MANY_SEP";else if(e instanceof po)return"MANY";else if(e instanceof pc)return"CONSUME";else throw Error("non exhaustive match")}function vS(e,t,r){return{actualToken:r,possibleTokenTypes:vi(g9(t.configs.elements,e=>e.state.transitions).filter(e=>e instanceof gb).map(e=>e.tokenType),e=>e.tokenTypeIdx),tokenPath:e}}function vk(e,t){return e.edges[t.tokenTypeIdx]}function vx(e,t,r){let n,i=new gJ,a=[];for(let n of e.elements){if(!1===r.is(n.alt))continue;if(7===n.state.type){a.push(n);continue}let e=n.state.transitions.length;for(let r=0;r<e;r++){let e=vN(n.state.transitions[r],t);void 0!==e&&i.add({state:e,alt:n.alt,stack:n.stack})}}if(0===a.length&&1===i.size&&(n=i),void 0===n)for(let e of(n=new gJ,i.elements))vD(e,n);if(a.length>0&&!vM(n))for(let e of a)n.add(e);return n}function vN(e,t){if(e instanceof gb&&dY(t,e.tokenType))return e.target}function vw(e,t){let r;for(let n of e.elements)if(!0===t.is(n.alt)){if(void 0===r)r=n.alt;else if(r!==n.alt)return}return r}function v_(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function vI(e,t,r,n){return n=vP(e,n),t.edges[r.tokenTypeIdx]=n,n}function vP(e,t){if(t===gY)return t;let r=t.configs.key,n=e.states[r];return void 0!==n?n:(t.configs.finalize(),e.states[r]=t,t)}function vO(e){let t=new gJ,r=e.transitions.length;for(let n=0;n<r;n++)vD({state:e.transitions[n].target,alt:n,stack:[]},t);return t}function vD(e,t){let r=e.state;if(7===r.type){if(e.stack.length>0){let r=[...e.stack];vD({state:r.pop(),alt:e.alt,stack:r},t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i<n;i++){let n=vL(e,r.transitions[i]);void 0!==n&&vD(n,t)}}function vL(e,t){if(t instanceof gE)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof gC){let r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}function vM(e){for(let t of e.elements)if(7===t.state.type)return!0;return!1}function vj(e){for(let t of e.elements)if(7!==t.state.type)return!1;return!0}function vF(e){if(vj(e))return!0;let t=vz(e.elements);return vq(t)&&!vG(t)}function vz(e){let t=new Map;for(let r of e){let e=gX(r,!1),n=t.get(e);void 0===n&&(n={},t.set(e,n)),n[r.alt]=!0}return t}function vq(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}function vG(e){for(let t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}tS(vv,"isLL1Sequence"),tS(vT,"initATNSimulator"),tS(vR,"adaptivePredict"),tS(v$,"performLookahead"),tS(vb,"computeLookaheadTarget"),tS(vE,"reportLookaheadAmbiguity"),tS(vC,"buildAmbiguityError"),tS(vA,"getProductionDslName"),tS(vS,"buildAdaptivePredictError"),tS(vk,"getExistingTargetState"),tS(vx,"computeReachSet"),tS(vN,"getReachableTarget"),tS(vw,"getUniqueAlt"),tS(v_,"newDFAState"),tS(vI,"addDFAEdge"),tS(vP,"addDFAState"),tS(vO,"computeStartState"),tS(vD,"closure"),tS(vL,"getEpsilonTarget"),tS(vM,"hasConfigInRuleStopState"),tS(vj,"allConfigsInRuleStopStates"),tS(vF,"hasConflictTerminatingPrediction"),tS(vz,"getConflictingAltSets"),tS(vq,"hasConflictingAltSet"),tS(vG,"hasStateAssociatedWithOneAlt"),tO();var vU=class{static{tS(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new vH(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new vB;return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),this.nodeStack.push(t),t}buildLeafNode(e,t){let r=new vW(e.startOffset,e.image.length,iI(e),e.tokenType,!t);return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),r}removeNode(e){let t=e.container;if(t){let r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){let t=[];for(let r of e){let e=new vW(r.startOffset,r.image.length,iI(r),r.tokenType,!0);e.root=this.rootNode,t.push(e)}let r=this.current,n=!1;if(r.content.length>0)return void r.content.push(...t);for(;r.container;){let e=r.container.content.indexOf(r);if(e>0){r.container.content.splice(e,0,...t),n=!0;break}r=r.container}n||this.rootNode.content.unshift(...t)}construct(e){let t=this.current;"string"!=typeof e.$type||e.$infix||(this.current.astNode=e),e.$cstNode=t;let r=this.nodeStack.pop();r?.content.length===0&&this.removeNode(r)}},vK=class{static{tS(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let e="string"==typeof this._astNode?.$type?this._astNode:this.container?.astNode;if(!e)throw Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},vW=class extends vK{static{tS(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(e,t,r,n,i=!1){super(),this._hidden=i,this._offset=e,this._tokenType=n,this._length=t,this._range=r}},vB=class extends vK{static{tS(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new vV(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 e=this.firstNonHiddenNode,t=this.lastNonHiddenNode;if(!e||!t)return{start:R.create(0,0),end:R.create(0,0)};if(void 0===this._rangeCache){let{range:r}=e,{range:n}=t;this._rangeCache={start:r.start,end:n.end.line<r.start.line?r.start:n.end}}return this._rangeCache}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}},vV=class e extends Array{static{tS(this,"CstNodeContainer")}constructor(t){super(),this.parent=t,Object.setPrototypeOf(this,e.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}},vH=class extends vB{static{tS(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},vY=Symbol("Datatype");function vJ(e){return e.$type===vY}tS(vJ,"isDataTypeNode");var vX=tS(e=>e.endsWith("​")?e:e+"​","withRuleSuffix"),vZ=class{static{tS(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition,r="production"===e.LanguageMetaData.mode;e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new v4(t,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new v9(t,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider})}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},vQ=class extends vZ{static{tS(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new vU,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){let r,n=this.computeRuleType(e);nk(e)&&(r=e.name,this.registerPrecedenceMap(e));let i=this.wrapper.DEFINE_RULE(vX(e.name),this.startImplementation(n,r,t).bind(this));return this.allRules.set(e.name,i),nY(e)&&e.entry&&(this.mainRule=i),i}registerPrecedenceMap(e){let t=e.name,r=new Map;for(let t=0;t<e.operators.precedences.length;t++){let n=e.operators.precedences[t];for(let e of n.operators)r.set(e.value,{precedence:t,rightAssoc:"right"===n.associativity})}this.operatorPrecedence.set(t,r)}computeRuleType(e){if(nk(e))return aF(e);if(!e.fragment)if(aO(e))return vY;else return aF(e)}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");let i=this.doParse(n);return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,rO(i,{deep:!0}),{value:i,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}doParse(e){let t=this.wrapper.rule(e);if(this.stack.length>0&&(t=this.construct()),void 0===t)throw Error("No result from parser");if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return t}startImplementation(e,t,r){return n=>{let i=!this.isRecording()&&void 0!==e;if(i){let r={$type:e};this.stack.push(r),e===vY?r.value="":void 0!==t&&(r.$infixName=t)}return r(n),i?this.construct():void 0}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let r=e.startOffset;for(let e=0;e<t.length;e++)if(t[e].startOffset>r)return t.splice(0,e);return t.splice(0,t.length)}consume(e,t,r){let n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){let e=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(e);let t=this.nodeBuilder.buildLeafNode(n,r),{assignment:i,crossRef:a}=this.getAssignment(r),s=this.current;if(i){let e=nD(r)?n.image:this.converter.convert(n.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(vJ(s)){let e=n.image;nD(r)||(e=this.converter.convert(e,t).toString()),s.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,r,n,i){let a,s;this.isRecording()||r||(a=this.nodeBuilder.buildCompositeNode(n));try{s=this.wrapper.wrapSubrule(e,t,i)}finally{!this.isRecording()&&(void 0!==s||r||(s=this.construct()),void 0!==s&&a&&a.length>0&&this.performSubruleAssignment(s,n,a))}}performSubruleAssignment(e,t,r){let{assignment:n,crossRef:i}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,i);else if(!n){let t=this.current;if(vJ(t))t.value+=e.toString();else if("object"==typeof e&&e){let r=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(r)}}}action(e,t){if(!this.isRecording()){let r=this.current;t.feature&&t.operator?(r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode),this.nodeBuilder.buildCompositeNode(t).content.push(r.$cstNode),this.stack.push({$type:e}),this.assign(t.operator,t.feature,r,r.$cstNode)):r.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return(this.nodeBuilder.construct(e),"$infixName"in e)?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):vJ(e)?this.converter.convert(e.value,e.$cstNode):(rW(this.astReflection,e),e)}constructInfix(e,t){let r=e.parts;if(!Array.isArray(r)||0===r.length)return;let n=e.operators;if(!Array.isArray(n)||r.length<2)return r[0];let i=0,a=-1;for(let e=0;e<n.length;e++){let r=n[e],s=t.get(r)??{precedence:1/0,rightAssoc:!1};s.precedence>a?(a=s.precedence,i=e):s.precedence!==a||s.rightAssoc||(i=e)}let s=n.slice(0,i),o=n.slice(i+1),l=r.slice(0,i+1),u=r.slice(i+1),c={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:s},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:u,operators:o},d=this.constructInfix(c,t),f=this.constructInfix(p,t);return{$type:e.$type,$cstNode:e.$cstNode,left:d,operator:n[i],right:f}}getAssignment(e){if(!this.assignmentMap.has(e)){let t=rD(e,nn);this.assignmentMap.set(e,{assignment:t,crossRef:t&&nf(t.terminal)?t.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,t,r,n,i){let a,s=this.current;switch(a="single"===i&&"string"==typeof r?this.linker.buildReference(s,t,n,r):"multi"===i&&"string"==typeof r?this.linker.buildMultiReference(s,t,n,r):r,e){case"=":s[t]=a;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(a)}}assignWithoutOverride(e,t){for(let[r,n]of Object.entries(t)){let t=e[r];void 0===t?e[r]=n:Array.isArray(t)&&Array.isArray(n)&&(n.push(...t),e[r]=n)}let r=e.$cstNode;return r&&(r.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},v0=class{static{tS(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return dJ.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return dJ.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return dJ.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return dJ.buildEarlyExitMessage(e)}},v1=class extends v0{static{tS(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:t}){let r=e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`;return`Expecting ${r} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},v2=class extends vZ{static{tS(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){let r=this.wrapper.DEFINE_RULE(vX(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,t,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}},v3={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new v1},v9=class extends hx{static{tS(this,"ChevrotainWrapper")}constructor(e,t){const r=t&&"maxLookahead"in t;super(e,{...v3,lookaheadStrategy:r?new f2({maxLookahead:t.maxLookahead}):new vg({logging:t.skipValidations?()=>{}:void 0}),...t})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t,r){return this.RULE(e,t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t,void 0)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}rule(e){return e.call(this,{})}},v4=class extends v9{static{tS(this,"ProfilerWrapper")}constructor(e,t,r){super(e,t),this.task=r}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,t,r){this.task.startSubTask(this.ruleName(t));try{return super.subrule(e,t,r)}finally{this.task.stopSubTask(this.ruleName(t))}}};function v5(e,t,r){return v8({parser:t,tokens:r,ruleNames:new Map},e),t}function v8(e,t){let r=ay(t,!1);for(let n of r_(t.rules).filter(nY).filter(e=>r.has(e))){let t={...e,consume:1,optional:1,subrule:1,many:1,or:1};e.parser.rule(n,v6(t,n.definition))}for(let n of r_(t.rules).filter(nk).filter(e=>r.has(e)))e.parser.rule(n,v7(e,n))}function v7(e,t){let r,n=t.call.rule.ref;if(!n)throw Error("Could not resolve reference to infix operator rule: "+t.call.rule.$refText);if(is(n))throw Error("Cannot use terminal rule in infix expression");let i=t.operators.precedences.flatMap(e=>e.operators),a={$type:"Group",elements:[]},s={$container:a,$type:"Assignment",feature:"parts",operator:"+=",terminal:t.call},o={$container:a,$type:"Group",elements:[],cardinality:"*"};a.elements.push(s,o);let l={$container:o,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:i}},u={...s,$container:o};o.elements.push(l,u);let c=i.map(t=>e.tokens[t.value]).map((t,r)=>({ALT:tS(()=>e.parser.consume(r,t,l),"ALT")}));return t=>{r??(r=Tp(e,n)),e.parser.subrule(0,r,!1,s,t),e.parser.many(0,{DEF:tS(()=>{e.parser.alternatives(0,c),e.parser.subrule(1,r,!1,u,t)},"DEF")})}}function v6(e,t,r=!1){let n;if(nD(t))n=Tu(e,t);else if(r4(t))n=Te(e,t);else if(nn(t))n=v6(e,t.terminal);else if(nf(t))n=Tl(e,t);else if(n3(t))n=Tt(e,t);else if(r8(t))n=Ti(e,t);else if(iT(t))n=Ta(e,t);else if(nE(t))n=Ts(e,t);else if(ng(t)){let r=e.consume++;n=tS(()=>e.parser.consume(r,dV,t),"method")}else throw new iJ(t.$cstNode,`Unexpected element type: ${t.$type}`);return Tc(e,r?void 0:To(t),n,t.cardinality)}function Te(e,t){let r=aF(t);return()=>e.parser.action(r,t)}function Tt(e,t){let r=t.rule.ref;if(rQ(r)){let n,i=e.subrule++,a=nY(r)&&r.fragment,s=t.arguments.length>0?Tr(r,t.arguments):()=>({});return o=>{n??(n=Tp(e,r)),e.parser.subrule(i,n,a,t,s(o))}}if(is(r)){let n=e.consume++,i=Tf(e,r.name);return()=>e.parser.consume(n,i,t)}if(r)iX(r);else throw new iJ(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}function Tr(e,t){if(t.some(e=>e.calledByName)){let e=t.map(e=>({parameterName:e.parameter?.ref?.name,predicate:Tn(e.value)}));return t=>{let r={};for(let{parameterName:n,predicate:i}of e)n&&(r[n]=i(t));return r}}{let r=t.map(e=>Tn(e.value));return t=>{let n={};for(let i=0;i<r.length;i++)if(i<e.parameters.length){let a=e.parameters[i].name,s=r[i];n[a]=s(t)}return n}}}function Tn(e){if(nm(e)){let t=Tn(e.left),r=Tn(e.right);return e=>t(e)||r(e)}if(np(e)){let t=Tn(e.left),r=Tn(e.right);return e=>t(e)&&r(e)}if(nq(e)){let t=Tn(e.value);return e=>!t(e)}if(nV(e)){let t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if(na(e)){let t=!!e.true;return()=>t}iX(e)}function Ti(e,t){if(1===t.elements.length)return v6(e,t.elements[0]);{let r=[];for(let n of t.elements){let t={ALT:v6(e,n,!0)},i=To(n);i&&(t.GATE=Tn(i)),r.push(t)}let n=e.or++;return t=>e.parser.alternatives(n,r.map(e=>{let r={ALT:tS(()=>e.ALT(t),"ALT")},n=e.GATE;return n&&(r.GATE=()=>n(t)),r}))}}function Ta(e,t){if(1===t.elements.length)return v6(e,t.elements[0]);let r=[];for(let n of t.elements){let t={ALT:v6(e,n,!0)},i=To(n);i&&(t.GATE=Tn(i)),r.push(t)}let n=e.or++,i=tS((e,t)=>{let r=t.getRuleStack().join("-");return`uGroup_${e}_${r}`},"idFunc"),a=tS(t=>e.parser.alternatives(n,r.map((r,a)=>{let s={ALT:tS(()=>!0,"ALT")},o=e.parser;s.ALT=()=>{if(r.ALT(t),!o.isRecording()){let e=i(n,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);let t=o.unorderedGroups.get(e);void 0===t?.[a]&&(t[a]=!0)}};let l=r.GATE;return l?s.GATE=()=>l(t):s.GATE=()=>{let e=o.unorderedGroups.get(i(n,o));return!e?.[a]},s})),"alternatives"),s=Tc(e,To(t),a,"*");return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(n,e.parser))}}function Ts(e,t){let r=t.elements.map(t=>v6(e,t));return e=>r.forEach(t=>t(e))}function To(e){if(nE(e))return e.guardCondition}function Tl(e,t,r=t.terminal){if(r)if(n3(r)&&nY(r.rule.ref)){let n,i=r.rule.ref,a=e.subrule++;return r=>{n??(n=Tp(e,i)),e.parser.subrule(a,n,!1,t,r)}}else if(n3(r)&&is(r.rule.ref)){let n=e.consume++,i=Tf(e,r.rule.ref.name);return()=>e.parser.consume(n,i,t)}else if(nD(r)){let n=e.consume++,i=Tf(e,r.value);return()=>e.parser.consume(n,i,t)}else throw Error("Could not build cross reference parser");{if(!t.type.ref)throw Error("Could not resolve reference to type: "+t.type.$refText);let r=ax(t.type.ref),n=r?.terminal;if(!n)throw Error("Could not find name assignment for type: "+aF(t.type.ref));return Tl(e,t,n)}}function Tu(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}function Tc(e,t,r,n){let i=t&&Tn(t);if(!n)if(!i)return r;else{let t=e.or++;return n=>e.parser.alternatives(t,[{ALT:tS(()=>r(n),"ALT"),GATE:tS(()=>i(n),"GATE")},{ALT:hS(),GATE:tS(()=>!i(n),"GATE")}])}if("*"===n){let t=e.many++;return n=>e.parser.many(t,{DEF:tS(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}if("+"===n){let t=e.many++;if(!i)return n=>e.parser.atLeastOne(t,{DEF:tS(()=>r(n),"DEF")});{let n=e.or++;return a=>e.parser.alternatives(n,[{ALT:tS(()=>e.parser.atLeastOne(t,{DEF:tS(()=>r(a),"DEF")}),"ALT"),GATE:tS(()=>i(a),"GATE")},{ALT:hS(),GATE:tS(()=>!i(a),"GATE")}])}}if("?"===n){let t=e.optional++;return n=>e.parser.optional(t,{DEF:tS(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}iX(n)}function Tp(e,t){let r=Td(e,t),n=e.parser.getRule(r);if(!n)throw Error(`Rule "${r}" not found."`);return n}function Td(e,t){if(rQ(t))return t.name;{if(e.ruleNames.has(t))return e.ruleNames.get(t);let r=t,n=r.$container,i=t.$type;for(;!nY(n);)(nE(n)||r8(n)||iT(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}function Tf(e,t){let r=e.tokens[t];if(!r)throw Error(`Token "${t}" not found."`);return r}function Th(e){let t=e.Grammar,r=e.parser.Lexer,n=new v2(e);return v5(t,n,r.definition),n.finalize(),n}function Tm(e){let t=Ty(e);return t.finalize(),t}function Ty(e){let t=e.Grammar,r=e.parser.Lexer;return v5(t,new vQ(e),r.definition)}tS(v5,"createParser"),tS(v8,"buildRules"),tS(v7,"buildInfixRule"),tS(v6,"buildElement"),tS(Te,"buildAction"),tS(Tt,"buildRuleCall"),tS(Tr,"buildRuleCallPredicate"),tS(Tn,"buildPredicate"),tS(Ti,"buildAlternatives"),tS(Ta,"buildUnorderedGroup"),tS(Ts,"buildGroup"),tS(To,"getGuardCondition"),tS(Tl,"buildCrossReference"),tS(Tu,"buildKeyword"),tS(Tc,"wrap"),tS(Tp,"getRule"),tS(Td,"getRuleName"),tS(Tf,"getToken"),tS(Th,"createCompletionParser"),tS(Tm,"createLangiumParser"),tS(Ty,"prepareLangiumParser");var Tg=class{static{tS(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,t){let r=r_(ay(e,!1)),n=this.buildTerminalTokens(r),i=this.buildKeywordTokens(r,n,t);return i.push(...n),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(is).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){let t=aU(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,n={name:e.name,PATTERN:r};return"function"==typeof r&&(n.LINE_BREAKS=!0),e.hidden&&(n.GROUP=ac(t)?dO.SKIPPED:"hidden"),n}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let t=RegExp(e,e.flags+"y");return(e,r)=>(t.lastIndex=r,t.exec(e))}buildKeywordTokens(e,t,r){return e.filter(rQ).flatMap(e=>rq(e).filter(nD)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,!!r?.caseInsensitive))}buildKeywordToken(e,t,r){let n=this.buildKeywordPattern(e,r),i={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return"function"==typeof n&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?RegExp(ap(e.value),"i"):e.value}findLongerAlt(e,t){return t.reduce((t,r)=>{let n=r?.PATTERN;return n?.source&&ad("^"+n.source+"$",e.value)&&t.push(r),t},[])}},Tv=class{static{tS(this,"DefaultValueConverter")}convert(e,t){let r=t.grammarSource;if(nf(r)&&(r=aT(r)),n3(r)){let n=r.rule.ref;if(!n)throw Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){switch(e.name.toUpperCase()){case"INT":return eQ.convertInt(t);case"STRING":return eQ.convertString(t);case"ID":return eQ.convertID(t)}switch(aG(e)?.toLowerCase()){case"number":return eQ.convertNumber(t);case"boolean":return eQ.convertBoolean(t);case"bigint":return eQ.convertBigint(t);case"date":return eQ.convertDate(t);default:return t}}};!function(e){function t(e){let t="";for(let n=1;n<e.length-1;n++){let i=e.charAt(n);"\\"===i?t+=r(e.charAt(++n)):t+=i}return t}function r(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return e}}function n(e){return"^"===e.charAt(0)?e.substring(1):e}function i(e){return parseInt(e)}function a(e){return BigInt(e)}function s(e){return new Date(e)}function o(e){return Number(e)}function l(e){return"true"===e.toLowerCase()}tS(t,"convertString"),e.convertString=t,tS(r,"convertEscapeCharacter"),tS(n,"convertID"),e.convertID=n,tS(i,"convertInt"),e.convertInt=i,tS(a,"convertBigint"),e.convertBigint=a,tS(s,"convertDate"),e.convertDate=s,tS(o,"convertNumber"),e.convertNumber=o,tS(l,"convertBoolean"),e.convertBoolean=l}(eQ||(eQ={}));var TT={};function TR(){return new Promise(e=>{"u"<typeof setImmediate?setTimeout(e,0):setImmediate(e)})}tw(TT,t_(tj(),1)),tS(TR,"delayNextTick");var T$=0,Tb=10;function TE(){return T$=performance.now(),new TT.CancellationTokenSource}function TC(e){Tb=e}tS(TE,"startCancelableOperation"),tS(TC,"setInterruptionPeriod");var TA=Symbol("OperationCancelled");function TS(e){return e===TA}async function Tk(e){if(e===TT.CancellationToken.None)return;let t=performance.now();if(t-T$>=Tb&&(T$=t,await TR(),T$=performance.now()),e.isCancellationRequested)throw TA}tS(TS,"isOperationCancelled"),tS(Tk,"interruptAndCheck");var Tx=class{static{tS(this,"Deferred")}constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}},TN=class e{static{tS(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(t,r){for(let r of t)if(e.isIncremental(r)){let e=TP(r.range),t=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,t)+r.text+this._content.substring(n,this._content.length);let i=Math.max(e.start.line,0),a=Math.max(e.end.line,0),s=this._lineOffsets,o=T_(r.text,!1,t);if(a-i===o.length)for(let e=0,t=o.length;e<t;e++)s[e+i+1]=o[e];else o.length<1e4?s.splice(i+1,a-i,...o):this._lineOffsets=s=s.slice(0,i+1).concat(o,s.slice(a+1));let l=r.text.length-(n-t);if(0!==l)for(let e=i+1+o.length,t=s.length;e<t;e++)s[e]=s[e]+l}else if(e.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=r}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=T_(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return e=this.ensureBeforeEOL(e,t[i]),{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let n=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(r+e.character,n);return this.ensureBeforeEOL(i,r)}ensureBeforeEOL(e,t){for(;e>t&&TI(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}static isFull(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}};function Tw(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),i=e.slice(r);Tw(n,t),Tw(i,t);let a=0,s=0,o=0;for(;a<n.length&&s<i.length;)0>=t(n[a],i[s])?e[o++]=n[a++]:e[o++]=i[s++];for(;a<n.length;)e[o++]=n[a++];for(;s<i.length;)e[o++]=i[s++];return e}function T_(e,t,r=0){let n=t?[r]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);TI(i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function TI(e){return 13===e||10===e}function TP(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function TO(e){let t=TP(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){function t(e,t,r,n){return new TN(e,t,r,n)}function r(e,t,r){if(e instanceof TN)return e.update(t,r),e;throw Error("TextDocument.update: document must be created by TextDocument.create")}function n(e,t){let r=e.getText(),n=Tw(t.map(TO),(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=0,a=[];for(let t of n){let n=e.offsetAt(t.range.start);if(n<i)throw Error("Overlapping edit");n>i&&a.push(r.substring(i,n)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(r.substr(i)),a.join("")}tS(t,"create"),e.create=t,tS(r,"update"),e.update=r,tS(n,"applyEdits"),e.applyEdits=n}(e0||(e0={})),tS(Tw,"mergeSort"),tS(T_,"computeLineOffsets"),tS(TI,"isEOL"),tS(TP,"getWellformedRange"),tS(TO,"getWellformedEdit"),(()=>{let e;var t,r,n={975:e=>{function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,a=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)r=e.charCodeAt(o);else{if(47===r)break;r=47}if(47===r){if(a===o-1||1===s);else if(a!==o-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2)){if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),a=o,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,a=o,s=0;continue}}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),i=o-a-1;a=o,s=0}else 46===r&&-1!==s?++s:s=-1}return n}tS(t,"e"),tS(r,"r");var n={resolve:tS(function(){for(var e,n,i="",a=!1,s=arguments.length-1;s>=-1&&!a;s--)s>=0?e=arguments[s]:(void 0===n&&(n=tT.cwd()),e=n),t(e),0!==e.length&&(i=e+"/"+i,a=47===e.charCodeAt(0));return i=r(i,!a),a?i.length>0?"/"+i:"/":i.length>0?i:"."},"resolve"),normalize:tS(function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},"normalize"),isAbsolute:tS(function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},"isAbsolute"),join:tS(function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var i=arguments[r];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":n.normalize(e)},"join"),relative:tS(function(e,r){if(t(e),t(r),e===r||(e=n.resolve(e))===(r=n.resolve(r)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var a=e.length,s=a-i,o=1;o<r.length&&47===r.charCodeAt(o);++o);for(var l=r.length-o,u=s<l?s:l,c=-1,p=0;p<=u;++p){if(p===u){if(l>u){if(47===r.charCodeAt(o+p))return r.slice(o+p+1);if(0===p)return r.slice(o+p)}else s>u&&(47===e.charCodeAt(i+p)?c=p:0===p&&(c=0));break}var d=e.charCodeAt(i+p);if(d!==r.charCodeAt(o+p))break;47===d&&(c=p)}var f="";for(p=i+c+1;p<=a;++p)p!==a&&47!==e.charCodeAt(p)||(0===f.length?f+="..":f+="/..");return f.length>0?f+r.slice(o+c):(o+=c,47===r.charCodeAt(o)&&++o,r.slice(o))},"relative"),_makeLong:tS(function(e){return e},"_makeLong"),dirname:tS(function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,a=!0,s=e.length-1;s>=1;--s)if(47===(r=e.charCodeAt(s))){if(!a){i=s;break}}else a=!1;return -1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},"dirname"),basename:tS(function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var n,i=0,a=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var o=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!s){i=n+1;break}}else -1===l&&(s=!1,l=n+1),o>=0&&(u===r.charCodeAt(o)?-1==--o&&(a=n):(o=-1,a=l))}return i===a?a=l:-1===a&&(a=e.length),e.slice(i,a)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!s){i=n+1;break}}else -1===a&&(s=!1,a=n+1);return -1===a?"":e.slice(i,a)},"basename"),extname:tS(function(e){t(e);for(var r=-1,n=0,i=-1,a=!0,s=0,o=e.length-1;o>=0;--o){var l=e.charCodeAt(o);if(47!==l)-1===i&&(a=!1,i=o+1),46===l?-1===r?r=o:1!==s&&(s=1):-1!==r&&(s=-1);else if(!a){n=o+1;break}}return -1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":e.slice(r,i)},"extname"),format:tS(function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},"format"),parse:tS(function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),a=47===i;a?(r.root="/",n=1):n=0;for(var s=-1,o=0,l=-1,u=!0,c=e.length-1,p=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===s?s=c:1!==p&&(p=1):-1!==s&&(p=-1);else if(!u){o=c+1;break}return -1===s||-1===l||0===p||1===p&&s===l-1&&s===o+1?-1!==l&&(r.base=r.name=0===o&&a?e.slice(1,l):e.slice(o,l)):(0===o&&a?(r.name=e.slice(1,s),r.base=e.slice(1,l)):(r.name=e.slice(o,s),r.base=e.slice(o,l)),r.ext=e.slice(s,l)),o>0?r.dir=e.slice(0,o-1):a&&(r.dir="/"),r},"parse"),sep:"/",delimiter:":",win32:null,posix:null};n.posix=n,e.exports=n}},i={};function a(e){var t=i[e];if(void 0!==t)return t.exports;var r=i[e]={exports:{}};return n[e](r,r.exports,a),r.exports}tS(a,"r"),a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var s={};(a.r(s),a.d(s,{URI:tS(()=>d,"URI"),Utils:tS(()=>r,"Utils")}),"object"==typeof tT)?e="win32"===tT.platform:"object"==typeof navigator&&(e=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,l=/^\//,u=/^\/\//;function c(e,t){if(!e.scheme&&t)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!o.test(e.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!l.test(e.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(u.test(e.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}tS(c,"a");let p=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class d{static{tS(this,"l")}static isUri(e){return e instanceof d||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,i,a=!1){"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",c(this,a))}get fsPath(){return v(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:a}=e;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&a===this.fragment?this:new h(t,r,n,i,a)}static parse(e,t=!1){let r=p.exec(e);return r?new h(r[2]||"",b(r[4]||""),b(r[5]||""),b(r[7]||""),b(r[9]||""),t):new h("","","","","")}static file(t){let r="";if(e&&(t=t.replace(/\\/g,"/")),"/"===t[0]&&"/"===t[1]){let e=t.indexOf("/",2);-1===e?(r=t.substring(2),t="/"):(r=t.substring(2,e),t=t.substring(e)||"/")}return new h("file",r,t,"","")}static from(e){let t=new h(e.scheme,e.authority,e.path,e.query,e.fragment);return c(t,!0),t}toString(e=!1){return T(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof d)return e;{let t=new h(e);return t._formatted=e.external,t._fsPath=e._sep===f?e.fsPath:null,t}}return e}}let f=e?1:void 0;class h extends d{static{tS(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=v(this,!1)),this._fsPath}toString(e=!1){return e?T(this,!0):(this._formatted||(this._formatted=T(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=f),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}let m={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 y(e,t,r){let n,i=-1;for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),void 0!==n&&(n+=e.charAt(a));else{void 0===n&&(n=e.substr(0,a));let t=m[s];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),n+=t):-1===i&&(i=a)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function g(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=m[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function v(t,r){let n;return n=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&90>=t.path.charCodeAt(1)||t.path.charCodeAt(1)>=97&&122>=t.path.charCodeAt(1))&&58===t.path.charCodeAt(2)?r?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(n=n.replace(/\//g,"\\")),n}function T(e,t){let r=t?g:y,n="",{scheme:i,authority:a,path:s,query:o,fragment:l}=e;if(i&&(n+=i,n+=":"),(a||"file"===i)&&(n+="/",n+="/"),a){let e=a.indexOf("@");if(-1!==e){let t=a.substr(0,e);a=a.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(a=a.toLowerCase()).lastIndexOf(":"))?n+=r(a,!1,!0):(n+=r(a.substr(0,e),!1,!0),n+=a.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){let e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){let e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return o&&(n+="?",n+=r(o,!1,!1)),l&&(n+="#",n+=t?l:y(l,!1,!1)),n}function R(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+R(e.substr(3)):e}}tS(y,"m"),tS(g,"y"),tS(v,"v"),tS(T,"b"),tS(R,"C");let $=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function b(e){return e.match($)?e.replace($,e=>R(e)):e}tS(b,"w");var E=a(975);let C=E.posix||E;(t=r||(r={})).joinPath=function(e,...t){return e.with({path:C.join(e.path,...t)})},t.resolvePath=function(e,...t){let r=e.path,n=!1;"/"!==r[0]&&(r="/"+r,n=!0);let i=C.resolve(r,...t);return n&&"/"===i[0]&&!e.authority&&(i=i.substring(1)),e.with({path:i})},t.dirname=function(e){if(0===e.path.length||"/"===e.path)return e;let t=C.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},t.basename=function(e){return C.basename(e.path)},t.extname=function(e){return C.extname(e.path)},e1=s})();var{URI:TD,Utils:TL}=e1;!function(e){e.basename=TL.basename,e.dirname=TL.dirname,e.extname=TL.extname,e.joinPath=TL.joinPath,e.resolvePath=TL.resolvePath;let t="object"==typeof tT&&tT?.platform==="win32";function r(e,t){return e?.toString()===t?.toString()}function n(e,r){let n="string"==typeof e?TD.parse(e).path:e.path,i="string"==typeof r?TD.parse(r).path:r.path,a=n.split("/").filter(e=>e.length>0),s=i.split("/").filter(e=>e.length>0);if(t){let e=/^[A-Z]:$/;if(a[0]&&e.test(a[0])&&(a[0]=a[0].toLowerCase()),s[0]&&e.test(s[0])&&(s[0]=s[0].toLowerCase()),a[0]!==s[0])return i.substring(1)}let o=0;for(;o<a.length&&a[o]===s[o];o++);return"../".repeat(a.length-o)+s.slice(o).join("/")}function i(e){return TD.parse(e.toString()).toString()}function a(e,t){let r="string"==typeof e?e:e.path,n="string"==typeof t?t:t.path;return"/"===n.charAt(n.length-1)&&(n=n.slice(0,-1)),"/"===r.charAt(r.length-1)&&(r=r.slice(0,-1)),n===r||!(n.length<r.length)&&"/"===n.charAt(r.length)&&n.startsWith(r)}tS(r,"equals"),e.equals=r,tS(n,"relative"),e.relative=n,tS(i,"normalize"),e.normalize=i,tS(a,"contains"),e.contains=a}(e2||(e2={}));var TM=class{static{tS(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return e2.normalize(e)}clear(){this.root.children.clear()}insert(e,t){this.getNode(this.normalizeUri(e),!0).element=t}delete(e){let t=this.getNode(this.normalizeUri(e),!1);t?.parent&&t.parent.children.delete(t.name)}has(e){return this.getNode(this.normalizeUri(e),!1)?.element!==void 0}hasNode(e){return void 0!==this.getNode(this.normalizeUri(e),!1)}find(e){return this.getNode(this.normalizeUri(e),!1)?.element}findNode(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);if(r)return{name:r.name,uri:e2.joinPath(TD.parse(t),r.name).toString(),element:r.element}}findChildren(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);return r?Array.from(r.children.values()).map(e=>({name:e.name,uri:e2.joinPath(TD.parse(t),e.name).toString(),element:e.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let t=this.getNode(e2.normalize(e),!1);return t?this.collectValues(t):[]}getNode(e,t){let r=e.split("/");"/"===e.charAt(e.length-1)&&r.pop();let n=this.root;for(let e of r){let r=n.children.get(e);if(!r)if(!t)return;else r={name:e,children:new Map,parent:n},n.children.set(e,r);n=r}return n}collectValues(e){let t=[];for(let r of(e.element&&t.push(e.element),e.children.values()))t.push(...this.collectValues(r));return t}};(d=e3||(e3={}))[d.Changed=0]="Changed",d[d.Parsed=1]="Parsed",d[d.IndexedContent=2]="IndexedContent",d[d.ComputedScopes=3]="ComputedScopes",d[d.Linked=4]="Linked",d[d.IndexedReferences=5]="IndexedReferences",d[d.Validated=6]="Validated";var Tj=class{static{tS(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=TT.CancellationToken.None){let r=await this.fileSystemProvider.readFile(e);return this.createAsync(e,r,t)}fromTextDocument(e,t,r){return(t=t??TD.parse(e.uri),TT.CancellationToken.is(r))?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return TT.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if("string"==typeof t){let n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}if("$model"in t){let r={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,e)}{let n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if("string"==typeof t){let n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}{let n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let i;if(r)i={parseResult:e,uri:t,state:e3.Parsed,references:[],textDocument:r};else{let r=this.createTextDocumentGetter(t,n);i={parseResult:e,uri:t,state:e3.Parsed,references:[],get textDocument(){return r()}}}return e.value.$document=i,i}async update(e,t){let r=e.parseResult.value.$cstNode?.root.fullText,n=this.textDocuments?.get(e.uri.toString()),i=n?n.getText():await this.fileSystemProvider.readFile(e.uri);if(n)Object.defineProperty(e,"textDocument",{value:n});else{let t=this.createTextDocumentGetter(e.uri,i);Object.defineProperty(e,"textDocument",{get:t})}return r!==i&&(e.parseResult=await this.parseAsync(e.uri,i,t),e.parseResult.value.$document=e),e.state=e3.Parsed,e}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){let r,n=this.serviceRegistry;return()=>r??(r=e0.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,t??""))}},TF=class{static{tS(this,"DefaultLangiumDocuments")}constructor(e){this.documentTrie=new TM,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return r_(this.documentTrie.all())}addDocument(e){let t=e.uri.toString();if(this.documentTrie.has(t))throw Error(`A document with the URI '${t}' is already present.`);this.documentTrie.insert(t,e)}getDocument(e){let t=e.toString();return this.documentTrie.find(t)}getDocuments(e){let t=e.toString();return this.documentTrie.findAll(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r)),r}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(e=>(this.addDocument(e),e));{let r=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(r),r}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&this.documentBuilder().resetToState(r,e3.Changed),r}deleteDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&(r.state=e3.Changed,this.documentTrie.delete(t)),r}deleteDocuments(e){let t=e.toString(),r=this.documentTrie.findAll(t);for(let e of r)e.state=e3.Changed;return this.documentTrie.delete(t),r}},Tz=Symbol("RefResolving"),Tq=class{static{tS(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async link(e,t=TT.CancellationToken.None){if(this.profiler?.isActive("linking")){let r=this.profiler.createTask("linking",this.languageId);r.start();try{for(let n of rG(e.parseResult.value))await Tk(t),rK(n).forEach(t=>{let i=`${n.$type}:${t.property}`;r.startSubTask(i);try{this.doLink(t,e)}finally{r.stopSubTask(i)}})}finally{r.stop()}}else for(let r of rG(e.parseResult.value))await Tk(t),rK(r).forEach(t=>this.doLink(t,e))}doLink(e,t){let r=e.reference;if("_ref"in r&&void 0===r._ref){r._ref=Tz;try{let t=this.getCandidate(e);r$(t)?r._ref=t:(r._nodeDescription=t,r._ref=this.loadAstNode(t)??this.createLinkingError(e,t))}catch(n){console.error(`An error occurred while resolving reference to '${r.$refText}':`,n);let t=n.message??String(n);r._ref={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${t}`}}t.references.push(r)}else if("_items"in r&&void 0===r._items){r._items=Tz;try{let t=this.getCandidates(e),n=[];if(r$(t))r._linkingError=t;else for(let e of t){let t=this.loadAstNode(e);t&&n.push({ref:t,$nodeDescription:e})}r._items=n}catch(t){r._linkingError={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${t}`},r._items=[]}t.references.push(r)}}unlink(e){for(let t of e.references)"_ref"in t?(t._ref=void 0,delete t._nodeDescription):"_items"in t&&(t._items=void 0,delete t._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let t=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(e=>`${e.documentUri}#${e.path}`).toArray();return t.length>0?t:this.createLinkingError(e)}buildReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,_ref:void 0,get ref(){if(rg(this._ref))return this._ref;if(rR(this._nodeDescription)){let r=i.loadAstNode(this._nodeDescription);this._ref=r??i.createLinkingError({reference:a,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){this._ref=Tz;let r=rj(e).$document,n=i.getLinkedNode({reference:a,container:e,property:t});if(n.error&&r&&r.state<e3.ComputedScopes)return this._ref=void 0;this._ref=n.node??n.error,this._nodeDescription=n.descr,r?.references.push(this)}else this._ref===Tz&&i.throwCyclicReferenceError(e,t,n);return rg(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return r$(this._ref)?this._ref:void 0}};return a}buildMultiReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(void 0===this._items){this._items=Tz;let r=rj(e).$document,n=i.getCandidates({reference:a,container:e,property:t}),s=[];if(r$(n))this._linkingError=n;else for(let e of n){let t=i.loadAstNode(e);t&&s.push({ref:t,$nodeDescription:e})}this._items=s,r?.references.push(this)}else this._items===Tz&&i.throwCyclicReferenceError(e,t,n);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(this.items.length>0)return;return this._linkingError=i.createLinkingError({reference:a,container:e,property:t})}};return a}throwCyclicReferenceError(e,t,r){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${r}')`)}getLinkedNode(e){try{let t=this.getCandidate(e);if(r$(t))return{error:t};let r=this.loadAstNode(t);if(r)return{node:r,descr:t};return{descr:t,error:this.createLinkingError(e,t)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let t=r.message??String(r);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${t}`}}}}loadAstNode(e){if(e.node)return e.node;let t=this.langiumDocuments().getDocument(e.documentUri);if(t)return this.astNodeLocator.getAstNode(t.parseResult.value,e.path)}createLinkingError(e,t){let r=rj(e.container).$document;r&&r.state<e3.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);let n=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${n} named '${e.reference.$refText}'.`,targetDescription:t}}};function TG(e){return"string"==typeof e.name}tS(TG,"isNamed");var TU=class{static{tS(this,"DefaultNameProvider")}getName(e){if(TG(e))return e.name}getNameNode(e){return ab(e.$cstNode,"name")}},TK=class{static{tS(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=rG(e.Grammar).some(e=>nf(e)&&e.isMulti)}findDeclarations(e){if(e){let t=ak(e),r=e.astNode;if(t&&r){let n=r[t.feature];if(rv(n)||rT(n))return rF(n);if(Array.isArray(n)){for(let t of n)if((rv(t)||rT(t))&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return rF(t)}}if(r){let t=this.nameProvider.getNameNode(r);if(t&&(t===e||i_(e,t)))return this.getSelfNodes(r)}}return[]}getSelfNodes(e){if(!this.hasMultiReference)return[e];{let t=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),r=this.getNodeFromReferenceDescription(t.head());if(r){for(let t of rK(r))if(rT(t.reference)&&t.reference.items.some(t=>t.ref===e))return t.reference.items.map(e=>e.ref)}return[e]}}getNodeFromReferenceDescription(e){if(!e)return;let t=this.documents.getDocument(e.sourceUri);if(t)return this.nodeLocator.getAstNode(t.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let t=this.findDeclarations(e),r=[];for(let e of t){let t=this.nameProvider.getNameNode(e)??e.$cstNode;t&&r.push(t)}return r}findReferences(e,t){let r=[];t.includeDeclaration&&r.push(...this.getSelfReferences(e));let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(e=>e2.equals(e.sourceUri,t.documentUri))),r.push(...n),r_(r)}getSelfReferences(e){let t=this.getSelfNodes(e),r=[];for(let e of t){let t=this.nameProvider.getNameNode(e);if(t){let n=rM(e),i=this.nodeLocator.getAstNodePath(e);r.push({sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:iP(t),local:!0})}}return r}},TW=class{static{tS(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(const[t,r]of e)this.add(t,r)}get size(){return eV.sum(r_(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{let r=this.map.get(e);if(r){let n=r.indexOf(t);if(n>=0)return 1===r.length?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let t=this.map.get(e);return t?r_(t):rN}has(e,t){if(void 0===t)return this.map.has(e);{let r=this.map.get(e);return!!r&&r.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(t=>e(t,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return r_(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return r_(this.map.keys())}values(){return r_(this.map.values()).flat()}entriesGroupedByKey(){return r_(this.map.entries())}},TB=class{static{tS(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}},TV=class{static{tS(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,t=TT.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,t)}async collectExportedSymbolsForNode(e,t,r=rz,n=TT.CancellationToken.None){let i=[];for(let a of(this.addExportedSymbol(e,i,t),r(e)))await Tk(n),this.addExportedSymbol(a,i,t);return i}addExportedSymbol(e,t,r){let n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async collectLocalSymbols(e,t=TT.CancellationToken.None){let r=e.parseResult.value,n=new TW;for(let i of rq(r))await Tk(t),this.addLocalSymbol(i,e,n);return n}addLocalSymbol(e,t,r){let n=e.$container;if(n){let i=this.nameProvider.getName(e);i&&r.add(n,this.descriptions.createDescription(e,i,t))}}},TH=class{static{tS(this,"StreamScope")}constructor(e,t,r){this.elements=e,this.outerScope=t,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.find(e=>e.name.toLowerCase()===t):this.elements.find(t=>t.name===e);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.filter(e=>e.name.toLowerCase()===t):this.elements.filter(t=>t.name===e);return(this.concatOuterScope||r.isEmpty())&&this.outerScope?r.concat(this.outerScope.getElements(e)):r}},TY=class{static{tS(this,"MapScope")}constructor(e,t,r){for(const t of(this.elements=new Map,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t),n=r?[r]:[];return(this.concatOuterScope||n.length>0)&&this.outerScope?r_(n).concat(this.outerScope.getElements(e)):r_(n)}getAllElements(){let e=r_(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},TJ=class{static{tS(this,"MultiMapScope")}constructor(e,t,r){for(const t of(this.elements=new TW,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.add(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t)[0];return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return(this.concatOuterScope||0===r.length)&&this.outerScope?r_(r).concat(this.outerScope.getElements(e)):r_(r)}getAllElements(){let e=r_(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},TX={getElement(){},getElements:()=>rN,getAllElements:()=>rN},TZ=class{static{tS(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},TQ=class extends TZ{static{tS(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){let r=t();return this.cache.set(e,r),r}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},T0=class extends TZ{static{tS(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(e=>e)}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();let n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){let e=r();return n.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){let t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){let t=this.converter(e),r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}},T1=class extends T0{static{tS(this,"DocumentCache")}constructor(e,t){super(e=>e.toString()),t?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(t,e=>{this.clear(e.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{for(let e of t)this.clear(e)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{for(let r of e.concat(t))this.clear(r)}))}},T2=class extends TQ{static{tS(this,"WorkspaceCache")}constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{t.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},T3=class{static{tS(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new T2(e.shared)}getScope(e){let t=[],r=this.reflection.getReferenceType(e),n=rM(e.container).localSymbols;if(n){let i=e.container;do n.has(i)&&t.push(n.getStream(i).filter(e=>this.reflection.isSubtype(e.type,r))),i=i.$container;while(i)}let i=this.getGlobalScope(r,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,r){return new TH(r_(e),t,r)}createScopeForNodes(e,t,r){return new TH(r_(e).map(e=>{let t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable(),t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new TJ(this.indexManager.allElements(e)))}};function T9(e){return"string"==typeof e.$comment}function T4(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}tS(T9,"isAstNodeWithComment"),tS(T4,"isIntermediateReference");var T5=class{static{tS(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){let r=t??{},n=t?.replacer,i=tS((e,t)=>this.replacer(e,t,r),"defaultReplacer"),a=n?(e,t)=>n(e,t,i):i;try{return this.currentDocument=rM(e),JSON.stringify(e,a,t?.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let r=JSON.parse(e);return this.linkNode(r,r,t??{}),r}replacer(e,t,{refText:r,sourceText:n,textRegions:i,comments:a,uriConverter:s}){if(!this.ignoreProperties.has(e)){if(rv(t)){let e=t.ref,n=r?t.$refText:void 0;if(!e)return{$error:t.error?.message??"Could not resolve reference",$refText:n};{let t=rM(e),r="";this.currentDocument&&this.currentDocument!==t&&(r=s?s(t.uri,e):t.uri.toString());let i=this.astNodeLocator.getAstNodePath(e);return{$ref:`${r}#${i}`,$refText:n}}}if(rT(t)){let e=r?t.$refText:void 0,n=[];for(let e of t.items){let t=e.ref,r=rM(e.ref),i="";this.currentDocument&&this.currentDocument!==r&&(i=s?s(r.uri,t):r.uri.toString());let a=this.astNodeLocator.getAstNodePath(t);n.push(`${i}#${a}`)}return{$refs:n,$refText:e}}{let r;if(!rg(t))return t;if(i&&(r=this.addAstNodeRegionWithAssignmentsTo({...t}),(!e||t.$document)&&r?.$textRegion&&(r.$textRegion.documentURI=this.currentDocument?.uri.toString())),n&&!e&&(r??(r={...t}),r.$sourceText=t.$cstNode?.text),a){r??(r={...t});let e=this.commentProvider.getComment(t);e&&(r.$comment=e.replace(/\r/g,""))}return r??t}}}addAstNodeRegionWithAssignmentsTo(e){let t=tS(e=>({offset:e.offset,end:e.end,length:e.length,range:e.range}),"createDocumentSegment");if(e.$cstNode){let r=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter(e=>!e.startsWith("$")).forEach(n=>{let i=a$(e.$cstNode,n).map(t);0!==i.length&&(r[n]=i)}),e}}linkNode(e,t,r,n,i,a){for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){let s=i[a];T4(s)?i[a]=this.reviveReference(e,n,t,s,r):rg(s)&&this.linkNode(s,t,r,e,n,a)}else T4(i)?e[n]=this.reviveReference(e,n,t,i,r):rg(i)&&this.linkNode(i,t,r,e,n);e.$container=n,e.$containerProperty=i,e.$containerIndex=a}reviveReference(e,t,r,n,i){let a,s=n.$refText,o=n.$error;if(n.$ref){let e=this.getRefNode(r,n.$ref,i.uriConverter);if(rg(e))return s||(s=this.nameProvider.getName(e)),{$refText:s??"",ref:e};o=e}else if(n.$refs){let e=[];for(let t of n.$refs){let n=this.getRefNode(r,t,i.uriConverter);rg(n)&&e.push({ref:n})}if(0!==e.length)return{$refText:s??"",items:e};a={$refText:s??"",items:e},o??(o="Could not resolve multi-reference")}return o?(a??(a={$refText:s??"",ref:void 0}),a.error={info:{container:e,property:t,reference:a},message:o},a):void 0}getRefNode(e,t,r){try{let n=t.indexOf("#");if(0===n){let r=this.astNodeLocator.getAstNode(e,t.substring(1));if(!r)return"Could not resolve path: "+t;return r}if(n<0){let e=r?r(t):TD.parse(t),n=this.langiumDocuments.getDocument(e);if(!n)return"Could not find document for URI: "+t;return n.parseResult.value}let i=r?r(t.substring(0,n)):TD.parse(t.substring(0,n)),a=this.langiumDocuments.getDocument(i);if(!a)return"Could not find document for URI: "+t;if(n===t.length-1)return a.parseResult.value;let s=this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(n+1));if(!s)return"Could not resolve URI: "+t;return s}catch(e){return String(e)}}},T8=class{static{tS(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let t=e.LanguageMetaData;for(let r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);if(t.fileNames)for(let r of t.fileNames)this.fileNameMap.has(r)&&console.warn(`The file name ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileNameMap.set(r,e);this.languageIdMap.set(t.languageId,e)}getServices(e){if(0===this.languageIdMap.size)throw Error("The service registry is empty. Use `register` to register the services of a language.");let t=this.textDocuments?.get(e)?.languageId;if(void 0!==t){let e=this.languageIdMap.get(t);if(e)return e}let r=e2.extname(e),n=e2.basename(e),i=this.fileNameMap.get(n)??this.fileExtensionMap.get(r);if(!i)if(t)throw Error(`The service registry contains no services for the extension '${r}' for language '${t}'.`);else throw Error(`The service registry contains no services for the extension '${r}'.`);return i}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function T7(e){return{code:e}}tS(T7,"diagnosticData"),(f=e9||(e9={})).defaults=["fast","slow","built-in"],f.all=f.defaults;var T6=class{static{tS(this,"ValidationRegistry")}constructor(e){this.entries=new TW,this.knownCategories=new Set(e9.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if("built-in"===r)throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[n,i]of(this.knownCategories.add(r),Object.entries(e)))if(Array.isArray(i))for(let e of i){let i={check:this.wrapValidationException(e,t),category:r};this.addEntry(n,i)}else if("function"==typeof i){let e={check:this.wrapValidationException(i,t),category:r};this.addEntry(n,e)}else iX(i)}wrapValidationException(e,t){return async(r,n,i)=>{await this.handleException(()=>e.call(t,r,n,i),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(i){if(TS(i))throw i;console.error(`${t}:`,i),i instanceof Error&&i.stack&&console.error(i.stack);let e=i instanceof Error?i.message:String(i);r("error",`${t}: ${e}`,{node:n})}}addEntry(e,t){if("AstNode"===e)return void this.entries.add("AstNode",t);for(let r of this.reflection.getAllSubTypes(e))this.entries.add(r,t)}getChecks(e,t){let r=r_(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(e=>t.includes(e.category))),r.map(e=>e.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,i,a,s)=>{await this.handleException(()=>e.call(r,n,i,a,s),t,i,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},Re=Object.freeze({validateNode:!0,validateChildren:!0}),Rt=class{static{tS(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,t={},r=TT.CancellationToken.None){let n=e.parseResult,i=[];if((await Tk(r),!t.categories||t.categories.includes("built-in"))&&(this.processLexingErrors(n,i,t),t.stopAfterLexingErrors&&i.some(e=>e.data?.code===e4.LexingError)||(this.processParsingErrors(n,i,t),t.stopAfterParsingErrors&&i.some(e=>e.data?.code===e4.ParsingError))||(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>e.data?.code===e4.LinkingError))))return i;try{i.push(...await this.validateAst(n.value,t,r))}catch(e){if(TS(e))throw e;console.error("An error occurred during validation:",e)}return await Tk(r),i}processLexingErrors(e,t,r){for(let r of[...e.lexerErrors,...e.lexerReport?.diagnostics??[]]){let e=r.severity??"error",n={severity:Rn(e),range:{start:{line:r.line-1,character:r.column-1},end:{line:r.line-1,character:r.column+r.length-1}},message:r.message,data:Ri(e),source:this.getSource()};t.push(n)}}processParsingErrors(e,t,r){for(let r of e.parserErrors){let e;if(isNaN(r.token.startOffset)){if("previousToken"in r){let t=r.previousToken;if(isNaN(t.startOffset)){let t={line:0,character:0};e={start:t,end:t}}else{let r={line:t.endLine-1,character:t.endColumn};e={start:r,end:r}}}}else e=iI(r.token);if(e){let n={severity:Rn("error"),range:e,message:r.message,data:T7(e4.ParsingError),source:this.getSource()};t.push(n)}}}processLinkingErrors(e,t,r){for(let r of e.references){let e=r.error;if(e){let n={node:e.info.container,range:r.$refNode?.range,property:e.info.property,index:e.info.index,data:{code:e4.LinkingError,containerType:e.info.container.$type,property:e.info.property,refText:e.info.reference.$refText}};t.push(this.toDiagnostic("error",e.message,n))}}}async validateAst(e,t,r=TT.CancellationToken.None){let n=[],i=tS((e,t,r)=>{n.push(this.toDiagnostic(e,t,r))},"acceptor");return await this.validateAstBefore(e,t,i,r),await this.validateAstNodes(e,t,i,r),await this.validateAstAfter(e,t,i,r),n}async validateAstBefore(e,t,r,n=TT.CancellationToken.None){for(let i of this.validationRegistry.checksBefore)await Tk(n),await i(e,r,t.categories??[],n)}async validateAstNodes(e,t,r,n=TT.CancellationToken.None){if(this.profiler?.isActive("validating")){let i=this.profiler.createTask("validating",this.languageId);i.start();try{let a=rG(e).iterator();for(let e of a){i.startSubTask(e.$type);let s=this.validateSingleNodeOptions(e,t);if(s.validateNode)try{for(let i of this.validationRegistry.getChecks(e.$type,t.categories))await i(e,r,n)}finally{i.stopSubTask(e.$type)}s.validateChildren||a.prune()}}finally{i.stop()}}else{let i=rG(e).iterator();for(let e of i){await Tk(n);let a=this.validateSingleNodeOptions(e,t);if(a.validateNode)for(let i of this.validationRegistry.getChecks(e.$type,t.categories))await i(e,r,n);a.validateChildren||i.prune()}}}validateSingleNodeOptions(e,t){return Re}async validateAstAfter(e,t,r,n=TT.CancellationToken.None){for(let i of this.validationRegistry.checksAfter)await Tk(n),await i(e,r,t.categories??[],n)}toDiagnostic(e,t,r){return{message:t,range:Rr(r),severity:Rn(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function Rr(e){let t;return e.range?e.range:("string"==typeof e.property?t=ab(e.node.$cstNode,e.property,e.index):"string"==typeof e.keyword&&(t=aA(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t)?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function Rn(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+e)}}function Ri(e){switch(e){case"error":return T7(e4.LexingError);case"warning":return T7(e4.LexingWarning);case"info":return T7(e4.LexingInfo);case"hint":return T7(e4.LexingHint);default:throw Error("Invalid diagnostic severity: "+e)}}tS(Rr,"getDiagnosticRange"),tS(Rn,"toDiagnosticSeverity"),tS(Ri,"toDiagnosticData"),(h=e4||(e4={})).LexingError="lexing-error",h.LexingWarning="lexing-warning",h.LexingInfo="lexing-info",h.LexingHint="lexing-hint",h.ParsingError="parsing-error",h.LinkingError="linking-error";var Ra=class{static{tS(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){let n,i=r??rM(e);t??(t=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!t)throw Error(`Node at path ${a} has no name.`);let s=tS(()=>n??(n=iP(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:t,get nameSegment(){return s()},selectionSegment:iP(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},Rs=class{static{tS(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=TT.CancellationToken.None){let r=[];for(let n of rG(e.parseResult.value))await Tk(t),rK(n).forEach(e=>{e.reference.error||r.push(...this.createInfoDescriptions(e))});return r}createInfoDescriptions(e){let t=e.reference;if(t.error||!t.$refNode)return[];let r=[];rv(t)&&t.$nodeDescription?r=[t.$nodeDescription]:rT(t)&&(r=t.items.map(e=>e.$nodeDescription).filter(e=>void 0!==e));let n=rM(e.container).uri,i=this.nodeLocator.getAstNodePath(e.container),a=[],s=iP(t.$refNode);for(let e of r)a.push({sourceUri:n,sourcePath:i,targetUri:e.documentUri,targetPath:e.path,segment:s,local:e2.equals(e.documentUri,n)});return a}},Ro=class{static{tS(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||0===t.length)return e;let r=t.indexOf(this.indexSeparator);if(r>0){let n=t.substring(0,r),i=parseInt(t.substring(r+1)),a=e[n];return a?.[i]}return e[t]},e)}},Rl={};tw(Rl,t_(tM(),1));var Ru=class{static{tS(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new Tx,this.onConfigurationSectionUpdateEmitter=new Rl.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}async initialized(e){if(this.workspaceConfig){if(e.register){let t=this.serviceRegistry.all;e.register({section:t.map(e=>this.toSectionName(e.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let t=this.serviceRegistry.all.map(e=>({section:this.toSectionName(e.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,r[t])})}}this._ready.resolve()}updateConfiguration(e){"object"==typeof e.settings&&null!==e.settings&&Object.entries(e.settings).forEach(([e,t])=>{this.updateSectionConfiguration(e,t),this.onConfigurationSectionUpdateEmitter.fire({section:e,configuration:t})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;let r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},Rc=t_(rh(),1),Rp=e5||(e5={});function Rd(e){return{dispose:tS(async()=>await e(),"dispose")}}tS(Rd,"create"),Rp.create=Rd;var Rf=class{static{tS(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new TW,this.documentPhaseListeners=new TW,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=e3.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=TT.CancellationToken.None){for(let r of e){let e=r.uri.toString();if(r.state===e3.Validated){if("boolean"==typeof t.validation&&t.validation)this.resetToState(r,e3.IndexedReferences);else if("object"==typeof t.validation){let n=this.findMissingValidationCategories(r,t);n.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:{categories:n}},result:this.buildState.get(e)?.result}),r.state=e3.IndexedReferences)}}else this.buildState.delete(e)}this.currentState=e3.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=TT.CancellationToken.None){this.currentState=e3.Changed;let n=[];for(let e of t)for(let t of this.langiumDocuments.deleteDocuments(e))n.push(t.uri),this.cleanUpDeleted(t);let i=(await Promise.all(e.map(e=>this.findChangedUris(e)))).flat();for(let e of i){let t=this.langiumDocuments.getDocument(e);void 0===t&&((t=this.langiumDocumentFactory.fromModel({$type:"INVALID"},e)).state=e3.Changed,this.langiumDocuments.addDocument(t)),this.resetToState(t,e3.Changed)}let a=r_(i).concat(n).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!a.has(e.uri.toString())&&this.shouldRelink(e,a)).forEach(e=>this.resetToState(e,e3.ComputedScopes)),await this.emitUpdate(i,n),await Tk(r);let s=this.sortDocuments(this.langiumDocuments.all.filter(e=>e.state<e3.Validated||!this.buildState.get(e.uri.toString())?.completed||this.resultsAreIncomplete(e,this.updateBuildOptions)).toArray());await this.buildDocuments(s,this.updateBuildOptions,r)}resultsAreIncomplete(e,t){return this.findMissingValidationCategories(e,t).length>=1}findMissingValidationCategories(e,t){let r=this.buildState.get(e.uri.toString()),n=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),i=r?.result?.validationChecks?new Set(r?.result?.validationChecks):r?.completed?n:new Set;return r_(void 0===t||!0===t.validation?n:"object"==typeof t.validation?t.validation.categories??n:[]).filter(e=>!i.has(e)).toArray()}async findChangedUris(e){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let t=await this.fileSystemProvider.stat(e);if(t.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(t))return[e]}catch{}return[]}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){return!!this.textDocuments?.get(e.uri)}shouldRelink(e,t){return!!e.references.some(e=>void 0!==e.error)||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),e5.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}resetToState(e,t){switch(t){case e3.Changed:case e3.Parsed:this.indexManager.removeContent(e.uri);case e3.IndexedContent:e.localSymbols=void 0;case e3.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case e3.Linked:this.indexManager.removeReferences(e.uri);case e3.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case e3.Validated:}e.state>t&&(e.state=t)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=e3.Changed}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,e3.Parsed,r,e=>this.langiumDocumentFactory.update(e,r)),await this.runCancelable(e,e3.IndexedContent,r,e=>this.indexManager.updateContent(e,r)),await this.runCancelable(e,e3.ComputedScopes,r,async e=>{let t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.localSymbols=await t.collectLocalSymbols(e,r)});let n=e.filter(e=>this.shouldLink(e));await this.runCancelable(n,e3.Linked,r,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,r)),await this.runCancelable(n,e3.IndexedReferences,r,e=>this.indexManager.updateReferences(e,r));let i=e.filter(e=>!!this.shouldValidate(e)||(this.markAsCompleted(e),!1));await this.runCancelable(i,e3.Validated,r,async e=>{await this.validate(e,r),this.markAsCompleted(e)})}markAsCompleted(e){let t=this.buildState.get(e.uri.toString());t&&(t.completed=!0)}prepareBuild(e,t){for(let r of e){let e=r.uri.toString(),n=this.buildState.get(e);(!n||n.completed)&&this.buildState.set(e,{completed:!1,options:t,result:n?.result})}}async runCancelable(e,t,r,n){for(let i of e)i.state<t&&(await Tk(r),await n(i),i.state=t,await this.notifyDocumentPhase(i,t,r));let i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),e5.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),e5.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;return(t&&"path"in t?n=t:r=t,r??(r=TT.CancellationToken.None),n)?this.awaitDocumentState(e,n,r):this.awaitBuilderState(e,r)}awaitDocumentState(e,t,r){let n=this.langiumDocuments.getDocument(t);return n?n.state>=e?Promise.resolve(t):r.isCancellationRequested?Promise.reject(TA):this.currentState>=e&&e>n.state?Promise.reject(new Rc.ResponseError(Rc.LSPErrorCodes.RequestFailed,`Document state of ${t.toString()} is ${e3[n.state]}, requiring ${e3[e]}, but workspace state is already ${e3[this.currentState]}. Returning undefined.`)):new Promise((n,i)=>{let a=this.onDocumentPhase(e,e=>{e2.equals(e.uri,t)&&(a.dispose(),s.dispose(),n(e.uri))}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i(TA)})}):Promise.reject(new Rc.ResponseError(Rc.LSPErrorCodes.ServerCancelled,`No document found for URI: ${t.toString()}`))}awaitBuilderState(e,t){return this.currentState>=e?Promise.resolve():t.isCancellationRequested?Promise.reject(TA):new Promise((r,n)=>{let i=this.onBuildPhase(e,()=>{i.dispose(),a.dispose(),r()}),a=t.onCancellationRequested(()=>{i.dispose(),a.dispose(),n(TA)})})}async notifyDocumentPhase(e,t,r){for(let n of this.documentPhaseListeners.get(t).slice())try{await Tk(r),await n(e,r)}catch(e){if(!TS(e))throw e}}async notifyBuildPhase(e,t,r){if(0!==e.length)for(let n of this.buildPhaseListeners.get(t).slice())await Tk(r),await n(e,r)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){let r=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,n=this.getBuildOptions(e),i="object"==typeof n.validation?{...n.validation}:{};i.categories=this.findMissingValidationCategories(e,n);let a=await r.validateDocument(e,i,t);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;let s=this.buildState.get(e.uri.toString());s&&(s.result??(s.result={}),s.result.validationChecks?s.result.validationChecks=r_(s.result.validationChecks).concat(i.categories).distinct().toArray():s.result.validationChecks=[...i.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}},Rh=class{static{tS(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new T0,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let r=rM(e).uri,n=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{e2.equals(e.targetUri,r)&&e.targetPath===t&&n.push(e)})}),r_(n)}allElements(e,t){let r=r_(this.symbolIndex.keys());return t&&(r=r.filter(e=>!t||t.has(e))),r.map(t=>this.getFileDescriptions(t,e)).flat()}getFileDescriptions(e,t){return t?this.symbolByTypeIndex.get(e,t,()=>(this.symbolIndex.get(e)??[]).filter(e=>this.astReflection.isSubtype(e.type,t))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t)}removeReferences(e){let t=e.toString();this.referenceIndex.delete(t)}async updateContent(e,t=TT.CancellationToken.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.references.ScopeComputation.collectExportedSymbols(e,t),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=TT.CancellationToken.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let r=this.referenceIndex.get(e.uri.toString());return!!r&&r.some(e=>!e.local&&t.has(e.targetUri.toString()))}},Rm=class{static{tS(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new Tx,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(e=>this.initializeWorkspace(this.folders??[],e))}async initializeWorkspace(e,t=TT.CancellationToken.None){let r=await this.performStartup(e);await Tk(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){let t=[],r=tS(e=>{t.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)},"collector");await this.loadAdditionalDocuments(e,r);let n=[];await Promise.all(e.map(e=>this.getRootFolder(e)).map(async e=>this.traverseFolder(e,n)));let i=r_(n).distinct(e=>e.toString()).filter(e=>!this.langiumDocuments.hasDocument(e));return await this.loadWorkspaceDocuments(i,r),this._ready.resolve(),t}async loadWorkspaceDocuments(e,t){await Promise.all(e.map(async e=>{t(await this.langiumDocuments.getOrCreateDocument(e))}))}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return TD.parse(e.uri)}async traverseFolder(e,t){try{let r=await this.fileSystemProvider.readDirectory(e);await Promise.all(r.map(async e=>{this.shouldIncludeEntry(e)&&(e.isDirectory?await this.traverseFolder(e.uri,t):e.isFile&&t.push(e.uri))}))}catch(t){console.error("Failure to read directory content of "+e.toString(!0),t)}}async searchFolder(e){let t=[];return await this.traverseFolder(e,t),t}shouldIncludeEntry(e){let t=e2.basename(e.uri);return!t.startsWith(".")&&(e.isDirectory?"node_modules"!==t&&"out"!==t:!!e.isFile&&this.serviceRegistry.hasServices(e.uri))}},Ry=class{static{tS(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,t,r,n,i){return dI.buildUnexpectedCharactersMessage(e,t,r,n,i)}buildUnableToPopLexerModeMessage(e){return dI.buildUnableToPopLexerModeMessage(e)}},Rg={mode:"full"},Rv=class{static{tS(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const r=R$(t)?Object.values(t):t,n="production"===e.LanguageMetaData.mode;this.chevrotainLexer=new dO(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=Rg){let r=this.chevrotainLexer.tokenize(e);return{tokens:r.tokens,errors:r.errors,hidden:r.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(R$(e))return e;let t=RR(e)?Object.values(e.modes).flat():e,r={};return t.forEach(e=>r[e.name]=e),r}};function RT(e){return Array.isArray(e)&&(0===e.length||"name"in e[0])}function RR(e){return e&&"modes"in e&&"defaultMode"in e}function R$(e){return!RT(e)&&!RR(e)}function Rb(e,t,r){let n,i;return"string"==typeof e?(i=t,n=r):(i=e.range.start,n=t),i||(i=R.create(0,0)),RP({index:0,tokens:Rk({lines:RC(e),position:i,options:Rz(n)}),position:i})}function RE(e,t){let r=Rz(t),n=RC(e);if(0===n.length)return!1;let i=n[0],a=n[n.length-1],s=r.start,o=r.end;return!!s?.exec(i)&&!!o?.exec(a)}function RC(e){return("string"==typeof e?e:e.text).split(ai)}tS(RT,"isTokenTypeArray"),tS(RR,"isIMultiModeLexerDefinition"),tS(R$,"isTokenTypeDictionary"),tO(),tS(Rb,"parseJSDoc"),tS(RE,"isJSDoc"),tS(RC,"getLines");var RA=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,RS=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function Rk(e){let t=[],r=e.position.line,n=e.position.character;for(let i=0;i<e.lines.length;i++){let a=0===i,s=i===e.lines.length-1,o=e.lines[i],l=0;if(a&&e.options.start){let t=e.options.start?.exec(o);t&&(l=t.index+t[0].length)}else{let t=e.options.line?.exec(o);t&&(l=t.index+t[0].length)}if(s){let t=e.options.end?.exec(o);t&&(o=o.substring(0,t.index))}if(R_(o=o.substring(0,RI(o)),l)>=o.length){if(t.length>0){let e=R.create(r,n);t.push({type:"break",content:"",range:$.create(e,e)})}}else{RA.lastIndex=l;let e=RA.exec(o);if(e){let i=e[0],a=e[1],s=R.create(r,n+l),u=R.create(r,n+l+i.length);t.push({type:"tag",content:a,range:$.create(s,u)}),l+=i.length,l=R_(o,l)}if(l<o.length){let e=o.substring(l),i=Array.from(e.matchAll(RS));t.push(...Rx(i,e,r,n+l))}}r++,n=0}return t.length>0&&"break"===t[t.length-1].type?t.slice(0,-1):t}function Rx(e,t,r,n){let i=[];if(0===e.length){let e=R.create(r,n),a=R.create(r,n+t.length);i.push({type:"text",content:t,range:$.create(e,a)})}else{let a=0;for(let s of e){let e=s.index,o=t.substring(a,e);o.length>0&&i.push({type:"text",content:t.substring(a,e),range:$.create(R.create(r,a+n),R.create(r,e+n))});let l=o.length+1,u=s[1];if(i.push({type:"inline-tag",content:u,range:$.create(R.create(r,a+l+n),R.create(r,a+l+u.length+n))}),l+=u.length,4===s.length){l+=s[2].length;let e=s[3];i.push({type:"text",content:e,range:$.create(R.create(r,a+l+n),R.create(r,a+l+e.length+n))})}else i.push({type:"text",content:"",range:$.create(R.create(r,a+l+n),R.create(r,a+l+n))});a=e+s[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:$.create(R.create(r,a+n),R.create(r,a+n+s.length))})}return i}tS(Rk,"tokenize"),tS(Rx,"buildInlineTokens");var RN=/\S/,Rw=/\s*$/;function R_(e,t){let r=e.substring(t).match(RN);return r?t+r.index:e.length}function RI(e){let t=e.match(Rw);if(t&&"number"==typeof t.index)return t.index}function RP(e){let t=R.create(e.position.line,e.position.character);if(0===e.tokens.length)return new RG([],$.create(t,t));let r=[];for(;e.index<e.tokens.length;){let t=RO(e,r[r.length-1]);t&&r.push(t)}let n=r[0]?.range.start??t,i=r[r.length-1]?.range.end??t;return new RG(r,$.create(n,i))}function RO(e,t){let r=e.tokens[e.index];return"tag"===r.type?Rj(e,!1):"text"===r.type||"inline-tag"===r.type?RL(e):(RD(r,t),void e.index++)}function RD(e,t){if(t){let r=new RV("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}function RL(e){let t=e.tokens[e.index],r=t,n=t,i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;)i.push(RM(e)),n=t,t=e.tokens[e.index];return new RB(i,$.create(r.range.start,n.range.end))}function RM(e){return"inline-tag"===e.tokens[e.index].type?Rj(e,!0):RF(e)}function Rj(e,t){let r=e.tokens[e.index++],n=r.content.substring(1),i=e.tokens[e.index];if(i?.type==="text")if(t){let i=RF(e);return new RU(n,new RB([i],i.range),t,$.create(r.range.start,i.range.end))}else{let i=RL(e);return new RU(n,i,t,$.create(r.range.start,i.range.end))}{let e=r.range;return new RU(n,new RB([],e),t,e)}}function RF(e){let t=e.tokens[e.index++];return new RV(t.content,t.range)}function Rz(e){if(!e)return Rz({start:"/**",end:"*/",line:"*"});let{start:t,end:r,line:n}=e;return{start:Rq(t,!0),end:Rq(r,!1),line:Rq(n,!0)}}function Rq(e,t){if("string"!=typeof e&&"object"!=typeof e)return e;{let r="string"==typeof e?ap(e):e.source;return t?RegExp(`^\\s*${r}`):RegExp(`\\s*${r}\\s*$`)}}tS(R_,"skipWhitespace"),tS(RI,"lastCharacter"),tS(RP,"parseJSDocComment"),tS(RO,"parseJSDocElement"),tS(RD,"appendEmptyLine"),tS(RL,"parseJSDocText"),tS(RM,"parseJSDocInline"),tS(Rj,"parseJSDocTag"),tS(RF,"parseJSDocLine"),tS(Rz,"normalizeOptions"),tS(Rq,"normalizeOption");var RG=class{static{tS(this,"JSDocCommentImpl")}constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let t of this.elements)if(0===e.length)e=t.toString();else{let r=t.toString();e+=RH(e)+r}return e.trim()}toMarkdown(e){let t="";for(let r of this.elements)if(0===t.length)t=r.toMarkdown(e);else{let n=r.toMarkdown(e);t+=RH(t)+n}return t.trim()}},RU=class{static{tS(this,"JSDocTagImpl")}constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`,t=this.content.toString();return(1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
79
+ ${t}`),this.inline)?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let t=this.content.toMarkdown(e);if(this.inline){let r=RK(this.name,t,e??{});if("string"==typeof r)return r}let r="";e?.tag==="italic"||e?.tag===void 0?r="*":e?.tag==="bold"?r="**":e?.tag==="bold-italic"&&(r="***");let n=`${r}@${this.name}${r}`;return(1===this.content.inlines.length?n=`${n} \u2014 ${t}`:this.content.inlines.length>1&&(n=`${n}
80
+ ${t}`),this.inline)?`{${n}}`:n}};function RK(e,t,r){if("linkplain"===e||"linkcode"===e||"link"===e){let n=t.indexOf(" "),i=t;if(n>0){let e=R_(t,n);i=t.substring(e),t=t.substring(0,n)}return("linkcode"===e||"link"===e&&"code"===r.link)&&(i=`\`${i}\``),r.renderLink?.(t,i)??RW(t,i)}}function RW(e,t){try{return TD.parse(e,!0),`[${t}](${e})`}catch{return e}}tS(RK,"renderInlineTag"),tS(RW,"renderLinkDefault");var RB=class{static{tS(this,"JSDocTextImpl")}constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];t+=n.toMarkdown(e),i&&i.range.start.line>n.range.start.line&&(t+="\n")}return t}},RV=class{static{tS(this,"JSDocLineImpl")}constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}};function RH(e){return e.endsWith("\n")?"\n":"\n\n"}tS(RH,"fillNewlines");var RY=class{static{tS(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let t=this.commentProvider.getComment(e);if(t&&RE(t))return Rb(t).toMarkdown({renderLink:tS((t,r)=>this.documentationLinkRenderer(e,t,r),"renderLink"),renderTag:tS(t=>this.documentationTagRenderer(e,t),"renderTag")})}documentationLinkRenderer(e,t,r){let n=this.findNameInLocalSymbols(e,t)??this.findNameInGlobalScope(e,t);if(n&&n.nameSegment){let e=n.nameSegment.range.start.line+1,t=n.nameSegment.range.start.character+1,i=n.documentUri.with({fragment:`L${e},${t}`});return`[${r}](${i.toString()})`}}documentationTagRenderer(e,t){}findNameInLocalSymbols(e,t){let r=rM(e).localSymbols;if(!r)return;let n=e;do{let e=r.getStream(n).find(e=>e.name===t);if(e)return e;n=n.$container}while(n)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}},RJ=class{static{tS(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return T9(e)?e.$comment:ij(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},RX=class{static{tS(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}},RZ=class{static{tS(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let e=this.createWorker();e.onReady(()=>{if(this.queue.length>0){let t=this.queue.shift();t&&(e.lock(),t.resolve(e))}}),this.workerPool.push(e)}}async parse(e,t){let r,n=await this.acquireParserWorker(t),i=new Tx,a=t.onCancellationRequested(()=>{r=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(e=>{let t=this.hydrator.hydrate(e);i.resolve(t)}).catch(e=>{i.reject(e)}).finally(()=>{a.dispose(),clearTimeout(r)}),i.promise}terminateWorker(e){e.terminate();let t=this.workerPool.indexOf(e);t>=0&&this.workerPool.splice(t,1)}async acquireParserWorker(e){for(let e of(this.initializeWorkers(),this.workerPool))if(e.ready)return e.lock(),e;let t=new Tx;return e.onCancellationRequested(()=>{let e=this.queue.indexOf(t);e>=0&&this.queue.splice(e,1),t.reject(TA)}),this.queue.push(t),t.promise}},RQ=class{static{tS(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,t,r,n){this.onReadyEmitter=new Rl.Emitter,this.deferred=new Tx,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=n,t(e=>{this.deferred.resolve(e),this.unlock()}),r(e=>{this.deferred.reject(e),this.unlock()})}terminate(){this.deferred.reject(TA),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new Tx,this.sendMessage(e),this.deferred.promise}},R0=class{static{tS(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new TT.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let t=TE();return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,r=TT.CancellationToken.None){let n=new Tx;return e.push({action:t,deferred:n,cancellationToken:r}),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let n=await Promise.resolve().then(()=>e(r));t.resolve(n)}catch(e){TS(e)?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},R1=class{static{tS(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new TB,this.tokenTypeIdMap=new TB,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(e=>({...e,message:e.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let t=new Map,r=new Map;for(let r of rG(e))t.set(r,{});if(e.$cstNode)for(let t of iN(e.$cstNode))r.set(t,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))rg(a)?e.push(this.dehydrateAstNode(a,t)):rv(a)?e.push(this.dehydrateReference(a,t)):e.push(a)}else rg(i)?r[n]=this.dehydrateAstNode(i,t):rv(i)?r[n]=this.dehydrateReference(i,t):void 0!==i&&(r[n]=i);return r}dehydrateReference(e,t){let r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){let r=t.cstNodes.get(e);return rA(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,r.astNode=t.astNodes.get(e.astNode),rE(e)?r.content=e.content.map(e=>this.dehydrateCstNode(e,t)):rC(e)&&(r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length,r.startLine=e.range.start.line,r.startColumn=e.range.start.character,r.endLine=e.range.end.line,r.endColumn=e.range.end.character),r}hydrate(e){let t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){let t,r=new Map,n=new Map;for(let t of rG(e))r.set(t,{});if(e.$cstNode)for(let r of iN(e.$cstNode)){let e;"fullText"in r?t=e=new vH(r.fullText):"content"in r?e=new vB:"tokenType"in r&&(e=this.hydrateCstLeafNode(r)),e&&(n.set(r,e),e.root=t)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode&&(r.$cstNode=t.cstNodes.get(e.$cstNode)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))rg(a)?e.push(this.setParent(this.hydrateAstNode(a,t),r)):rv(a)?e.push(this.hydrateReference(a,r,n,t)):e.push(a)}else rg(i)?r[n]=this.setParent(this.hydrateAstNode(i,t),r):rv(i)?r[n]=this.hydrateReference(i,r,n,t):void 0!==i&&(r[n]=i);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){let n=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),n.astNode=t.astNodes.get(e.astNode),rE(n))for(let i of e.content){let e=this.hydrateCstNode(i,t,r++);n.content.push(e)}return n}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new vW(e.offset,e.length,{start:{line:e.startLine,character:e.startColumn},end:{line:e.endLine,character:e.endColumn}},t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of rG(this.grammar))rX(t)&&this.grammarElementIdMap.set(t,e++)}};function R2(e){return{documentation:{CommentProvider:tS(e=>new RJ(e),"CommentProvider"),DocumentationProvider:tS(e=>new RY(e),"DocumentationProvider")},parser:{AsyncParser:tS(e=>new RX(e),"AsyncParser"),GrammarConfig:tS(e=>aQ(e),"GrammarConfig"),LangiumParser:tS(e=>Tm(e),"LangiumParser"),CompletionParser:tS(e=>Th(e),"CompletionParser"),ValueConverter:tS(()=>new Tv,"ValueConverter"),TokenBuilder:tS(()=>new Tg,"TokenBuilder"),Lexer:tS(e=>new Rv(e),"Lexer"),ParserErrorMessageProvider:tS(()=>new v1,"ParserErrorMessageProvider"),LexerErrorMessageProvider:tS(()=>new Ry,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:tS(()=>new Ro,"AstNodeLocator"),AstNodeDescriptionProvider:tS(e=>new Ra(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:tS(e=>new Rs(e),"ReferenceDescriptionProvider")},references:{Linker:tS(e=>new Tq(e),"Linker"),NameProvider:tS(()=>new TU,"NameProvider"),ScopeProvider:tS(e=>new T3(e),"ScopeProvider"),ScopeComputation:tS(e=>new TV(e),"ScopeComputation"),References:tS(e=>new TK(e),"References")},serializer:{Hydrator:tS(e=>new R1(e),"Hydrator"),JsonSerializer:tS(e=>new T5(e),"JsonSerializer")},validation:{DocumentValidator:tS(e=>new Rt(e),"DocumentValidator"),ValidationRegistry:tS(e=>new T6(e),"ValidationRegistry")},shared:tS(()=>e.shared,"shared")}}function R3(e){return{ServiceRegistry:tS(e=>new T8(e),"ServiceRegistry"),workspace:{LangiumDocuments:tS(e=>new TF(e),"LangiumDocuments"),LangiumDocumentFactory:tS(e=>new Tj(e),"LangiumDocumentFactory"),DocumentBuilder:tS(e=>new Rf(e),"DocumentBuilder"),IndexManager:tS(e=>new Rh(e),"IndexManager"),WorkspaceManager:tS(e=>new Rm(e),"WorkspaceManager"),FileSystemProvider:tS(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:tS(()=>new R0,"WorkspaceLock"),ConfigurationProvider:tS(e=>new Ru(e),"ConfigurationProvider")},profilers:{}}}function R9(e,t,r,n,i,a,s,o,l){return R8([e,t,r,n,i,a,s,o,l].reduce($e,{}))}tS(R2,"createDefaultCoreModule"),tS(R3,"createDefaultSharedCoreModule"),(e8||(e8={})).merge=(e,t)=>$e($e({},e),t),tS(R9,"inject");var R4=Symbol("isProxy");function R5(e){if(e&&e[R4])for(let t of Object.values(e))R5(t);return e}function R8(e,t){let r=new Proxy({},{deleteProperty:tS(()=>!1,"deleteProperty"),set:tS(()=>{throw Error("Cannot set property on injected service container")},"set"),get:tS((n,i)=>i===R4||R6(n,i,e,t||r),"get"),getOwnPropertyDescriptor:tS((n,i)=>(R6(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:tS((t,r)=>r in e,"has"),ownKeys:tS(()=>[...Object.getOwnPropertyNames(e)],"ownKeys")});return r}tS(R5,"eagerLoad"),tS(R8,"_inject");var R7=Symbol();function R6(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+e[t]);if(e[t]===R7)throw Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in r){let i=r[t];e[t]=R7;try{e[t]="function"==typeof i?i(n):R8(i,n)}catch(r){throw e[t]=r instanceof Error?r:void 0,r}return e[t]}}function $e(e,t){if(t){for(let[r,n]of Object.entries(t))if(null!=n)if("object"==typeof n){let t=e[r];"object"==typeof t&&null!==t?e[r]=$e(t,n):e[r]=$e({},n)}else e[r]=n}return e}tS(R6,"_resolve"),tS($e,"_merge");var $t={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(m=e7||(e7={})).REGULAR="indentation-sensitive",m.IGNORE_INDENTATION="ignore-indentation";var $r=class extends Tg{static{tS(this,"IndentationAwareTokenBuilder")}constructor(e=$t){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...$t,...e},this.indentTokenType=dW({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=dW({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,t){let r,n,i,a=super.buildTokens(e,t);if(!RT(a))throw Error("Invalid tokens built by default builder");let{indentTokenName:s,dedentTokenName:o,whitespaceTokenName:l,ignoreIndentationDelimiters:u}=this.options,c=[];for(let e of a){for(let[t,r]of u)e.name===t?e.PUSH_MODE=e7.IGNORE_INDENTATION:e.name===r&&(e.POP_MODE=!0);e.name===o?r=e:e.name===s?n=e:e.name===l?i=e:c.push(e)}if(!r||!n||!i)throw Error("Some indentation/whitespace tokens not found!");return u.length>0?{modes:{[e7.REGULAR]:[r,n,...c,i],[e7.IGNORE_INDENTATION]:[...c,i]},defaultMode:e7.REGULAR}:[r,n,i,...c]}flushLexingReport(e){return{...super.flushLexingReport(e),remainingDedents:this.flushRemainingDedents(e)}}isStartOfLine(e,t){return 0===t||"\r\n".includes(e[t-1])}matchWhitespace(e,t,r,n){this.whitespaceRegExp.lastIndex=t;let i=this.whitespaceRegExp.exec(e);return{currIndentLevel:i?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:i}}createIndentationTokenInstance(e,t,r,n){let i=this.getLineNumber(t,n);return dH(e,r,n,n+r.length,i,i,1,r.length)}getLineNumber(e,t){return e.substring(0,t).split(/\r\n|\r|\n/).length}indentMatcher(e,t,r,n){if(!this.isStartOfLine(e,t))return null;let{currIndentLevel:i,prevIndentLevel:a,match:s}=this.matchWhitespace(e,t,r,n);return i<=a?null:(this.indentationStack.push(i),s)}dedentMatcher(e,t,r,n){if(!this.isStartOfLine(e,t))return null;let{currIndentLevel:i,prevIndentLevel:a,match:s}=this.matchWhitespace(e,t,r,n);if(i>=a)return null;let o=this.indentationStack.lastIndexOf(i);if(-1===o)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${i} at offset: ${t}. Current indentation stack: ${this.indentationStack}`,offset:t,length:s?.[0]?.length??0,line:this.getLineNumber(e,t),column:1}),null;let l=this.indentationStack.length-o-1,u=e.substring(0,t).match(/[\r\n]+$/)?.[0].length??1;for(let n=0;n<l;n++){let n=this.createIndentationTokenInstance(this.dedentTokenType,e,"",t-(u-1));r.push(n),this.indentationStack.pop()}return null}buildTerminalToken(e){let t=super.buildTerminalToken(e),{indentTokenName:r,dedentTokenName:n,whitespaceTokenName:i}=this.options;return t.name===r?this.indentTokenType:t.name===n?this.dedentTokenType:t.name===i?dW({name:i,pattern:this.whitespaceRegExp,group:dO.SKIPPED}):t}flushRemainingDedents(e){let t=[];for(;this.indentationStack.length>1;)t.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],t}},$n=class extends Rv{static{tS(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof $r)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,t=Rg){let r=super.tokenize(e),n=r.report;t?.mode==="full"&&r.tokens.push(...n.remainingDedents),n.remainingDedents=[];let{indentTokenType:i,dedentTokenType:a}=this.indentationTokenBuilder,s=i.tokenTypeIdx,o=a.tokenTypeIdx,l=[],u=r.tokens.length-1;for(let e=0;e<u;e++){let t=r.tokens[e],n=r.tokens[e+1];if(t.tokenTypeIdx===s&&n.tokenTypeIdx===o){e++;continue}l.push(t)}return u>=0&&l.push(r.tokens[u]),r.tokens=l,r}},$i={};tx($i,{AstUtils:()=>rP,BiMap:()=>TB,Cancellation:()=>TT,ContextCache:()=>T0,CstUtils:()=>ry,DONE_RESULT:()=>rw,Deferred:()=>Tx,Disposable:()=>e5,DisposableCache:()=>TZ,DocumentCache:()=>T1,EMPTY_STREAM:()=>rN,ErrorWithLocation:()=>iJ,GrammarUtils:()=>iY,MultiMap:()=>TW,OperationCancelled:()=>TA,Reduction:()=>eV,RegExpUtils:()=>iQ,SimpleCache:()=>TQ,StreamImpl:()=>rS,TreeStreamImpl:()=>rI,URI:()=>TD,UriTrie:()=>TM,UriUtils:()=>e2,WorkspaceCache:()=>T2,assertCondition:()=>iZ,assertUnreachable:()=>iX,delayNextTick:()=>TR,interruptAndCheck:()=>Tk,isOperationCancelled:()=>TS,loadGrammarFromJson:()=>$c,setInterruptionPeriod:()=>TC,startCancelableOperation:()=>TE,stream:()=>r_}),tw($i,Rl);var $a=class{static{tS(this,"EmptyFileSystemProvider")}stat(e){throw Error("No file system is available.")}statSync(e){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[]}},$s={fileSystemProvider:tS(()=>new $a,"fileSystemProvider")},$o={Grammar:tS(()=>void 0,"Grammar"),LanguageMetaData:tS(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},$l={AstReflection:tS(()=>new iS,"AstReflection")};function $u(){let e=R9(R3($s),$l),t=R9(R2({shared:e}),$o);return e.ServiceRegistry.register(t),t}function $c(e){let t=$u(),r=t.serializer.JsonSerializer.deserialize(e);return t.shared.workspace.LangiumDocumentFactory.fromModel(r,TD.parse(`memory:/${r.name??"grammar"}.langium`)),r}tS($u,"createMinimalGrammarServices"),tS($c,"loadGrammarFromJson"),tw(rm,$i);var $p=class{static{tS(this,"DefaultLangiumProfiler")}constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new TW}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(e=>this.activeCategories.add(e)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(e=>this.activeCategories.delete(e)):this.activeCategories.clear()}createTask(e,t){if(!this.isActive(e))throw Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${t}'.`),new $d(t=>this.records.add(e,this.dumpRecord(e,t)),t)}dumpRecord(e,t){console.info(`Task ${e}.${t.identifier} executed in ${t.duration.toFixed(2)}ms and ended at ${t.date.toISOString()}`);let r=[];for(let e of t.entries.keys()){let n=t.entries.get(e),i=n.reduce((e,t)=>e+t);r.push({name:`${t.identifier}.${e}`,count:n.length,duration:i})}let n=t.duration-r.map(e=>e.duration).reduce((e,t)=>e+t,0);function i(e){return Math.round(100*e)/100}return r.push({name:t.identifier,count:1,duration:n}),r.sort((e,t)=>t.duration-e.duration),tS(i,"Round"),console.table(r.map(e=>({Element:e.name,Count:e.count,"Self %":i(100*e.duration/t.duration),"Time (ms)":i(e.duration)}))),t}getRecords(...e){return 0===e.length?this.records.values():this.records.entries().filter(t=>e.some(e=>e===t[0])).flatMap(e=>e[1])}},$d=class{static{tS(this,"ProfilingTask")}constructor(e,t){this.stack=[],this.entries=new TW,this.addRecord=e,this.identifier=t}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(e=>e.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let t=this.stack.pop();if(!t)throw Error(`Task "${this.identifier}.${e}" was not started.`);if(t.id!==e)throw Error(`Sub-Task "${t.id}" is not already stopped.`);let r=performance.now()-t.start;void 0!==this.stack.at(-1)&&(this.stack[this.stack.length-1].content+=r);let n=r-t.content;this.entries.add(e,n)}};(e6||(e6={})).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 ]+)\]/},(te||(te={})).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]*/},(tt||(tt={})).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])?/},(tr||(tr={})).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]*/},(tn||(tn={})).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]*/},(ti||(ti={})).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]*/},(ta||(ta={})).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]*/},(ts||(ts={})).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:/"[^"]*"|'[^']*'/},(to||(to={})).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:/"[^"]*"|'[^']*'/},(tl||(tl={})).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]*/},e6.Terminals,te.Terminals,tt.Terminals,tr.Terminals,tn.Terminals,ti.Terminals,ta.Terminals,to.Terminals,ts.Terminals,tl.Terminals;var $f="Architecture";tS(function(e){return $P.isInstance(e,$f)},"isArchitecture");var $h="Axis",$m="Branch";tS(function(e){return $P.isInstance(e,$m)},"isBranch");var $y="Commit";tS(function(e){return $P.isInstance(e,$y)},"isCommit");var $g="EmDataEntity",$v="EmFrame",$T="EmModelEntity";tS(function(e){return"rmo"===e||"readmodel"===e||"ui"===e||"cmd"===e||"command"===e||"evt"===e||"event"===e||"pcr"===e||"processor"===e},"isEmModelEntityType");var $R="EmResetFrame";function $$(e){return $P.isInstance(e,$R)}tS($$,"isEmResetFrame");var $b="GitGraph";tS(function(e){return $P.isInstance(e,$b)},"isGitGraph");var $E="Info";tS(function(e){return $P.isInstance(e,$E)},"isInfo");var $C="Item",$A="Merge";tS(function(e){return $P.isInstance(e,$A)},"isMerge");var $S="Packet";tS(function(e){return $P.isInstance(e,$S)},"isPacket");var $k="PacketBlock";tS(function(e){return $P.isInstance(e,$k)},"isPacketBlock");tS(function(e){return $P.isInstance(e,"Pie")},"isPie");var $x="PieSection";tS(function(e){return $P.isInstance(e,$x)},"isPieSection");var $N="Statement",$w="Treemap";tS(function(e){return $P.isInstance(e,$w)},"isTreemap");var $_="Wardley";tS(function(e){return $P.isInstance(e,$_)},"isWardley");var $I=class extends rb{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:$f,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:$h,properties:{label:{name:"label"},name:{name:"name"}},superTypes:[]},Branch:{name:$m,properties:{name:{name:"name"},order:{name:"order"}},superTypes:[$N]},Checkout:{name:"Checkout",properties:{branch:{name:"branch"}},superTypes:[$N]},CherryPicking:{name:"CherryPicking",properties:{id:{name:"id"},parent:{name:"parent"},tags:{name:"tags",defaultValue:[]}},superTypes:[$N]},ClassDefStatement:{name:"ClassDefStatement",properties:{className:{name:"className"},styleText:{name:"styleText"}},superTypes:[]},Commit:{name:$y,properties:{id:{name:"id"},message:{name:"message"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[$N]},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:[$b]},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:$g,properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},name:{name:"name"}},superTypes:[]},EmFrame:{name:$v,properties:{},superTypes:[]},EmGwt:{name:"EmGwt",properties:{givenStatements:{name:"givenStatements",defaultValue:[]},sourceFrame:{name:"sourceFrame",referenceType:$v},thenStatements:{name:"thenStatements",defaultValue:[]},whenStatements:{name:"whenStatements",defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:"EmGwtStatement",properties:{entityIdentifier:{name:"entityIdentifier",referenceType:$T}},superTypes:[]},EmModelEntity:{name:$T,properties:{name:{name:"name"}},superTypes:[]},EmNoteEntity:{name:"EmNoteEntity",properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},sourceFrame:{name:"sourceFrame",referenceType:$v}},superTypes:[]},EmResetFrame:{name:$R,properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:$g},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:$v}},superTypes:[$v]},EmTimeFrame:{name:"EmTimeFrame",properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:$g},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:$v}},superTypes:[$v]},Entry:{name:"Entry",properties:{axis:{name:"axis",referenceType:$h},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:$b,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:$E,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Item:{name:$C,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:[$C]},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:$A,properties:{branch:{name:"branch"},id:{name:"id"},tags:{name:"tags",defaultValue:[]},type:{name:"type"}},superTypes:[$N]},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:$S,properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},blocks:{name:"blocks",defaultValue:[]},title:{name:"title"}},superTypes:[]},PacketBlock:{name:$k,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:$x,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:[$C]},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:$N,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:$w,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:$_,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{tS(this,"MermaidAstReflection")}},$P=new $I,$O=tS(()=>tu??(tu=$c('{"$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"),$D=tS(()=>tc??(tc=$c('{"$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"),$L=tS(()=>tp??(tp=$c('{"$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"),$M=tS(()=>td??(td=$c('{"$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"),$j=tS(()=>tf??(tf=$c('{"$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"),$F=tS(()=>th??(th=$c('{"$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"),$z=tS(()=>tm??(tm=$c('{"$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"),$q=tS(()=>ty??(ty=$c('{"$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"),$G=tS(()=>tg??(tg=$c('{"$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"),$U=tS(()=>tv??(tv=$c('{"$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"),$K={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$W={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$B={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$V={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$H={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$Y={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$J={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$X={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$Z={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$Q={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$0={AstReflection:tS(()=>new $I,"AstReflection")},$1={Grammar:tS(()=>$O(),"Grammar"),LanguageMetaData:tS(()=>$K,"LanguageMetaData"),parser:{}},$2={Grammar:tS(()=>$D(),"Grammar"),LanguageMetaData:tS(()=>$W,"LanguageMetaData"),parser:{}},$3={Grammar:tS(()=>$L(),"Grammar"),LanguageMetaData:tS(()=>$B,"LanguageMetaData"),parser:{}},$9={Grammar:tS(()=>$M(),"Grammar"),LanguageMetaData:tS(()=>$V,"LanguageMetaData"),parser:{}},$4={Grammar:tS(()=>$j(),"Grammar"),LanguageMetaData:tS(()=>$H,"LanguageMetaData"),parser:{}},$5={Grammar:tS(()=>$F(),"Grammar"),LanguageMetaData:tS(()=>$Y,"LanguageMetaData"),parser:{}},$8={Grammar:tS(()=>$z(),"Grammar"),LanguageMetaData:tS(()=>$J,"LanguageMetaData"),parser:{}},$7={Grammar:tS(()=>$q(),"Grammar"),LanguageMetaData:tS(()=>$X,"LanguageMetaData"),parser:{}},$6={Grammar:tS(()=>$G(),"Grammar"),LanguageMetaData:tS(()=>$Z,"LanguageMetaData"),parser:{}},be={Grammar:tS(()=>$U(),"Grammar"),LanguageMetaData:tS(()=>$Q,"LanguageMetaData"),parser:{}},bt={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},br=class extends Tv{static{tS(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return(void 0===n&&(n=this.runCustomConverter(e,t,r)),void 0===n)?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=bt[e.name];if(void 0===n)return;let i=n.exec(t);if(null!==i){if(void 0!==i[1])return i[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==i[2])return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},bn=class extends br{static{tS(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},bi=class extends Tg{static{tS(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}};(class extends bi{static{tS(this,"CommonTokenBuilder")}})}}]);