@leanspec/ui 0.2.19-dev.21287601001 → 0.2.19-dev.21382316476

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 (413) hide show
  1. package/dist/assets/_baseUniq-CQeRAT5P.js +1 -0
  2. package/dist/assets/_baseUniq-KSDS6tgF-7Gn6uSY9.js +1 -0
  3. package/dist/assets/abap-Y8Dl9g_6-BdImnpbu.js +1 -0
  4. package/dist/assets/actionscript-3-DZzbMeqX-CfeIJUat.js +1 -0
  5. package/dist/assets/ada-vP6ak0IW-bCR0ucgS.js +1 -0
  6. package/dist/assets/andromeeda-BIpZ7gaU-C-Jbm3Hp.js +1 -0
  7. package/dist/assets/angular-html-DPB4Rf0C-BGgsGAY9.js +1 -0
  8. package/dist/assets/angular-ts-CTOR2ofC-k8fsuEIJ.js +1 -0
  9. package/dist/assets/apache-BUjz-sD2-Pmp26Uib.js +1 -0
  10. package/dist/assets/apex-OyTfjCYK-D8_7TLub.js +1 -0
  11. package/dist/assets/apl-CjNiDgad-CT4Sbzkr.js +1 -0
  12. package/dist/assets/applescript-BPx7YFFu-Co6uUVPk.js +1 -0
  13. package/dist/assets/ara-Z2fSOxSw-BRHolxvo.js +1 -0
  14. package/dist/assets/arc-BBkub4A_.js +1 -0
  15. package/dist/assets/arc-C-X5Xt_b-DQOUiVdN.js +1 -0
  16. package/dist/assets/architectureDiagram-VXUJARFQ-Bal8NTn4-DPLxYusq.js +36 -0
  17. package/dist/assets/architectureDiagram-VXUJARFQ-Dlz8s2-e.js +36 -0
  18. package/dist/assets/asciidoc-B-pCoB3G-Dv7Oe6Be.js +1 -0
  19. package/dist/assets/asm-BTWLY5ym-D_Q5rh1f.js +1 -0
  20. package/dist/assets/astro-CFFExE8Q-HUi9-hH-.js +1 -0
  21. package/dist/assets/aurora-x-BwoVEUWZ-D-2ljcwZ.js +1 -0
  22. package/dist/assets/awk-Fb0P9dkn-DMzUqQB5.js +1 -0
  23. package/dist/assets/ayu-dark-DG7aLdHp-CmMr59Fi.js +1 -0
  24. package/dist/assets/ballerina-oZK-YekG-BFfxhgS-.js +1 -0
  25. package/dist/assets/bat-0FvbqU9S-BkioyH1T.js +1 -0
  26. package/dist/assets/beancount-DqJEb89h-k_qm7-4y.js +1 -0
  27. package/dist/assets/berry-DODBq_Ff-uYugtg8r.js +1 -0
  28. package/dist/assets/bibtex-EULQRLY5-CHM0blh-.js +1 -0
  29. package/dist/assets/bicep-BorU73w0-Bmn6On1c.js +1 -0
  30. package/dist/assets/blade-D0HyNvCw-B6w5bG5s.js +1 -0
  31. package/dist/assets/blockDiagram-VD42YOAC-B2gTo5wW-pBkiv_6N.js +122 -0
  32. package/dist/assets/{blockDiagram-VD42YOAC-CcHvDpqc.js → blockDiagram-VD42YOAC-DroSDnTC.js} +4 -4
  33. package/dist/assets/bsl-NkNNwerW-COH_2WFP.js +1 -0
  34. package/dist/assets/c-eeMepfLm-BIGW1oBm.js +1 -0
  35. package/dist/assets/c3-Bt581sCe-VCDPK7BO.js +1 -0
  36. package/dist/assets/{c4Diagram-YG6GDRKO-CXFZDcK1.js → c4Diagram-YG6GDRKO-NL1vRdEm.js} +3 -3
  37. package/dist/assets/c4Diagram-YG6GDRKO-dIf_vNCY-CyL_m9R9.js +10 -0
  38. package/dist/assets/cadence-02UX7mW8-Bv_4Rxtq.js +1 -0
  39. package/dist/assets/cairo-DM6WF2e3-DtzH3ucv.js +1 -0
  40. package/dist/assets/catppuccin-frappe-D3cH2rXe-DFWUc33u.js +1 -0
  41. package/dist/assets/catppuccin-latte-C0LRGUW4-C9dUb6Cb.js +1 -0
  42. package/dist/assets/catppuccin-macchiato-c5wQ11TT-DQyhUUbL.js +1 -0
  43. package/dist/assets/catppuccin-mocha-WMD6Qvya-D87Tk5Gz.js +1 -0
  44. package/dist/assets/channel-PRsvO4F7.js +1 -0
  45. package/dist/assets/channel-klR7o7JB--GRrxarI.js +1 -0
  46. package/dist/assets/chunk-4BX2VUAB-BQgzc1Sm-Dy4agrCz.js +1 -0
  47. package/dist/assets/chunk-4BX2VUAB-TC8G6isw.js +1 -0
  48. package/dist/assets/chunk-55IACEB6-Dd3NjClm-BV9EM6sG.js +1 -0
  49. package/dist/assets/chunk-55IACEB6-eYzOc9WS.js +1 -0
  50. package/dist/assets/chunk-B4BG7PRW-DLUrgkJI-DogWRiCT.js +165 -0
  51. package/dist/assets/{chunk-B4BG7PRW-SWWRfSfx.js → chunk-B4BG7PRW-DnVUp7_8.js} +5 -5
  52. package/dist/assets/chunk-DI55MBZ5-BwHLqSW9-VH9rU0-X.js +220 -0
  53. package/dist/assets/{chunk-DI55MBZ5-DGYi0zbj.js → chunk-DI55MBZ5-D4nUIgvc.js} +3 -3
  54. package/dist/assets/chunk-FMBD7UC4-6dsbMKM7-DfNDKCPd.js +15 -0
  55. package/dist/assets/{chunk-FMBD7UC4-CZASfty3.js → chunk-FMBD7UC4-ByWHQjVA.js} +1 -1
  56. package/dist/assets/chunk-QN33PNHL-C4U1MnPp.js +1 -0
  57. package/dist/assets/chunk-QN33PNHL-DHNejhbC-Dob37sHv.js +1 -0
  58. package/dist/assets/chunk-QZHKN3VN-B3Rt2Why.js +1 -0
  59. package/dist/assets/chunk-QZHKN3VN-CVAEdzef-8qYLwFhJ.js +1 -0
  60. package/dist/assets/chunk-TZMSLE5B-Cc8_PJIq-CL4KZf-k.js +1 -0
  61. package/dist/assets/chunk-TZMSLE5B-rCMdtJet.js +1 -0
  62. package/dist/assets/clarity-PKm5CwqM-D53aC0YG.js +1 -0
  63. package/dist/assets/classDiagram-2ON5EDUG-CDSAP1yv.js +1 -0
  64. package/dist/assets/classDiagram-2ON5EDUG-D7bjndmT-Cvh_uWnL.js +1 -0
  65. package/dist/assets/classDiagram-v2-WZHVMYZB-CDSAP1yv.js +1 -0
  66. package/dist/assets/classDiagram-v2-WZHVMYZB-D7bjndmT-Cvh_uWnL.js +1 -0
  67. package/dist/assets/clojure-CXJfHrL3-P80f7IUj.js +1 -0
  68. package/dist/assets/clone-7srXemyd-Yb5aUWsI.js +1 -0
  69. package/dist/assets/clone-CWfNUcRF.js +1 -0
  70. package/dist/assets/cmake-BJz8BOTU-D1j8_8rp.js +1 -0
  71. package/dist/assets/cobol-HihOMwht-CEH5cA2t.js +1 -0
  72. package/dist/assets/code-block-37QAKDTI-MRm4xHKr-DscZFV8r.js +2 -0
  73. package/dist/assets/codeowners-Bt9yU6NX-Bp6g37R7.js +1 -0
  74. package/dist/assets/codeql-DHkodjjI-DsOJ9woJ.js +1 -0
  75. package/dist/assets/coffee-DGBR_nr_-BGq2hPi0.js +1 -0
  76. package/dist/assets/common-lisp-EVqT9Zhp-Cg-RD9OK.js +1 -0
  77. package/dist/assets/coq-B0L9upzn-DkFqJrB1.js +1 -0
  78. package/dist/assets/cose-bilkent-S5V4N54A-0O3dLIoy-C9Z3z4NS.js +1 -0
  79. package/dist/assets/cose-bilkent-S5V4N54A-CazrSXiw.js +1 -0
  80. package/dist/assets/cpp-Cj177cuW-CX9fafSh.js +1 -0
  81. package/dist/assets/crystal-CRJyc4G--DiK3qIky.js +1 -0
  82. package/dist/assets/csharp-C7yUs7-w-K5feNrxe.js +1 -0
  83. package/dist/assets/css-CECN5uSL-DPfMkruS.js +1 -0
  84. package/dist/assets/csv-CmYOceLb-Co7V7EpZ.js +1 -0
  85. package/dist/assets/cue-ZzumE7IT-D82EKSYY.js +1 -0
  86. package/dist/assets/cypher-jpdmjtA6-COkxafJQ.js +1 -0
  87. package/dist/assets/cytoscape.esm-CjI2IsL8-U70Mzu-N.js +321 -0
  88. package/dist/assets/d-CBagWSwH-85-TOEBH.js +1 -0
  89. package/dist/assets/dagre-6UL2VRFP-BqaZre9N-CZsf1nTB.js +4 -0
  90. package/dist/assets/dagre-6UL2VRFP-D6WrdXUK.js +4 -0
  91. package/dist/assets/dark-plus-pUHDTVV0-C3mMm8J8.js +1 -0
  92. package/dist/assets/dart-6ObCrKr9-CF10PKvl.js +1 -0
  93. package/dist/assets/dax-CcDT-8dH-CEL-wOlO.js +1 -0
  94. package/dist/assets/defaultLocale-D7EN2tov-DTlwZUNI.js +1 -0
  95. package/dist/assets/desktop-B93p9R9O-BmXAJ9_W.js +1 -0
  96. package/dist/assets/diagram-PSM6KHXK-qlmDvAhw.js +24 -0
  97. package/dist/assets/diagram-PSM6KHXK-s2xYLlND-bNUMqgJA.js +24 -0
  98. package/dist/assets/diagram-QEK2KX5R-BU41q0MW.js +43 -0
  99. package/dist/assets/diagram-QEK2KX5R-D700jvoY-Cs4n2Em7.js +43 -0
  100. package/dist/assets/diagram-S2PKOQOG-BkgBSa1Q-uyGoPqna.js +24 -0
  101. package/dist/assets/diagram-S2PKOQOG-BwbkdiiD.js +24 -0
  102. package/dist/assets/diff-BxzP2J8R-D97Zzqfu.js +1 -0
  103. package/dist/assets/docker-CsHqm9tx-BcOcwvcX.js +1 -0
  104. package/dist/assets/dotenv-BMjVjUL1-Da5cRb03.js +1 -0
  105. package/dist/assets/dracula-BtZx2Kac-BzJJZx-M.js +1 -0
  106. package/dist/assets/dracula-soft-BKa-aqBv-BXkSAIEj.js +1 -0
  107. package/dist/assets/dream-maker-PAx17jaB-BtqSS_iP.js +1 -0
  108. package/dist/assets/edge-BYQkOzbF-DYO1BWoQ.js +1 -0
  109. package/dist/assets/elixir-Dh036GMp-Bmki-TVL.js +1 -0
  110. package/dist/assets/elm-BtNbw_Cd-Bp18OckW.js +1 -0
  111. package/dist/assets/emacs-lisp-Cfxdx5D--C9XAeP06.js +1 -0
  112. package/dist/assets/erDiagram-Q2GNP2WA-CXv6THpi-CQLsWNcN.js +60 -0
  113. package/dist/assets/{erDiagram-Q2GNP2WA-Bsvnns9t.js → erDiagram-Q2GNP2WA-DfJigK4u.js} +4 -4
  114. package/dist/assets/erb-CS4zioBv-CIsDXqOo.js +1 -0
  115. package/dist/assets/erlang-DNcDT8Hi-BWqZUIhL.js +1 -0
  116. package/dist/assets/everforest-dark-DMCBqXCK-BgDCqdQA.js +1 -0
  117. package/dist/assets/everforest-light-BbXl82Em-C8M2exoo.js +1 -0
  118. package/dist/assets/fennel-N4WcXuKx-BYunw83y.js +1 -0
  119. package/dist/assets/fish-BTDEUgqH-BvzEVeQv.js +1 -0
  120. package/dist/assets/{flowDiagram-NV44I4VS-BSgYzw-6.js → flowDiagram-NV44I4VS-B4mMI2O1.js} +5 -5
  121. package/dist/assets/flowDiagram-NV44I4VS-Dsrv00Gy-HprBm9Pz.js +162 -0
  122. package/dist/assets/fluent-BMXUxfv1-C4IJs8-o.js +1 -0
  123. package/dist/assets/fortran-fixed-form-B67KFkXH-D1ymqiEx.js +1 -0
  124. package/dist/assets/fortran-free-form-CwqYvCLJ-BxgE0vQu.js +1 -0
  125. package/dist/assets/fsharp-CYOiIVNx-C_zLmMdw.js +1 -0
  126. package/dist/assets/ganttDiagram-JELNMOA3-BgQobHgm.js +267 -0
  127. package/dist/assets/ganttDiagram-JELNMOA3-CqVYbgbk-BwIqfaMz.js +267 -0
  128. package/dist/assets/gdresource-BwtMIoBm-DAu1Gww7.js +1 -0
  129. package/dist/assets/gdscript-BifyeYhI-DTMYz4Jt.js +1 -0
  130. package/dist/assets/gdshader-Bk8fF6yr-DkwncUOv.js +1 -0
  131. package/dist/assets/genie-DzUvd7U9-D0YGMca9.js +1 -0
  132. package/dist/assets/gherkin-DHRaV0YP-DyxjwDmM.js +1 -0
  133. package/dist/assets/git-commit-Bd32YZ0K-DKnZnecv.js +1 -0
  134. package/dist/assets/git-rebase-ZWUFO_T4-PODeWoq4.js +1 -0
  135. package/dist/assets/gitGraphDiagram-NY62KEGX-D967N906.js +65 -0
  136. package/dist/assets/gitGraphDiagram-NY62KEGX-DOanbk62-CyjpirVC.js +65 -0
  137. package/dist/assets/github-dark-DenFmJkN-DHJKELXO.js +1 -0
  138. package/dist/assets/github-dark-default-BJPUVz4H-Cuk6v7N8.js +1 -0
  139. package/dist/assets/github-dark-dimmed-DUshB20C-DH5Ifo-i.js +1 -0
  140. package/dist/assets/github-dark-high-contrast-D3aGCnF8-E3gJ1_iC.js +1 -0
  141. package/dist/assets/github-light-JYsPkUQd-DAi9KRSo.js +1 -0
  142. package/dist/assets/github-light-default-D99KPAby-D7oLnXFd.js +1 -0
  143. package/dist/assets/github-light-high-contrast-BbmZE-Mp-BfjtVDDH.js +1 -0
  144. package/dist/assets/gleam-Bv284lvN-BspZqrRM.js +1 -0
  145. package/dist/assets/glimmer-js-DkxNrfPT-CYvKIGv7.js +1 -0
  146. package/dist/assets/glimmer-ts-D6YZEmK_-BwkeDeeu.js +1 -0
  147. package/dist/assets/glsl-CkUcVZNK-Bf0UjSP5.js +1 -0
  148. package/dist/assets/gn-XtJxiLa4-n2N0HUVH.js +1 -0
  149. package/dist/assets/gnuplot-yPG9-sE_-DdkO51Og.js +1 -0
  150. package/dist/assets/go-ChxJuLYK-Dn2_MT6a.js +1 -0
  151. package/dist/assets/{graph-p4KZdH6f.js → graph-D-sZezjj.js} +1 -1
  152. package/dist/assets/graph-rt_wscbL-BkzytxfK.js +1 -0
  153. package/dist/assets/graphql-CBu2ehBn-Cr253Gy9.js +1 -0
  154. package/dist/assets/groovy-CJQTphOW-gcz8RCvz.js +1 -0
  155. package/dist/assets/gruvbox-dark-hard-C5HOtKIh-CFHQjOhq.js +1 -0
  156. package/dist/assets/gruvbox-dark-medium-FVgwJHuz-GsRaNv29.js +1 -0
  157. package/dist/assets/gruvbox-dark-soft-B46F314v-CVdnzihN.js +1 -0
  158. package/dist/assets/gruvbox-light-hard-CJD38wDZ-CH1njM8p.js +1 -0
  159. package/dist/assets/gruvbox-light-medium-BlIhMYTA-DRw_LuNl.js +1 -0
  160. package/dist/assets/gruvbox-light-soft-DoPHyLVZ-hJgmCMqR.js +1 -0
  161. package/dist/assets/hack-ItRNKiEb-Dz4s7CVj.js +1 -0
  162. package/dist/assets/haml-NZLVzu_R-C8mKtd0e.js +1 -0
  163. package/dist/assets/handlebars-mxStpSE7-B5GnhLue.js +1 -0
  164. package/dist/assets/haskell-WeIwNIP6-Df6bDoY_.js +1 -0
  165. package/dist/assets/haxe-TztHsm5T-CzTSHFRz.js +1 -0
  166. package/dist/assets/hcl-D438OF-I-BWvSN4gD.js +1 -0
  167. package/dist/assets/hjson-DYBUbqOl-D5-asLiD.js +1 -0
  168. package/dist/assets/hlsl-Bk8TCZNL-D3lLCCz7.js +1 -0
  169. package/dist/assets/houston-BDYrDoDW-DnULxvSX.js +1 -0
  170. package/dist/assets/html-B50bmoVb-Cb86E5ej.js +1 -0
  171. package/dist/assets/html-derivative-C6bxFbFW-Iy97gZi_.js +1 -0
  172. package/dist/assets/http-DLvAkeD--BNfsu0Nw.js +1 -0
  173. package/dist/assets/hurl-CgkFN90t-RkzLjdXO.js +1 -0
  174. package/dist/assets/hxml-GbqSQCLa-MyDbT556.js +1 -0
  175. package/dist/assets/hy-Brt5EZ7--DFXneXwc.js +1 -0
  176. package/dist/assets/imba-CimUv-Uh-DGztddWO.js +1 -0
  177. package/dist/assets/index-BP8udSlN.css +1 -0
  178. package/dist/assets/index-CljDzOsD.js +2540 -0
  179. package/dist/assets/infoDiagram-WHAUD3N6-BIfvGm_8.js +2 -0
  180. package/dist/assets/infoDiagram-WHAUD3N6-Fq8ToFQ6-pcE4VjUT.js +2 -0
  181. package/dist/assets/ini-BZIuRIvJ-BEwlwnbL.js +1 -0
  182. package/dist/assets/init-DjUOC4st-DHuO7-vr.js +1 -0
  183. package/dist/assets/java-DY6VlHhP-CylS5w8V.js +1 -0
  184. package/dist/assets/javascript-C25yR2R2-wDzz0qaB.js +1 -0
  185. package/dist/assets/jinja-CFW5uAwY-CRnS6Ysd.js +1 -0
  186. package/dist/assets/jison-DdreslRX-C_aDQymB.js +1 -0
  187. package/dist/assets/journeyDiagram-XKPGCS4Q-BzZgPZwu-BRG80znu.js +139 -0
  188. package/dist/assets/{journeyDiagram-XKPGCS4Q-1GtKQJGQ.js → journeyDiagram-XKPGCS4Q-DcmWYlnJ.js} +4 -4
  189. package/dist/assets/json-DxJze_jm-Cp-IABpG.js +1 -0
  190. package/dist/assets/json5-BT4Fjg39-C9tS-k6U.js +1 -0
  191. package/dist/assets/jsonc-CHjZD8gR-Des-eS-w.js +1 -0
  192. package/dist/assets/jsonl-BGuvDmy9-DcaNXYhu.js +1 -0
  193. package/dist/assets/jsonnet-Bx2cfsXg-DFQXde-d.js +1 -0
  194. package/dist/assets/jssm-BcADi6EI-C2t-YnRu.js +1 -0
  195. package/dist/assets/jsx-BtKADgXT-g9-lgVsj.js +1 -0
  196. package/dist/assets/julia-CZiKXNNP-DuHOepf6.js +1 -0
  197. package/dist/assets/kanagawa-dragon-CiKur4Hl-CkXjmgJE.js +1 -0
  198. package/dist/assets/kanagawa-lotus-BKu-smKu-CfQXZHmo.js +1 -0
  199. package/dist/assets/kanagawa-wave-CQwozSzG-DWedfzmr.js +1 -0
  200. package/dist/assets/{kanban-definition-3W4ZIXB7-D1wEwhzi.js → kanban-definition-3W4ZIXB7-BLFwtVzX.js} +6 -6
  201. package/dist/assets/kanban-definition-3W4ZIXB7-CrmrjRAg-BPpEG97e.js +89 -0
  202. package/dist/assets/kdl-BNOv9TC3-U6gkEhfw.js +1 -0
  203. package/dist/assets/kotlin-ByBMgTeR-BdnUsdx6.js +1 -0
  204. package/dist/assets/kusto-DH_XitHS-DZf3V79B.js +1 -0
  205. package/dist/assets/laserwave-6a00oqik-DUszq2jm.js +1 -0
  206. package/dist/assets/latex-DLWszopg-CIi2Hdhz.js +1 -0
  207. package/dist/assets/{layout-B5dqXwBK.js → layout-COUFj5l3.js} +1 -1
  208. package/dist/assets/layout-CX9neEHw-CGq1_lWY.js +1 -0
  209. package/dist/assets/lean-BnVxaZxY-BZvkOJ9d.js +1 -0
  210. package/dist/assets/less-B1GLI2Di-B1dDrJ26.js +1 -0
  211. package/dist/assets/light-plus-CZuVqSLX-B7mTdjB0.js +1 -0
  212. package/dist/assets/linear-CkUVga7d-C602fyvr.js +1 -0
  213. package/dist/assets/liquid-CHzkx3jT-zQly3uxw.js +1 -0
  214. package/dist/assets/llvm-co1rIKs3-BtvRca6l.js +1 -0
  215. package/dist/assets/log-Al8wyEFV-2UxHyX5q.js +1 -0
  216. package/dist/assets/logo-DBa4JDzV-BtOb2qkB.js +1 -0
  217. package/dist/assets/lua-kX5WP_P5-BiSz3S93.js +1 -0
  218. package/dist/assets/luau-UQyhudEE-C-HG3fhB.js +1 -0
  219. package/dist/assets/make-CsMclxtr-CHLpvVh8.js +1 -0
  220. package/dist/assets/markdown-CrScaQ96-Cvjx9yec.js +1 -0
  221. package/dist/assets/marko-Ns9BYtDO-BWXOr_MP.js +1 -0
  222. package/dist/assets/material-theme-D6KBX41T-D5KoaKCx.js +1 -0
  223. package/dist/assets/material-theme-darker-CkRroheE-BfHTSMKl.js +1 -0
  224. package/dist/assets/material-theme-lighter-BUBw43Yz-B0m2ddpp.js +1 -0
  225. package/dist/assets/material-theme-ocean-ClGX14Ja-CyktbL80.js +1 -0
  226. package/dist/assets/material-theme-palenight-C1RVm8K1-Csfq5Kiy.js +1 -0
  227. package/dist/assets/matlab-BOAaUVP0-D7o27uSR.js +1 -0
  228. package/dist/assets/mdc-uaivvctV-DArzT8kn.js +1 -0
  229. package/dist/assets/mdx-BOhZZUJ8-Cmh6b_Ma.js +1 -0
  230. package/dist/assets/mermaid-C3rz4dYh-mWjccvbQ.js +1 -0
  231. package/dist/assets/min-Ar5ebLd--fvPd2L0o.js +1 -0
  232. package/dist/assets/min-Dfr6rWx0.js +1 -0
  233. package/dist/assets/min-dark-C7ak0t6c-CafNBF8u.js +1 -0
  234. package/dist/assets/min-light-CKFxVcPp-CTRr51gU.js +1 -0
  235. package/dist/assets/{mindmap-definition-VGOIOE7T-CRPjKH9j.js → mindmap-definition-VGOIOE7T-CH6N7AJ9.js} +4 -4
  236. package/dist/assets/mindmap-definition-VGOIOE7T-DeGZNL21-cXloXg94.js +68 -0
  237. package/dist/assets/mipsasm-CTx18fBl-CKIfxQSi.js +1 -0
  238. package/dist/assets/mojo-CgKe2b8g-B93PlW-d.js +1 -0
  239. package/dist/assets/monokai-C1KBYcO0-D4h5O-jR.js +1 -0
  240. package/dist/assets/moonbit-NVPuhMCm-Ba13S78F.js +1 -0
  241. package/dist/assets/move-F-dICmj2-Bu9oaDYs.js +1 -0
  242. package/dist/assets/narrat-DmhDCBs--DRg8JJMk.js +1 -0
  243. package/dist/assets/nextflow-DmSVRGjG-BrzmwbiE.js +1 -0
  244. package/dist/assets/nginx-5vhPAEw3-DWisHew1.js +1 -0
  245. package/dist/assets/night-owl-Bm2rzalh-C39BiMTA.js +1 -0
  246. package/dist/assets/nim-QAjRdh9w-DCY1hsTS.js +1 -0
  247. package/dist/assets/nix-fTRXMGic-CwoSXNpI.js +1 -0
  248. package/dist/assets/nord-CC5OiUXg-Ddv68eIx.js +1 -0
  249. package/dist/assets/nushell-D8j3dhT--C-sUppwS.js +1 -0
  250. package/dist/assets/objective-c-Itk8tzmv-DXmwc3jG.js +1 -0
  251. package/dist/assets/objective-cpp-DGt5UKRO-CLxacb5B.js +1 -0
  252. package/dist/assets/ocaml-eSVK32Eg-C0hk2d4L.js +1 -0
  253. package/dist/assets/one-dark-pro-DTA3VF0_-DVMEJ2y_.js +1 -0
  254. package/dist/assets/one-light-D9sNaUtq-PoHY5YXO.js +1 -0
  255. package/dist/assets/openscad-Sp5uZ6f2-C4EeE6gA.js +1 -0
  256. package/dist/assets/ordinal-DfAQgscy-Pc8f3NoK.js +1 -0
  257. package/dist/assets/pascal-xy8pJNns-D93ZcfNL.js +1 -0
  258. package/dist/assets/perl-DkVrgJBg-BOYFiEPK.js +1 -0
  259. package/dist/assets/php-j2zCzTEz-D4sqbyu8.js +1 -0
  260. package/dist/assets/pieDiagram-ADFJNKIX-C_V2NX6O-B5hplWZm.js +30 -0
  261. package/dist/assets/pieDiagram-ADFJNKIX-IvMHARhR.js +30 -0
  262. package/dist/assets/pkl-C-zSNmaA-u5AG7uiY.js +1 -0
  263. package/dist/assets/plastic-CSTz3KZp-3e1v2bzS.js +1 -0
  264. package/dist/assets/plsql-pVbGZfOv-ChMvpjG-.js +1 -0
  265. package/dist/assets/po-BNfHvqmm-BTJTHyun.js +1 -0
  266. package/dist/assets/poimandres-C-VADXHD-CS3Unz2-.js +1 -0
  267. package/dist/assets/polar-CAZahv3u-C0HS_06l.js +1 -0
  268. package/dist/assets/postcss-05aHdL-n-CXtECtnM.js +1 -0
  269. package/dist/assets/powerquery-DI9HkTvs-CEu0bR-o.js +1 -0
  270. package/dist/assets/powershell-Clc4ydu--Dpen1YoG.js +1 -0
  271. package/dist/assets/prisma-FZjmVtSl-Dd19v3D-.js +1 -0
  272. package/dist/assets/prolog-C5-yg4TO-CbFg5uaA.js +1 -0
  273. package/dist/assets/proto-C7QgialS-C7zT0LnQ.js +1 -0
  274. package/dist/assets/pug-XOw9Q1Ho-ibTSJqKJ.js +1 -0
  275. package/dist/assets/puppet-CUJHmnxV-BMWR74SV.js +1 -0
  276. package/dist/assets/purescript-rUfGld-4-CklMAg4u.js +1 -0
  277. package/dist/assets/python-BFNSHbwJ-B6aJPvgy.js +1 -0
  278. package/dist/assets/qml-rTNXsquU-ChczqDSS.js +1 -0
  279. package/dist/assets/qmldir-BInDYbpo-C8lEn-DE.js +1 -0
  280. package/dist/assets/qss-AeJTysr_-IeuSbFQv.js +1 -0
  281. package/dist/assets/quadrantDiagram-AYHSOK5B-B8fSnYQi-DB-sEXVp.js +7 -0
  282. package/dist/assets/{quadrantDiagram-AYHSOK5B-DgBD0LHr.js → quadrantDiagram-AYHSOK5B-D_qA6rYE.js} +5 -5
  283. package/dist/assets/r-CSmzDPi7-Dspwwk_N.js +1 -0
  284. package/dist/assets/racket-B83wSAja-BqYA7rlc.js +1 -0
  285. package/dist/assets/raku-nEQ4ZJJ7-DXvB9xmW.js +1 -0
  286. package/dist/assets/razor-C5CyrFEt-BEqhH4vI.js +1 -0
  287. package/dist/assets/red-7y8PH7HH-bN70gL4F.js +1 -0
  288. package/dist/assets/reg-m_s_Kiip-C-SQnVFl.js +1 -0
  289. package/dist/assets/regexp-BazyLpPg-CDVJQ6XC.js +1 -0
  290. package/dist/assets/rel-BcRfyd6Q-C3B-1QV4.js +1 -0
  291. package/dist/assets/{requirementDiagram-UZGBJVZJ-Ue1N5uI6.js → requirementDiagram-UZGBJVZJ-CFcr8CJS.js} +3 -3
  292. package/dist/assets/requirementDiagram-UZGBJVZJ-MnXD59Yw-BXKcW0kz.js +64 -0
  293. package/dist/assets/riscv-Ce8MAQLP-BM1_JUlF.js +1 -0
  294. package/dist/assets/rose-pine-BKc3yVeu-qdsjHGoJ.js +1 -0
  295. package/dist/assets/rose-pine-dawn-BulJcPZT-DHQR4-dF.js +1 -0
  296. package/dist/assets/rose-pine-moon-j6jiXKV8-D4_iv3hh.js +1 -0
  297. package/dist/assets/rosmsg-Cz0w1km8-BJDFO7_C.js +1 -0
  298. package/dist/assets/rst-CcbeA9zE-DJw32adD.js +1 -0
  299. package/dist/assets/ruby-DMPw6uKF-che4axXI.js +1 -0
  300. package/dist/assets/rust-CLzF9zIN-B1yitclQ.js +1 -0
  301. package/dist/assets/sankeyDiagram-TZEHDZUN-2StPUADQ.js +10 -0
  302. package/dist/assets/sankeyDiagram-TZEHDZUN-Dfyu7oJ6-BxREyAGc.js +10 -0
  303. package/dist/assets/sas-fpEvgATw-BHxbuS_h.js +1 -0
  304. package/dist/assets/sass-DxHp5rTx-Cj5Yp3dK.js +1 -0
  305. package/dist/assets/scala-D4grkFkl-C151Ov-r.js +1 -0
  306. package/dist/assets/scheme-BCRWuEm4-C98Dy4si.js +1 -0
  307. package/dist/assets/scss-B1FaCqwR-D5j8Lzl0.js +1 -0
  308. package/dist/assets/sdbl-B7T8abf4-DVxCFoDh.js +1 -0
  309. package/dist/assets/{sequenceDiagram-WL72ISMW-Cx7WvY96.js → sequenceDiagram-WL72ISMW-C2DkMi33.js} +1 -1
  310. package/dist/assets/sequenceDiagram-WL72ISMW-D2pgAoWi-BarAOUol.js +145 -0
  311. package/dist/assets/shaderlab-Cr62-Wb4-DBlXx3uy.js +1 -0
  312. package/dist/assets/shellscript-InADTalH-Yzrsuije.js +1 -0
  313. package/dist/assets/shellsession-DiDJNQdy-DyhC3EVy.js +1 -0
  314. package/dist/assets/slack-dark-i7wN4OET-BthQWCQV.js +1 -0
  315. package/dist/assets/slack-ochin-ndHf0LoP-DqwNpetd.js +1 -0
  316. package/dist/assets/smalltalk-BlI1_OkM-BERRCDM3.js +1 -0
  317. package/dist/assets/snazzy-light-BlSJXAu4-Bw305WKR.js +1 -0
  318. package/dist/assets/solarized-dark-UTmkh7lw-DXbdFlpD.js +1 -0
  319. package/dist/assets/solarized-light-BheCkDPT-L9t79GZl.js +1 -0
  320. package/dist/assets/solidity-DUWnFhS6-rGO070M0.js +1 -0
  321. package/dist/assets/soy-C1-6njHa-gzSMiW6X.js +1 -0
  322. package/dist/assets/sparql-B0KWFEri-hRQCfo7w.js +1 -0
  323. package/dist/assets/splunk-CRXR8A9s-BtCnVYZw.js +1 -0
  324. package/dist/assets/sql-Cn_v3PB0-BLtJtn59.js +1 -0
  325. package/dist/assets/ssh-config-DP-hNVbF-_ykCGR6B.js +1 -0
  326. package/dist/assets/stata-B8c5fTjX-C93OJGXX.js +1 -0
  327. package/dist/assets/stateDiagram-FKZM4ZOC-B5OPvJdc.js +1 -0
  328. package/dist/assets/stateDiagram-FKZM4ZOC-DYV-na53-BaKFCeg1.js +1 -0
  329. package/dist/assets/stateDiagram-v2-4FDKWEC3-CiEGx6aZ.js +1 -0
  330. package/dist/assets/stateDiagram-v2-4FDKWEC3-Kp4sxr9o-3IJ8Re4S.js +1 -0
  331. package/dist/assets/stylus-CyKEU1Ej-BEDo0Tqx.js +1 -0
  332. package/dist/assets/svelte-CYf4HR3U-CATdMkt-.js +1 -0
  333. package/dist/assets/swift-9UzSvamq-Dg5xB15N.js +1 -0
  334. package/dist/assets/synthwave-84-NU3C_KFZ-CbfX1IO0.js +1 -0
  335. package/dist/assets/system-verilog-BCm7smPJ-CnnmHF94.js +1 -0
  336. package/dist/assets/systemd-C-4qm6XH-4A_iFExJ.js +1 -0
  337. package/dist/assets/talonscript-CFF3LF_O-Cc6Jm0TJ.js +1 -0
  338. package/dist/assets/tasl-Cg_WBUAe-QIJgUcNo.js +1 -0
  339. package/dist/assets/tcl-DN7buRTF-dwOrl1Do.js +1 -0
  340. package/dist/assets/templ-peLZIM2D-BFctp3GS.js +1 -0
  341. package/dist/assets/terraform-DGvcn9zM-BETggiCN.js +1 -0
  342. package/dist/assets/tex-BvKThJ8p-DLMkzFBl.js +1 -0
  343. package/dist/assets/timeline-definition-IT6M3QCI-621ePKJ0-DsQtYAqE.js +61 -0
  344. package/dist/assets/{timeline-definition-IT6M3QCI-BDpUBa2q.js → timeline-definition-IT6M3QCI-BXBySuQm.js} +4 -4
  345. package/dist/assets/tokyo-night-DP4TmcQl-hegEt444.js +1 -0
  346. package/dist/assets/toml-DY62mUL_-vGWfd6FD.js +1 -0
  347. package/dist/assets/{treemap-KMMF4GRG-CrvgPC7M.js → treemap-KMMF4GRG-8U2mCMWj.js} +1 -1
  348. package/dist/assets/treemap-KMMF4GRG-l6HrdCLC-n20-B8xK.js +128 -0
  349. package/dist/assets/ts-tags-ioVe2PKw-KHYt7rNi.js +1 -0
  350. package/dist/assets/tsv-BtvSkaG0-B_m7g4N7.js +1 -0
  351. package/dist/assets/tsx-B8rCNbgL-COt5Ahok.js +1 -0
  352. package/dist/assets/turtle-_H59FV7D-BsS91CYL.js +1 -0
  353. package/dist/assets/twig-CcRLVyUg-C7btHcUR.js +1 -0
  354. package/dist/assets/typescript-RycA9KXf-BPQ3VLAy.js +1 -0
  355. package/dist/assets/typespec-DWqp-kUU-BGHnOYBU.js +1 -0
  356. package/dist/assets/typst-D_1QKWns-DHCkPAjA.js +1 -0
  357. package/dist/assets/v-BPCNiyYe-BcVCzyr7.js +1 -0
  358. package/dist/assets/vala-uxaPR7d1-CsfeWuGM.js +1 -0
  359. package/dist/assets/vb-D8_c5-KN-D17OF-Vu.js +1 -0
  360. package/dist/assets/verilog-B-bybjPF-BQ8w6xss.js +1 -0
  361. package/dist/assets/vesper-BckBta1U-DU1UobuO.js +1 -0
  362. package/dist/assets/vhdl-CUlNa8ac-CeAyd5Ju.js +1 -0
  363. package/dist/assets/viml-DsfA-sWm-CJc9bBzg.js +1 -0
  364. package/dist/assets/vitesse-black-BoGvW84i-Bkuqu6BP.js +1 -0
  365. package/dist/assets/vitesse-dark-Cym-eLtO-D0r3Knsf.js +1 -0
  366. package/dist/assets/vitesse-light-CcmG315c-CVO1_9PV.js +1 -0
  367. package/dist/assets/vue-DXEmyXn9-Bb3W6Xr4.js +1 -0
  368. package/dist/assets/vue-html-j9xNEdu3-CHybns-J.js +1 -0
  369. package/dist/assets/vue-vine-D41-N99t-CQUxmJgq.js +1 -0
  370. package/dist/assets/vyper-CPQuu50u-CDx5xZoG.js +1 -0
  371. package/dist/assets/wasm-BBXxrAl7-MzD3tlZU.js +1 -0
  372. package/dist/assets/wasm-DQxwEHae-CG6Dc4jp.js +1 -0
  373. package/dist/assets/wenyan-pbVjoM9_-BV7otONQ.js +1 -0
  374. package/dist/assets/wgsl-DY4iK1q1-Dx-B1_4e.js +1 -0
  375. package/dist/assets/wikitext-Z-MoUasO-BhOHFoWU.js +1 -0
  376. package/dist/assets/wit-CQMQOlTg-5i3qLPDT.js +1 -0
  377. package/dist/assets/wolfram-Dz4KXISs-lXgVvXCa.js +1 -0
  378. package/dist/assets/xml-C2J0sS9M-wPCL2nsB.js +1 -0
  379. package/dist/assets/xsl-BmSZphgC-CVyS_1ZI.js +1 -0
  380. package/dist/assets/xychartDiagram-PRI3JC2R-CkfCv2o_-C5wA4cae.js +7 -0
  381. package/dist/assets/{xychartDiagram-PRI3JC2R-D-81GHZv.js → xychartDiagram-PRI3JC2R-toptJ0Dc.js} +3 -3
  382. package/dist/assets/yaml-DaO7k5B1-Buea-lGh.js +1 -0
  383. package/dist/assets/zenscript-CxBjpf9c-DVFEvuxE.js +1 -0
  384. package/dist/assets/zig-Vm0PO9wB-VOosw3JB.js +1 -0
  385. package/dist/index.html +2 -2
  386. package/package.json +39 -6
  387. package/dist/assets/_baseUniq-GfeeBjpM.js +0 -1
  388. package/dist/assets/arc-C_5hjUpb.js +0 -1
  389. package/dist/assets/architectureDiagram-VXUJARFQ-g9KOJ0p0.js +0 -36
  390. package/dist/assets/channel-fYghXzok.js +0 -1
  391. package/dist/assets/chunk-4BX2VUAB-BbjagVgw.js +0 -1
  392. package/dist/assets/chunk-55IACEB6-Bmn9yCJc.js +0 -1
  393. package/dist/assets/chunk-QN33PNHL-DNIvLgz6.js +0 -1
  394. package/dist/assets/chunk-QZHKN3VN-CCFH2wSw.js +0 -1
  395. package/dist/assets/chunk-TZMSLE5B-C1GUUsri.js +0 -1
  396. package/dist/assets/classDiagram-2ON5EDUG-C0_6Vs6U.js +0 -1
  397. package/dist/assets/classDiagram-v2-WZHVMYZB-C0_6Vs6U.js +0 -1
  398. package/dist/assets/clone-rlXPqXdi.js +0 -1
  399. package/dist/assets/cose-bilkent-S5V4N54A-DCP846G8.js +0 -1
  400. package/dist/assets/dagre-6UL2VRFP-CDgBcqwB.js +0 -4
  401. package/dist/assets/diagram-PSM6KHXK-BlWLVt4h.js +0 -24
  402. package/dist/assets/diagram-QEK2KX5R-B9tBC0r6.js +0 -43
  403. package/dist/assets/diagram-S2PKOQOG-BrO802GO.js +0 -24
  404. package/dist/assets/ganttDiagram-JELNMOA3-CG95jDar.js +0 -267
  405. package/dist/assets/gitGraphDiagram-NY62KEGX-Bg7Gbr2K.js +0 -65
  406. package/dist/assets/index-DYYXPAR1.css +0 -1
  407. package/dist/assets/index-EjGWLZso.js +0 -438
  408. package/dist/assets/infoDiagram-WHAUD3N6-DjelOeM5.js +0 -2
  409. package/dist/assets/min-AvYMR5UG.js +0 -1
  410. package/dist/assets/pieDiagram-ADFJNKIX-Xe48KbOS.js +0 -30
  411. package/dist/assets/sankeyDiagram-TZEHDZUN-CqeQJVsz.js +0 -10
  412. package/dist/assets/stateDiagram-FKZM4ZOC-vp1zpzpR.js +0 -1
  413. package/dist/assets/stateDiagram-v2-4FDKWEC3-BUfR7he3.js +0 -1
@@ -0,0 +1,128 @@
1
+ import{ej as bt,p as jd}from"./index-CljDzOsD.js";import{M as st,L as Gd,k as Bd}from"./min-Ar5ebLd--fvPd2L0o.js";import{Z as wo,q as ns,Y as Kd,H as Vd,X as Hd,e as zd}from"./_baseUniq-KSDS6tgF-7Gn6uSY9.js";var Wd=Object.defineProperty,Yd=(t,e,r)=>e in t?Wd(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ct=(t,e,r)=>Yd(t,typeof e!="symbol"?e+"":e,r);function qd(t,e){return Vd(st(t,e))}function Xd(t,e){return t&&t.length?Hd(t,zd(e)):[]}function le(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function We(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function Qd(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Kn(t){return typeof t=="object"&&t!==null&&le(t.container)&&We(t.reference)&&typeof t.message=="string"}class dc{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return le(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const i=n[r];if(i!==void 0)return i;{const s=this.computeIsSubtype(e,r);return n[r]=s,s}}getAllSubTypes(e){const r=this.allSubtypes[e];if(r)return r;{const n=this.getAllTypes(),i=[];for(const s of n)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}}function tn(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function hc(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function pc(t){return tn(t)&&typeof t.fullText=="string"}class re{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){const e=this.iterator();let r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){const e=[],r=this.iterator();let n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){const n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new re(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return $e})}join(e=","){const r=this.iterator();let n="",i,s=!1;do i=r.next(),i.done||(s&&(n+=e),n+=Zd(i.value)),s=!0;while(!i.done);return n}indexOf(e,r=0){const n=this.iterator();let i=0,s=n.next();for(;!s.done;){if(i>=r&&s.value===e)return i;s=n.next(),i++}return-1}every(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new re(this.startFn,r=>{const{done:n,value:i}=this.nextFn(r);return n?$e:{done:!1,value:e(i)}})}filter(e){return new re(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return $e})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){const n=this.iterator();let i=r,s=n.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){const i=e.next();if(i.done)return n;const s=this.recursiveReduce(e,r,n);return s===void 0?i.value:r(s,i.value)}find(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new re(()=>({this:this.startFn()}),r=>{do{if(r.iterator){const s=r.iterator.next();if(s.done)r.iterator=void 0;else return s}const{done:n,value:i}=this.nextFn(r.this);if(!n){const s=e(i);if(si(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(r.iterator);return $e})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const r=e>1?this.flat(e-1):this;return new re(()=>({this:r.startFn()}),n=>{do{if(n.iterator){const a=n.iterator.next();if(a.done)n.iterator=void 0;else return a}const{done:i,value:s}=r.nextFn(n.this);if(!i)if(si(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(n.iterator);return $e})}head(){const e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new re(()=>{const r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new re(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?$e:this.nextFn(r.state)))}distinct(e){return new re(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){const i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return $e})}exclude(e,r){const n=new Set;for(const i of e){const s=r?r(i):i;n.add(s)}return this.filter(i=>{const s=r?r(i):i;return!n.has(s)})}}function Zd(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function si(t){return!!t&&typeof t[Symbol.iterator]=="function"}const Jd=new re(()=>{},()=>$e),$e=Object.freeze({done:!0,value:void 0});function ne(...t){if(t.length===1){const e=t[0];if(e instanceof re)return e;if(si(e))return new re(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new re(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:$e)}return t.length>1?new re(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){const r=t[e.collIndex++];si(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return $e}):Jd}class Da extends re{constructor(e,r,n){super(()=>({iterators:n!=null&&n.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return $e})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Qs;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function r(s){return s.reduce((a,o)=>a*o,0)}t.product=r;function n(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=n;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(Qs||(Qs={}));function Zs(t){return new Da(t,e=>tn(e)?e.content:[],{includeRoot:!0})}function eh(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Js(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function ai(t){if(!t)return;const{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var nt;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(nt||(nt={}));function th(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return nt.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return nt.After;const r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?nt.Inside:r?nt.OverlapBack:n?nt.OverlapFront:nt.Outside}function rh(t,e){return th(t,e)>nt.After}const nh=/^[\w\p{L}]$/u;function ih(t,e){if(t){const r=sh(t,!0);if(r&&bo(r,e))return r;if(pc(t)){const n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){const s=t.content[i];if(bo(s,e))return s}}}}function bo(t,e){return hc(t)&&e.includes(t.tokenType.name)}function sh(t,e=!0){for(;t.container;){const r=t.container;let n=r.content.indexOf(t);for(;n>0;){n--;const i=r.content[n];if(e||!i.hidden)return i}t=r}}class mc extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}}function un(t){throw new Error("Error! The input value was not handled.")}const Rn="AbstractRule",$n="AbstractType",is="Condition",Co="TypeDefinition",ss="ValueLiteral",yr="AbstractElement";function ah(t){return D.isInstance(t,yr)}const En="ArrayLiteral",An="ArrayType",vr="BooleanLiteral";function oh(t){return D.isInstance(t,vr)}const Tr="Conjunction";function lh(t){return D.isInstance(t,Tr)}const Rr="Disjunction";function uh(t){return D.isInstance(t,Rr)}const kn="Grammar",as="GrammarImport",$r="InferredType";function gc(t){return D.isInstance(t,$r)}const Er="Interface";function yc(t){return D.isInstance(t,Er)}const os="NamedArgument",Ar="Negation";function ch(t){return D.isInstance(t,Ar)}const xn="NumberLiteral",Sn="Parameter",kr="ParameterReference";function fh(t){return D.isInstance(t,kr)}const xr="ParserRule";function Ne(t){return D.isInstance(t,xr)}const In="ReferenceType",Vn="ReturnType";function dh(t){return D.isInstance(t,Vn)}const Sr="SimpleType";function hh(t){return D.isInstance(t,Sr)}const wn="StringLiteral",Xt="TerminalRule";function Gt(t){return D.isInstance(t,Xt)}const Ir="Type";function vc(t){return D.isInstance(t,Ir)}const ls="TypeAttribute",bn="UnionType",wr="Action";function Ci(t){return D.isInstance(t,wr)}const br="Alternatives";function Tc(t){return D.isInstance(t,br)}const Cr="Assignment";function Ot(t){return D.isInstance(t,Cr)}const Nr="CharacterRange";function ph(t){return D.isInstance(t,Nr)}const _r="CrossReference";function Ua(t){return D.isInstance(t,_r)}const Lr="EndOfFile";function mh(t){return D.isInstance(t,Lr)}const Or="Group";function Fa(t){return D.isInstance(t,Or)}const Pr="Keyword";function Pt(t){return D.isInstance(t,Pr)}const Mr="NegatedToken";function gh(t){return D.isInstance(t,Mr)}const Dr="RegexToken";function yh(t){return D.isInstance(t,Dr)}const Ur="RuleCall";function Mt(t){return D.isInstance(t,Ur)}const Fr="TerminalAlternatives";function vh(t){return D.isInstance(t,Fr)}const jr="TerminalGroup";function Th(t){return D.isInstance(t,jr)}const Gr="TerminalRuleCall";function Rh(t){return D.isInstance(t,Gr)}const Br="UnorderedGroup";function Rc(t){return D.isInstance(t,Br)}const Kr="UntilToken";function $h(t){return D.isInstance(t,Kr)}const Vr="Wildcard";function Eh(t){return D.isInstance(t,Vr)}class $c extends dc{getAllTypes(){return[yr,Rn,$n,wr,br,En,An,Cr,vr,Nr,is,Tr,_r,Rr,Lr,kn,as,Or,$r,Er,Pr,os,Mr,Ar,xn,Sn,kr,xr,In,Dr,Vn,Ur,Sr,wn,Fr,jr,Xt,Gr,Ir,ls,Co,bn,Br,Kr,ss,Vr]}computeIsSubtype(e,r){switch(e){case wr:case br:case Cr:case Nr:case _r:case Lr:case Or:case Pr:case Mr:case Dr:case Ur:case Fr:case jr:case Gr:case Br:case Kr:case Vr:return this.isSubtype(yr,r);case En:case xn:case wn:return this.isSubtype(ss,r);case An:case In:case Sr:case bn:return this.isSubtype(Co,r);case vr:return this.isSubtype(is,r)||this.isSubtype(ss,r);case Tr:case Rr:case Ar:case kr:return this.isSubtype(is,r);case $r:case Er:case Ir:return this.isSubtype($n,r);case xr:return this.isSubtype(Rn,r)||this.isSubtype($n,r);case Xt:return this.isSubtype(Rn,r);default:return!1}}getReferenceType(e){const r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return $n;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return Rn;case"Grammar:usedGrammars":return kn;case"NamedArgument:parameter":case"ParameterReference:parameter":return Sn;case"TerminalRuleCall:rule":return Xt;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case yr:return{name:yr,properties:[{name:"cardinality"},{name:"lookahead"}]};case En:return{name:En,properties:[{name:"elements",defaultValue:[]}]};case An:return{name:An,properties:[{name:"elementType"}]};case vr:return{name:vr,properties:[{name:"true",defaultValue:!1}]};case Tr:return{name:Tr,properties:[{name:"left"},{name:"right"}]};case Rr:return{name:Rr,properties:[{name:"left"},{name:"right"}]};case kn:return{name:kn,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case as:return{name:as,properties:[{name:"path"}]};case $r:return{name:$r,properties:[{name:"name"}]};case Er:return{name:Er,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case os:return{name:os,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case Ar:return{name:Ar,properties:[{name:"value"}]};case xn:return{name:xn,properties:[{name:"value"}]};case Sn:return{name:Sn,properties:[{name:"name"}]};case kr:return{name:kr,properties:[{name:"parameter"}]};case xr:return{name:xr,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case In:return{name:In,properties:[{name:"referenceType"}]};case Vn:return{name:Vn,properties:[{name:"name"}]};case Sr:return{name:Sr,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case wn:return{name:wn,properties:[{name:"value"}]};case Xt:return{name:Xt,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case Ir:return{name:Ir,properties:[{name:"name"},{name:"type"}]};case ls:return{name:ls,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case bn:return{name:bn,properties:[{name:"types",defaultValue:[]}]};case wr:return{name:wr,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case br:return{name:br,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Cr:return{name:Cr,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case Nr:return{name:Nr,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case _r:return{name:_r,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case Lr:return{name:Lr,properties:[{name:"cardinality"},{name:"lookahead"}]};case Or:return{name:Or,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case Pr:return{name:Pr,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case Mr:return{name:Mr,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Dr:return{name:Dr,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case Ur:return{name:Ur,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Fr:return{name:Fr,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case jr:return{name:jr,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Gr:return{name:Gr,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Br:return{name:Br,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Kr:return{name:Kr,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Vr:return{name:Vr,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}}const D=new $c;function Ah(t){for(const[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{le(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):le(r)&&(r.$container=t,r.$containerProperty=e))}function Ni(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function pt(t){const e=ea(t).$document;if(!e)throw new Error("AST node has no document.");return e}function ea(t){for(;t.$container;)t=t.$container;return t}function ja(t,e){if(!t)throw new Error("Node must be an AstNode.");const r=e?.range;return new re(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){const i=n.keys[n.keyIndex];if(!i.startsWith("$")){const s=t[i];if(le(s)){if(n.keyIndex++,No(s,r))return{done:!1,value:s}}else if(Array.isArray(s)){for(;n.arrayIndex<s.length;){const a=n.arrayIndex++,o=s[a];if(le(o)&&No(o,r))return{done:!1,value:o}}n.arrayIndex=0}}n.keyIndex++}return $e})}function cn(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Da(t,r=>ja(r,e))}function Zt(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Da(t,r=>ja(r,e),{includeRoot:!0})}function No(t,e){var r;if(!e)return!0;const n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?rh(n,e):!1}function Ec(t){return new re(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const r=e.keys[e.keyIndex];if(!r.startsWith("$")){const n=t[r];if(We(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){const i=e.arrayIndex++,s=n[i];if(We(s))return{done:!1,value:{reference:s,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return $e})}function kh(t,e){const r=t.getTypeMetaData(e.$type),n=e;for(const i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=Ac(i.defaultValue))}function Ac(t){return Array.isArray(t)?[...t.map(Ac)]:t}function C(t){return t.charCodeAt(0)}function us(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function hr(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function qt(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function xh(){throw Error("Internal Error - Should never get here!")}function _o(t){return t.type==="Character"}const oi=[];for(let t=C("0");t<=C("9");t++)oi.push(t);const li=[C("_")].concat(oi);for(let t=C("a");t<=C("z");t++)li.push(t);for(let t=C("A");t<=C("Z");t++)li.push(t);const Lo=[C(" "),C("\f"),C(`
2
+ `),C("\r"),C(" "),C("\v"),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C(" "),C("\u2028"),C("\u2029"),C(" "),C(" "),C(" "),C("\uFEFF")],Sh=/[0-9a-fA-F]/,Cn=/[0-9]/,Ih=/[1-9]/;class kc{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("/");const r=this.disjunction();this.consumeChar("/");const n={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":hr(n,"global");break;case"i":hr(n,"ignoreCase");break;case"m":hr(n,"multiLine");break;case"u":hr(n,"unicode");break;case"y":hr(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){const e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){const e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const 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"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}qt(r);const n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return xh()}quantifier(e=!1){let r;const n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":const i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),r={atLeast:i,atMost:s}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;qt(r);break}if(!(e===!0&&r===void 0)&&qt(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e;const r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),qt(e))return e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[C(`
3
+ `),C("\r"),C("\u2028"),C("\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,r=!1;switch(this.popChar()){case"d":e=oi;break;case"D":e=oi,r=!0;break;case"s":e=Lo;break;case"S":e=Lo,r=!0;break;case"w":e=li;break;case"W":e=li,r=!0;break}if(qt(e))return{type:"Set",value:e,complement:r}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=C("\f");break;case"n":e=C(`
4
+ `);break;case"r":e=C("\r");break;case"t":e=C(" ");break;case"v":e=C("\v");break}if(qt(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:C("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:C(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
5
+ `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:const e=this.popChar();return{type:"Character",value:C(e)}}}characterClass(){const e=[];let r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){const n=this.classAtom();if(n.type,_o(n)&&this.isRangeDash()){this.consumeChar("-");const i=this.classAtom();if(i.type,_o(i)){if(i.value<n.value)throw Error("Range out of order in character class");e.push({from:n.value,to:i.value})}else us(n.value,e),e.push(C("-")),us(i.value,e)}else us(n.value,e)}return this.consumeChar("]"),{type:"Set",complement:r,value:e}}classAtom(){switch(this.peekChar()){case"]":case`
6
+ `: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:C("\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++;const r=this.disjunction();this.consumeChar(")");const n={type:"Group",capturing:e,value:r};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();if(Ih.test(e)===!1)throw Error("Expecting a positive integer");for(;Cn.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(Cn.test(e)===!1)throw Error("Expecting an integer");for(;Cn.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){const e=this.popChar();switch(e){case`
7
+ `: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:C(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 Cn.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case`
8
+ `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!");default:return!1}}isQuantifier(){const e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
9
+ `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let r="";for(let n=0;n<e;n++){const i=this.popChar();if(Sh.test(i)===!1)throw Error("Expecting a HexDecimal digits");r+=i}return{type:"Character",value:parseInt(r,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){const e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class _i{visitChildren(e){for(const r in e){const n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}const wh=/\r?\n/gm,bh=new kc;class Ch extends _i{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){const r=String.fromCharCode(e.value);if(!this.multiline&&r===`
10
+ `&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const n=Li(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){const r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!`
11
+ `.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}}const cs=new Ch;function Nh(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),cs.reset(t),cs.visit(bh.pattern(t)),cs.multiline}catch{return!1}}const _h=`\f
12
+ \r \v              \u2028\u2029   \uFEFF`.split("");function ta(t){const e=typeof t=="string"?new RegExp(t):t;return _h.some(r=>e.test(r))}function Li(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Lh(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Li(e)).join("")}function Oh(t,e){const r=Ph(t),n=e.match(r);return!!n&&n[0].length>0}function Ph(t){typeof t=="string"&&(t=new RegExp(t));const e=t,r=t.source;let n=0;function i(){let s="",a;function o(u){s+=r.substr(n,u),n+=u}function l(u){s+="(?:"+r.substr(n,u)+"|$)",n+=u}for(;n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":l(3);break;case"x":l(4);break;case"u":e.unicode?r[n+2]==="{"?l(r.indexOf("}",n)-n+1):l(6):l(2);break;case"p":case"P":e.unicode?l(r.indexOf("}",n)-n+1):l(2);break;case"k":l(r.indexOf(">",n)-n+1);break;default:l(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=n,a=a.exec(r)||[],l(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":o(1);break;case"{":a=/\{\d+,?\d*\}/g,a.lastIndex=n,a=a.exec(r),a?o(a[0].length):l(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":s+="(?:",n+=3,s+=i()+"|$)";break;case"=":s+="(?=",n+=3,s+=i()+")";break;case"!":a=n,n+=3,i(),s+=r.substr(a,n-a);break;case"<":switch(r[n+3]){case"=":case"!":a=n,n+=4,i(),s+=r.substr(a,n-a);break;default:o(r.indexOf(">",n)-n+1),s+=i()+"|$)";break}break}else o(1),s+=i()+"|$)";break;case")":return++n,s;default:l(1);break}return s}return new RegExp(i(),t.flags)}function Mh(t){return t.rules.find(e=>Ne(e)&&e.entry)}function Dh(t){return t.rules.filter(e=>Gt(e)&&e.hidden)}function xc(t,e){const r=new Set,n=Mh(t);if(!n)return new Set(t.rules);const i=[n].concat(Dh(t));for(const a of i)Sc(a,r,e);const s=new Set;for(const a of t.rules)(r.has(a.name)||Gt(a)&&a.hidden)&&s.add(a);return s}function Sc(t,e,r){e.add(t.name),cn(t).forEach(n=>{if(Mt(n)||r){const i=n.rule.ref;i&&!e.has(i.name)&&Sc(i,e,r)}})}function Uh(t){if(t.terminal)return t.terminal;if(t.type.ref){const e=wc(t.type.ref);return e?.terminal}}function Fh(t){return t.hidden&&!ta(Va(t))}function jh(t,e){return!t||!e?[]:Ga(t,e,t.astNode,!0)}function Ic(t,e,r){if(!t||!e)return;const n=Ga(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function Ga(t,e,r,n){if(!n){const i=Ni(t.grammarSource,Ot);if(i&&i.feature===e)return[t]}return tn(t)&&t.astNode===r?t.content.flatMap(i=>Ga(i,e,r,!1)):[]}function Gh(t,e,r){if(!t)return;const n=Bh(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function Bh(t,e,r){if(t.astNode!==r)return[];if(Pt(t.grammarSource)&&t.grammarSource.value===e)return[t];const n=Zs(t).iterator();let i;const s=[];do if(i=n.next(),!i.done){const a=i.value;a.astNode===r?Pt(a.grammarSource)&&a.grammarSource.value===e&&s.push(a):n.prune()}while(!i.done);return s}function Kh(t){var e;const r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){const n=Ni(t.grammarSource,Ot);if(n)return n;t=t.container}}function wc(t){let e=t;return gc(e)&&(Ci(e.$container)?e=e.$container.$container:Ne(e.$container)?e=e.$container:un(e.$container)),bc(t,e,new Map)}function bc(t,e,r){var n;function i(s,a){let o;return Ni(s,Ot)||(o=bc(a,a,r)),r.set(t,o),o}if(r.has(t))return r.get(t);r.set(t,void 0);for(const s of cn(e)){if(Ot(s)&&s.feature.toLowerCase()==="name")return r.set(t,s),s;if(Mt(s)&&Ne(s.rule.ref))return i(s,s.rule.ref);if(hh(s)&&!((n=s.typeRef)===null||n===void 0)&&n.ref)return i(s,s.typeRef.ref)}}function Cc(t){return Nc(t,new Set)}function Nc(t,e){if(e.has(t))return!0;e.add(t);for(const r of cn(t))if(Mt(r)){if(!r.rule.ref||Ne(r.rule.ref)&&!Nc(r.rule.ref,e))return!1}else if(Ot(r)||Ci(r))return!1;return!!t.definition}function Ba(t){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){const e=t.returnType.ref;if(e&&(Ne(e)||yc(e)||vc(e)))return e.name}}function Ka(t){var e;if(Ne(t))return Cc(t)?t.name:(e=Ba(t))!==null&&e!==void 0?e:t.name;if(yc(t)||vc(t)||dh(t))return t.name;if(Ci(t)){const r=Vh(t);if(r)return r}else if(gc(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Vh(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return Ka(t.type.ref)}function Hh(t){var e,r,n;return Gt(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":(n=Ba(t))!==null&&n!==void 0?n:t.name}function Va(t){const e={s:!1,i:!1,u:!1},r=ur(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}const Ha=/[\s\S]/.source;function ur(t,e){if(vh(t))return zh(t);if(Th(t))return Wh(t);if(ph(t))return Xh(t);if(Rh(t)){const r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return at(ur(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(gh(t))return qh(t);if($h(t))return Yh(t);if(yh(t)){const r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),at(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(Eh(t))return at(Ha,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function zh(t){return at(t.elements.map(e=>ur(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function Wh(t){return at(t.elements.map(e=>ur(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function Yh(t){return at(`${Ha}*?${ur(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function qh(t){return at(`(?!${ur(t.terminal)})${Ha}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function Xh(t){return t.right?at(`[${fs(t.left)}-${fs(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):at(fs(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function fs(t){return Li(t.value)}function at(t,e){var r;return(e.wrap!==!1||e.lookahead)&&(t=`(${(r=e.lookahead)!==null&&r!==void 0?r:""}${t})`),e.cardinality?`${t}${e.cardinality}`:t}function Qh(t){const e=[],r=t.Grammar;for(const n of r.rules)Gt(n)&&Fh(n)&&Nh(Va(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:nh}}var _c=typeof global=="object"&&global&&global.Object===Object&&global,Zh=typeof self=="object"&&self&&self.Object===Object&&self,qe=_c||Zh||Function("return this")(),_e=qe.Symbol,Lc=Object.prototype,Jh=Lc.hasOwnProperty,ep=Lc.toString,pr=_e?_e.toStringTag:void 0;function tp(t){var e=Jh.call(t,pr),r=t[pr];try{t[pr]=void 0;var n=!0}catch{}var i=ep.call(t);return n&&(e?t[pr]=r:delete t[pr]),i}var rp=Object.prototype,np=rp.toString;function ip(t){return np.call(t)}var sp="[object Null]",ap="[object Undefined]",Oo=_e?_e.toStringTag:void 0;function Rt(t){return t==null?t===void 0?ap:sp:Oo&&Oo in Object(t)?tp(t):ip(t)}function Ge(t){return t!=null&&typeof t=="object"}var op="[object Symbol]";function Oi(t){return typeof t=="symbol"||Ge(t)&&Rt(t)==op}function Pi(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var P=Array.isArray,Po=_e?_e.prototype:void 0,Mo=Po?Po.toString:void 0;function Oc(t){if(typeof t=="string")return t;if(P(t))return Pi(t,Oc)+"";if(Oi(t))return Mo?Mo.call(t):"";var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}var lp=/\s/;function up(t){for(var e=t.length;e--&&lp.test(t.charAt(e)););return e}var cp=/^\s+/;function fp(t){return t&&t.slice(0,up(t)+1).replace(cp,"")}function Le(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var Do=NaN,dp=/^[-+]0x[0-9a-f]+$/i,hp=/^0b[01]+$/i,pp=/^0o[0-7]+$/i,mp=parseInt;function gp(t){if(typeof t=="number")return t;if(Oi(t))return Do;if(Le(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Le(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=fp(t);var r=hp.test(t);return r||pp.test(t)?mp(t.slice(2),r?2:8):dp.test(t)?Do:+t}var Uo=1/0,yp=17976931348623157e292;function vp(t){if(!t)return t===0?t:0;if(t=gp(t),t===Uo||t===-Uo){var e=t<0?-1:1;return e*yp}return t===t?t:0}function Mi(t){var e=vp(t),r=e%1;return e===e?r?e-r:e:0}function tr(t){return t}var Tp="[object AsyncFunction]",Rp="[object Function]",$p="[object GeneratorFunction]",Ep="[object Proxy]";function ct(t){if(!Le(t))return!1;var e=Rt(t);return e==Rp||e==$p||e==Tp||e==Ep}var ds=qe["__core-js_shared__"],Fo=(function(){var t=/[^.]+$/.exec(ds&&ds.keys&&ds.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Ap(t){return!!Fo&&Fo in t}var kp=Function.prototype,xp=kp.toString;function Bt(t){if(t!=null){try{return xp.call(t)}catch{}try{return t+""}catch{}}return""}var Sp=/[\\^$.*+?()[\]{}|]/g,Ip=/^\[object .+?Constructor\]$/,wp=Function.prototype,bp=Object.prototype,Cp=wp.toString,Np=bp.hasOwnProperty,_p=RegExp("^"+Cp.call(Np).replace(Sp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Lp(t){if(!Le(t)||Ap(t))return!1;var e=ct(t)?_p:Ip;return e.test(Bt(t))}function Op(t,e){return t?.[e]}function Kt(t,e){var r=Op(t,e);return Lp(r)?r:void 0}var ra=Kt(qe,"WeakMap"),jo=Object.create,Pp=(function(){function t(){}return function(e){if(!Le(e))return{};if(jo)return jo(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}})();function Mp(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function X(){}function Dp(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}var Up=800,Fp=16,jp=Date.now;function Gp(t){var e=0,r=0;return function(){var n=jp(),i=Fp-(n-r);if(r=n,i>0){if(++e>=Up)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function Bp(t){return function(){return t}}var ui=(function(){try{var t=Kt(Object,"defineProperty");return t({},"",{}),t}catch{}})(),Kp=ui?function(t,e){return ui(t,"toString",{configurable:!0,enumerable:!1,value:Bp(e),writable:!0})}:tr,Vp=Gp(Kp);function Pc(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}function Mc(t,e,r,n){for(var i=t.length,s=r+-1;++s<i;)if(e(t[s],s,t))return s;return-1}function Hp(t){return t!==t}function zp(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}function za(t,e,r){return e===e?zp(t,e,r):Mc(t,Hp,r)}function Dc(t,e){var r=t==null?0:t.length;return!!r&&za(t,e,0)>-1}var Wp=9007199254740991,Yp=/^(?:0|[1-9]\d*)$/;function Di(t,e){var r=typeof t;return e=e??Wp,!!e&&(r=="number"||r!="symbol"&&Yp.test(t))&&t>-1&&t%1==0&&t<e}function Wa(t,e,r){e=="__proto__"&&ui?ui(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}function fn(t,e){return t===e||t!==t&&e!==e}var qp=Object.prototype,Xp=qp.hasOwnProperty;function Ui(t,e,r){var n=t[e];(!(Xp.call(t,e)&&fn(n,r))||r===void 0&&!(e in t))&&Wa(t,e,r)}function Ya(t,e,r,n){var i=!r;r||(r={});for(var s=-1,a=e.length;++s<a;){var o=e[s],l=void 0;l===void 0&&(l=t[o]),i?Wa(r,o,l):Ui(r,o,l)}return r}var Go=Math.max;function Qp(t,e,r){return e=Go(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,s=Go(n.length-e,0),a=Array(s);++i<s;)a[i]=n[e+i];i=-1;for(var o=Array(e+1);++i<e;)o[i]=n[i];return o[e]=r(a),Mp(t,this,o)}}function qa(t,e){return Vp(Qp(t,e,tr),t+"")}var Zp=9007199254740991;function Xa(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Zp}function Xe(t){return t!=null&&Xa(t.length)&&!ct(t)}function Uc(t,e,r){if(!Le(r))return!1;var n=typeof e;return(n=="number"?Xe(r)&&Di(e,r.length):n=="string"&&e in r)?fn(r[e],t):!1}function Jp(t){return qa(function(e,r){var n=-1,i=r.length,s=i>1?r[i-1]:void 0,a=i>2?r[2]:void 0;for(s=t.length>3&&typeof s=="function"?(i--,s):void 0,a&&Uc(r[0],r[1],a)&&(s=i<3?void 0:s,i=1),e=Object(e);++n<i;){var o=r[n];o&&t(e,o,n,s)}return e})}var em=Object.prototype;function dn(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||em;return t===r}function tm(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}var rm="[object Arguments]";function Bo(t){return Ge(t)&&Rt(t)==rm}var Fc=Object.prototype,nm=Fc.hasOwnProperty,im=Fc.propertyIsEnumerable,Fi=Bo((function(){return arguments})())?Bo:function(t){return Ge(t)&&nm.call(t,"callee")&&!im.call(t,"callee")};function sm(){return!1}var jc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ko=jc&&typeof module=="object"&&module&&!module.nodeType&&module,am=Ko&&Ko.exports===jc,Vo=am?qe.Buffer:void 0,om=Vo?Vo.isBuffer:void 0,rn=om||sm,lm="[object Arguments]",um="[object Array]",cm="[object Boolean]",fm="[object Date]",dm="[object Error]",hm="[object Function]",pm="[object Map]",mm="[object Number]",gm="[object Object]",ym="[object RegExp]",vm="[object Set]",Tm="[object String]",Rm="[object WeakMap]",$m="[object ArrayBuffer]",Em="[object DataView]",Am="[object Float32Array]",km="[object Float64Array]",xm="[object Int8Array]",Sm="[object Int16Array]",Im="[object Int32Array]",wm="[object Uint8Array]",bm="[object Uint8ClampedArray]",Cm="[object Uint16Array]",Nm="[object Uint32Array]",G={};G[Am]=G[km]=G[xm]=G[Sm]=G[Im]=G[wm]=G[bm]=G[Cm]=G[Nm]=!0;G[lm]=G[um]=G[$m]=G[cm]=G[Em]=G[fm]=G[dm]=G[hm]=G[pm]=G[mm]=G[gm]=G[ym]=G[vm]=G[Tm]=G[Rm]=!1;function _m(t){return Ge(t)&&Xa(t.length)&&!!G[Rt(t)]}function ji(t){return function(e){return t(e)}}var Gc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Jr=Gc&&typeof module=="object"&&module&&!module.nodeType&&module,Lm=Jr&&Jr.exports===Gc,hs=Lm&&_c.process,mt=(function(){try{var t=Jr&&Jr.require&&Jr.require("util").types;return t||hs&&hs.binding&&hs.binding("util")}catch{}})(),Ho=mt&&mt.isTypedArray,Qa=Ho?ji(Ho):_m,Om=Object.prototype,Pm=Om.hasOwnProperty;function Bc(t,e){var r=P(t),n=!r&&Fi(t),i=!r&&!n&&rn(t),s=!r&&!n&&!i&&Qa(t),a=r||n||i||s,o=a?tm(t.length,String):[],l=o.length;for(var u in t)(e||Pm.call(t,u))&&!(a&&(u=="length"||i&&(u=="offset"||u=="parent")||s&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Di(u,l)))&&o.push(u);return o}function Kc(t,e){return function(r){return t(e(r))}}var Mm=Kc(Object.keys,Object),Dm=Object.prototype,Um=Dm.hasOwnProperty;function Vc(t){if(!dn(t))return Mm(t);var e=[];for(var r in Object(t))Um.call(t,r)&&r!="constructor"&&e.push(r);return e}function Oe(t){return Xe(t)?Bc(t):Vc(t)}var Fm=Object.prototype,jm=Fm.hasOwnProperty,Ae=Jp(function(t,e){if(dn(e)||Xe(e)){Ya(e,Oe(e),t);return}for(var r in e)jm.call(e,r)&&Ui(t,r,e[r])});function Gm(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var Bm=Object.prototype,Km=Bm.hasOwnProperty;function Vm(t){if(!Le(t))return Gm(t);var e=dn(t),r=[];for(var n in t)n=="constructor"&&(e||!Km.call(t,n))||r.push(n);return r}function Hc(t){return Xe(t)?Bc(t,!0):Vm(t)}var Hm=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,zm=/^\w*$/;function Za(t,e){if(P(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||Oi(t)?!0:zm.test(t)||!Hm.test(t)||e!=null&&t in Object(e)}var nn=Kt(Object,"create");function Wm(){this.__data__=nn?nn(null):{},this.size=0}function Ym(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var qm="__lodash_hash_undefined__",Xm=Object.prototype,Qm=Xm.hasOwnProperty;function Zm(t){var e=this.__data__;if(nn){var r=e[t];return r===qm?void 0:r}return Qm.call(e,t)?e[t]:void 0}var Jm=Object.prototype,eg=Jm.hasOwnProperty;function tg(t){var e=this.__data__;return nn?e[t]!==void 0:eg.call(e,t)}var rg="__lodash_hash_undefined__";function ng(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=nn&&e===void 0?rg:e,this}function Dt(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}Dt.prototype.clear=Wm;Dt.prototype.delete=Ym;Dt.prototype.get=Zm;Dt.prototype.has=tg;Dt.prototype.set=ng;function ig(){this.__data__=[],this.size=0}function Gi(t,e){for(var r=t.length;r--;)if(fn(t[r][0],e))return r;return-1}var sg=Array.prototype,ag=sg.splice;function og(t){var e=this.__data__,r=Gi(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():ag.call(e,r,1),--this.size,!0}function lg(t){var e=this.__data__,r=Gi(e,t);return r<0?void 0:e[r][1]}function ug(t){return Gi(this.__data__,t)>-1}function cg(t,e){var r=this.__data__,n=Gi(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function ft(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}ft.prototype.clear=ig;ft.prototype.delete=og;ft.prototype.get=lg;ft.prototype.has=ug;ft.prototype.set=cg;var sn=Kt(qe,"Map");function fg(){this.size=0,this.__data__={hash:new Dt,map:new(sn||ft),string:new Dt}}function dg(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}function Bi(t,e){var r=t.__data__;return dg(e)?r[typeof e=="string"?"string":"hash"]:r.map}function hg(t){var e=Bi(this,t).delete(t);return this.size-=e?1:0,e}function pg(t){return Bi(this,t).get(t)}function mg(t){return Bi(this,t).has(t)}function gg(t,e){var r=Bi(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}function dt(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}dt.prototype.clear=fg;dt.prototype.delete=hg;dt.prototype.get=pg;dt.prototype.has=mg;dt.prototype.set=gg;var yg="Expected a function";function Ja(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(yg);var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],s=r.cache;if(s.has(i))return s.get(i);var a=t.apply(this,n);return r.cache=s.set(i,a)||s,a};return r.cache=new(Ja.Cache||dt),r}Ja.Cache=dt;var vg=500;function Tg(t){var e=Ja(t,function(n){return r.size===vg&&r.clear(),n}),r=e.cache;return e}var Rg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,$g=/\\(\\)?/g,Eg=Tg(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(Rg,function(r,n,i,s){e.push(i?s.replace($g,"$1"):n||r)}),e});function Ag(t){return t==null?"":Oc(t)}function Ki(t,e){return P(t)?t:Za(t,e)?[t]:Eg(Ag(t))}function hn(t){if(typeof t=="string"||Oi(t))return t;var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}function eo(t,e){e=Ki(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[hn(e[r++])];return r&&r==n?t:void 0}function kg(t,e,r){var n=t==null?void 0:eo(t,e);return n===void 0?r:n}function to(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}var zo=_e?_e.isConcatSpreadable:void 0;function xg(t){return P(t)||Fi(t)||!!(zo&&t&&t[zo])}function ro(t,e,r,n,i){var s=-1,a=t.length;for(r||(r=xg),i||(i=[]);++s<a;){var o=t[s];r(o)?to(i,o):n||(i[i.length]=o)}return i}function Fe(t){var e=t==null?0:t.length;return e?ro(t):[]}var zc=Kc(Object.getPrototypeOf,Object);function Wc(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var s=Array(i);++n<i;)s[n]=t[n+e];return s}function Sg(t,e,r,n){var i=-1,s=t==null?0:t.length;for(n&&s&&(r=t[++i]);++i<s;)r=e(r,t[i],i,t);return r}function Ig(){this.__data__=new ft,this.size=0}function wg(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}function bg(t){return this.__data__.get(t)}function Cg(t){return this.__data__.has(t)}var Ng=200;function _g(t,e){var r=this.__data__;if(r instanceof ft){var n=r.__data__;if(!sn||n.length<Ng-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new dt(n)}return r.set(t,e),this.size=r.size,this}function Ye(t){var e=this.__data__=new ft(t);this.size=e.size}Ye.prototype.clear=Ig;Ye.prototype.delete=wg;Ye.prototype.get=bg;Ye.prototype.has=Cg;Ye.prototype.set=_g;function Lg(t,e){return t&&Ya(e,Oe(e),t)}var Yc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Wo=Yc&&typeof module=="object"&&module&&!module.nodeType&&module,Og=Wo&&Wo.exports===Yc,Yo=Og?qe.Buffer:void 0,qo=Yo?Yo.allocUnsafe:void 0;function Pg(t,e){var r=t.length,n=qo?qo(r):new t.constructor(r);return t.copy(n),n}function no(t,e){for(var r=-1,n=t==null?0:t.length,i=0,s=[];++r<n;){var a=t[r];e(a,r,t)&&(s[i++]=a)}return s}function qc(){return[]}var Mg=Object.prototype,Dg=Mg.propertyIsEnumerable,Xo=Object.getOwnPropertySymbols,io=Xo?function(t){return t==null?[]:(t=Object(t),no(Xo(t),function(e){return Dg.call(t,e)}))}:qc;function Ug(t,e){return Ya(t,io(t),e)}var Fg=Object.getOwnPropertySymbols,jg=Fg?function(t){for(var e=[];t;)to(e,io(t)),t=zc(t);return e}:qc;function Xc(t,e,r){var n=e(t);return P(t)?n:to(n,r(t))}function na(t){return Xc(t,Oe,io)}function Gg(t){return Xc(t,Hc,jg)}var ia=Kt(qe,"DataView"),sa=Kt(qe,"Promise"),Jt=Kt(qe,"Set"),Qo="[object Map]",Bg="[object Object]",Zo="[object Promise]",Jo="[object Set]",el="[object WeakMap]",tl="[object DataView]",Kg=Bt(ia),Vg=Bt(sn),Hg=Bt(sa),zg=Bt(Jt),Wg=Bt(ra),be=Rt;(ia&&be(new ia(new ArrayBuffer(1)))!=tl||sn&&be(new sn)!=Qo||sa&&be(sa.resolve())!=Zo||Jt&&be(new Jt)!=Jo||ra&&be(new ra)!=el)&&(be=function(t){var e=Rt(t),r=e==Bg?t.constructor:void 0,n=r?Bt(r):"";if(n)switch(n){case Kg:return tl;case Vg:return Qo;case Hg:return Zo;case zg:return Jo;case Wg:return el}return e});var Yg=Object.prototype,qg=Yg.hasOwnProperty;function Xg(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&qg.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var ci=qe.Uint8Array;function Qg(t){var e=new t.constructor(t.byteLength);return new ci(e).set(new ci(t)),e}function Zg(t,e){var r=t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Jg=/\w*$/;function ey(t){var e=new t.constructor(t.source,Jg.exec(t));return e.lastIndex=t.lastIndex,e}var rl=_e?_e.prototype:void 0,nl=rl?rl.valueOf:void 0;function ty(t){return nl?Object(nl.call(t)):{}}function ry(t,e){var r=t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var ny="[object Boolean]",iy="[object Date]",sy="[object Map]",ay="[object Number]",oy="[object RegExp]",ly="[object Set]",uy="[object String]",cy="[object Symbol]",fy="[object ArrayBuffer]",dy="[object DataView]",hy="[object Float32Array]",py="[object Float64Array]",my="[object Int8Array]",gy="[object Int16Array]",yy="[object Int32Array]",vy="[object Uint8Array]",Ty="[object Uint8ClampedArray]",Ry="[object Uint16Array]",$y="[object Uint32Array]";function Ey(t,e,r){var n=t.constructor;switch(e){case fy:return Qg(t);case ny:case iy:return new n(+t);case dy:return Zg(t);case hy:case py:case my:case gy:case yy:case vy:case Ty:case Ry:case $y:return ry(t);case sy:return new n;case ay:case uy:return new n(t);case oy:return ey(t);case ly:return new n;case cy:return ty(t)}}function Ay(t){return typeof t.constructor=="function"&&!dn(t)?Pp(zc(t)):{}}var ky="[object Map]";function xy(t){return Ge(t)&&be(t)==ky}var il=mt&&mt.isMap,Sy=il?ji(il):xy,Iy="[object Set]";function wy(t){return Ge(t)&&be(t)==Iy}var sl=mt&&mt.isSet,by=sl?ji(sl):wy,Qc="[object Arguments]",Cy="[object Array]",Ny="[object Boolean]",_y="[object Date]",Ly="[object Error]",Zc="[object Function]",Oy="[object GeneratorFunction]",Py="[object Map]",My="[object Number]",Jc="[object Object]",Dy="[object RegExp]",Uy="[object Set]",Fy="[object String]",jy="[object Symbol]",Gy="[object WeakMap]",By="[object ArrayBuffer]",Ky="[object DataView]",Vy="[object Float32Array]",Hy="[object Float64Array]",zy="[object Int8Array]",Wy="[object Int16Array]",Yy="[object Int32Array]",qy="[object Uint8Array]",Xy="[object Uint8ClampedArray]",Qy="[object Uint16Array]",Zy="[object Uint32Array]",F={};F[Qc]=F[Cy]=F[By]=F[Ky]=F[Ny]=F[_y]=F[Vy]=F[Hy]=F[zy]=F[Wy]=F[Yy]=F[Py]=F[My]=F[Jc]=F[Dy]=F[Uy]=F[Fy]=F[jy]=F[qy]=F[Xy]=F[Qy]=F[Zy]=!0;F[Ly]=F[Zc]=F[Gy]=!1;function Hn(t,e,r,n,i,s){var a;if(a!==void 0)return a;if(!Le(t))return t;var o=P(t);if(o)return a=Xg(t),Dp(t,a);var l=be(t),u=l==Zc||l==Oy;if(rn(t))return Pg(t);if(l==Jc||l==Qc||u&&!i)return a=u?{}:Ay(t),Ug(t,Lg(a,t));if(!F[l])return i?t:{};a=Ey(t,l),s||(s=new Ye);var c=s.get(t);if(c)return c;s.set(t,a),by(t)?t.forEach(function(h){a.add(Hn(h,e,r,h,t,s))}):Sy(t)&&t.forEach(function(h,m){a.set(m,Hn(h,e,r,m,t,s))});var f=na,d=o?void 0:f(t);return Pc(d||t,function(h,m){d&&(m=h,h=t[m]),Ui(a,m,Hn(h,e,r,m,t,s))}),a}var Jy=4;function se(t){return Hn(t,Jy)}function pn(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e<r;){var s=t[e];s&&(i[n++]=s)}return i}var ev="__lodash_hash_undefined__";function tv(t){return this.__data__.set(t,ev),this}function rv(t){return this.__data__.has(t)}function rr(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new dt;++e<r;)this.add(t[e])}rr.prototype.add=rr.prototype.push=tv;rr.prototype.has=rv;function ef(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function so(t,e){return t.has(e)}var nv=1,iv=2;function tf(t,e,r,n,i,s){var a=r&nv,o=t.length,l=e.length;if(o!=l&&!(a&&l>o))return!1;var u=s.get(t),c=s.get(e);if(u&&c)return u==e&&c==t;var f=-1,d=!0,h=r&iv?new rr:void 0;for(s.set(t,e),s.set(e,t);++f<o;){var m=t[f],g=e[f];if(n)var E=a?n(g,m,f,e,t,s):n(m,g,f,t,e,s);if(E!==void 0){if(E)continue;d=!1;break}if(h){if(!ef(e,function(v,$){if(!so(h,$)&&(m===v||i(m,v,r,n,s)))return h.push($)})){d=!1;break}}else if(!(m===g||i(m,g,r,n,s))){d=!1;break}}return s.delete(t),s.delete(e),d}function sv(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}function ao(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var av=1,ov=2,lv="[object Boolean]",uv="[object Date]",cv="[object Error]",fv="[object Map]",dv="[object Number]",hv="[object RegExp]",pv="[object Set]",mv="[object String]",gv="[object Symbol]",yv="[object ArrayBuffer]",vv="[object DataView]",al=_e?_e.prototype:void 0,ps=al?al.valueOf:void 0;function Tv(t,e,r,n,i,s,a){switch(r){case vv:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case yv:return!(t.byteLength!=e.byteLength||!s(new ci(t),new ci(e)));case lv:case uv:case dv:return fn(+t,+e);case cv:return t.name==e.name&&t.message==e.message;case hv:case mv:return t==e+"";case fv:var o=sv;case pv:var l=n&av;if(o||(o=ao),t.size!=e.size&&!l)return!1;var u=a.get(t);if(u)return u==e;n|=ov,a.set(t,e);var c=tf(o(t),o(e),n,i,s,a);return a.delete(t),c;case gv:if(ps)return ps.call(t)==ps.call(e)}return!1}var Rv=1,$v=Object.prototype,Ev=$v.hasOwnProperty;function Av(t,e,r,n,i,s){var a=r&Rv,o=na(t),l=o.length,u=na(e),c=u.length;if(l!=c&&!a)return!1;for(var f=l;f--;){var d=o[f];if(!(a?d in e:Ev.call(e,d)))return!1}var h=s.get(t),m=s.get(e);if(h&&m)return h==e&&m==t;var g=!0;s.set(t,e),s.set(e,t);for(var E=a;++f<l;){d=o[f];var v=t[d],$=e[d];if(n)var T=a?n($,v,d,e,t,s):n(v,$,d,t,e,s);if(!(T===void 0?v===$||i(v,$,r,n,s):T)){g=!1;break}E||(E=d=="constructor")}if(g&&!E){var x=t.constructor,U=e.constructor;x!=U&&"constructor"in t&&"constructor"in e&&!(typeof x=="function"&&x instanceof x&&typeof U=="function"&&U instanceof U)&&(g=!1)}return s.delete(t),s.delete(e),g}var kv=1,ol="[object Arguments]",ll="[object Array]",Nn="[object Object]",xv=Object.prototype,ul=xv.hasOwnProperty;function Sv(t,e,r,n,i,s){var a=P(t),o=P(e),l=a?ll:be(t),u=o?ll:be(e);l=l==ol?Nn:l,u=u==ol?Nn:u;var c=l==Nn,f=u==Nn,d=l==u;if(d&&rn(t)){if(!rn(e))return!1;a=!0,c=!1}if(d&&!c)return s||(s=new Ye),a||Qa(t)?tf(t,e,r,n,i,s):Tv(t,e,l,r,n,i,s);if(!(r&kv)){var h=c&&ul.call(t,"__wrapped__"),m=f&&ul.call(e,"__wrapped__");if(h||m){var g=h?t.value():t,E=m?e.value():e;return s||(s=new Ye),i(g,E,r,n,s)}}return d?(s||(s=new Ye),Av(t,e,r,n,i,s)):!1}function oo(t,e,r,n,i){return t===e?!0:t==null||e==null||!Ge(t)&&!Ge(e)?t!==t&&e!==e:Sv(t,e,r,n,oo,i)}var Iv=1,wv=2;function bv(t,e,r,n){var i=r.length,s=i;if(t==null)return!s;for(t=Object(t);i--;){var a=r[i];if(a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++i<s;){a=r[i];var o=a[0],l=t[o],u=a[1];if(a[2]){if(l===void 0&&!(o in t))return!1}else{var c=new Ye,f;if(!(f===void 0?oo(u,l,Iv|wv,n,c):f))return!1}}return!0}function rf(t){return t===t&&!Le(t)}function Cv(t){for(var e=Oe(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,rf(i)]}return e}function nf(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}function Nv(t){var e=Cv(t);return e.length==1&&e[0][2]?nf(e[0][0],e[0][1]):function(r){return r===t||bv(r,t,e)}}function _v(t,e){return t!=null&&e in Object(t)}function sf(t,e,r){e=Ki(e,t);for(var n=-1,i=e.length,s=!1;++n<i;){var a=hn(e[n]);if(!(s=t!=null&&r(t,a)))break;t=t[a]}return s||++n!=i?s:(i=t==null?0:t.length,!!i&&Xa(i)&&Di(a,i)&&(P(t)||Fi(t)))}function Lv(t,e){return t!=null&&sf(t,e,_v)}var Ov=1,Pv=2;function Mv(t,e){return Za(t)&&rf(e)?nf(hn(t),e):function(r){var n=kg(r,t);return n===void 0&&n===e?Lv(r,t):oo(e,n,Ov|Pv)}}function Dv(t){return function(e){return e?.[t]}}function Uv(t){return function(e){return eo(e,t)}}function Fv(t){return Za(t)?Dv(hn(t)):Uv(t)}function Qe(t){return typeof t=="function"?t:t==null?tr:typeof t=="object"?P(t)?Mv(t[0],t[1]):Nv(t):Fv(t)}function jv(t,e,r,n){for(var i=-1,s=t==null?0:t.length;++i<s;){var a=t[i];e(n,a,r(a),t)}return n}function Gv(t){return function(e,r,n){for(var i=-1,s=Object(e),a=n(e),o=a.length;o--;){var l=a[++i];if(r(s[l],l,s)===!1)break}return e}}var Bv=Gv();function Kv(t,e){return t&&Bv(t,e,Oe)}function Vv(t,e){return function(r,n){if(r==null)return r;if(!Xe(r))return t(r,n);for(var i=r.length,s=-1,a=Object(r);++s<i&&n(a[s],s,a)!==!1;);return r}}var Vt=Vv(Kv);function Hv(t,e,r,n){return Vt(t,function(i,s,a){e(n,i,r(i),a)}),n}function zv(t,e){return function(r,n){var i=P(r)?jv:Hv,s={};return i(r,t,Qe(n),s)}}var af=Object.prototype,Wv=af.hasOwnProperty,lo=qa(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&Uc(e[0],e[1],i)&&(n=1);++r<n;)for(var s=e[r],a=Hc(s),o=-1,l=a.length;++o<l;){var u=a[o],c=t[u];(c===void 0||fn(c,af[u])&&!Wv.call(t,u))&&(t[u]=s[u])}return t});function cl(t){return Ge(t)&&Xe(t)}var Yv=200;function qv(t,e,r,n){var i=-1,s=Dc,a=!0,o=t.length,l=[],u=e.length;if(!o)return l;e.length>=Yv&&(s=so,a=!1,e=new rr(e));e:for(;++i<o;){var c=t[i],f=c;if(c=c!==0?c:0,a&&f===f){for(var d=u;d--;)if(e[d]===f)continue e;l.push(c)}else s(e,f,n)||l.push(c)}return l}var Vi=qa(function(t,e){return cl(t)?qv(t,ro(e,1,cl,!0)):[]});function nr(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}function te(t,e,r){var n=t==null?0:t.length;return n?(e=e===void 0?1:Mi(e),Wc(t,e<0?0:e,n)):[]}function an(t,e,r){var n=t==null?0:t.length;return n?(e=e===void 0?1:Mi(e),e=n-e,Wc(t,0,e<0?0:e)):[]}function Xv(t){return typeof t=="function"?t:tr}function b(t,e){var r=P(t)?Pc:Vt;return r(t,Xv(e))}function Qv(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(!e(t[r],r,t))return!1;return!0}function Zv(t,e){var r=!0;return Vt(t,function(n,i,s){return r=!!e(n,i,s),r}),r}function je(t,e,r){var n=P(t)?Qv:Zv;return n(t,Qe(e))}function of(t,e){var r=[];return Vt(t,function(n,i,s){e(n,i,s)&&r.push(n)}),r}function Pe(t,e){var r=P(t)?no:of;return r(t,Qe(e))}function Jv(t){return function(e,r,n){var i=Object(e);if(!Xe(e)){var s=Qe(r);e=Oe(e),r=function(o){return s(i[o],o,i)}}var a=t(e,r,n);return a>-1?i[s?e[a]:a]:void 0}}var eT=Math.max;function tT(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:Mi(r);return i<0&&(i=eT(n+i,0)),Mc(t,Qe(e),i)}var ir=Jv(tT);function Be(t){return t&&t.length?t[0]:void 0}function rT(t,e){var r=-1,n=Xe(t)?Array(t.length):[];return Vt(t,function(i,s,a){n[++r]=e(i,s,a)}),n}function I(t,e){var r=P(t)?Pi:rT;return r(t,Qe(e))}function Ce(t,e){return ro(I(t,e))}var nT=Object.prototype,iT=nT.hasOwnProperty,sT=zv(function(t,e,r){iT.call(t,r)?t[r].push(e):Wa(t,r,[e])}),aT=Object.prototype,oT=aT.hasOwnProperty;function lT(t,e){return t!=null&&oT.call(t,e)}function w(t,e){return t!=null&&sf(t,e,lT)}var uT="[object String]";function pe(t){return typeof t=="string"||!P(t)&&Ge(t)&&Rt(t)==uT}function cT(t,e){return Pi(e,function(r){return t[r]})}function Q(t){return t==null?[]:cT(t,Oe(t))}var fT=Math.max;function de(t,e,r,n){t=Xe(t)?t:Q(t),r=r?Mi(r):0;var i=t.length;return r<0&&(r=fT(i+r,0)),pe(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&za(t,e,r)>-1}function fl(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=0;return za(t,e,i)}var dT="[object Map]",hT="[object Set]",pT=Object.prototype,mT=pT.hasOwnProperty;function j(t){if(t==null)return!0;if(Xe(t)&&(P(t)||typeof t=="string"||typeof t.splice=="function"||rn(t)||Qa(t)||Fi(t)))return!t.length;var e=be(t);if(e==dT||e==hT)return!t.size;if(dn(t))return!Vc(t).length;for(var r in t)if(mT.call(t,r))return!1;return!0}var gT="[object RegExp]";function yT(t){return Ge(t)&&Rt(t)==gT}var dl=mt&&mt.isRegExp,ot=dl?ji(dl):yT;function lt(t){return t===void 0}var vT="Expected a function";function TT(t){if(typeof t!="function")throw new TypeError(vT);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}function RT(t,e,r,n){if(!Le(t))return t;e=Ki(e,t);for(var i=-1,s=e.length,a=s-1,o=t;o!=null&&++i<s;){var l=hn(e[i]),u=r;if(l==="__proto__"||l==="constructor"||l==="prototype")return t;if(i!=a){var c=o[l];u=void 0,u===void 0&&(u=Le(c)?c:Di(e[i+1])?[]:{})}Ui(o,l,u),o=o[l]}return t}function $T(t,e,r){for(var n=-1,i=e.length,s={};++n<i;){var a=e[n],o=eo(t,a);r(o,a)&&RT(s,Ki(a,t),o)}return s}function Ke(t,e){if(t==null)return{};var r=Pi(Gg(t),function(n){return[n]});return e=Qe(e),$T(t,r,function(n,i){return e(n,i[0])})}function ET(t,e,r,n,i){return i(t,function(s,a,o){r=n?(n=!1,s):e(r,s,a,o)}),r}function ke(t,e,r){var n=P(t)?Sg:ET,i=arguments.length<3;return n(t,Qe(e),r,i,Vt)}function Hi(t,e){var r=P(t)?no:of;return r(t,TT(Qe(e)))}function AT(t,e){var r;return Vt(t,function(n,i,s){return r=e(n,i,s),!r}),!!r}function lf(t,e,r){var n=P(t)?ef:AT;return n(t,Qe(e))}var kT=1/0,xT=Jt&&1/ao(new Jt([,-0]))[1]==kT?function(t){return new Jt(t)}:X,ST=200;function IT(t,e,r){var n=-1,i=Dc,s=t.length,a=!0,o=[],l=o;if(s>=ST){var u=xT(t);if(u)return ao(u);a=!1,i=so,l=new rr}else l=o;e:for(;++n<s;){var c=t[n],f=c;if(c=c!==0?c:0,a&&f===f){for(var d=l.length;d--;)if(l[d]===f)continue e;o.push(c)}else i(l,f,r)||(l!==o&&l.push(f),o.push(c))}return o}function uo(t){return t&&t.length?IT(t):[]}function aa(t){console&&console.error&&console.error(`Error: ${t}`)}function uf(t){console&&console.warn&&console.warn(`Warning: ${t}`)}function cf(t){const e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}function ff(t){function e(){}e.prototype=t;const r=new e;function n(){return typeof r.bar}return n(),n(),t}function wT(t){return bT(t)?t.LABEL:t.name}function bT(t){return pe(t.LABEL)&&t.LABEL!==""}class Ze{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),b(this.definition,r=>{r.accept(e)})}}class ce extends Ze{constructor(e){super([]),this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class cr extends Ze{constructor(e){super(e.definition),this.orgText="",Ae(this,Ke(e,r=>r!==void 0))}}class me extends Ze{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Ae(this,Ke(e,r=>r!==void 0))}}let ie=class extends Ze{constructor(t){super(t.definition),this.idx=1,Ae(this,Ke(t,e=>e!==void 0))}};class xe extends Ze{constructor(e){super(e.definition),this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}}class Se extends Ze{constructor(e){super(e.definition),this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}}class W extends Ze{constructor(e){super(e.definition),this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}}class ge extends Ze{constructor(e){super(e.definition),this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}}class ye extends Ze{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,Ae(this,Ke(e,r=>r!==void 0))}}class B{constructor(e){this.idx=1,Ae(this,Ke(e,r=>r!==void 0))}accept(e){e.visit(this)}}function CT(t){return I(t,zn)}function zn(t){function e(r){return I(r,zn)}if(t instanceof ce){const r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return pe(t.label)&&(r.label=t.label),r}else{if(t instanceof me)return{type:"Alternative",definition:e(t.definition)};if(t instanceof ie)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof xe)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Se)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:zn(new B({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof ge)return{type:"RepetitionWithSeparator",idx:t.idx,separator:zn(new B({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof W)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof ye)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof B){const r={type:"Terminal",name:t.terminalType.name,label:wT(t.terminalType),idx:t.idx};pe(t.label)&&(r.terminalLabel=t.label);const n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=ot(n)?n.source:n),r}else{if(t instanceof cr)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}class fr{visit(e){const r=e;switch(r.constructor){case ce:return this.visitNonTerminal(r);case me:return this.visitAlternative(r);case ie:return this.visitOption(r);case xe:return this.visitRepetitionMandatory(r);case Se:return this.visitRepetitionMandatoryWithSeparator(r);case ge:return this.visitRepetitionWithSeparator(r);case W:return this.visitRepetition(r);case ye:return this.visitAlternation(r);case B:return this.visitTerminal(r);case cr:return this.visitRule(r);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 NT(t){return t instanceof me||t instanceof ie||t instanceof W||t instanceof xe||t instanceof Se||t instanceof ge||t instanceof B||t instanceof cr}function fi(t,e=[]){return t instanceof ie||t instanceof W||t instanceof ge?!0:t instanceof ye?lf(t.definition,r=>fi(r,e)):t instanceof ce&&de(e,t)?!1:t instanceof Ze?(t instanceof ce&&e.push(t),je(t.definition,r=>fi(r,e))):!1}function _T(t){return t instanceof ye}function ze(t){if(t instanceof ce)return"SUBRULE";if(t instanceof ie)return"OPTION";if(t instanceof ye)return"OR";if(t instanceof xe)return"AT_LEAST_ONE";if(t instanceof Se)return"AT_LEAST_ONE_SEP";if(t instanceof ge)return"MANY_SEP";if(t instanceof W)return"MANY";if(t instanceof B)return"CONSUME";throw Error("non exhaustive match")}class zi{walk(e,r=[]){b(e.definition,(n,i)=>{const s=te(e.definition,i+1);if(n instanceof ce)this.walkProdRef(n,s,r);else if(n instanceof B)this.walkTerminal(n,s,r);else if(n instanceof me)this.walkFlat(n,s,r);else if(n instanceof ie)this.walkOption(n,s,r);else if(n instanceof xe)this.walkAtLeastOne(n,s,r);else if(n instanceof Se)this.walkAtLeastOneSep(n,s,r);else if(n instanceof ge)this.walkManySep(n,s,r);else if(n instanceof W)this.walkMany(n,s,r);else if(n instanceof ye)this.walkOr(n,s,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){const i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){const i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){const i=[new ie({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){const i=hl(e,r,n);this.walk(e,i)}walkMany(e,r,n){const i=[new ie({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){const i=hl(e,r,n);this.walk(e,i)}walkOr(e,r,n){const i=r.concat(n);b(e.definition,s=>{const a=new me({definition:[s]});this.walk(a,i)})}}function hl(t,e,r){return[new ie({definition:[new B({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}function mn(t){if(t instanceof ce)return mn(t.referencedRule);if(t instanceof B)return PT(t);if(NT(t))return LT(t);if(_T(t))return OT(t);throw Error("non exhaustive match")}function LT(t){let e=[];const r=t.definition;let n=0,i=r.length>n,s,a=!0;for(;i&&a;)s=r[n],a=fi(s),e=e.concat(mn(s)),n=n+1,i=r.length>n;return uo(e)}function OT(t){const e=I(t.definition,r=>mn(r));return uo(Fe(e))}function PT(t){return[t.terminalType]}const df="_~IN~_";class MT extends zi{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){const i=UT(e.referencedRule,e.idx)+this.topProd.name,s=r.concat(n),a=new me({definition:s}),o=mn(a);this.follows[i]=o}}function DT(t){const e={};return b(t,r=>{const n=new MT(r).startWalking();Ae(e,n)}),e}function UT(t,e){return t.name+e+df}let Wn={};const FT=new kc;function Wi(t){const e=t.toString();if(Wn.hasOwnProperty(e))return Wn[e];{const r=FT.pattern(e);return Wn[e]=r,r}}function jT(){Wn={}}const hf="Complement Sets are not supported for first char optimization",di=`Unable to use "first char" lexer optimizations:
13
+ `;function GT(t,e=!1){try{const r=Wi(t);return oa(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===hf)e&&uf(`${di} Unable to optimize: < ${t.toString()} >
14
+ Complement Sets cannot be automatically optimized.
15
+ This will disable the lexer's first char optimizations.
16
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=`
17
+ This will disable the lexer's first char optimizations.
18
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),aa(`${di}
19
+ Failed parsing: < ${t.toString()} >
20
+ Using the @chevrotain/regexp-to-ast library
21
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function oa(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i<t.value.length;i++)oa(t.value[i],e,r);break;case"Alternative":const n=t.value;for(let i=0;i<n.length;i++){const s=n[i];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}const a=s;switch(a.type){case"Character":_n(a.value,e,r);break;case"Set":if(a.complement===!0)throw Error(hf);b(a.value,l=>{if(typeof l=="number")_n(l,e,r);else{const u=l;if(r===!0)for(let c=u.from;c<=u.to;c++)_n(c,e,r);else{for(let c=u.from;c<=u.to&&c<zr;c++)_n(c,e,r);if(u.to>=zr){const c=u.from>=zr?u.from:zr,f=u.to,d=gt(c),h=gt(f);for(let m=d;m<=h;m++)e[m]=m}}}});break;case"Group":oa(a.value,e,r);break;default:throw Error("Non Exhaustive Match")}const o=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&la(a)===!1||a.type!=="Group"&&o===!1)break}break;default:throw Error("non exhaustive match!")}return Q(e)}function _n(t,e,r){const n=gt(t);e[n]=n,r===!0&&BT(t,e)}function BT(t,e){const r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){const i=gt(n.charCodeAt(0));e[i]=i}else{const i=r.toLowerCase();if(i!==r){const s=gt(i.charCodeAt(0));e[s]=s}}}function pl(t,e){return ir(t.value,r=>{if(typeof r=="number")return de(e,r);{const n=r;return ir(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function la(t){const e=t.quantifier;return e&&e.atLeast===0?!0:t.value?P(t.value)?je(t.value,la):la(t.value):!1}class KT extends _i{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){de(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?pl(e,this.targetCharCodes)===void 0&&(this.found=!0):pl(e,this.targetCharCodes)!==void 0&&(this.found=!0)}}function co(t,e){if(e instanceof RegExp){const r=Wi(e),n=new KT(t);return n.visit(r),n.found}else return ir(e,r=>de(t,r.charCodeAt(0)))!==void 0}const Ut="PATTERN",Hr="defaultMode",Ln="modes";let pf=typeof new RegExp("(?:)").sticky=="boolean";function VT(t,e){e=lo(e,{useSticky:pf,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
22
+ `],tracer:($,T)=>T()});const r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{hR()});let n;r("Reject Lexer.NA",()=>{n=Hi(t,$=>$[Ut]===he.NA)});let i=!1,s;r("Transform Patterns",()=>{i=!1,s=I(n,$=>{const T=$[Ut];if(ot(T)){const x=T.source;return x.length===1&&x!=="^"&&x!=="$"&&x!=="."&&!T.ignoreCase?x:x.length===2&&x[0]==="\\"&&!de(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],x[1])?x[1]:e.useSticky?gl(T):ml(T)}else{if(ct(T))return i=!0,{exec:T};if(typeof T=="object")return i=!0,T;if(typeof T=="string"){if(T.length===1)return T;{const x=T.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),U=new RegExp(x);return e.useSticky?gl(U):ml(U)}}else throw Error("non exhaustive match")}})});let a,o,l,u,c;r("misc mapping",()=>{a=I(n,$=>$.tokenTypeIdx),o=I(n,$=>{const T=$.GROUP;if(T!==he.SKIPPED){if(pe(T))return T;if(lt(T))return!1;throw Error("non exhaustive match")}}),l=I(n,$=>{const T=$.LONGER_ALT;if(T)return P(T)?I(T,x=>fl(n,x)):[fl(n,T)]}),u=I(n,$=>$.PUSH_MODE),c=I(n,$=>w($,"POP_MODE"))});let f;r("Line Terminator Handling",()=>{const $=yf(e.lineTerminatorCharacters);f=I(n,T=>!1),e.positionTracking!=="onlyOffset"&&(f=I(n,T=>w(T,"LINE_BREAKS")?!!T.LINE_BREAKS:gf(T,$)===!1&&co($,T.PATTERN)))});let d,h,m,g;r("Misc Mapping #2",()=>{d=I(n,mf),h=I(s,cR),m=ke(n,($,T)=>{const x=T.GROUP;return pe(x)&&x!==he.SKIPPED&&($[x]=[]),$},{}),g=I(s,($,T)=>({pattern:s[T],longerAlt:l[T],canLineTerminator:f[T],isCustom:d[T],short:h[T],group:o[T],push:u[T],pop:c[T],tokenTypeIdx:a[T],tokenType:n[T]}))});let E=!0,v=[];return e.safeMode||r("First Char Optimization",()=>{v=ke(n,($,T,x)=>{if(typeof T.PATTERN=="string"){const U=T.PATTERN.charCodeAt(0),ae=gt(U);ms($,ae,g[x])}else if(P(T.START_CHARS_HINT)){let U;b(T.START_CHARS_HINT,ae=>{const Me=typeof ae=="string"?ae.charCodeAt(0):ae,ve=gt(Me);U!==ve&&(U=ve,ms($,ve,g[x]))})}else if(ot(T.PATTERN))if(T.PATTERN.unicode)E=!1,e.ensureOptimizations&&aa(`${di} Unable to analyze < ${T.PATTERN.toString()} > pattern.
23
+ The regexp unicode flag is not currently supported by the regexp-to-ast library.
24
+ This will disable the lexer's first char optimizations.
25
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const U=GT(T.PATTERN,e.ensureOptimizations);j(U)&&(E=!1),b(U,ae=>{ms($,ae,g[x])})}else e.ensureOptimizations&&aa(`${di} TokenType: <${T.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
26
+ This will disable the lexer's first char optimizations.
27
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),E=!1;return $},[])}),{emptyGroups:m,patternIdxToConfig:g,charCodeToPatternIdxToConfig:v,hasCustom:i,canBeOptimized:E}}function HT(t,e){let r=[];const n=WT(t);r=r.concat(n.errors);const i=YT(n.valid),s=i.valid;return r=r.concat(i.errors),r=r.concat(zT(s)),r=r.concat(rR(s)),r=r.concat(nR(s,e)),r=r.concat(iR(s)),r}function zT(t){let e=[];const r=Pe(t,n=>ot(n[Ut]));return e=e.concat(XT(r)),e=e.concat(JT(r)),e=e.concat(eR(r)),e=e.concat(tR(r)),e=e.concat(QT(r)),e}function WT(t){const e=Pe(t,i=>!w(i,Ut)),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Y.MISSING_PATTERN,tokenTypes:[i]})),n=Vi(t,e);return{errors:r,valid:n}}function YT(t){const e=Pe(t,i=>{const s=i[Ut];return!ot(s)&&!ct(s)&&!w(s,"exec")&&!pe(s)}),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Y.INVALID_PATTERN,tokenTypes:[i]})),n=Vi(t,e);return{errors:r,valid:n}}const qT=/[^\\][$]/;function XT(t){class e extends _i{constructor(){super(...arguments),this.found=!1}visitEndAnchor(i){this.found=!0}}const r=Pe(t,n=>{const i=n.PATTERN;try{const s=Wi(i),a=new e;return a.visit(s),a.found}catch{return qT.test(i.source)}});return I(r,n=>({message:`Unexpected RegExp Anchor Error:
28
+ Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
29
+ See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Y.EOI_ANCHOR_FOUND,tokenTypes:[n]}))}function QT(t){const e=Pe(t,r=>r.PATTERN.test(""));return I(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' must not match an empty string",type:Y.EMPTY_MATCH_PATTERN,tokenTypes:[r]}))}const ZT=/[^\\[][\^]|^\^/;function JT(t){class e extends _i{constructor(){super(...arguments),this.found=!1}visitStartAnchor(i){this.found=!0}}const r=Pe(t,n=>{const i=n.PATTERN;try{const s=Wi(i),a=new e;return a.visit(s),a.found}catch{return ZT.test(i.source)}});return I(r,n=>({message:`Unexpected RegExp Anchor Error:
30
+ Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
31
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Y.SOI_ANCHOR_FOUND,tokenTypes:[n]}))}function eR(t){const e=Pe(t,r=>{const n=r[Ut];return n instanceof RegExp&&(n.multiline||n.global)});return I(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Y.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[r]}))}function tR(t){const e=[];let r=I(t,i=>ke(t,(s,a)=>(i.PATTERN.source===a.PATTERN.source&&!de(e,a)&&a.PATTERN!==he.NA&&(e.push(a),s.push(a)),s),[]));r=pn(r);const n=Pe(r,i=>i.length>1);return I(n,i=>{const s=I(i,a=>a.name);return{message:`The same RegExp pattern ->${Be(i).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:Y.DUPLICATE_PATTERNS_FOUND,tokenTypes:i}})}function rR(t){const e=Pe(t,r=>{if(!w(r,"GROUP"))return!1;const n=r.GROUP;return n!==he.SKIPPED&&n!==he.NA&&!pe(n)});return I(e,r=>({message:"Token Type: ->"+r.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Y.INVALID_GROUP_TYPE_FOUND,tokenTypes:[r]}))}function nR(t,e){const r=Pe(t,n=>n.PUSH_MODE!==void 0&&!de(e,n.PUSH_MODE));return I(r,n=>({message:`Token Type: ->${n.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${n.PUSH_MODE}<-which does not exist`,type:Y.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[n]}))}function iR(t){const e=[],r=ke(t,(n,i,s)=>{const a=i.PATTERN;return a===he.NA||(pe(a)?n.push({str:a,idx:s,tokenType:i}):ot(a)&&aR(a)&&n.push({str:a.source,idx:s,tokenType:i})),n},[]);return b(t,(n,i)=>{b(r,({str:s,idx:a,tokenType:o})=>{if(i<a&&sR(s,n.PATTERN)){const l=`Token: ->${o.name}<- can never be matched.
32
+ Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition.
33
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:l,type:Y.UNREACHABLE_PATTERN,tokenTypes:[n,o]})}})}),e}function sR(t,e){if(ot(e)){const r=e.exec(t);return r!==null&&r.index===0}else{if(ct(e))return e(t,0,[],{});if(w(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function aR(t){return ir([".","\\","[","]","|","^","$","(",")","?","*","+","{"],e=>t.source.indexOf(e)!==-1)===void 0}function ml(t){const e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function gl(t){const e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function oR(t,e,r){const n=[];return w(t,Hr)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Hr+`> property in its definition
34
+ `,type:Y.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),w(t,Ln)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ln+`> property in its definition
35
+ `,type:Y.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),w(t,Ln)&&w(t,Hr)&&!w(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${Hr}: <${t.defaultMode}>which does not exist
36
+ `,type:Y.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),w(t,Ln)&&b(t.modes,(i,s)=>{b(i,(a,o)=>{if(lt(a))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${o}>
37
+ `,type:Y.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(w(a,"LONGER_ALT")){const l=P(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT];b(l,u=>{!lt(u)&&!de(i,u)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${u.name}> on token <${a.name}> outside of mode <${s}>
38
+ `,type:Y.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function lR(t,e,r){const n=[];let i=!1;const s=pn(Fe(Q(t.modes))),a=Hi(s,l=>l[Ut]===he.NA),o=yf(r);return e&&b(a,l=>{const u=gf(l,o);if(u!==!1){const c={message:dR(l,u),type:u.issue,tokenType:l};n.push(c)}else w(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(i=!0):co(o,l.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found.
39
+ This Lexer has been defined to track line and column information,
40
+ But none of the Token Types can be identified as matching a line terminator.
41
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
42
+ for details.`,type:Y.NO_LINE_BREAKS_FLAGS}),n}function uR(t){const e={},r=Oe(t);return b(r,n=>{const i=t[n];if(P(i))e[n]=[];else throw Error("non exhaustive match")}),e}function mf(t){const e=t.PATTERN;if(ot(e))return!1;if(ct(e)||w(e,"exec"))return!0;if(pe(e))return!1;throw Error("non exhaustive match")}function cR(t){return pe(t)&&t.length===1?t.charCodeAt(0):!1}const fR={test:function(t){const e=t.length;for(let r=this.lastIndex;r<e;r++){const n=t.charCodeAt(r);if(n===10)return this.lastIndex=r+1,!0;if(n===13)return t.charCodeAt(r+1)===10?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},lastIndex:0};function gf(t,e){if(w(t,"LINE_BREAKS"))return!1;if(ot(t.PATTERN)){try{co(e,t.PATTERN)}catch(r){return{issue:Y.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(pe(t.PATTERN))return!1;if(mf(t))return{issue:Y.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function dR(t,e){if(e.issue===Y.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
43
+ The problem is in the <${t.name}> Token Type
44
+ Root cause: ${e.errMsg}.
45
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Y.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
46
+ The problem is in the <${t.name}> Token Type
47
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function yf(t){return I(t,e=>pe(e)?e.charCodeAt(0):e)}function ms(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}const zr=256;let Yn=[];function gt(t){return t<zr?t:Yn[t]}function hR(){if(j(Yn)){Yn=new Array(65536);for(let t=0;t<65536;t++)Yn[t]=t>255?255+~~(t/255):t}}function gn(t,e){const r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}function hi(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}let yl=1;const vf={};function yn(t){const e=pR(t);mR(e),yR(e),gR(e),b(e,r=>{r.isParent=r.categoryMatches.length>0})}function pR(t){let e=se(t),r=t,n=!0;for(;n;){r=pn(Fe(I(r,s=>s.CATEGORIES)));const i=Vi(r,e);e=e.concat(i),j(i)?n=!1:r=i}return e}function mR(t){b(t,e=>{Rf(e)||(vf[yl]=e,e.tokenTypeIdx=yl++),vl(e)&&!P(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),vl(e)||(e.CATEGORIES=[]),vR(e)||(e.categoryMatches=[]),TR(e)||(e.categoryMatchesMap={})})}function gR(t){b(t,e=>{e.categoryMatches=[],b(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(vf[n].tokenTypeIdx)})})}function yR(t){b(t,e=>{Tf([],e)})}function Tf(t,e){b(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),b(e.CATEGORIES,r=>{const n=t.concat(e);de(n,r)||Tf(n,r)})}function Rf(t){return w(t,"tokenTypeIdx")}function vl(t){return w(t,"CATEGORIES")}function vR(t){return w(t,"categoryMatches")}function TR(t){return w(t,"categoryMatchesMap")}function RR(t){return w(t,"tokenTypeIdx")}const ua={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}};var Y;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Y||(Y={}));const Wr={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
48
+ `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:ua,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Wr);class he{constructor(e,r=Wr){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=(i,s)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;const a=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${a}--> <${i}>`);const{time:o,value:l}=cf(s),u=o>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&u(`${a}<-- <${i}> time: ${o}ms`),this.traceInitIndent--,l}else return s()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
49
+ a boolean 2nd argument is no longer supported`);this.config=Ae({},Wr,r);const n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,s=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Wr.lineTerminatorsPattern)this.config.lineTerminatorsPattern=fR;else if(this.config.lineTerminatorCharacters===Wr.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
50
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.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),P(e)?i={modes:{defaultMode:se(e)},defaultMode:Hr}:(s=!1,i=se(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(oR(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(lR(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},b(i.modes,(o,l)=>{i.modes[l]=Hi(o,u=>lt(u))});const a=Oe(i.modes);if(b(i.modes,(o,l)=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(HT(o,a))}),j(this.lexerDefinitionErrors)){yn(o);let u;this.TRACE_INIT("analyzeTokenTypes",()=>{u=VT(o,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=u.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=u.charCodeToPatternIdxToConfig,this.emptyGroups=Ae({},this.emptyGroups,u.emptyGroups),this.hasCustom=u.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=u.canBeOptimized}})}),this.defaultMode=i.defaultMode,!j(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const o=I(this.lexerDefinitionErrors,l=>l.message).join(`-----------------------
51
+ `);throw new Error(`Errors detected in definition of Lexer:
52
+ `+o)}b(this.lexerDefinitionWarning,o=>{uf(o.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(pf?(this.chopInput=tr,this.match=this.matchWithTest):(this.updateLastIndex=X,this.match=this.matchWithExec),s&&(this.handleModes=X),this.trackStartLines===!1&&(this.computeNewColumn=tr),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=X),/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",()=>{const o=ke(this.canModeBeOptimized,(l,u,c)=>(u===!1&&l.push(c),l),[]);if(r.ensureOptimizations&&!j(o))throw Error(`Lexer Modes: < ${o.join(", ")} > cannot be optimized.
53
+ Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
54
+ Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{jT()}),this.TRACE_INIT("toFastProperties",()=>{ff(this)})})}tokenize(e,r=this.defaultMode){if(!j(this.lexerDefinitionErrors)){const n=I(this.lexerDefinitionErrors,i=>i.message).join(`-----------------------
55
+ `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
56
+ `+n)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,s,a,o,l,u,c,f,d,h,m,g,E,v;const $=e,T=$.length;let x=0,U=0;const ae=this.hasCustom?0:Math.floor(e.length/10),Me=new Array(ae),ve=[];let He=this.trackStartLines?1:void 0,Ie=this.trackStartLines?1:void 0;const A=uR(this.emptyGroups),y=this.trackStartLines,S=this.config.lineTerminatorsPattern;let k=0,L=[],_=[];const N=[],Te=[];Object.freeze(Te);let Z;function z(){return L}function It(oe){const we=gt(oe),Yt=_[we];return Yt===void 0?Te:Yt}const Fd=oe=>{if(N.length===1&&oe.tokenType.PUSH_MODE===void 0){const we=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(oe);ve.push({offset:oe.startOffset,line:oe.startLine,column:oe.startColumn,length:oe.image.length,message:we})}else{N.pop();const we=nr(N);L=this.patternIdxToConfig[we],_=this.charCodeToPatternIdxToConfig[we],k=L.length;const Yt=this.canModeBeOptimized[we]&&this.config.safeMode===!1;_&&Yt?Z=It:Z=z}};function xo(oe){N.push(oe),_=this.charCodeToPatternIdxToConfig[oe],L=this.patternIdxToConfig[oe],k=L.length,k=L.length;const we=this.canModeBeOptimized[oe]&&this.config.safeMode===!1;_&&we?Z=It:Z=z}xo.call(this,r);let De;const So=this.config.recoveryEnabled;for(;x<T;){l=null;const oe=$.charCodeAt(x),we=Z(oe),Yt=we.length;for(n=0;n<Yt;n++){De=we[n];const Re=De.pattern;u=null;const Je=De.short;if(Je!==!1?oe===Je&&(l=Re):De.isCustom===!0?(v=Re.exec($,x,Me,A),v!==null?(l=v[0],v.payload!==void 0&&(u=v.payload)):l=null):(this.updateLastIndex(Re,x),l=this.match(Re,e,x)),l!==null){if(o=De.longerAlt,o!==void 0){const ht=o.length;for(s=0;s<ht;s++){const et=L[o[s]],wt=et.pattern;if(c=null,et.isCustom===!0?(v=wt.exec($,x,Me,A),v!==null?(a=v[0],v.payload!==void 0&&(c=v.payload)):a=null):(this.updateLastIndex(wt,x),a=this.match(wt,e,x)),a&&a.length>l.length){l=a,u=c,De=et;break}}}break}}if(l!==null){if(f=l.length,d=De.group,d!==void 0&&(h=De.tokenTypeIdx,m=this.createTokenInstance(l,x,h,De.tokenType,He,Ie,f),this.handlePayload(m,u),d===!1?U=this.addToken(Me,U,m):A[d].push(m)),e=this.chopInput(e,f),x=x+f,Ie=this.computeNewColumn(Ie,f),y===!0&&De.canLineTerminator===!0){let Re=0,Je,ht;S.lastIndex=0;do Je=S.test(l),Je===!0&&(ht=S.lastIndex-1,Re++);while(Je===!0);Re!==0&&(He=He+Re,Ie=f-ht,this.updateTokenEndLineColumnLocation(m,d,ht,Re,He,Ie,f))}this.handleModes(De,Fd,xo,m)}else{const Re=x,Je=He,ht=Ie;let et=So===!1;for(;et===!1&&x<T;)for(e=this.chopInput(e,1),x++,i=0;i<k;i++){const wt=L[i],rs=wt.pattern,Io=wt.short;if(Io!==!1?$.charCodeAt(x)===Io&&(et=!0):wt.isCustom===!0?et=rs.exec($,x,Me,A)!==null:(this.updateLastIndex(rs,x),et=rs.exec(e)!==null),et===!0)break}if(g=x-Re,Ie=this.computeNewColumn(Ie,g),E=this.config.errorMessageProvider.buildUnexpectedCharactersMessage($,Re,g,Je,ht),ve.push({offset:Re,line:Je,column:ht,length:g,message:E}),So===!1)break}}return this.hasCustom||(Me.length=U),{tokens:Me,groups:A,errors:ve}}handleModes(e,r,n,i){if(e.pop===!0){const s=e.push;r(i),s!==void 0&&n.call(this,s)}else e.push!==void 0&&n.call(this,e.push)}chopInput(e,r){return e.substring(r)}updateLastIndex(e,r){e.lastIndex=r}updateTokenEndLineColumnLocation(e,r,n,i,s,a,o){let l,u;r!==void 0&&(l=n===o-1,u=l?-1:0,i===1&&l===!0||(e.endLine=s+u,e.endColumn=a-1+-u))}computeNewColumn(e,r){return e+r}createOffsetOnlyToken(e,r,n,i){return{image:e,startOffset:r,tokenTypeIdx:n,tokenType:i}}createStartOnlyToken(e,r,n,i,s,a){return{image:e,startOffset:r,startLine:s,startColumn:a,tokenTypeIdx:n,tokenType:i}}createFullToken(e,r,n,i,s,a,o){return{image:e,startOffset:r,endOffset:r+o-1,startLine:s,endLine:s,startColumn:a,endColumn:a+o-1,tokenTypeIdx:n,tokenType:i}}addTokenUsingPush(e,r,n){return e.push(n),r}addTokenUsingMemberAccess(e,r,n){return e[r]=n,r++,r}handlePayloadNoCustom(e,r){}handlePayloadWithCustom(e,r){r!==null&&(e.payload=r)}matchWithTest(e,r,n){return e.test(r)===!0?r.substring(n,e.lastIndex):null}matchWithExec(e,r){const n=e.exec(r);return n!==null?n[0]:null}}he.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";he.NA=/NOT_APPLICABLE/;function er(t){return $f(t)?t.LABEL:t.name}function $f(t){return pe(t.LABEL)&&t.LABEL!==""}const $R="parent",Tl="categories",Rl="label",$l="group",El="push_mode",Al="pop_mode",kl="longer_alt",xl="line_breaks",Sl="start_chars_hint";function Ef(t){return ER(t)}function ER(t){const e=t.pattern,r={};if(r.name=t.name,lt(e)||(r.PATTERN=e),w(t,$R))throw`The parent property is no longer supported.
57
+ See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return w(t,Tl)&&(r.CATEGORIES=t[Tl]),yn([r]),w(t,Rl)&&(r.LABEL=t[Rl]),w(t,$l)&&(r.GROUP=t[$l]),w(t,Al)&&(r.POP_MODE=t[Al]),w(t,El)&&(r.PUSH_MODE=t[El]),w(t,kl)&&(r.LONGER_ALT=t[kl]),w(t,xl)&&(r.LINE_BREAKS=t[xl]),w(t,Sl)&&(r.START_CHARS_HINT=t[Sl]),r}const yt=Ef({name:"EOF",pattern:he.NA});yn([yt]);function fo(t,e,r,n,i,s,a,o){return{image:e,startOffset:r,endOffset:n,startLine:i,endLine:s,startColumn:a,endColumn:o,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}function Af(t,e){return gn(t,e)}const Qt={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${$f(t)?`--> ${er(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){const s="Expecting: ",a=`
58
+ but found: '`+Be(e).image+"'";if(n)return s+n+a;{const o=ke(t,(c,f)=>c.concat(f),[]),l=I(o,c=>`[${I(c,f=>er(f)).join(", ")}]`),u=`one of these possible Token sequences:
59
+ ${I(l,(c,f)=>` ${f+1}. ${c}`).join(`
60
+ `)}`;return s+u+a}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){const i="Expecting: ",s=`
61
+ but found: '`+Be(e).image+"'";if(r)return i+r+s;{const a=`expecting at least one iteration which starts with one of these possible Token sequences::
62
+ <${I(t,o=>`[${I(o,l=>er(l)).join(",")}]`).join(" ,")}>`;return i+a+s}}};Object.freeze(Qt);const AR={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
63
+ inside top level rule: ->`+t.name+"<-"}},Lt={buildDuplicateFoundError(t,e){function r(c){return c instanceof B?c.terminalType.name:c instanceof ce?c.nonTerminalName:""}const n=t.name,i=Be(e),s=i.idx,a=ze(i),o=r(i),l=s>0;let u=`->${a}${l?s:""}<- ${o?`with argument: ->${o}<-`:""}
64
+ appears more than once (${e.length} times) in the top level rule: ->${n}<-.
65
+ For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
66
+ `;return u=u.replace(/[ \t]+/g," "),u=u.replace(/\s\s+/g,`
67
+ `),u},buildNamespaceConflictError(t){return`Namespace conflict found in grammar.
68
+ The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>.
69
+ To resolve this make sure each Terminal and Non-Terminal names are unique
70
+ This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
71
+ and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){const e=I(t.prefixPath,n=>er(n)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix
72
+ in <OR${r}> inside <${t.topLevelRule.name}> Rule,
73
+ <${e}> may appears as a prefix path in all these alternatives.
74
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
75
+ For Further details.`},buildAlternationAmbiguityError(t){const e=I(t.prefixPath,i=>er(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;let n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${r}> inside <${t.topLevelRule.name}> Rule,
76
+ <${e}> may appears as a prefix path in all these alternatives.
77
+ `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
78
+ For Further details.`,n},buildEmptyRepetitionError(t){let e=ze(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens.
79
+ This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
80
+ Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives:
81
+ <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
82
+ has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){const e=t.topLevelRule.name,r=I(t.leftRecursionPath,i=>i.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
83
+ rule: <${e}> can be invoked from itself (directly or indirectly)
84
+ without consuming any Tokens. The grammar path that causes this is:
85
+ ${n}
86
+ To fix this refactor your grammar to remove the left recursion.
87
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof cr?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function kR(t,e){const r=new xR(t,e);return r.resolveRefs(),r.errors}class xR extends fr{constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){b(Q(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){const r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{const n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:fe.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}class SR extends zi{constructor(e,r){super(),this.topProd=e,this.path=r,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=se(this.path.ruleStack).reverse(),this.occurrenceStack=se(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){const i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){j(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}}class IR extends SR{constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){const i=r.concat(n),s=new me({definition:i});this.possibleTokTypes=mn(s),this.found=!0}}}class Yi extends zi{constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}}class wR extends Yi{walkMany(e,r,n){if(e.idx===this.occurrence){const i=Be(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof B&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}}class Il extends Yi{walkManySep(e,r,n){if(e.idx===this.occurrence){const i=Be(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof B&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}}class bR extends Yi{walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){const i=Be(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof B&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}}class wl extends Yi{walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){const i=Be(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof B&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}}function ca(t,e,r=[]){r=se(r);let n=[],i=0;function s(o){return o.concat(te(t,i+1))}function a(o){const l=ca(s(o),e,r);return n.concat(l)}for(;r.length<e&&i<t.length;){const o=t[i];if(o instanceof me||o instanceof ce)return a(o.definition);if(o instanceof ie)n=a(o.definition);else if(o instanceof xe){const l=o.definition.concat([new W({definition:o.definition})]);return a(l)}else if(o instanceof Se){const l=[new me({definition:o.definition}),new W({definition:[new B({terminalType:o.separator})].concat(o.definition)})];return a(l)}else if(o instanceof ge){const l=o.definition.concat([new W({definition:[new B({terminalType:o.separator})].concat(o.definition)})]);n=a(l)}else if(o instanceof W){const l=o.definition.concat([new W({definition:o.definition})]);n=a(l)}else{if(o instanceof ye)return b(o.definition,l=>{j(l.definition)===!1&&(n=a(l.definition))}),n;if(o instanceof B)r.push(o.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:te(t,i)}),n}function kf(t,e,r,n){const i="EXIT_NONE_TERMINAL",s=[i],a="EXIT_ALTERNATIVE";let o=!1;const l=e.length,u=l-n-1,c=[],f=[];for(f.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!j(f);){const d=f.pop();if(d===a){o&&nr(f).idx<=u&&f.pop();continue}const h=d.def,m=d.idx,g=d.ruleStack,E=d.occurrenceStack;if(j(h))continue;const v=h[0];if(v===i){const $={idx:m,def:te(h),ruleStack:an(g),occurrenceStack:an(E)};f.push($)}else if(v instanceof B)if(m<l-1){const $=m+1,T=e[$];if(r(T,v.terminalType)){const x={idx:$,def:te(h),ruleStack:g,occurrenceStack:E};f.push(x)}}else if(m===l-1)c.push({nextTokenType:v.terminalType,nextTokenOccurrence:v.idx,ruleStack:g,occurrenceStack:E}),o=!0;else throw Error("non exhaustive match");else if(v instanceof ce){const $=se(g);$.push(v.nonTerminalName);const T=se(E);T.push(v.idx);const x={idx:m,def:v.definition.concat(s,te(h)),ruleStack:$,occurrenceStack:T};f.push(x)}else if(v instanceof ie){const $={idx:m,def:te(h),ruleStack:g,occurrenceStack:E};f.push($),f.push(a);const T={idx:m,def:v.definition.concat(te(h)),ruleStack:g,occurrenceStack:E};f.push(T)}else if(v instanceof xe){const $=new W({definition:v.definition,idx:v.idx}),T=v.definition.concat([$],te(h)),x={idx:m,def:T,ruleStack:g,occurrenceStack:E};f.push(x)}else if(v instanceof Se){const $=new B({terminalType:v.separator}),T=new W({definition:[$].concat(v.definition),idx:v.idx}),x=v.definition.concat([T],te(h)),U={idx:m,def:x,ruleStack:g,occurrenceStack:E};f.push(U)}else if(v instanceof ge){const $={idx:m,def:te(h),ruleStack:g,occurrenceStack:E};f.push($),f.push(a);const T=new B({terminalType:v.separator}),x=new W({definition:[T].concat(v.definition),idx:v.idx}),U=v.definition.concat([x],te(h)),ae={idx:m,def:U,ruleStack:g,occurrenceStack:E};f.push(ae)}else if(v instanceof W){const $={idx:m,def:te(h),ruleStack:g,occurrenceStack:E};f.push($),f.push(a);const T=new W({definition:v.definition,idx:v.idx}),x=v.definition.concat([T],te(h)),U={idx:m,def:x,ruleStack:g,occurrenceStack:E};f.push(U)}else if(v instanceof ye)for(let $=v.definition.length-1;$>=0;$--){const T=v.definition[$],x={idx:m,def:T.definition.concat(te(h)),ruleStack:g,occurrenceStack:E};f.push(x),f.push(a)}else if(v instanceof me)f.push({idx:m,def:v.definition.concat(te(h)),ruleStack:g,occurrenceStack:E});else if(v instanceof cr)f.push(CR(v,m,g,E));else throw Error("non exhaustive match")}return c}function CR(t,e,r,n){const i=se(r);i.push(t.name);const s=se(n);return s.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:s}}var V;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(V||(V={}));function ho(t){if(t instanceof ie||t==="Option")return V.OPTION;if(t instanceof W||t==="Repetition")return V.REPETITION;if(t instanceof xe||t==="RepetitionMandatory")return V.REPETITION_MANDATORY;if(t instanceof Se||t==="RepetitionMandatoryWithSeparator")return V.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof ge||t==="RepetitionWithSeparator")return V.REPETITION_WITH_SEPARATOR;if(t instanceof ye||t==="Alternation")return V.ALTERNATION;throw Error("non exhaustive match")}function bl(t){const{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,s=ho(n);return s===V.ALTERNATION?qi(e,r,i):Xi(e,r,s,i)}function NR(t,e,r,n,i,s){const a=qi(t,e,r),o=If(a)?hi:gn;return s(a,n,o,i)}function _R(t,e,r,n,i,s){const a=Xi(t,e,i,r),o=If(a)?hi:gn;return s(a[0],o,n)}function LR(t,e,r,n){const i=t.length,s=je(t,a=>je(a,o=>o.length===1));if(e)return function(a){const o=I(a,l=>l.GATE);for(let l=0;l<i;l++){const u=t[l],c=u.length,f=o[l];if(!(f!==void 0&&f.call(this)===!1))e:for(let d=0;d<c;d++){const h=u[d],m=h.length;for(let g=0;g<m;g++){const E=this.LA(g+1);if(r(E,h[g])===!1)continue e}return l}}};if(s&&!n){const a=I(t,l=>Fe(l)),o=ke(a,(l,u,c)=>(b(u,f=>{w(l,f.tokenTypeIdx)||(l[f.tokenTypeIdx]=c),b(f.categoryMatches,d=>{w(l,d)||(l[d]=c)})}),l),{});return function(){const l=this.LA(1);return o[l.tokenTypeIdx]}}else return function(){for(let a=0;a<i;a++){const o=t[a],l=o.length;e:for(let u=0;u<l;u++){const c=o[u],f=c.length;for(let d=0;d<f;d++){const h=this.LA(d+1);if(r(h,c[d])===!1)continue e}return a}}}}function OR(t,e,r){const n=je(t,s=>s.length===1),i=t.length;if(n&&!r){const s=Fe(t);if(s.length===1&&j(s[0].categoryMatches)){const a=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===a}}else{const a=ke(s,(o,l,u)=>(o[l.tokenTypeIdx]=!0,b(l.categoryMatches,c=>{o[c]=!0}),o),[]);return function(){const o=this.LA(1);return a[o.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<i;s++){const a=t[s],o=a.length;for(let l=0;l<o;l++){const u=this.LA(l+1);if(e(u,a[l])===!1)continue e}return!0}return!1}}class PR extends zi{constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,V.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,V.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,V.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,V.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,V.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}}class xf extends fr{constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,V.OPTION)}visitRepetition(e){this.checkIsTarget(e,V.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,V.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,V.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,V.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,V.ALTERNATION)}}function Cl(t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=[];return e}function gs(t){let e=[""];for(let r=0;r<t.length;r++){const n=t[r],i=[];for(let s=0;s<e.length;s++){const a=e[s];i.push(a+"_"+n.tokenTypeIdx);for(let o=0;o<n.categoryMatches.length;o++){const l="_"+n.categoryMatches[o];i.push(a+l)}}e=i}return e}function MR(t,e,r){for(let n=0;n<t.length;n++){if(n===r)continue;const i=t[n];for(let s=0;s<e.length;s++){const a=e[s];if(i[a]===!0)return!1}}return!0}function Sf(t,e){const r=I(t,a=>ca([a],1)),n=Cl(r.length),i=I(r,a=>{const o={};return b(a,l=>{const u=gs(l.partialPath);b(u,c=>{o[c]=!0})}),o});let s=r;for(let a=1;a<=e;a++){const o=s;s=Cl(o.length);for(let l=0;l<o.length;l++){const u=o[l];for(let c=0;c<u.length;c++){const f=u[c].partialPath,d=u[c].suffixDef,h=gs(f);if(MR(i,h,l)||j(d)||f.length===e){const m=n[l];if(fa(m,f)===!1){m.push(f);for(let g=0;g<h.length;g++){const E=h[g];i[l][E]=!0}}}else{const m=ca(d,a+1,f);s[l]=s[l].concat(m),b(m,g=>{const E=gs(g.partialPath);b(E,v=>{i[l][v]=!0})})}}}}return n}function qi(t,e,r,n){const i=new xf(t,V.ALTERNATION,n);return e.accept(i),Sf(i.result,r)}function Xi(t,e,r,n){const i=new xf(t,r);e.accept(i);const s=i.result,a=new PR(e,t,r).startWalking(),o=new me({definition:s}),l=new me({definition:a});return Sf([o,l],n)}function fa(t,e){e:for(let r=0;r<t.length;r++){const n=t[r];if(n.length===e.length){for(let i=0;i<n.length;i++){const s=e[i],a=n[i];if(!(s===a||a.categoryMatchesMap[s.tokenTypeIdx]!==void 0))continue e}return!0}}return!1}function DR(t,e){return t.length<e.length&&je(t,(r,n)=>{const i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function If(t){return je(t,e=>je(e,r=>je(r,n=>j(n.categoryMatches))))}function UR(t){const e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return I(e,r=>Object.assign({type:fe.CUSTOM_LOOKAHEAD_VALIDATION},r))}function FR(t,e,r,n){const i=Ce(t,l=>jR(l,r)),s=ZR(t,e,r),a=Ce(t,l=>YR(l,r)),o=Ce(t,l=>KR(l,t,n,r));return i.concat(s,a,o)}function jR(t,e){const r=new BR;t.accept(r);const n=r.allProductions,i=sT(n,GR),s=Ke(i,a=>a.length>1);return I(Q(s),a=>{const o=Be(a),l=e.buildDuplicateFoundError(t,a),u=ze(o),c={message:l,type:fe.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:u,occurrence:o.idx},f=wf(o);return f&&(c.parameter=f),c})}function GR(t){return`${ze(t)}_#_${t.idx}_#_${wf(t)}`}function wf(t){return t instanceof B?t.terminalType.name:t instanceof ce?t.nonTerminalName:""}class BR extends fr{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 KR(t,e,r,n){const i=[];if(ke(e,(s,a)=>a.name===t.name?s+1:s,0)>1){const s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:fe.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function VR(t,e,r){const n=[];let i;return de(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:fe.INVALID_RULE_OVERRIDE,ruleName:t})),n}function bf(t,e,r,n=[]){const i=[],s=qn(e.definition);if(j(s))return[];{const a=t.name;de(s,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:fe.LEFT_RECURSION,ruleName:a});const o=Vi(s,n.concat([t])),l=Ce(o,u=>{const c=se(n);return c.push(u),bf(t,u,r,c)});return i.concat(l)}}function qn(t){let e=[];if(j(t))return e;const r=Be(t);if(r instanceof ce)e.push(r.referencedRule);else if(r instanceof me||r instanceof ie||r instanceof xe||r instanceof Se||r instanceof ge||r instanceof W)e=e.concat(qn(r.definition));else if(r instanceof ye)e=Fe(I(r.definition,s=>qn(s.definition)));else if(!(r instanceof B))throw Error("non exhaustive match");const n=fi(r),i=t.length>1;if(n&&i){const s=te(t);return e.concat(qn(s))}else return e}class po extends fr{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}}function HR(t,e){const r=new po;t.accept(r);const n=r.alternations;return Ce(n,i=>{const s=an(i.definition);return Ce(s,(a,o)=>{const l=kf([a],[],gn,1);return j(l)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:i,emptyChoiceIdx:o}),type:fe.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:i.idx,alternative:o+1}]:[]})})}function zR(t,e,r){const n=new po;t.accept(n);let i=n.alternations;return i=Hi(i,s=>s.ignoreAmbiguities===!0),Ce(i,s=>{const a=s.idx,o=s.maxLookahead||e,l=qi(a,t,o,s),u=XR(l,s,t,r),c=QR(l,s,t,r);return u.concat(c)})}class WR extends fr{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 YR(t,e){const r=new po;t.accept(r);const n=r.alternations;return Ce(n,i=>i.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:i}),type:fe.TOO_MANY_ALTS,ruleName:t.name,occurrence:i.idx}]:[])}function qR(t,e,r){const n=[];return b(t,i=>{const s=new WR;i.accept(s);const a=s.allProductions;b(a,o=>{const l=ho(o),u=o.maxLookahead||e,c=o.idx,f=Xi(c,i,l,u)[0];if(j(Fe(f))){const d=r.buildEmptyRepetitionError({topLevelRule:i,repetition:o});n.push({message:d,type:fe.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function XR(t,e,r,n){const i=[],s=ke(t,(a,o,l)=>(e.definition[l].ignoreAmbiguities===!0||b(o,u=>{const c=[l];b(t,(f,d)=>{l!==d&&fa(f,u)&&e.definition[d].ignoreAmbiguities!==!0&&c.push(d)}),c.length>1&&!fa(i,u)&&(i.push(u),a.push({alts:c,path:u}))}),a),[]);return I(s,a=>{const o=I(a.alts,l=>l+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:o,prefixPath:a.path}),type:fe.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:a.alts}})}function QR(t,e,r,n){const i=ke(t,(s,a,o)=>{const l=I(a,u=>({idx:o,path:u}));return s.concat(l)},[]);return pn(Ce(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];const a=s.idx,o=s.path,l=Pe(i,u=>e.definition[u.idx].ignoreAmbiguities!==!0&&u.idx<a&&DR(u.path,o));return I(l,u=>{const c=[u.idx+1,a+1],f=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:c,prefixPath:u.path}),type:fe.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:f,alternatives:c}})}))}function ZR(t,e,r){const n=[],i=I(e,s=>s.name);return b(t,s=>{const a=s.name;if(de(i,a)){const o=r.buildNamespaceConflictError(s);n.push({message:o,type:fe.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),n}function JR(t){const e=lo(t,{errMsgProvider:AR}),r={};return b(t.rules,n=>{r[n.name]=n}),kR(r,e.errMsgProvider)}function e$(t){return t=lo(t,{errMsgProvider:Lt}),FR(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}const Cf="MismatchedTokenException",Nf="NoViableAltException",_f="EarlyExitException",Lf="NotAllInputParsedException",Of=[Cf,Nf,_f,Lf];Object.freeze(Of);function pi(t){return de(Of,t.name)}class Qi extends Error{constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}class Pf extends Qi{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Cf}}class t$ extends Qi{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Nf}}class r$ extends Qi{constructor(e,r){super(e,r),this.name=Lf}}class n$ extends Qi{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=_f}}const ys={},Mf="InRuleRecoveryException";class i$ extends Error{constructor(e){super(e),this.name=Mf}}class s${initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=w(e,"recoveryEnabled")?e.recoveryEnabled:ut.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=a$)}getTokenToInsert(e){const r=fo(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){const s=this.findReSyncTokenType(),a=this.exportLexerState(),o=[];let l=!1;const u=this.LA(1);let c=this.LA(1);const f=()=>{const d=this.LA(0),h=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:u,previous:d,ruleName:this.getCurrRuleFullName()}),m=new Pf(h,u,this.LA(0));m.resyncedTokens=an(o),this.SAVE_ERROR(m)};for(;!l;)if(this.tokenMatcher(c,i)){f();return}else if(n.call(this)){f(),e.apply(this,r);return}else this.tokenMatcher(c,s)?l=!0:(c=this.SKIP_TOKEN(),this.addToResyncTokens(c,o));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){const n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new i$("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||j(r))return!1;const n=this.LA(1);return ir(r,i=>this.tokenMatcher(n,i))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){const r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return de(n,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let r=this.LA(1),n=2;for(;;){const i=ir(e,s=>Af(r,s));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return ys;const e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return I(e,(n,i)=>i===0?ys:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){const e=I(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Fe(e)}getFollowSetFromFollowKey(e){if(e===ys)return[yt];const r=e.ruleName+e.idxInCallingRule+df+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,yt)||r.push(e),r}reSyncTo(e){const r=[];let n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return an(r)}attemptInRepetitionRecovery(e,r,n,i,s,a,o){}getCurrentGrammarPath(e,r){const n=this.getHumanReadableRuleStack(),i=se(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return I(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}}function a$(t,e,r,n,i,s,a){const o=this.getKeyForAutomaticLookahead(n,i);let l=this.firstAfterRepMap[o];if(l===void 0){const d=this.getCurrRuleFullName(),h=this.getGAstProductions()[d];l=new s(h,i).startWalking(),this.firstAfterRepMap[o]=l}let u=l.token,c=l.occurrence;const f=l.isEndOfRule;this.RULE_STACK.length===1&&f&&u===void 0&&(u=yt,c=1),!(u===void 0||c===void 0)&&this.shouldInRepetitionRecoveryBeTried(u,c,a)&&this.tryInRepetitionRecovery(t,e,r,u)}const o$=4,$t=8,Df=1<<$t,Uf=2<<$t,da=3<<$t,ha=4<<$t,pa=5<<$t,Xn=6<<$t;function vs(t,e,r){return r|e|t}class mo{constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:ut.maxLookahead}validate(e){const r=this.validateNoLeftRecursion(e.rules);if(j(r)){const n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...s]}return r}validateNoLeftRecursion(e){return Ce(e,r=>bf(r,r,Lt))}validateEmptyOrAlternatives(e){return Ce(e,r=>HR(r,Lt))}validateAmbiguousAlternationAlternatives(e,r){return Ce(e,n=>zR(n,r,Lt))}validateSomeNonEmptyLookaheadPath(e,r){return qR(e,r,Lt)}buildLookaheadForAlternation(e){return NR(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,LR)}buildLookaheadForOptional(e){return _R(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,ho(e.prodType),OR)}}class l${initLooksAhead(e){this.dynamicTokensEnabled=w(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:ut.dynamicTokensEnabled,this.maxLookahead=w(e,"maxLookahead")?e.maxLookahead:ut.maxLookahead,this.lookaheadStrategy=w(e,"lookaheadStrategy")?e.lookaheadStrategy:new mo({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){b(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{const{alternation:n,repetition:i,option:s,repetitionMandatory:a,repetitionMandatoryWithSeparator:o,repetitionWithSeparator:l}=c$(r);b(n,u=>{const c=u.idx===0?"":u.idx;this.TRACE_INIT(`${ze(u)}${c}`,()=>{const f=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:u.idx,rule:r,maxLookahead:u.maxLookahead||this.maxLookahead,hasPredicates:u.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),d=vs(this.fullRuleNameToShort[r.name],Df,u.idx);this.setLaFuncCache(d,f)})}),b(i,u=>{this.computeLookaheadFunc(r,u.idx,da,"Repetition",u.maxLookahead,ze(u))}),b(s,u=>{this.computeLookaheadFunc(r,u.idx,Uf,"Option",u.maxLookahead,ze(u))}),b(a,u=>{this.computeLookaheadFunc(r,u.idx,ha,"RepetitionMandatory",u.maxLookahead,ze(u))}),b(o,u=>{this.computeLookaheadFunc(r,u.idx,Xn,"RepetitionMandatoryWithSeparator",u.maxLookahead,ze(u))}),b(l,u=>{this.computeLookaheadFunc(r,u.idx,pa,"RepetitionWithSeparator",u.maxLookahead,ze(u))})})})}computeLookaheadFunc(e,r,n,i,s,a){this.TRACE_INIT(`${a}${r===0?"":r}`,()=>{const o=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),l=vs(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(l,o)})}getKeyForAutomaticLookahead(e,r){const n=this.getLastExplicitRuleShortName();return vs(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}}class u$ extends fr{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)}}const On=new u$;function c$(t){On.reset(),t.accept(On);const e=On.dslMethods;return On.reset(),e}function Nl(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}function _l(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.startColumn=e.startColumn,t.startLine=e.startLine,t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine)}function f$(t,e,r){t.children[r]===void 0?t.children[r]=[e]:t.children[r].push(e)}function d$(t,e,r){t.children[e]===void 0?t.children[e]=[r]:t.children[e].push(r)}const h$="name";function Ff(t,e){Object.defineProperty(t,h$,{enumerable:!1,configurable:!0,writable:!1,value:e})}function p$(t,e){const r=Oe(t),n=r.length;for(let i=0;i<n;i++){const s=r[i],a=t[s],o=a.length;for(let l=0;l<o;l++){const u=a[l];u.tokenTypeIdx===void 0&&this[u.name](u.children,e)}}}function m$(t,e){const r=function(){};Ff(r,t+"BaseSemantics");const n={visit:function(i,s){if(P(i)&&(i=i[0]),!lt(i))return this[i.name](i.children,s)},validateVisitor:function(){const i=y$(this,e);if(!j(i)){const s=I(i,a=>a.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
88
+ ${s.join(`
89
+
90
+ `).replace(/\n/g,`
91
+ `)}`)}}};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function g$(t,e,r){const n=function(){};Ff(n,t+"BaseSemanticsWithDefaults");const i=Object.create(r.prototype);return b(e,s=>{i[s]=p$}),n.prototype=i,n.prototype.constructor=n,n}var ma;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(ma||(ma={}));function y$(t,e){return v$(t,e)}function v$(t,e){const r=Pe(e,i=>ct(t[i])===!1),n=I(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:ma.MISSING_METHOD,methodName:i}));return pn(n)}class T${initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=w(e,"nodeLocationTracking")?e.nodeLocationTracking:ut.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=X,this.cstFinallyStateUpdate=X,this.cstPostTerminal=X,this.cstPostNonTerminal=X,this.cstPostRule=X;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=_l,this.setNodeLocationFromNode=_l,this.cstPostRule=X,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=X,this.setNodeLocationFromNode=X,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Nl,this.setNodeLocationFromNode=Nl,this.cstPostRule=X,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=X,this.setNodeLocationFromNode=X,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=X,this.setNodeLocationFromNode=X,this.cstPostRule=X,this.setInitialNodeLocation=X;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}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){const r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){const r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){const n=this.CST_STACK[this.CST_STACK.length-1];f$(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){const n=this.CST_STACK[this.CST_STACK.length-1];d$(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(lt(this.baseCstVisitorConstructor)){const e=m$(this.className,Oe(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(lt(this.baseCstVisitorWithDefaultsConstructor)){const e=g$(this.className,Oe(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}class R${initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)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)):gi}LA(e){const r=this.currIdx+e;return r<0||this.tokVectorLength<=r?gi:this.tokVector[r]}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()}}class $${ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}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,r,n=yi){if(de(this.definedRulesNames,e)){const s={message:Lt.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:fe.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);const i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=yi){const i=VR(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);const s=this.defineRule(e,r,n);return this[e]=s,s}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);const n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(pi(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return CT(Q(this.gastProductionsCache))}}class E${initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=hi,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},w(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
92
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
93
+ For Further details.`);if(P(e)){if(j(e))throw Error(`A Token Vocabulary cannot be empty.
94
+ Note that the first argument for the parser constructor
95
+ is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
96
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
97
+ For Further details.`)}if(P(e))this.tokensMap=ke(e,(s,a)=>(s[a.name]=a,s),{});else if(w(e,"modes")&&je(Fe(Q(e.modes)),RR)){const s=Fe(Q(e.modes)),a=uo(s);this.tokensMap=ke(a,(o,l)=>(o[l.name]=l,o),{})}else if(Le(e))this.tokensMap=se(e);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=yt;const n=w(e,"modes")?Fe(Q(e.modes)):Q(e),i=je(n,s=>j(s.categoryMatches));this.tokenMatcher=i?hi:gn,yn(Q(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
98
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const i=w(n,"resyncEnabled")?n.resyncEnabled:yi.resyncEnabled,s=w(n,"recoveryValueFunc")?n.recoveryValueFunc:yi.recoveryValueFunc,a=this.ruleShortNameIdx<<o$+$t;this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a;let o;return this.outputCst===!0?o=function(...l){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,l);const u=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(u),u}catch(u){return this.invokeRuleCatch(u,i,s)}finally{this.ruleFinallyStateUpdate()}}:o=function(...l){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,l)}catch(u){return this.invokeRuleCatch(u,i,s)}finally{this.ruleFinallyStateUpdate()}},Object.assign(o,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){const i=this.RULE_STACK.length===1,s=r&&!this.isBackTracking()&&this.recoveryEnabled;if(pi(e)){const a=e;if(s){const o=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(o))if(a.resyncedTokens=this.reSyncTo(o),this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return n(e);else{if(this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,a.partialCstResult=l}throw a}}else{if(i)return this.moveToTerminatedState(),n(e);throw a}}else throw e}optionInternal(e,r){const n=this.getKeyForAutomaticLookahead(Uf,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof e!="function"){s=e.DEF;const a=e.GATE;if(a!==void 0){const o=i;i=()=>a.call(this)&&o.call(this)}}else s=e;if(i.call(this)===!0)return s.call(this)}atLeastOneInternal(e,r){const n=this.getKeyForAutomaticLookahead(ha,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;const a=r.GATE;if(a!==void 0){const o=i;i=()=>a.call(this)&&o.call(this)}}else s=r;if(i.call(this)===!0){let a=this.doSingleRepetition(s);for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(e,V.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,ha,e,bR)}atLeastOneSepFirstInternal(e,r){const n=this.getKeyForAutomaticLookahead(Xn,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){const i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);const a=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,a,i,wl],a,Xn,e,wl)}else throw this.raiseEarlyExitException(e,V.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){const n=this.getKeyForAutomaticLookahead(da,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;const o=r.GATE;if(o!==void 0){const l=i;i=()=>o.call(this)&&l.call(this)}}else s=r;let a=!0;for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,da,e,wR,a)}manySepFirstInternal(e,r){const n=this.getKeyForAutomaticLookahead(pa,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){const i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);const a=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,a,i,Il],a,pa,e,Il)}}repetitionSepSecondInternal(e,r,n,i,s){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,s],n,Xn,e,s)}doSingleRepetition(e){const r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){const n=this.getKeyForAutomaticLookahead(Df,r),i=P(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){const e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new r$(r,e))}}subruleInternal(e,r,n){let i;try{const s=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,s),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(s){throw this.subruleInternalError(s,n,e.ruleName)}}subruleInternalError(e,r,n){throw pi(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{const s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),i=s):this.consumeInternalError(e,s,n)}catch(s){i=this.consumeInternalRecovery(e,r,s)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i;const s=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Pf(i,r,s))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){const i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(s){throw s.name===Mf?n:s}}else throw n}saveRecogState(){const e=this.errors,r=se(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),yt)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}class A${initErrorHandler(e){this._errors=[],this.errorMessageProvider=w(e,"errorMessageProvider")?e.errorMessageProvider:ut.errorMessageProvider}SAVE_ERROR(e){if(pi(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:se(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return se(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){const i=this.getCurrRuleFullName(),s=this.getGAstProductions()[i],a=Xi(e,s,r,this.maxLookahead)[0],o=[];for(let u=1;u<=this.maxLookahead;u++)o.push(this.LA(u));const l=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:o,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new n$(l,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){const n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],s=qi(e,i,this.maxLookahead),a=[];for(let u=1;u<=this.maxLookahead;u++)a.push(this.LA(u));const o=this.LA(0),l=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:a,previous:o,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new t$(l,this.LA(1),o))}}class k${initContentAssist(){}computeContentAssist(e,r){const n=this.gastProductionsCache[e];if(lt(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return kf([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const r=Be(e.ruleStack),n=this.getGAstProductions()[r];return new IR(n,e).startWalking()}}const Zi={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Zi);const Ll=!0,Ol=Math.pow(2,$t)-1,jf=Ef({name:"RECORDING_PHASE_TOKEN",pattern:he.NA});yn([jf]);const Gf=fo(jf,`This IToken indicates the Parser is in Recording Phase
99
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(Gf);const x$={name:`This CSTNode indicates the Parser is in Recording Phase
100
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}};class S${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++){const r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},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",()=>{const e=this;for(let r=0;r<10;r++){const n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return gi}topLevelRuleRecord(e,r){try{const n=new cr({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
101
+ This error was thrown during the "grammar recording phase" For more info see:
102
+ https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return mr.call(this,ie,e,r)}atLeastOneInternalRecord(e,r){mr.call(this,xe,r,e)}atLeastOneSepFirstInternalRecord(e,r){mr.call(this,Se,r,e,Ll)}manyInternalRecord(e,r){mr.call(this,W,r,e)}manySepFirstInternalRecord(e,r){mr.call(this,ge,r,e,Ll)}orInternalRecord(e,r){return I$.call(this,e,r)}subruleInternalRecord(e,r,n){if(mi(r),!e||w(e,"ruleName")===!1){const o=new Error(`<SUBRULE${Pl(r)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
103
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}const i=nr(this.recordingProdStack),s=e.ruleName,a=new ce({idx:r,nonTerminalName:s,label:n?.LABEL,referencedRule:void 0});return i.definition.push(a),this.outputCst?x$:Zi}consumeInternalRecord(e,r,n){if(mi(r),!Rf(e)){const a=new Error(`<CONSUME${Pl(r)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
104
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}const i=nr(this.recordingProdStack),s=new B({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(s),Gf}}function mr(t,e,r,n=!1){mi(r);const i=nr(this.recordingProdStack),s=ct(e)?e:e.DEF,a=new t({definition:[],idx:r});return n&&(a.separator=e.SEP),w(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(a),s.call(this),i.definition.push(a),this.recordingProdStack.pop(),Zi}function I$(t,e){mi(e);const r=nr(this.recordingProdStack),n=P(t)===!1,i=n===!1?t:t.DEF,s=new ye({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});w(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD);const a=lf(i,o=>ct(o.GATE));return s.hasPredicates=a,r.definition.push(s),b(i,o=>{const l=new me({definition:[]});s.definition.push(l),w(o,"IGNORE_AMBIGUITIES")?l.ignoreAmbiguities=o.IGNORE_AMBIGUITIES:w(o,"GATE")&&(l.ignoreAmbiguities=!0),this.recordingProdStack.push(l),o.ALT.call(this),this.recordingProdStack.pop()}),Zi}function Pl(t){return t===0?"":`${t}`}function mi(t){if(t<0||t>Ol){const e=new Error(`Invalid DSL Method idx value: <${t}>
105
+ Idx value must be a none negative value smaller than ${Ol+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}class w${initPerformanceTracer(e){if(w(e,"traceInitPerf")){const r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ut.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);const{time:i,value:s}=cf(r),a=i>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${n}<-- <${e}> time: ${i}ms`),this.traceInitIndent--,s}else return r()}}function b$(t,e){e.forEach(r=>{const n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;const s=Object.getOwnPropertyDescriptor(n,i);s&&(s.get||s.set)?Object.defineProperty(t.prototype,i,s):t.prototype[i]=r.prototype[i]})})}const gi=fo(yt,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(gi);const ut=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Qt,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),yi=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0});var fe;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(fe||(fe={}));function Ml(t=void 0){return function(){return t}}class vn{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;const r=this.className;this.TRACE_INIT("toFastProps",()=>{ff(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),b(this.definedRulesNames,i=>{const s=this[i].originalGrammarAction;let a;this.TRACE_INIT(`${i} Rule`,()=>{a=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=a})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=JR({rules:Q(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(j(n)&&this.skipValidations===!1){const i=e$({rules:Q(this.gastProductionsCache),tokenTypes:Q(this.tokensMap),errMsgProvider:Lt,grammarName:r}),s=UR({lookaheadStrategy:this.lookaheadStrategy,rules:Q(this.gastProductionsCache),tokenTypes:Q(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,s)}}),j(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{const i=DT(Q(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,s;(s=(i=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(i,{rules:Q(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Q(this.gastProductionsCache))})),!vn.DEFER_DEFINITION_ERRORS_HANDLING&&!j(this.definitionErrors))throw e=I(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected:
106
+ ${e.join(`
107
+ -------------------------------
108
+ `)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;const n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),w(r,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
109
+ Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
110
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
111
+ For further details.`);this.skipValidations=w(r,"skipValidations")?r.skipValidations:ut.skipValidations}}vn.DEFER_DEFINITION_ERRORS_HANDLING=!1;b$(vn,[s$,l$,T$,R$,E$,$$,A$,k$,S$,w$]);class C$ extends vn{constructor(e,r=ut){const n=se(r);n.outputCst=!1,super(e,n)}}function sr(t,e,r){return`${t.name}_${e}_${r}`}const vt=1,N$=2,Bf=4,Kf=5,Tn=7,_$=8,L$=9,O$=10,P$=11,Vf=12;class go{constructor(e){this.target=e}isEpsilon(){return!1}}class yo extends go{constructor(e,r){super(e),this.tokenType=r}}class Hf extends go{constructor(e){super(e)}isEpsilon(){return!0}}class vo extends go{constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}}function M$(t){const e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};D$(e,t);const r=t.length;for(let n=0;n<r;n++){const i=t[n],s=Ht(e,i,i);s!==void 0&&Y$(e,i,s)}return e}function D$(t,e){const r=e.length;for(let n=0;n<r;n++){const i=e[n],s=J(t,i,void 0,{type:N$}),a=J(t,i,void 0,{type:Tn});s.stop=a,t.ruleToStartState.set(i,s),t.ruleToStopState.set(i,a)}}function zf(t,e,r){return r instanceof B?To(t,e,r.terminalType,r):r instanceof ce?W$(t,e,r):r instanceof ye?B$(t,e,r):r instanceof ie?K$(t,e,r):r instanceof W?U$(t,e,r):r instanceof ge?F$(t,e,r):r instanceof xe?j$(t,e,r):r instanceof Se?G$(t,e,r):Ht(t,e,r)}function U$(t,e,r){const n=J(t,e,r,{type:Kf});Et(t,n);const i=dr(t,e,n,r,Ht(t,e,r));return Yf(t,e,r,i)}function F$(t,e,r){const n=J(t,e,r,{type:Kf});Et(t,n);const i=dr(t,e,n,r,Ht(t,e,r)),s=To(t,e,r.separator,r);return Yf(t,e,r,i,s)}function j$(t,e,r){const n=J(t,e,r,{type:Bf});Et(t,n);const i=dr(t,e,n,r,Ht(t,e,r));return Wf(t,e,r,i)}function G$(t,e,r){const n=J(t,e,r,{type:Bf});Et(t,n);const i=dr(t,e,n,r,Ht(t,e,r)),s=To(t,e,r.separator,r);return Wf(t,e,r,i,s)}function B$(t,e,r){const n=J(t,e,r,{type:vt});Et(t,n);const i=st(r.definition,s=>zf(t,e,s));return dr(t,e,n,r,...i)}function K$(t,e,r){const n=J(t,e,r,{type:vt});Et(t,n);const i=dr(t,e,n,r,Ht(t,e,r));return V$(t,e,r,i)}function Ht(t,e,r){const n=Kd(st(r.definition,i=>zf(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:z$(t,n)}function Wf(t,e,r,n,i){const s=n.left,a=n.right,o=J(t,e,r,{type:P$});Et(t,o);const l=J(t,e,r,{type:Vf});return s.loopback=o,l.loopback=o,t.decisionMap[sr(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,q(a,o),i===void 0?(q(o,s),q(o,l)):(q(o,l),q(o,i.left),q(i.right,s)),{left:s,right:l}}function Yf(t,e,r,n,i){const s=n.left,a=n.right,o=J(t,e,r,{type:O$});Et(t,o);const l=J(t,e,r,{type:Vf}),u=J(t,e,r,{type:L$});return o.loopback=u,l.loopback=u,q(o,s),q(o,l),q(a,u),i!==void 0?(q(u,l),q(u,i.left),q(i.right,s)):q(u,o),t.decisionMap[sr(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function V$(t,e,r,n){const i=n.left,s=n.right;return q(i,s),t.decisionMap[sr(e,"Option",r.idx)]=i,n}function Et(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function dr(t,e,r,n,...i){const s=J(t,e,n,{type:_$,start:r});r.end=s;for(const o of i)o!==void 0?(q(r,o.left),q(o.right,s)):q(r,s);const a={left:r,right:s};return t.decisionMap[sr(e,H$(n),n.idx)]=r,a}function H$(t){if(t instanceof ye)return"Alternation";if(t instanceof ie)return"Option";if(t instanceof W)return"Repetition";if(t instanceof ge)return"RepetitionWithSeparator";if(t instanceof xe)return"RepetitionMandatory";if(t instanceof Se)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function z$(t,e){const r=e.length;for(let s=0;s<r-1;s++){const a=e[s];let o;a.left.transitions.length===1&&(o=a.left.transitions[0]);const l=o instanceof vo,u=o,c=e[s+1].left;a.left.type===vt&&a.right.type===vt&&o!==void 0&&(l&&u.followState===a.right||o.target===a.right)?(l?u.followState=c:o.target=c,q$(t,a.right)):q(a.right,c)}const n=e[0],i=e[r-1];return{left:n.left,right:i.right}}function To(t,e,r,n){const i=J(t,e,n,{type:vt}),s=J(t,e,n,{type:vt});return Ro(i,new yo(s,r)),{left:i,right:s}}function W$(t,e,r){const n=r.referencedRule,i=t.ruleToStartState.get(n),s=J(t,e,r,{type:vt}),a=J(t,e,r,{type:vt}),o=new vo(i,n,a);return Ro(s,o),{left:s,right:a}}function Y$(t,e,r){const n=t.ruleToStartState.get(e);q(n,r.left);const i=t.ruleToStopState.get(e);return q(r.right,i),{left:n,right:i}}function q(t,e){const r=new Hf(e);Ro(t,r)}function J(t,e,r,n){const i=Object.assign({atn:t,production:r,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:t.states.length},n);return t.states.push(i),i}function Ro(t,e){t.transitions.length===0&&(t.epsilonOnlyTransitions=e.isEpsilon()),t.transitions.push(e)}function q$(t,e){t.states.splice(t.states.indexOf(e),1)}const vi={};class ga{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){const r=qf(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return st(this.configs,e=>e.alt)}get key(){let e="";for(const r in this.map)e+=r+":";return e}}function qf(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}function X$(t,e){const r={};return n=>{const i=n.toString();let s=r[i];return s!==void 0||(s={atnStartState:t,decision:e,states:{}},r[i]=s),s}}class Xf{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="";const r=this.predicates.length;for(let n=0;n<r;n++)e+=this.predicates[n]===!0?"1":"0";return e}}const Dl=new Xf;class Q$ extends mo{constructor(e){var r;super(),this.logging=(r=e?.logging)!==null&&r!==void 0?r:(n=>console.log(n))}initialize(e){this.atn=M$(e.rules),this.dfas=Z$(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){const{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,l=sr(n,"Alternation",r),u=this.atn.decisionMap[l].decision,c=st(bl({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),f=>st(f,d=>d[0]));if(Ul(c,!1)&&!s){const f=wo(c,(d,h,m)=>(ns(h,g=>{g&&(d[g.tokenTypeIdx]=m,ns(g.categoryMatches,E=>{d[E]=m}))}),d),{});return i?function(d){var h;const m=this.LA(1),g=f[m.tokenTypeIdx];if(d!==void 0&&g!==void 0){const E=(h=d[g])===null||h===void 0?void 0:h.GATE;if(E!==void 0&&E.call(this)===!1)return}return g}:function(){const d=this.LA(1);return f[d.tokenTypeIdx]}}else return i?function(f){const d=new Xf,h=f===void 0?0:f.length;for(let g=0;g<h;g++){const E=f?.[g].GATE;d.set(g,E===void 0||E.call(this))}const m=Ts.call(this,a,u,d,o);return typeof m=="number"?m:void 0}:function(){const f=Ts.call(this,a,u,Dl,o);return typeof f=="number"?f:void 0}}buildLookaheadForOptional(e){const{prodOccurrence:r,rule:n,prodType:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,l=sr(n,i,r),u=this.atn.decisionMap[l].decision,c=st(bl({maxLookahead:1,occurrence:r,prodType:i,rule:n}),f=>st(f,d=>d[0]));if(Ul(c)&&c[0][0]&&!s){const f=c[0],d=Gd(f);if(d.length===1&&jd(d[0].categoryMatches)){const h=d[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===h}}else{const h=wo(d,(m,g)=>(g!==void 0&&(m[g.tokenTypeIdx]=!0,ns(g.categoryMatches,E=>{m[E]=!0})),m),{});return function(){const m=this.LA(1);return h[m.tokenTypeIdx]===!0}}}return function(){const f=Ts.call(this,a,u,Dl,o);return typeof f=="object"?!1:f===0}}}function Ul(t,e=!0){const r=new Set;for(const n of t){const i=new Set;for(const s of n){if(s===void 0){if(e)break;return!1}const a=[s.tokenTypeIdx].concat(s.categoryMatches);for(const o of a)if(r.has(o)){if(!i.has(o))return!1}else r.add(o),i.add(o)}}return!0}function Z$(t){const e=t.decisionStates.length,r=Array(e);for(let n=0;n<e;n++)r[n]=X$(t.decisionStates[n],n);return r}function Ts(t,e,r,n){const i=t[e](r);let s=i.start;if(s===void 0){const a=uE(i.atnStartState);s=Zf(i,Qf(a)),i.start=s}return J$.apply(this,[i,s,r,n])}function J$(t,e,r,n){let i=e,s=1;const a=[];let o=this.LA(s++);for(;;){let l=sE(i,o);if(l===void 0&&(l=eE.apply(this,[t,i,o,s,r,n])),l===vi)return iE(a,i,o);if(l.isAcceptState===!0)return l.prediction;i=l,a.push(o),o=this.LA(s++)}}function eE(t,e,r,n,i,s){const a=aE(e.configs,r,i);if(a.size===0)return Fl(t,e,r,vi),vi;let o=Qf(a);const l=lE(a,i);if(l!==void 0)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(hE(a)){const u=Bd(a.alts);o.isAcceptState=!0,o.prediction=u,o.configs.uniqueAlt=u,tE.apply(this,[t,n,a.alts,s])}return o=Fl(t,e,r,o),o}function tE(t,e,r,n){const i=[];for(let u=1;u<=e;u++)i.push(this.LA(u).tokenType);const s=t.atnStartState,a=s.rule,o=s.production,l=rE({topLevelRule:a,ambiguityIndices:r,production:o,prefixPath:i});n(l)}function rE(t){const e=st(t.prefixPath,i=>er(i)).join(", "),r=t.production.idx===0?"":t.production.idx;let n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${nE(t.production)}${r}> inside <${t.topLevelRule.name}> Rule,
112
+ <${e}> may appears as a prefix path in all these alternatives.
113
+ `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
114
+ For Further details.`,n}function nE(t){if(t instanceof ce)return"SUBRULE";if(t instanceof ie)return"OPTION";if(t instanceof ye)return"OR";if(t instanceof xe)return"AT_LEAST_ONE";if(t instanceof Se)return"AT_LEAST_ONE_SEP";if(t instanceof ge)return"MANY_SEP";if(t instanceof W)return"MANY";if(t instanceof B)return"CONSUME";throw Error("non exhaustive match")}function iE(t,e,r){const n=qd(e.configs.elements,s=>s.state.transitions),i=Xd(n.filter(s=>s instanceof yo).map(s=>s.tokenType),s=>s.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function sE(t,e){return t.edges[e.tokenTypeIdx]}function aE(t,e,r){const n=new ga,i=[];for(const a of t.elements){if(r.is(a.alt)===!1)continue;if(a.state.type===Tn){i.push(a);continue}const o=a.state.transitions.length;for(let l=0;l<o;l++){const u=a.state.transitions[l],c=oE(u,e);c!==void 0&&n.add({state:c,alt:a.alt,stack:a.stack})}}let s;if(i.length===0&&n.size===1&&(s=n),s===void 0){s=new ga;for(const a of n.elements)Ti(a,s)}if(i.length>0&&!fE(s))for(const a of i)s.add(a);return s}function oE(t,e){if(t instanceof yo&&Af(e,t.tokenType))return t.target}function lE(t,e){let r;for(const n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Qf(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Fl(t,e,r,n){return n=Zf(t,n),e.edges[r.tokenTypeIdx]=n,n}function Zf(t,e){if(e===vi)return e;const r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function uE(t){const e=new ga,r=t.transitions.length;for(let n=0;n<r;n++){const i={state:t.transitions[n].target,alt:n,stack:[]};Ti(i,e)}return e}function Ti(t,e){const r=t.state;if(r.type===Tn){if(t.stack.length>0){const i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};Ti(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);const n=r.transitions.length;for(let i=0;i<n;i++){const s=r.transitions[i],a=cE(t,s);a!==void 0&&Ti(a,e)}}function cE(t,e){if(e instanceof Hf)return{state:e.target,alt:t.alt,stack:t.stack};if(e instanceof vo){const r=[...t.stack,e.followState];return{state:e.target,alt:t.alt,stack:r}}}function fE(t){for(const e of t.elements)if(e.state.type===Tn)return!0;return!1}function dE(t){for(const e of t.elements)if(e.state.type!==Tn)return!1;return!0}function hE(t){if(dE(t))return!0;const e=pE(t.elements);return mE(e)&&!gE(e)}function pE(t){const e=new Map;for(const r of t){const n=qf(r,!1);let i=e.get(n);i===void 0&&(i={},e.set(n,i)),i[r.alt]=!0}return e}function mE(t){for(const e of Array.from(t.values()))if(Object.keys(e).length>1)return!0;return!1}function gE(t){for(const e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var jl;(function(t){function e(r){return typeof r=="string"}t.is=e})(jl||(jl={}));var ya;(function(t){function e(r){return typeof r=="string"}t.is=e})(ya||(ya={}));var Gl;(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(Gl||(Gl={}));var Ri;(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(Ri||(Ri={}));var M;(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=Ri.MAX_VALUE),i===Number.MAX_VALUE&&(i=Ri.MAX_VALUE),{line:n,character:i}}t.create=e;function r(n){let i=n;return p.objectLiteral(i)&&p.uinteger(i.line)&&p.uinteger(i.character)}t.is=r})(M||(M={}));var O;(function(t){function e(n,i,s,a){if(p.uinteger(n)&&p.uinteger(i)&&p.uinteger(s)&&p.uinteger(a))return{start:M.create(n,i),end:M.create(s,a)};if(M.is(n)&&M.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${s}, ${a}]`)}t.create=e;function r(n){let i=n;return p.objectLiteral(i)&&M.is(i.start)&&M.is(i.end)}t.is=r})(O||(O={}));var $i;(function(t){function e(n,i){return{uri:n,range:i}}t.create=e;function r(n){let i=n;return p.objectLiteral(i)&&O.is(i.range)&&(p.string(i.uri)||p.undefined(i.uri))}t.is=r})($i||($i={}));var Bl;(function(t){function e(n,i,s,a){return{targetUri:n,targetRange:i,targetSelectionRange:s,originSelectionRange:a}}t.create=e;function r(n){let i=n;return p.objectLiteral(i)&&O.is(i.targetRange)&&p.string(i.targetUri)&&O.is(i.targetSelectionRange)&&(O.is(i.originSelectionRange)||p.undefined(i.originSelectionRange))}t.is=r})(Bl||(Bl={}));var va;(function(t){function e(n,i,s,a){return{red:n,green:i,blue:s,alpha:a}}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&p.numberRange(i.red,0,1)&&p.numberRange(i.green,0,1)&&p.numberRange(i.blue,0,1)&&p.numberRange(i.alpha,0,1)}t.is=r})(va||(va={}));var Kl;(function(t){function e(n,i){return{range:n,color:i}}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&O.is(i.range)&&va.is(i.color)}t.is=r})(Kl||(Kl={}));var Vl;(function(t){function e(n,i,s){return{label:n,textEdit:i,additionalTextEdits:s}}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&p.string(i.label)&&(p.undefined(i.textEdit)||or.is(i))&&(p.undefined(i.additionalTextEdits)||p.typedArray(i.additionalTextEdits,or.is))}t.is=r})(Vl||(Vl={}));var Hl;(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(Hl||(Hl={}));var zl;(function(t){function e(n,i,s,a,o,l){const u={startLine:n,endLine:i};return p.defined(s)&&(u.startCharacter=s),p.defined(a)&&(u.endCharacter=a),p.defined(o)&&(u.kind=o),p.defined(l)&&(u.collapsedText=l),u}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&p.uinteger(i.startLine)&&p.uinteger(i.startLine)&&(p.undefined(i.startCharacter)||p.uinteger(i.startCharacter))&&(p.undefined(i.endCharacter)||p.uinteger(i.endCharacter))&&(p.undefined(i.kind)||p.string(i.kind))}t.is=r})(zl||(zl={}));var Ta;(function(t){function e(n,i){return{location:n,message:i}}t.create=e;function r(n){let i=n;return p.defined(i)&&$i.is(i.location)&&p.string(i.message)}t.is=r})(Ta||(Ta={}));var Wl;(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(Wl||(Wl={}));var Yl;(function(t){t.Unnecessary=1,t.Deprecated=2})(Yl||(Yl={}));var ql;(function(t){function e(r){const n=r;return p.objectLiteral(n)&&p.string(n.href)}t.is=e})(ql||(ql={}));var Ei;(function(t){function e(n,i,s,a,o,l){let u={range:n,message:i};return p.defined(s)&&(u.severity=s),p.defined(a)&&(u.code=a),p.defined(o)&&(u.source=o),p.defined(l)&&(u.relatedInformation=l),u}t.create=e;function r(n){var i;let s=n;return p.defined(s)&&O.is(s.range)&&p.string(s.message)&&(p.number(s.severity)||p.undefined(s.severity))&&(p.integer(s.code)||p.string(s.code)||p.undefined(s.code))&&(p.undefined(s.codeDescription)||p.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(p.string(s.source)||p.undefined(s.source))&&(p.undefined(s.relatedInformation)||p.typedArray(s.relatedInformation,Ta.is))}t.is=r})(Ei||(Ei={}));var ar;(function(t){function e(n,i,...s){let a={title:n,command:i};return p.defined(s)&&s.length>0&&(a.arguments=s),a}t.create=e;function r(n){let i=n;return p.defined(i)&&p.string(i.title)&&p.string(i.command)}t.is=r})(ar||(ar={}));var or;(function(t){function e(s,a){return{range:s,newText:a}}t.replace=e;function r(s,a){return{range:{start:s,end:s},newText:a}}t.insert=r;function n(s){return{range:s,newText:""}}t.del=n;function i(s){const a=s;return p.objectLiteral(a)&&p.string(a.newText)&&O.is(a.range)}t.is=i})(or||(or={}));var Ra;(function(t){function e(n,i,s){const a={label:n};return i!==void 0&&(a.needsConfirmation=i),s!==void 0&&(a.description=s),a}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&p.string(i.label)&&(p.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(p.string(i.description)||i.description===void 0)}t.is=r})(Ra||(Ra={}));var lr;(function(t){function e(r){const n=r;return p.string(n)}t.is=e})(lr||(lr={}));var Xl;(function(t){function e(s,a,o){return{range:s,newText:a,annotationId:o}}t.replace=e;function r(s,a,o){return{range:{start:s,end:s},newText:a,annotationId:o}}t.insert=r;function n(s,a){return{range:s,newText:"",annotationId:a}}t.del=n;function i(s){const a=s;return or.is(a)&&(Ra.is(a.annotationId)||lr.is(a.annotationId))}t.is=i})(Xl||(Xl={}));var $a;(function(t){function e(n,i){return{textDocument:n,edits:i}}t.create=e;function r(n){let i=n;return p.defined(i)&&Sa.is(i.textDocument)&&Array.isArray(i.edits)}t.is=r})($a||($a={}));var Ea;(function(t){function e(n,i,s){let a={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&p.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||p.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||p.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||lr.is(i.annotationId))}t.is=r})(Ea||(Ea={}));var Aa;(function(t){function e(n,i,s,a){let o={kind:"rename",oldUri:n,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(o.options=s),a!==void 0&&(o.annotationId=a),o}t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&p.string(i.oldUri)&&p.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||p.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||p.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||lr.is(i.annotationId))}t.is=r})(Aa||(Aa={}));var ka;(function(t){function e(n,i,s){let a={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&p.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||p.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||p.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||lr.is(i.annotationId))}t.is=r})(ka||(ka={}));var xa;(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>p.string(i.kind)?Ea.is(i)||Aa.is(i)||ka.is(i):$a.is(i)))}t.is=e})(xa||(xa={}));var Ql;(function(t){function e(n){return{uri:n}}t.create=e;function r(n){let i=n;return p.defined(i)&&p.string(i.uri)}t.is=r})(Ql||(Ql={}));var Zl;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return p.defined(i)&&p.string(i.uri)&&p.integer(i.version)}t.is=r})(Zl||(Zl={}));var Sa;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return p.defined(i)&&p.string(i.uri)&&(i.version===null||p.integer(i.version))}t.is=r})(Sa||(Sa={}));var Jl;(function(t){function e(n,i,s,a){return{uri:n,languageId:i,version:s,text:a}}t.create=e;function r(n){let i=n;return p.defined(i)&&p.string(i.uri)&&p.string(i.languageId)&&p.integer(i.version)&&p.string(i.text)}t.is=r})(Jl||(Jl={}));var Ia;(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){const n=r;return n===t.PlainText||n===t.Markdown}t.is=e})(Ia||(Ia={}));var on;(function(t){function e(r){const n=r;return p.objectLiteral(r)&&Ia.is(n.kind)&&p.string(n.value)}t.is=e})(on||(on={}));var eu;(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(eu||(eu={}));var tu;(function(t){t.PlainText=1,t.Snippet=2})(tu||(tu={}));var ru;(function(t){t.Deprecated=1})(ru||(ru={}));var nu;(function(t){function e(n,i,s){return{newText:n,insert:i,replace:s}}t.create=e;function r(n){const i=n;return i&&p.string(i.newText)&&O.is(i.insert)&&O.is(i.replace)}t.is=r})(nu||(nu={}));var iu;(function(t){t.asIs=1,t.adjustIndentation=2})(iu||(iu={}));var su;(function(t){function e(r){const n=r;return n&&(p.string(n.detail)||n.detail===void 0)&&(p.string(n.description)||n.description===void 0)}t.is=e})(su||(su={}));var au;(function(t){function e(r){return{label:r}}t.create=e})(au||(au={}));var ou;(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}t.create=e})(ou||(ou={}));var Ai;(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function r(n){const i=n;return p.string(i)||p.objectLiteral(i)&&p.string(i.language)&&p.string(i.value)}t.is=r})(Ai||(Ai={}));var lu;(function(t){function e(r){let n=r;return!!n&&p.objectLiteral(n)&&(on.is(n.contents)||Ai.is(n.contents)||p.typedArray(n.contents,Ai.is))&&(r.range===void 0||O.is(r.range))}t.is=e})(lu||(lu={}));var uu;(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}t.create=e})(uu||(uu={}));var cu;(function(t){function e(r,n,...i){let s={label:r};return p.defined(n)&&(s.documentation=n),p.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(cu||(cu={}));var fu;(function(t){t.Text=1,t.Read=2,t.Write=3})(fu||(fu={}));var du;(function(t){function e(r,n){let i={range:r};return p.number(n)&&(i.kind=n),i}t.create=e})(du||(du={}));var hu;(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(hu||(hu={}));var pu;(function(t){t.Deprecated=1})(pu||(pu={}));var mu;(function(t){function e(r,n,i,s,a){let o={name:r,kind:n,location:{uri:s,range:i}};return a&&(o.containerName=a),o}t.create=e})(mu||(mu={}));var gu;(function(t){function e(r,n,i,s){return s!==void 0?{name:r,kind:n,location:{uri:i,range:s}}:{name:r,kind:n,location:{uri:i}}}t.create=e})(gu||(gu={}));var yu;(function(t){function e(n,i,s,a,o,l){let u={name:n,detail:i,kind:s,range:a,selectionRange:o};return l!==void 0&&(u.children=l),u}t.create=e;function r(n){let i=n;return i&&p.string(i.name)&&p.number(i.kind)&&O.is(i.range)&&O.is(i.selectionRange)&&(i.detail===void 0||p.string(i.detail))&&(i.deprecated===void 0||p.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=r})(yu||(yu={}));var vu;(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(vu||(vu={}));var ki;(function(t){t.Invoked=1,t.Automatic=2})(ki||(ki={}));var Tu;(function(t){function e(n,i,s){let a={diagnostics:n};return i!=null&&(a.only=i),s!=null&&(a.triggerKind=s),a}t.create=e;function r(n){let i=n;return p.defined(i)&&p.typedArray(i.diagnostics,Ei.is)&&(i.only===void 0||p.typedArray(i.only,p.string))&&(i.triggerKind===void 0||i.triggerKind===ki.Invoked||i.triggerKind===ki.Automatic)}t.is=r})(Tu||(Tu={}));var Ru;(function(t){function e(n,i,s){let a={title:n},o=!0;return typeof i=="string"?(o=!1,a.kind=i):ar.is(i)?a.command=i:a.edit=i,o&&s!==void 0&&(a.kind=s),a}t.create=e;function r(n){let i=n;return i&&p.string(i.title)&&(i.diagnostics===void 0||p.typedArray(i.diagnostics,Ei.is))&&(i.kind===void 0||p.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||ar.is(i.command))&&(i.isPreferred===void 0||p.boolean(i.isPreferred))&&(i.edit===void 0||xa.is(i.edit))}t.is=r})(Ru||(Ru={}));var $u;(function(t){function e(n,i){let s={range:n};return p.defined(i)&&(s.data=i),s}t.create=e;function r(n){let i=n;return p.defined(i)&&O.is(i.range)&&(p.undefined(i.command)||ar.is(i.command))}t.is=r})($u||($u={}));var Eu;(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}t.create=e;function r(n){let i=n;return p.defined(i)&&p.uinteger(i.tabSize)&&p.boolean(i.insertSpaces)}t.is=r})(Eu||(Eu={}));var Au;(function(t){function e(n,i,s){return{range:n,target:i,data:s}}t.create=e;function r(n){let i=n;return p.defined(i)&&O.is(i.range)&&(p.undefined(i.target)||p.string(i.target))}t.is=r})(Au||(Au={}));var ku;(function(t){function e(n,i){return{range:n,parent:i}}t.create=e;function r(n){let i=n;return p.objectLiteral(i)&&O.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=r})(ku||(ku={}));var xu;(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(xu||(xu={}));var Su;(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(Su||(Su={}));var Iu;(function(t){function e(r){const n=r;return p.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}t.is=e})(Iu||(Iu={}));var wu;(function(t){function e(n,i){return{range:n,text:i}}t.create=e;function r(n){const i=n;return i!=null&&O.is(i.range)&&p.string(i.text)}t.is=r})(wu||(wu={}));var bu;(function(t){function e(n,i,s){return{range:n,variableName:i,caseSensitiveLookup:s}}t.create=e;function r(n){const i=n;return i!=null&&O.is(i.range)&&p.boolean(i.caseSensitiveLookup)&&(p.string(i.variableName)||i.variableName===void 0)}t.is=r})(bu||(bu={}));var Cu;(function(t){function e(n,i){return{range:n,expression:i}}t.create=e;function r(n){const i=n;return i!=null&&O.is(i.range)&&(p.string(i.expression)||i.expression===void 0)}t.is=r})(Cu||(Cu={}));var Nu;(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}t.create=e;function r(n){const i=n;return p.defined(i)&&O.is(n.stoppedLocation)}t.is=r})(Nu||(Nu={}));var wa;(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}t.is=e})(wa||(wa={}));var ba;(function(t){function e(n){return{value:n}}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&(i.tooltip===void 0||p.string(i.tooltip)||on.is(i.tooltip))&&(i.location===void 0||$i.is(i.location))&&(i.command===void 0||ar.is(i.command))}t.is=r})(ba||(ba={}));var _u;(function(t){function e(n,i,s){const a={position:n,label:i};return s!==void 0&&(a.kind=s),a}t.create=e;function r(n){const i=n;return p.objectLiteral(i)&&M.is(i.position)&&(p.string(i.label)||p.typedArray(i.label,ba.is))&&(i.kind===void 0||wa.is(i.kind))&&i.textEdits===void 0||p.typedArray(i.textEdits,or.is)&&(i.tooltip===void 0||p.string(i.tooltip)||on.is(i.tooltip))&&(i.paddingLeft===void 0||p.boolean(i.paddingLeft))&&(i.paddingRight===void 0||p.boolean(i.paddingRight))}t.is=r})(_u||(_u={}));var Lu;(function(t){function e(r){return{kind:"snippet",value:r}}t.createSnippet=e})(Lu||(Lu={}));var Ou;(function(t){function e(r,n,i,s){return{insertText:r,filterText:n,range:i,command:s}}t.create=e})(Ou||(Ou={}));var Pu;(function(t){function e(r){return{items:r}}t.create=e})(Pu||(Pu={}));var Mu;(function(t){t.Invoked=0,t.Automatic=1})(Mu||(Mu={}));var Du;(function(t){function e(r,n){return{range:r,text:n}}t.create=e})(Du||(Du={}));var Uu;(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}t.create=e})(Uu||(Uu={}));var Fu;(function(t){function e(r){const n=r;return p.objectLiteral(n)&&ya.is(n.uri)&&p.string(n.name)}t.is=e})(Fu||(Fu={}));var ju;(function(t){function e(s,a,o,l){return new yE(s,a,o,l)}t.create=e;function r(s){let a=s;return!!(p.defined(a)&&p.string(a.uri)&&(p.undefined(a.languageId)||p.string(a.languageId))&&p.uinteger(a.lineCount)&&p.func(a.getText)&&p.func(a.positionAt)&&p.func(a.offsetAt))}t.is=r;function n(s,a){let o=s.getText(),l=i(a,(c,f)=>{let d=c.range.start.line-f.range.start.line;return d===0?c.range.start.character-f.range.start.character:d}),u=o.length;for(let c=l.length-1;c>=0;c--){let f=l[c],d=s.offsetAt(f.range.start),h=s.offsetAt(f.range.end);if(h<=u)o=o.substring(0,d)+f.newText+o.substring(h,o.length);else throw new Error("Overlapping edit");u=d}return o}t.applyEdits=n;function i(s,a){if(s.length<=1)return s;const o=s.length/2|0,l=s.slice(0,o),u=s.slice(o);i(l,a),i(u,a);let c=0,f=0,d=0;for(;c<l.length&&f<u.length;)a(l[c],u[f])<=0?s[d++]=l[c++]:s[d++]=u[f++];for(;c<l.length;)s[d++]=l[c++];for(;f<u.length;)s[d++]=u[f++];return s}})(ju||(ju={}));let yE=class{constructor(t,e,r,n){this._uri=t,this._languageId=e,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(t){if(t){let e=this.offsetAt(t.start),r=this.offsetAt(t.end);return this._content.substring(e,r)}return this._content}update(t,e){this._content=t.text,this._version=e,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let t=[],e=this._content,r=!0;for(let n=0;n<e.length;n++){r&&(t.push(n),r=!1);let i=e.charAt(n);r=i==="\r"||i===`
115
+ `,i==="\r"&&n+1<e.length&&e.charAt(n+1)===`
116
+ `&&n++}r&&e.length>0&&t.push(e.length),this._lineOffsets=t}return this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let e=this.getLineOffsets(),r=0,n=e.length;if(n===0)return M.create(0,t);for(;r<n;){let s=Math.floor((r+n)/2);e[s]>t?n=s:r=s+1}let i=r-1;return M.create(i,t-e[i])}offsetAt(t){let e=this.getLineOffsets();if(t.line>=e.length)return this._content.length;if(t.line<0)return 0;let r=e[t.line],n=t.line+1<e.length?e[t.line+1]:this._content.length;return Math.max(Math.min(r+t.character,n),r)}get lineCount(){return this.getLineOffsets().length}};var p;(function(t){const e=Object.prototype.toString;function r(h){return typeof h<"u"}t.defined=r;function n(h){return typeof h>"u"}t.undefined=n;function i(h){return h===!0||h===!1}t.boolean=i;function s(h){return e.call(h)==="[object String]"}t.string=s;function a(h){return e.call(h)==="[object Number]"}t.number=a;function o(h,m,g){return e.call(h)==="[object Number]"&&m<=h&&h<=g}t.numberRange=o;function l(h){return e.call(h)==="[object Number]"&&-2147483648<=h&&h<=2147483647}t.integer=l;function u(h){return e.call(h)==="[object Number]"&&0<=h&&h<=2147483647}t.uinteger=u;function c(h){return e.call(h)==="[object Function]"}t.func=c;function f(h){return h!==null&&typeof h=="object"}t.objectLiteral=f;function d(h,m){return Array.isArray(h)&&h.every(m)}t.typedArray=d})(p||(p={}));class vE{constructor(){this.nodeStack=[]}get current(){var e;return(e=this.nodeStack[this.nodeStack.length-1])!==null&&e!==void 0?e:this.rootNode}buildRootNode(e){return this.rootNode=new ed(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){const r=new $o;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){const n=new Ca(e.startOffset,e.image.length,Js(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){const r=e.container;if(r){const n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){const r=[];for(const s of e){const a=new Ca(s.startOffset,s.image.length,Js(s),s.tokenType,!0);a.root=this.rootNode,r.push(a)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){const s=n.container.content.indexOf(n);if(s>0){n.container.content.splice(s,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){const r=this.current;typeof e.$type=="string"&&(this.current.astNode=e),e.$cstNode=r;const n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}}class Jf{get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,r;const n=typeof((e=this._astNode)===null||e===void 0?void 0:e.$type)=="string"?this._astNode:(r=this.container)===null||r===void 0?void 0:r.astNode;if(!n)throw new Error("This node has no associated AST element");return n}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}}class Ca extends Jf{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,r,n,i,s=!1){super(),this._hidden=s,this._offset=e,this._tokenType=i,this._length=r,this._range=n}}class $o extends Jf{constructor(){super(...arguments),this.content=new Eo(this)}get children(){return this.content}get offset(){var e,r;return(r=(e=this.firstNonHiddenNode)===null||e===void 0?void 0:e.offset)!==null&&r!==void 0?r:0}get length(){return this.end-this.offset}get end(){var e,r;return(r=(e=this.lastNonHiddenNode)===null||e===void 0?void 0:e.end)!==null&&r!==void 0?r:0}get range(){const e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){const{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line<n.start.line?n.start:i.end}}return this._rangeCache}else return{start:M.create(0,0),end:M.create(0,0)}}get firstNonHiddenNode(){for(const 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--){const r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}}class Eo extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,Eo.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(const r of e)r.container=this.parent}}class ed extends $o{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}const Na=Symbol("Datatype");function Rs(t){return t.$type===Na}const Gu="​",td=t=>t.endsWith(Gu)?t:t+Gu;class rd{constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";this.wrapper=new AE(r,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class TE extends rd{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new vE,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){const n=this.computeRuleType(e),i=this.wrapper.DEFINE_RULE(td(e.name),this.startImplementation(n,r).bind(this));return this.allRules.set(e.name,i),e.entry&&(this.mainRule=i),i}computeRuleType(e){if(!e.fragment)return Cc(e)?Na:Ba(e)??e.name}parse(e,r={}){this.nodeBuilder.buildRootNode(e);const n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;const i=r.rule?this.allRules.get(r.rule):this.mainRule;if(!i)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");const s=i.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:s,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}startImplementation(e,r){return n=>{const i=!this.isRecording()&&e!==void 0;if(i){const a={$type:e};this.stack.push(a),e===Na&&(a.value="")}let s;try{s=r(n)}catch{s=void 0}return s===void 0&&i&&(s=this.construct()),s}}extractHiddenTokens(e){const r=this.lexerResult.hidden;if(!r.length)return[];const n=e.startOffset;for(let i=0;i<r.length;i++)if(r[i].startOffset>n)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){const i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){const s=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(s);const a=this.nodeBuilder.buildLeafNode(i,n),{assignment:o,isCrossRef:l}=this.getAssignment(n),u=this.current;if(o){const c=Pt(n)?i.image:this.converter.convert(i.image,a);this.assign(o.operator,o.feature,c,a,l)}else if(Rs(u)){let c=i.image;Pt(n)||(c=this.converter.convert(c,a).toString()),u.value+=c}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,s){let a;!this.isRecording()&&!n&&(a=this.nodeBuilder.buildCompositeNode(i));const o=this.wrapper.wrapSubrule(e,r,s);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(o,i,a)}performSubruleAssignment(e,r,n){const{assignment:i,isCrossRef:s}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,s);else if(!i){const a=this.current;if(Rs(a))a.value+=e.toString();else if(typeof e=="object"&&e){const o=this.assignWithoutOverride(e,a);this.stack.pop(),this.stack.push(o)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);const i={$type:e};this.stack.push(i),this.assign(r.operator,r.feature,n,n.$cstNode,!1)}else n.$type=e}}construct(){if(this.isRecording())return;const e=this.current;return Ah(e),this.nodeBuilder.construct(e),this.stack.pop(),Rs(e)?this.converter.convert(e.value,e.$cstNode):(kh(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){const r=Ni(e,Ot);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?Ua(r.terminal):!1})}return this.assignmentMap.get(e)}assign(e,r,n,i,s){const a=this.current;let o;switch(s&&typeof n=="string"?o=this.linker.buildReference(a,r,i,n):o=n,e){case"=":{a[r]=o;break}case"?=":{a[r]=!0;break}case"+=":Array.isArray(a[r])||(a[r]=[]),a[r].push(o)}}assignWithoutOverride(e,r){for(const[i,s]of Object.entries(r)){const a=e[i];a===void 0?e[i]=s:Array.isArray(a)&&Array.isArray(s)&&(s.push(...a),e[i]=s)}const n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}}class RE{buildMismatchTokenMessage(e){return Qt.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Qt.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Qt.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Qt.buildEarlyExitMessage(e)}}class nd extends RE{buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class $E extends rd{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.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,r){const n=this.wrapper.DEFINE_RULE(td(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{const n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,s){this.before(i),this.wrapper.wrapSubrule(e,r,s),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}}const EE={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new nd};class AE extends C${constructor(e,r){const n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},EE),{lookaheadStrategy:n?new mo({maxLookahead:r.maxLookahead}):new Q$({logging:r.skipValidations?()=>{}:void 0})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r){return this.RULE(e,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}}function id(t,e,r){return kE({parser:e,tokens:r,ruleNames:new Map},t),e}function kE(t,e){const r=xc(e,!1),n=ne(e.rules).filter(Ne).filter(i=>r.has(i));for(const i of n){const s=Object.assign(Object.assign({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(i,Ft(s,i.definition))}}function Ft(t,e,r=!1){let n;if(Pt(e))n=NE(t,e);else if(Ci(e))n=xE(t,e);else if(Ot(e))n=Ft(t,e.terminal);else if(Ua(e))n=sd(t,e);else if(Mt(e))n=SE(t,e);else if(Tc(e))n=wE(t,e);else if(Rc(e))n=bE(t,e);else if(Fa(e))n=CE(t,e);else if(mh(e)){const i=t.consume++;n=()=>t.parser.consume(i,yt,e)}else throw new mc(e.$cstNode,`Unexpected element type: ${e.$type}`);return ad(t,r?void 0:xi(e),n,e.cardinality)}function xE(t,e){const r=Ka(e);return()=>t.parser.action(r,e)}function SE(t,e){const r=e.rule.ref;if(Ne(r)){const n=t.subrule++,i=r.fragment,s=e.arguments.length>0?IE(r,e.arguments):()=>({});return a=>t.parser.subrule(n,od(t,r),i,e,s(a))}else if(Gt(r)){const n=t.consume++,i=_a(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)un();else throw new mc(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function IE(t,e){const r=e.map(n=>it(n.value));return n=>{const i={};for(let s=0;s<r.length;s++){const a=t.parameters[s],o=r[s];i[a.name]=o(n)}return i}}function it(t){if(uh(t)){const e=it(t.left),r=it(t.right);return n=>e(n)||r(n)}else if(lh(t)){const e=it(t.left),r=it(t.right);return n=>e(n)&&r(n)}else if(ch(t)){const e=it(t.value);return r=>!e(r)}else if(fh(t)){const e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(oh(t)){const e=!!t.true;return()=>e}un()}function wE(t,e){if(e.elements.length===1)return Ft(t,e.elements[0]);{const r=[];for(const i of e.elements){const s={ALT:Ft(t,i,!0)},a=xi(i);a&&(s.GATE=it(a)),r.push(s)}const n=t.or++;return i=>t.parser.alternatives(n,r.map(s=>{const a={ALT:()=>s.ALT(i)},o=s.GATE;return o&&(a.GATE=()=>o(i)),a}))}}function bE(t,e){if(e.elements.length===1)return Ft(t,e.elements[0]);const r=[];for(const o of e.elements){const l={ALT:Ft(t,o,!0)},u=xi(o);u&&(l.GATE=it(u)),r.push(l)}const n=t.or++,i=(o,l)=>{const u=l.getRuleStack().join("-");return`uGroup_${o}_${u}`},s=o=>t.parser.alternatives(n,r.map((l,u)=>{const c={ALT:()=>!0},f=t.parser;c.ALT=()=>{if(l.ALT(o),!f.isRecording()){const h=i(n,f);f.unorderedGroups.get(h)||f.unorderedGroups.set(h,[]);const m=f.unorderedGroups.get(h);typeof m?.[u]>"u"&&(m[u]=!0)}};const d=l.GATE;return d?c.GATE=()=>d(o):c.GATE=()=>{const h=f.unorderedGroups.get(i(n,f));return!(h!=null&&h[u])},c})),a=ad(t,xi(e),s,"*");return o=>{a(o),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function CE(t,e){const r=e.elements.map(n=>Ft(t,n));return n=>r.forEach(i=>i(n))}function xi(t){if(Fa(t))return t.guardCondition}function sd(t,e,r=e.terminal){if(r)if(Mt(r)&&Ne(r.rule.ref)){const n=r.rule.ref,i=t.subrule++;return s=>t.parser.subrule(i,od(t,n),!1,e,s)}else if(Mt(r)&&Gt(r.rule.ref)){const n=t.consume++,i=_a(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Pt(r)){const n=t.consume++,i=_a(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);const n=wc(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Ka(e.type.ref));return sd(t,e,i)}}function NE(t,e){const r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function ad(t,e,r,n){const i=e&&it(e);if(!n)if(i){const s=t.or++;return a=>t.parser.alternatives(s,[{ALT:()=>r(a),GATE:()=>i(a)},{ALT:Ml(),GATE:()=>!i(a)}])}else return r;if(n==="*"){const s=t.many++;return a=>t.parser.many(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else if(n==="+"){const s=t.many++;if(i){const a=t.or++;return o=>t.parser.alternatives(a,[{ALT:()=>t.parser.atLeastOne(s,{DEF:()=>r(o)}),GATE:()=>i(o)},{ALT:Ml(),GATE:()=>!i(o)}])}else return a=>t.parser.atLeastOne(s,{DEF:()=>r(a)})}else if(n==="?"){const s=t.optional++;return a=>t.parser.optional(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else un()}function od(t,e){const r=_E(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function _E(t,e){if(Ne(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!Ne(n);)(Fa(n)||Tc(n)||Rc(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function _a(t,e){const r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}function LE(t){const e=t.Grammar,r=t.parser.Lexer,n=new $E(t);return id(e,n,r.definition),n.finalize(),n}function OE(t){const e=PE(t);return e.finalize(),e}function PE(t){const e=t.Grammar,r=t.parser.Lexer,n=new TE(t);return id(e,n,r.definition)}class ld{constructor(){this.diagnostics=[]}buildTokens(e,r){const n=ne(xc(e,!1)),i=this.buildTerminalTokens(n),s=this.buildKeywordTokens(n,i,r);return i.forEach(a=>{const o=a.PATTERN;typeof o=="object"&&o&&"test"in o&&ta(o)?s.unshift(a):s.push(a)}),s}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){const e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(Gt).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){const r=Va(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=ta(r)?he.SKIPPED:"hidden"),i}requiresCustomPattern(e){return e.flags.includes("u")||e.flags.includes("s")?!0:!!(e.source.includes("?<=")||e.source.includes("?<!"))}regexPatternFunction(e){const r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Ne).flatMap(i=>cn(i).filter(Pt)).distinct(i=>i.value).toArray().sort((i,s)=>s.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!(n!=null&&n.caseInsensitive)))}buildKeywordToken(e,r,n){const i=this.buildKeywordPattern(e,n),s={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(s.LINE_BREAKS=!0),s}buildKeywordPattern(e,r){return r?new RegExp(Lh(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{const s=i?.PATTERN;return s!=null&&s.source&&Oh("^"+s.source+"$",e.value)&&n.push(i),n},[])}}class ud{convert(e,r){let n=r.grammarSource;if(Ua(n)&&(n=Uh(n)),Mt(n)){const i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return tt.convertInt(r);case"STRING":return tt.convertString(r);case"ID":return tt.convertID(r)}switch((i=Hh(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return tt.convertNumber(r);case"boolean":return tt.convertBoolean(r);case"bigint":return tt.convertBigint(r);case"date":return tt.convertDate(r);default:return r}}}var tt;(function(t){function e(u){let c="";for(let f=1;f<u.length-1;f++){const d=u.charAt(f);if(d==="\\"){const h=u.charAt(++f);c+=r(h)}else c+=d}return c}t.convertString=e;function r(u){switch(u){case"b":return"\b";case"f":return"\f";case"n":return`
117
+ `;case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return u}}function n(u){return u.charAt(0)==="^"?u.substring(1):u}t.convertID=n;function i(u){return parseInt(u)}t.convertInt=i;function s(u){return BigInt(u)}t.convertBigint=s;function a(u){return new Date(u)}t.convertDate=a;function o(u){return Number(u)}t.convertNumber=o;function l(u){return u.toLowerCase()==="true"}t.convertBoolean=l})(tt||(tt={}));var Nt={},Pn={},Bu;function cd(){if(Bu)return Pn;Bu=1,Object.defineProperty(Pn,"__esModule",{value:!0});let t;function e(){if(t===void 0)throw new Error("No runtime abstraction layer installed");return t}return(function(r){function n(i){if(i===void 0)throw new Error("No runtime abstraction layer provided");t=i}r.install=n})(e||(e={})),Pn.default=e,Pn}var ee={},Ku;function ME(){if(Ku)return ee;Ku=1,Object.defineProperty(ee,"__esModule",{value:!0}),ee.stringArray=ee.array=ee.func=ee.error=ee.number=ee.string=ee.boolean=void 0;function t(o){return o===!0||o===!1}ee.boolean=t;function e(o){return typeof o=="string"||o instanceof String}ee.string=e;function r(o){return typeof o=="number"||o instanceof Number}ee.number=r;function n(o){return o instanceof Error}ee.error=n;function i(o){return typeof o=="function"}ee.func=i;function s(o){return Array.isArray(o)}ee.array=s;function a(o){return s(o)&&o.every(l=>e(l))}return ee.stringArray=a,ee}var _t={},Vu;function fd(){if(Vu)return _t;Vu=1,Object.defineProperty(_t,"__esModule",{value:!0}),_t.Emitter=_t.Event=void 0;const t=cd();var e;(function(i){const s={dispose(){}};i.None=function(){return s}})(e||(_t.Event=e={}));class r{add(s,a=null,o){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(s),this._contexts.push(a),Array.isArray(o)&&o.push({dispose:()=>this.remove(s,a)})}remove(s,a=null){if(!this._callbacks)return;let o=!1;for(let l=0,u=this._callbacks.length;l<u;l++)if(this._callbacks[l]===s)if(this._contexts[l]===a){this._callbacks.splice(l,1),this._contexts.splice(l,1);return}else o=!0;if(o)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...s){if(!this._callbacks)return[];const a=[],o=this._callbacks.slice(0),l=this._contexts.slice(0);for(let u=0,c=o.length;u<c;u++)try{a.push(o[u].apply(l[u],s))}catch(f){(0,t.default)().console.error(f)}return a}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}}class n{constructor(s){this._options=s}get event(){return this._event||(this._event=(s,a,o)=>{this._callbacks||(this._callbacks=new r),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(s,a);const l={dispose:()=>{this._callbacks&&(this._callbacks.remove(s,a),l.dispose=n._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(o)&&o.push(l),l}),this._event}fire(s){this._callbacks&&this._callbacks.invoke.call(this._callbacks,s)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}return _t.Emitter=n,n._noop=function(){},_t}var Hu;function DE(){if(Hu)return Nt;Hu=1,Object.defineProperty(Nt,"__esModule",{value:!0}),Nt.CancellationTokenSource=Nt.CancellationToken=void 0;const t=cd(),e=ME(),r=fd();var n;(function(o){o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:r.Event.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:r.Event.None});function l(u){const c=u;return c&&(c===o.None||c===o.Cancelled||e.boolean(c.isCancellationRequested)&&!!c.onCancellationRequested)}o.is=l})(n||(Nt.CancellationToken=n={}));const i=Object.freeze(function(o,l){const u=(0,t.default)().timer.setTimeout(o.bind(l),0);return{dispose(){u.dispose()}}});class s{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?i:(this._emitter||(this._emitter=new r.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}class a{get token(){return this._token||(this._token=new s),this._token}cancel(){this._token?this._token.cancel():this._token=n.Cancelled}dispose(){this._token?this._token instanceof s&&this._token.dispose():this._token=n.None}}return Nt.CancellationTokenSource=a,Nt}var H=DE();function UE(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}let Qn=0,FE=10;function jE(){return Qn=performance.now(),new H.CancellationTokenSource}const Si=Symbol("OperationCancelled");function Ji(t){return t===Si}async function Ee(t){if(t===H.CancellationToken.None)return;const e=performance.now();if(e-Qn>=FE&&(Qn=e,await UE(),Qn=performance.now()),t.isCancellationRequested)throw Si}class Ao{constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}class ln{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(const n of e)if(ln.isIncremental(n)){const i=hd(n.range),s=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(a,this._content.length);const o=Math.max(i.start.line,0),l=Math.max(i.end.line,0);let u=this._lineOffsets;const c=zu(n.text,!1,s);if(l-o===c.length)for(let d=0,h=c.length;d<h;d++)u[d+o+1]=c[d];else c.length<1e4?u.splice(o+1,l-o,...c):this._lineOffsets=u=u.slice(0,o+1).concat(c,u.slice(l+1));const f=n.text.length-(a-s);if(f!==0)for(let d=o+1+c.length,h=u.length;d<h;d++)u[d]=u[d]+f}else if(ln.isFull(n))this._content=n.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=r}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=zu(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);const r=this.getLineOffsets();let n=0,i=r.length;if(i===0)return{line:0,character:e};for(;n<i;){const a=Math.floor((n+i)/2);r[a]>e?i=a:n=a+1}const s=n-1;return e=this.ensureBeforeEOL(e,r[s]),{line:s,character:e-r[s]}}offsetAt(e){const r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;const n=r[e.line];if(e.character<=0)return n;const i=e.line+1<r.length?r[e.line+1]:this._content.length,s=Math.min(n+e.character,i);return this.ensureBeforeEOL(s,n)}ensureBeforeEOL(e,r){for(;e>r&&dd(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){const r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}}var La;(function(t){function e(i,s,a,o){return new ln(i,s,a,o)}t.create=e;function r(i,s,a){if(i instanceof ln)return i.update(s,a),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=r;function n(i,s){const a=i.getText(),o=Oa(s.map(GE),(c,f)=>{const d=c.range.start.line-f.range.start.line;return d===0?c.range.start.character-f.range.start.character:d});let l=0;const u=[];for(const c of o){const f=i.offsetAt(c.range.start);if(f<l)throw new Error("Overlapping edit");f>l&&u.push(a.substring(l,f)),c.newText.length&&u.push(c.newText),l=i.offsetAt(c.range.end)}return u.push(a.substr(l)),u.join("")}t.applyEdits=n})(La||(La={}));function Oa(t,e){if(t.length<=1)return t;const r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);Oa(n,e),Oa(i,e);let s=0,a=0,o=0;for(;s<n.length&&a<i.length;)e(n[s],i[a])<=0?t[o++]=n[s++]:t[o++]=i[a++];for(;s<n.length;)t[o++]=n[s++];for(;a<i.length;)t[o++]=i[a++];return t}function zu(t,e,r=0){const n=e?[r]:[];for(let i=0;i<t.length;i++){const s=t.charCodeAt(i);dd(s)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,n.push(r+i+1))}return n}function dd(t){return t===13||t===10}function hd(t){const e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function GE(t){const e=hd(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var pd;(()=>{var t={470:i=>{function s(l){if(typeof l!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(l))}function a(l,u){for(var c,f="",d=0,h=-1,m=0,g=0;g<=l.length;++g){if(g<l.length)c=l.charCodeAt(g);else{if(c===47)break;c=47}if(c===47){if(!(h===g-1||m===1))if(h!==g-1&&m===2){if(f.length<2||d!==2||f.charCodeAt(f.length-1)!==46||f.charCodeAt(f.length-2)!==46){if(f.length>2){var E=f.lastIndexOf("/");if(E!==f.length-1){E===-1?(f="",d=0):d=(f=f.slice(0,E)).length-1-f.lastIndexOf("/"),h=g,m=0;continue}}else if(f.length===2||f.length===1){f="",d=0,h=g,m=0;continue}}u&&(f.length>0?f+="/..":f="..",d=2)}else f.length>0?f+="/"+l.slice(h+1,g):f=l.slice(h+1,g),d=g-h-1;h=g,m=0}else c===46&&m!==-1?++m:m=-1}return f}var o={resolve:function(){for(var l,u="",c=!1,f=arguments.length-1;f>=-1&&!c;f--){var d;f>=0?d=arguments[f]:(l===void 0&&(l=process.cwd()),d=l),s(d),d.length!==0&&(u=d+"/"+u,c=d.charCodeAt(0)===47)}return u=a(u,!c),c?u.length>0?"/"+u:"/":u.length>0?u:"."},normalize:function(l){if(s(l),l.length===0)return".";var u=l.charCodeAt(0)===47,c=l.charCodeAt(l.length-1)===47;return(l=a(l,!u)).length!==0||u||(l="."),l.length>0&&c&&(l+="/"),u?"/"+l:l},isAbsolute:function(l){return s(l),l.length>0&&l.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var l,u=0;u<arguments.length;++u){var c=arguments[u];s(c),c.length>0&&(l===void 0?l=c:l+="/"+c)}return l===void 0?".":o.normalize(l)},relative:function(l,u){if(s(l),s(u),l===u||(l=o.resolve(l))===(u=o.resolve(u)))return"";for(var c=1;c<l.length&&l.charCodeAt(c)===47;++c);for(var f=l.length,d=f-c,h=1;h<u.length&&u.charCodeAt(h)===47;++h);for(var m=u.length-h,g=d<m?d:m,E=-1,v=0;v<=g;++v){if(v===g){if(m>g){if(u.charCodeAt(h+v)===47)return u.slice(h+v+1);if(v===0)return u.slice(h+v)}else d>g&&(l.charCodeAt(c+v)===47?E=v:v===0&&(E=0));break}var $=l.charCodeAt(c+v);if($!==u.charCodeAt(h+v))break;$===47&&(E=v)}var T="";for(v=c+E+1;v<=f;++v)v!==f&&l.charCodeAt(v)!==47||(T.length===0?T+="..":T+="/..");return T.length>0?T+u.slice(h+E):(h+=E,u.charCodeAt(h)===47&&++h,u.slice(h))},_makeLong:function(l){return l},dirname:function(l){if(s(l),l.length===0)return".";for(var u=l.charCodeAt(0),c=u===47,f=-1,d=!0,h=l.length-1;h>=1;--h)if((u=l.charCodeAt(h))===47){if(!d){f=h;break}}else d=!1;return f===-1?c?"/":".":c&&f===1?"//":l.slice(0,f)},basename:function(l,u){if(u!==void 0&&typeof u!="string")throw new TypeError('"ext" argument must be a string');s(l);var c,f=0,d=-1,h=!0;if(u!==void 0&&u.length>0&&u.length<=l.length){if(u.length===l.length&&u===l)return"";var m=u.length-1,g=-1;for(c=l.length-1;c>=0;--c){var E=l.charCodeAt(c);if(E===47){if(!h){f=c+1;break}}else g===-1&&(h=!1,g=c+1),m>=0&&(E===u.charCodeAt(m)?--m==-1&&(d=c):(m=-1,d=g))}return f===d?d=g:d===-1&&(d=l.length),l.slice(f,d)}for(c=l.length-1;c>=0;--c)if(l.charCodeAt(c)===47){if(!h){f=c+1;break}}else d===-1&&(h=!1,d=c+1);return d===-1?"":l.slice(f,d)},extname:function(l){s(l);for(var u=-1,c=0,f=-1,d=!0,h=0,m=l.length-1;m>=0;--m){var g=l.charCodeAt(m);if(g!==47)f===-1&&(d=!1,f=m+1),g===46?u===-1?u=m:h!==1&&(h=1):u!==-1&&(h=-1);else if(!d){c=m+1;break}}return u===-1||f===-1||h===0||h===1&&u===f-1&&u===c+1?"":l.slice(u,f)},format:function(l){if(l===null||typeof l!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof l);return(function(u,c){var f=c.dir||c.root,d=c.base||(c.name||"")+(c.ext||"");return f?f===c.root?f+d:f+"/"+d:d})(0,l)},parse:function(l){s(l);var u={root:"",dir:"",base:"",ext:"",name:""};if(l.length===0)return u;var c,f=l.charCodeAt(0),d=f===47;d?(u.root="/",c=1):c=0;for(var h=-1,m=0,g=-1,E=!0,v=l.length-1,$=0;v>=c;--v)if((f=l.charCodeAt(v))!==47)g===-1&&(E=!1,g=v+1),f===46?h===-1?h=v:$!==1&&($=1):h!==-1&&($=-1);else if(!E){m=v+1;break}return h===-1||g===-1||$===0||$===1&&h===g-1&&h===m+1?g!==-1&&(u.base=u.name=m===0&&d?l.slice(1,g):l.slice(m,g)):(m===0&&d?(u.name=l.slice(1,h),u.base=l.slice(1,g)):(u.name=l.slice(m,h),u.base=l.slice(m,g)),u.ext=l.slice(h,g)),m>0?u.dir=l.slice(0,m-1):d&&(u.dir="/"),u},sep:"/",delimiter:":",win32:null,posix:null};o.posix=o,i.exports=o}},e={};function r(i){var s=e[i];if(s!==void 0)return s.exports;var a=e[i]={exports:{}};return t[i](a,a.exports,r),a.exports}r.d=(i,s)=>{for(var a in s)r.o(s,a)&&!r.o(i,a)&&Object.defineProperty(i,a,{enumerable:!0,get:s[a]})},r.o=(i,s)=>Object.prototype.hasOwnProperty.call(i,s),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:()=>d,Utils:()=>Ie}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);const s=/^\w[\w\d+.-]*$/,a=/^\//,o=/^\/\//;function l(A,y){if(!A.scheme&&y)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${A.authority}", path: "${A.path}", query: "${A.query}", fragment: "${A.fragment}"}`);if(A.scheme&&!s.test(A.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(A.path){if(A.authority){if(!a.test(A.path))throw new 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(o.test(A.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}const u="",c="/",f=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class d{constructor(y,S,k,L,_,N=!1){Ct(this,"scheme"),Ct(this,"authority"),Ct(this,"path"),Ct(this,"query"),Ct(this,"fragment"),typeof y=="object"?(this.scheme=y.scheme||u,this.authority=y.authority||u,this.path=y.path||u,this.query=y.query||u,this.fragment=y.fragment||u):(this.scheme=(function(Te,Z){return Te||Z?Te:"file"})(y,N),this.authority=S||u,this.path=(function(Te,Z){switch(Te){case"https":case"http":case"file":Z?Z[0]!==c&&(Z=c+Z):Z=c}return Z})(this.scheme,k||u),this.query=L||u,this.fragment=_||u,l(this,N))}static isUri(y){return y instanceof d||!!y&&typeof y.authority=="string"&&typeof y.fragment=="string"&&typeof y.path=="string"&&typeof y.query=="string"&&typeof y.scheme=="string"&&typeof y.fsPath=="string"&&typeof y.with=="function"&&typeof y.toString=="function"}get fsPath(){return $(this)}with(y){if(!y)return this;let{scheme:S,authority:k,path:L,query:_,fragment:N}=y;return S===void 0?S=this.scheme:S===null&&(S=u),k===void 0?k=this.authority:k===null&&(k=u),L===void 0?L=this.path:L===null&&(L=u),_===void 0?_=this.query:_===null&&(_=u),N===void 0?N=this.fragment:N===null&&(N=u),S===this.scheme&&k===this.authority&&L===this.path&&_===this.query&&N===this.fragment?this:new m(S,k,L,_,N)}static parse(y,S=!1){const k=f.exec(y);return k?new m(k[2]||u,ae(k[4]||u),ae(k[5]||u),ae(k[7]||u),ae(k[9]||u),S):new m(u,u,u,u,u)}static file(y){let S=u;if(i&&(y=y.replace(/\\/g,c)),y[0]===c&&y[1]===c){const k=y.indexOf(c,2);k===-1?(S=y.substring(2),y=c):(S=y.substring(2,k),y=y.substring(k)||c)}return new m("file",S,y,u,u)}static from(y){const S=new m(y.scheme,y.authority,y.path,y.query,y.fragment);return l(S,!0),S}toString(y=!1){return T(this,y)}toJSON(){return this}static revive(y){if(y){if(y instanceof d)return y;{const S=new m(y);return S._formatted=y.external,S._fsPath=y._sep===h?y.fsPath:null,S}}return y}}const h=i?1:void 0;class m extends d{constructor(){super(...arguments),Ct(this,"_formatted",null),Ct(this,"_fsPath",null)}get fsPath(){return this._fsPath||(this._fsPath=$(this)),this._fsPath}toString(y=!1){return y?T(this,!0):(this._formatted||(this._formatted=T(this,!1)),this._formatted)}toJSON(){const y={$mid:1};return this._fsPath&&(y.fsPath=this._fsPath,y._sep=h),this._formatted&&(y.external=this._formatted),this.path&&(y.path=this.path),this.scheme&&(y.scheme=this.scheme),this.authority&&(y.authority=this.authority),this.query&&(y.query=this.query),this.fragment&&(y.fragment=this.fragment),y}}const g={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 E(A,y,S){let k,L=-1;for(let _=0;_<A.length;_++){const N=A.charCodeAt(_);if(N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57||N===45||N===46||N===95||N===126||y&&N===47||S&&N===91||S&&N===93||S&&N===58)L!==-1&&(k+=encodeURIComponent(A.substring(L,_)),L=-1),k!==void 0&&(k+=A.charAt(_));else{k===void 0&&(k=A.substr(0,_));const Te=g[N];Te!==void 0?(L!==-1&&(k+=encodeURIComponent(A.substring(L,_)),L=-1),k+=Te):L===-1&&(L=_)}}return L!==-1&&(k+=encodeURIComponent(A.substring(L))),k!==void 0?k:A}function v(A){let y;for(let S=0;S<A.length;S++){const k=A.charCodeAt(S);k===35||k===63?(y===void 0&&(y=A.substr(0,S)),y+=g[k]):y!==void 0&&(y+=A[S])}return y!==void 0?y:A}function $(A,y){let S;return S=A.authority&&A.path.length>1&&A.scheme==="file"?`//${A.authority}${A.path}`:A.path.charCodeAt(0)===47&&(A.path.charCodeAt(1)>=65&&A.path.charCodeAt(1)<=90||A.path.charCodeAt(1)>=97&&A.path.charCodeAt(1)<=122)&&A.path.charCodeAt(2)===58?A.path[1].toLowerCase()+A.path.substr(2):A.path,i&&(S=S.replace(/\//g,"\\")),S}function T(A,y){const S=y?v:E;let k="",{scheme:L,authority:_,path:N,query:Te,fragment:Z}=A;if(L&&(k+=L,k+=":"),(_||L==="file")&&(k+=c,k+=c),_){let z=_.indexOf("@");if(z!==-1){const It=_.substr(0,z);_=_.substr(z+1),z=It.lastIndexOf(":"),z===-1?k+=S(It,!1,!1):(k+=S(It.substr(0,z),!1,!1),k+=":",k+=S(It.substr(z+1),!1,!0)),k+="@"}_=_.toLowerCase(),z=_.lastIndexOf(":"),z===-1?k+=S(_,!1,!0):(k+=S(_.substr(0,z),!1,!0),k+=_.substr(z))}if(N){if(N.length>=3&&N.charCodeAt(0)===47&&N.charCodeAt(2)===58){const z=N.charCodeAt(1);z>=65&&z<=90&&(N=`/${String.fromCharCode(z+32)}:${N.substr(3)}`)}else if(N.length>=2&&N.charCodeAt(1)===58){const z=N.charCodeAt(0);z>=65&&z<=90&&(N=`${String.fromCharCode(z+32)}:${N.substr(2)}`)}k+=S(N,!0,!1)}return Te&&(k+="?",k+=S(Te,!1,!1)),Z&&(k+="#",k+=y?Z:E(Z,!1,!1)),k}function x(A){try{return decodeURIComponent(A)}catch{return A.length>3?A.substr(0,3)+x(A.substr(3)):A}}const U=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ae(A){return A.match(U)?A.replace(U,(y=>x(y))):A}var Me=r(470);const ve=Me.posix||Me,He="/";var Ie;(function(A){A.joinPath=function(y,...S){return y.with({path:ve.join(y.path,...S)})},A.resolvePath=function(y,...S){let k=y.path,L=!1;k[0]!==He&&(k=He+k,L=!0);let _=ve.resolve(k,...S);return L&&_[0]===He&&!y.authority&&(_=_.substring(1)),y.with({path:_})},A.dirname=function(y){if(y.path.length===0||y.path===He)return y;let S=ve.dirname(y.path);return S.length===1&&S.charCodeAt(0)===46&&(S=""),y.with({path:S})},A.basename=function(y){return ve.basename(y.path)},A.extname=function(y){return ve.extname(y.path)}})(Ie||(Ie={}))})(),pd=n})();const{URI:jt,Utils:gr}=pd;var Tt;(function(t){t.basename=gr.basename,t.dirname=gr.dirname,t.extname=gr.extname,t.joinPath=gr.joinPath,t.resolvePath=gr.resolvePath;function e(i,s){return i?.toString()===s?.toString()}t.equals=e;function r(i,s){const a=typeof i=="string"?i:i.path,o=typeof s=="string"?s:s.path,l=a.split("/").filter(h=>h.length>0),u=o.split("/").filter(h=>h.length>0);let c=0;for(;c<l.length&&l[c]===u[c];c++);const f="../".repeat(l.length-c),d=u.slice(c).join("/");return f+d}t.relative=r;function n(i){return jt.parse(i.toString()).toString()}t.normalize=n})(Tt||(Tt={}));var K;(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(K||(K={}));class BE{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=H.CancellationToken.None){const n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??jt.parse(e.uri),H.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return H.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){const i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){const i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{const i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){const i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{const i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let s;if(n)s={parseResult:e,uri:r,state:K.Parsed,references:[],textDocument:n};else{const a=this.createTextDocumentGetter(r,i);s={parseResult:e,uri:r,state:K.Parsed,references:[],get textDocument(){return a()}}}return e.value.$document=s,s}async update(e,r){var n,i;const s=(n=e.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,a=(i=this.textDocuments)===null||i===void 0?void 0:i.get(e.uri.toString()),o=a?a.getText():await this.fileSystemProvider.readFile(e.uri);if(a)Object.defineProperty(e,"textDocument",{value:a});else{const l=this.createTextDocumentGetter(e.uri,o);Object.defineProperty(e,"textDocument",{get:l})}return s!==o&&(e.parseResult=await this.parseAsync(e.uri,o,r),e.parseResult.value.$document=e),e.state=K.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){const n=this.serviceRegistry;let i;return()=>i??(i=La.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}}class KE{constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return ne(this.documentMap.values())}addDocument(e){const r=e.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,e)}getDocument(e){const r=e.toString();return this.documentMap.get(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{const i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){const r=e.toString(),n=this.documentMap.get(r);return n&&(this.serviceRegistry.getServices(e).references.Linker.unlink(n),n.state=K.Changed,n.precomputedScopes=void 0,n.diagnostics=void 0),n}deleteDocument(e){const r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=K.Changed,this.documentMap.delete(r)),n}}const $s=Symbol("ref_resolving");class VE{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,r=H.CancellationToken.None){for(const n of Zt(e.parseResult.value))await Ee(r),Ec(n).forEach(i=>this.doLink(i,e))}doLink(e,r){var n;const i=e.reference;if(i._ref===void 0){i._ref=$s;try{const s=this.getCandidate(e);if(Kn(s))i._ref=s;else if(i._nodeDescription=s,this.langiumDocuments().hasDocument(s.documentUri)){const a=this.loadAstNode(s);i._ref=a??this.createLinkingError(e,s)}else i._ref=void 0}catch(s){console.error(`An error occurred while resolving reference to '${i.$refText}':`,s);const a=(n=s.message)!==null&&n!==void 0?n:String(s);i._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${i.$refText}': ${a}`})}r.references.push(i)}}unlink(e){for(const r of e.references)delete r._ref,delete r._nodeDescription;e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}buildReference(e,r,n,i){const s=this,a={$refNode:n,$refText:i,get ref(){var o;if(le(this._ref))return this._ref;if(Qd(this._nodeDescription)){const l=s.loadAstNode(this._nodeDescription);this._ref=l??s.createLinkingError({reference:a,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=$s;const l=ea(e).$document,u=s.getLinkedNode({reference:a,container:e,property:r});if(u.error&&l&&l.state<K.ComputedScopes)return this._ref=void 0;this._ref=(o=u.node)!==null&&o!==void 0?o:u.error,this._nodeDescription=u.descr,l?.references.push(this)}else if(this._ref===$s)throw new Error(`Cyclic reference resolution detected: ${s.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${i}')`);return le(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return Kn(this._ref)?this._ref:void 0}};return a}getLinkedNode(e){var r;try{const n=this.getCandidate(e);if(Kn(n))return{error:n};const i=this.loadAstNode(n);return i?{node:i,descr:n}:{descr:n,error:this.createLinkingError(e,n)}}catch(n){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,n);const i=(r=n.message)!==null&&r!==void 0?r:String(n);return{error:Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${e.reference.$refText}': ${i}`})}}}loadAstNode(e){if(e.node)return e.node;const r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){const n=ea(e.container).$document;n&&n.state<K.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`);const i=this.reflection.getReferenceType(e);return Object.assign(Object.assign({},e),{message:`Could not resolve reference to ${i} named '${e.reference.$refText}'.`,targetDescription:r})}}function HE(t){return typeof t.name=="string"}class zE{getName(e){if(HE(e))return e.name}getNameNode(e){return Ic(e.$cstNode,"name")}}class WE{constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){const r=Kh(e),n=e.astNode;if(r&&n){const i=n[r.feature];if(We(i))return i.ref;if(Array.isArray(i)){for(const s of i)if(We(s)&&s.$refNode&&s.$refNode.offset<=e.offset&&s.$refNode.end>=e.end)return s.ref}}if(n){const i=this.nameProvider.getNameNode(n);if(i&&(i===e||eh(e,i)))return n}}}findDeclarationNode(e){const r=this.findDeclaration(e);if(r!=null&&r.$cstNode)return this.nameProvider.getNameNode(r)??r.$cstNode}findReferences(e,r){const n=[];if(r.includeDeclaration){const s=this.getReferenceToSelf(e);s&&n.push(s)}let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(s=>Tt.equals(s.sourceUri,r.documentUri))),n.push(...i),ne(n)}getReferenceToSelf(e){const r=this.nameProvider.getNameNode(e);if(r){const n=pt(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:ai(r),local:!0}}}}class Ii{constructor(e){if(this.map=new Map,e)for(const[r,n]of e)this.add(r,n)}get size(){return Qs.sum(ne(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{const n=this.map.get(e);if(n){const i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){var r;return(r=this.map.get(e))!==null&&r!==void 0?r:[]}has(e,r){if(r===void 0)return this.map.has(e);{const n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return ne(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return ne(this.map.keys())}values(){return ne(this.map.values()).flat()}entriesGroupedByKey(){return ne(this.map.entries())}}class Wu{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}class YE{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=H.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=ja,i=H.CancellationToken.None){const s=[];this.exportNode(e,s,r);for(const a of n(e))await Ee(i),this.exportNode(a,s,r);return s}exportNode(e,r,n){const i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async computeLocalScopes(e,r=H.CancellationToken.None){const n=e.parseResult.value,i=new Ii;for(const s of cn(n))await Ee(r),this.processNode(s,e,i);return i}processNode(e,r,n){const i=e.$container;if(i){const s=this.nameProvider.getName(e);s&&n.add(i,this.descriptions.createDescription(e,s,r))}}}class Yu{constructor(e,r,n){var i;this.elements=e,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){const r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===e.toLowerCase()):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}}class qE{constructor(e,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(const s of e){const a=this.caseInsensitive?s.name.toLowerCase():s.name;this.elements.set(a,s)}this.outerScope=r}getElement(e){const r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getAllElements(){let e=ne(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class md{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 new Error("This cache has already been disposed")}}class XE extends md{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){const n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class QE extends md{constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();const i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){const s=n();return i.set(r,s),s}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){const r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){const r=this.converter(e);let n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}}class ZE extends XE{constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}class JE{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 ZE(e.shared)}getScope(e){const r=[],n=this.reflection.getReferenceType(e),i=pt(e.container).precomputedScopes;if(i){let a=e.container;do{const o=i.get(a);o.length>0&&r.push(ne(o).filter(l=>this.reflection.isSubtype(l.type,n))),a=a.$container}while(a)}let s=this.getGlobalScope(n,e);for(let a=r.length-1;a>=0;a--)s=this.createScope(r[a],s);return s}createScope(e,r,n){return new Yu(ne(e),r,n)}createScopeForNodes(e,r,n){const i=ne(e).map(s=>{const a=this.nameProvider.getName(s);if(a)return this.descriptions.createDescription(s,a)}).nonNullable();return new Yu(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new qE(this.indexManager.allElements(e)))}}function eA(t){return typeof t.$comment=="string"}function qu(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}class tA{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,r){const n=r??{},i=r?.replacer,s=(o,l)=>this.replacer(o,l,n),a=i?(o,l)=>i(o,l,s):s;try{return this.currentDocument=pt(e),JSON.stringify(e,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){const n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:s,comments:a,uriConverter:o}){var l,u,c,f;if(!this.ignoreProperties.has(e))if(We(r)){const d=r.ref,h=n?r.$refText:void 0;if(d){const m=pt(d);let g="";this.currentDocument&&this.currentDocument!==m&&(o?g=o(m.uri,r):g=m.uri.toString());const E=this.astNodeLocator.getAstNodePath(d);return{$ref:`${g}#${E}`,$refText:h}}else return{$error:(u=(l=r.error)===null||l===void 0?void 0:l.message)!==null&&u!==void 0?u:"Could not resolve reference",$refText:h}}else if(le(r)){let d;if(s&&(d=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!e||r.$document)&&d!=null&&d.$textRegion&&(d.$textRegion.documentURI=(c=this.currentDocument)===null||c===void 0?void 0:c.uri.toString())),i&&!e&&(d??(d=Object.assign({},r)),d.$sourceText=(f=r.$cstNode)===null||f===void 0?void 0:f.text),a){d??(d=Object.assign({},r));const h=this.commentProvider.getComment(r);h&&(d.$comment=h.replace(/\r/g,""))}return d??r}else return r}addAstNodeRegionWithAssignmentsTo(e){const r=n=>({offset:n.offset,end:n.end,length:n.length,range:n.range});if(e.$cstNode){const n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(s=>!s.startsWith("$")).forEach(s=>{const a=jh(e.$cstNode,s).map(r);a.length!==0&&(i[s]=a)}),e}}linkNode(e,r,n,i,s,a){for(const[l,u]of Object.entries(e))if(Array.isArray(u))for(let c=0;c<u.length;c++){const f=u[c];qu(f)?u[c]=this.reviveReference(e,l,r,f,n):le(f)&&this.linkNode(f,r,n,e,l,c)}else qu(u)?e[l]=this.reviveReference(e,l,r,u,n):le(u)&&this.linkNode(u,r,n,e,l);const o=e;o.$container=i,o.$containerProperty=s,o.$containerIndex=a}reviveReference(e,r,n,i,s){let a=i.$refText,o=i.$error;if(i.$ref){const l=this.getRefNode(n,i.$ref,s.uriConverter);if(le(l))return a||(a=this.nameProvider.getName(l)),{$refText:a??"",ref:l};o=l}if(o){const l={$refText:a??""};return l.error={container:e,property:r,message:o,reference:l},l}else return}getRefNode(e,r,n){try{const i=r.indexOf("#");if(i===0)return this.astNodeLocator.getAstNode(e,r.substring(1))||"Could not resolve path: "+r;if(i<0){const l=n?n(r):jt.parse(r),u=this.langiumDocuments.getDocument(l);return u?u.parseResult.value:"Could not find document for URI: "+r}const s=n?n(r.substring(0,i)):jt.parse(r.substring(0,i)),a=this.langiumDocuments.getDocument(s);return a?i===r.length-1?a.parseResult.value:this.astNodeLocator.getAstNode(a.parseResult.value,r.substring(i+1))||"Could not resolve URI: "+r:"Could not find document for URI: "+r}catch(i){return String(i)}}}class rA{get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){const r=e.LanguageMetaData;for(const n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);this.languageIdMap.set(r.languageId,e),this.languageIdMap.size===1?this.singleton=e:this.singleton=void 0}getServices(e){var r,n;if(this.singleton!==void 0)return this.singleton;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");const i=(n=(r=this.textDocuments)===null||r===void 0?void 0:r.get(e))===null||n===void 0?void 0:n.languageId;if(i!==void 0){const o=this.languageIdMap.get(i);if(o)return o}const s=Tt.extname(e),a=this.fileExtensionMap.get(s);if(!a)throw i?new Error(`The service registry contains no services for the extension '${s}' for language '${i}'.`):new Error(`The service registry contains no services for the extension '${s}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}function Yr(t){return{code:t}}var wi;(function(t){t.all=["fast","slow","built-in"]})(wi||(wi={}));class nA{constructor(e){this.entries=new Ii,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(const[i,s]of Object.entries(e)){const a=s;if(Array.isArray(a))for(const o of a){const l={check:this.wrapValidationException(o,r),category:n};this.addEntry(i,l)}else if(typeof a=="function"){const o={check:this.wrapValidationException(a,r),category:n};this.addEntry(i,o)}else un()}}wrapValidationException(e,r){return async(n,i,s)=>{await this.handleException(()=>e.call(r,n,i,s),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(s){if(Ji(s))throw s;console.error(`${r}:`,s),s instanceof Error&&s.stack&&console.error(s.stack);const a=s instanceof Error?s.message:String(s);n("error",`${r}: ${a}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(const n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=ne(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,s,a,o)=>{await this.handleException(()=>e.call(n,i,s,a,o),r,s,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}class iA{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=H.CancellationToken.None){const i=e.parseResult,s=[];if(await Ee(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,s,r),r.stopAfterLexingErrors&&s.some(a=>{var o;return((o=a.data)===null||o===void 0?void 0:o.code)===Ue.LexingError})||(this.processParsingErrors(i,s,r),r.stopAfterParsingErrors&&s.some(a=>{var o;return((o=a.data)===null||o===void 0?void 0:o.code)===Ue.ParsingError}))||(this.processLinkingErrors(e,s,r),r.stopAfterLinkingErrors&&s.some(a=>{var o;return((o=a.data)===null||o===void 0?void 0:o.code)===Ue.LinkingError}))))return s;try{s.push(...await this.validateAst(i.value,r,n))}catch(a){if(Ji(a))throw a;console.error("An error occurred during validation:",a)}return await Ee(n),s}processLexingErrors(e,r,n){var i,s,a;const o=[...e.lexerErrors,...(s=(i=e.lexerReport)===null||i===void 0?void 0:i.diagnostics)!==null&&s!==void 0?s:[]];for(const l of o){const u=(a=l.severity)!==null&&a!==void 0?a:"error",c={severity:Es(u),range:{start:{line:l.line-1,character:l.column-1},end:{line:l.line-1,character:l.column+l.length-1}},message:l.message,data:aA(u),source:this.getSource()};r.push(c)}}processParsingErrors(e,r,n){for(const i of e.parserErrors){let s;if(isNaN(i.token.startOffset)){if("previousToken"in i){const a=i.previousToken;if(isNaN(a.startOffset)){const o={line:0,character:0};s={start:o,end:o}}else{const o={line:a.endLine-1,character:a.endColumn};s={start:o,end:o}}}}else s=Js(i.token);if(s){const a={severity:Es("error"),range:s,message:i.message,data:Yr(Ue.ParsingError),source:this.getSource()};r.push(a)}}}processLinkingErrors(e,r,n){for(const i of e.references){const s=i.error;if(s){const a={node:s.container,property:s.property,index:s.index,data:{code:Ue.LinkingError,containerType:s.container.$type,property:s.property,refText:s.reference.$refText}};r.push(this.toDiagnostic("error",s.message,a))}}}async validateAst(e,r,n=H.CancellationToken.None){const i=[],s=(a,o,l)=>{i.push(this.toDiagnostic(a,o,l))};return await this.validateAstBefore(e,r,s,n),await this.validateAstNodes(e,r,s,n),await this.validateAstAfter(e,r,s,n),i}async validateAstBefore(e,r,n,i=H.CancellationToken.None){var s;const a=this.validationRegistry.checksBefore;for(const o of a)await Ee(i),await o(e,n,(s=r.categories)!==null&&s!==void 0?s:[],i)}async validateAstNodes(e,r,n,i=H.CancellationToken.None){await Promise.all(Zt(e).map(async s=>{await Ee(i);const a=this.validationRegistry.getChecks(s.$type,r.categories);for(const o of a)await o(s,n,i)}))}async validateAstAfter(e,r,n,i=H.CancellationToken.None){var s;const a=this.validationRegistry.checksAfter;for(const o of a)await Ee(i),await o(e,n,(s=r.categories)!==null&&s!==void 0?s:[],i)}toDiagnostic(e,r,n){return{message:r,range:sA(n),severity:Es(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function sA(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=Ic(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=Gh(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function Es(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function aA(t){switch(t){case"error":return Yr(Ue.LexingError);case"warning":return Yr(Ue.LexingWarning);case"info":return Yr(Ue.LexingInfo);case"hint":return Yr(Ue.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Ue;(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(Ue||(Ue={}));class oA{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){const i=n??pt(e);r??(r=this.nameProvider.getName(e));const s=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${s} has no name.`);let a;const o=()=>{var l;return a??(a=ai((l=this.nameProvider.getNameNode(e))!==null&&l!==void 0?l:e.$cstNode))};return{node:e,name:r,get nameSegment(){return o()},selectionSegment:ai(e.$cstNode),type:e.$type,documentUri:i.uri,path:s}}}class lA{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=H.CancellationToken.None){const n=[],i=e.parseResult.value;for(const s of Zt(i))await Ee(r),Ec(s).filter(a=>!Kn(a)).forEach(a=>{const o=this.createDescription(a);o&&n.push(o)});return n}createDescription(e){const r=e.reference.$nodeDescription,n=e.reference.$refNode;if(!r||!n)return;const i=pt(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:ai(n),local:Tt.equals(r.documentUri,i)}}}class uA{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((n,i)=>{if(!n||i.length===0)return n;const s=i.indexOf(this.indexSeparator);if(s>0){const a=i.substring(0,s),o=parseInt(i.substring(s+1)),l=n[a];return l?.[o]}return n[i]},e)}}var cA=fd();class fA{constructor(e){this._ready=new Ao,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new cA.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r,n;this.workspaceConfig=(n=(r=e.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(e){if(this.workspaceConfig){if(e.register){const r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){const r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,s)=>{this.updateSectionConfiguration(i.section,n[s])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(r=>{const n=e.settings[r];this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;const n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}var en;(function(t){function e(r){return{dispose:async()=>await r()}}t.create=e})(en||(en={}));class dA{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Ii,this.documentPhaseListeners=new Ii,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=K.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=H.CancellationToken.None){var i,s;for(const a of e){const o=a.uri.toString();if(a.state===K.Validated){if(typeof r.validation=="boolean"&&r.validation)a.state=K.IndexedReferences,a.diagnostics=void 0,this.buildState.delete(o);else if(typeof r.validation=="object"){const l=this.buildState.get(o),u=(i=l?.result)===null||i===void 0?void 0:i.validationChecks;if(u){const c=((s=r.validation.categories)!==null&&s!==void 0?s:wi.all).filter(f=>!u.includes(f));c.length>0&&(this.buildState.set(o,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:c})},result:l.result}),a.state=K.IndexedReferences)}}}else this.buildState.delete(o)}this.currentState=K.Changed,await this.emitUpdate(e.map(a=>a.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=H.CancellationToken.None){this.currentState=K.Changed;for(const a of r)this.langiumDocuments.deleteDocument(a),this.buildState.delete(a.toString()),this.indexManager.remove(a);for(const a of e){if(!this.langiumDocuments.invalidateDocument(a)){const o=this.langiumDocumentFactory.fromModel({$type:"INVALID"},a);o.state=K.Changed,this.langiumDocuments.addDocument(o)}this.buildState.delete(a.toString())}const i=ne(e).concat(r).map(a=>a.toString()).toSet();this.langiumDocuments.all.filter(a=>!i.has(a.uri.toString())&&this.shouldRelink(a,i)).forEach(a=>{this.serviceRegistry.getServices(a.uri).references.Linker.unlink(a),a.state=Math.min(a.state,K.ComputedScopes),a.diagnostics=void 0}),await this.emitUpdate(e,r),await Ee(n);const s=this.sortDocuments(this.langiumDocuments.all.filter(a=>{var o;return a.state<K.Linked||!(!((o=this.buildState.get(a.uri.toString()))===null||o===void 0)&&o.completed)}).toArray());await this.buildDocuments(s,this.updateBuildOptions,n)}async emitUpdate(e,r){await Promise.all(this.updateListeners.map(n=>n(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r<n;){for(;r<e.length&&this.hasTextDocument(e[r]);)r++;for(;n>=0&&!this.hasTextDocument(e[n]);)n--;r<n&&([e[r],e[n]]=[e[n],e[r]])}return e}hasTextDocument(e){var r;return!!(!((r=this.textDocuments)===null||r===void 0)&&r.get(e.uri))}shouldRelink(e,r){return e.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),en.create(()=>{const r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,K.Parsed,n,s=>this.langiumDocumentFactory.update(s,n)),await this.runCancelable(e,K.IndexedContent,n,s=>this.indexManager.updateContent(s,n)),await this.runCancelable(e,K.ComputedScopes,n,async s=>{const a=this.serviceRegistry.getServices(s.uri).references.ScopeComputation;s.precomputedScopes=await a.computeLocalScopes(s,n)}),await this.runCancelable(e,K.Linked,n,s=>this.serviceRegistry.getServices(s.uri).references.Linker.link(s,n)),await this.runCancelable(e,K.IndexedReferences,n,s=>this.indexManager.updateReferences(s,n));const i=e.filter(s=>this.shouldValidate(s));await this.runCancelable(i,K.Validated,n,s=>this.validate(s,n));for(const s of e){const a=this.buildState.get(s.uri.toString());a&&(a.completed=!0)}}prepareBuild(e,r){for(const n of e){const i=n.uri.toString(),s=this.buildState.get(i);(!s||s.completed)&&this.buildState.set(i,{completed:!1,options:r,result:s?.result})}}async runCancelable(e,r,n,i){const s=e.filter(o=>o.state<r);for(const o of s)await Ee(n),await i(o),o.state=r,await this.notifyDocumentPhase(o,r,n);const a=e.filter(o=>o.state===r);await this.notifyBuildPhase(a,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),en.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),en.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=H.CancellationToken.None),i){const s=this.langiumDocuments.getDocument(i);if(s&&s.state>e)return Promise.resolve(i)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(Si):new Promise((s,a)=>{const o=this.onBuildPhase(e,()=>{if(o.dispose(),l.dispose(),i){const u=this.langiumDocuments.getDocument(i);s(u?.uri)}else s(void 0)}),l=n.onCancellationRequested(()=>{o.dispose(),l.dispose(),a(Si)})})}async notifyDocumentPhase(e,r,n){const i=this.documentPhaseListeners.get(r).slice();for(const s of i)try{await s(e,n)}catch(a){if(!Ji(a))throw a}}async notifyBuildPhase(e,r,n){if(e.length===0)return;const i=this.buildPhaseListeners.get(r).slice();for(const s of i)await Ee(n),await s(e,n)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){var n,i;const s=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,a=this.getBuildOptions(e).validation,o=typeof a=="object"?a:void 0,l=await s.validateDocument(e,o,r);e.diagnostics?e.diagnostics.push(...l):e.diagnostics=l;const u=this.buildState.get(e.uri.toString());if(u){(n=u.result)!==null&&n!==void 0||(u.result={});const c=(i=o?.categories)!==null&&i!==void 0?i:wi.all;u.result.validationChecks?u.result.validationChecks.push(...c):u.result.validationChecks=[...c]}}getBuildOptions(e){var r,n;return(n=(r=this.buildState.get(e.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}class hA{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new QE,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){const n=pt(e).uri,i=[];return this.referenceIndex.forEach(s=>{s.forEach(a=>{Tt.equals(a.targetUri,n)&&a.targetPath===r&&i.push(a)})}),ne(i)}allElements(e,r){let n=ne(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){var n;return r?this.symbolByTypeIndex.get(e,r,()=>{var i;return((i=this.symbolIndex.get(e))!==null&&i!==void 0?i:[]).filter(s=>this.astReflection.isSubtype(s.type,r))}):(n=this.symbolIndex.get(e))!==null&&n!==void 0?n:[]}remove(e){const r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(e,r=H.CancellationToken.None){const n=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.computeExports(e,r),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,r=H.CancellationToken.None){const n=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,r){const n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}class pA{constructor(e){this.initialBuildOptions={},this._ready=new Ao,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var r;this.folders=(r=e.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(e){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(e,r=H.CancellationToken.None){const n=await this.performStartup(e);await Ee(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){const r=this.serviceRegistry.all.flatMap(s=>s.LanguageMetaData.fileExtensions),n=[],i=s=>{n.push(s),this.langiumDocuments.hasDocument(s.uri)||this.langiumDocuments.addDocument(s)};return await this.loadAdditionalDocuments(e,i),await Promise.all(e.map(s=>[s,this.getRootFolder(s)]).map(async s=>this.traverseFolder(...s,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return jt.parse(e.uri)}async traverseFolder(e,r,n,i){const s=await this.fileSystemProvider.readDirectory(r);await Promise.all(s.map(async a=>{if(this.includeEntry(e,a,n)){if(a.isDirectory)await this.traverseFolder(e,a.uri,n,i);else if(a.isFile){const o=await this.langiumDocuments.getOrCreateDocument(a.uri);i(o)}}}))}includeEntry(e,r,n){const i=Tt.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){const s=Tt.extname(r.uri);return n.includes(s)}return!1}}class mA{buildUnexpectedCharactersMessage(e,r,n,i,s){return ua.buildUnexpectedCharactersMessage(e,r,n,i,s)}buildUnableToPopLexerModeMessage(e){return ua.buildUnableToPopLexerModeMessage(e)}}const gA={mode:"full"};class yA{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);const n=Xu(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new he(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=gA){var n,i,s;const a=this.chevrotainLexer.tokenize(e);return{tokens:a.tokens,errors:a.errors,hidden:(n=a.groups.hidden)!==null&&n!==void 0?n:[],report:(s=(i=this.tokenBuilder).flushLexingReport)===null||s===void 0?void 0:s.call(i,e)}}toTokenTypeDictionary(e){if(Xu(e))return e;const r=gd(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}}function vA(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function gd(t){return t&&"modes"in t&&"defaultMode"in t}function Xu(t){return!vA(t)&&!gd(t)}function TA(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=M.create(0,0));const s=yd(t),a=ko(n),o=EA({lines:s,position:i,options:a});return IA({index:0,tokens:o,position:i})}function RA(t,e){const r=ko(e),n=yd(t);if(n.length===0)return!1;const i=n[0],s=n[n.length-1],a=r.start,o=r.end;return!!(a!=null&&a.exec(i))&&!!(o!=null&&o.exec(s))}function yd(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(wh)}const Qu=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,$A=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function EA(t){var e,r,n;const i=[];let s=t.position.line,a=t.position.character;for(let o=0;o<t.lines.length;o++){const l=o===0,u=o===t.lines.length-1;let c=t.lines[o],f=0;if(l&&t.options.start){const d=(e=t.options.start)===null||e===void 0?void 0:e.exec(c);d&&(f=d.index+d[0].length)}else{const d=(r=t.options.line)===null||r===void 0?void 0:r.exec(c);d&&(f=d.index+d[0].length)}if(u){const d=(n=t.options.end)===null||n===void 0?void 0:n.exec(c);d&&(c=c.substring(0,d.index))}if(c=c.substring(0,SA(c)),Pa(c,f)>=c.length){if(i.length>0){const d=M.create(s,a);i.push({type:"break",content:"",range:O.create(d,d)})}}else{Qu.lastIndex=f;const d=Qu.exec(c);if(d){const h=d[0],m=d[1],g=M.create(s,a+f),E=M.create(s,a+f+h.length);i.push({type:"tag",content:m,range:O.create(g,E)}),f+=h.length,f=Pa(c,f)}if(f<c.length){const h=c.substring(f),m=Array.from(h.matchAll($A));i.push(...AA(m,h,s,a+f))}}s++,a=0}return i.length>0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function AA(t,e,r,n){const i=[];if(t.length===0){const s=M.create(r,n),a=M.create(r,n+e.length);i.push({type:"text",content:e,range:O.create(s,a)})}else{let s=0;for(const o of t){const l=o.index,u=e.substring(s,l);u.length>0&&i.push({type:"text",content:e.substring(s,l),range:O.create(M.create(r,s+n),M.create(r,l+n))});let c=u.length+1;const f=o[1];if(i.push({type:"inline-tag",content:f,range:O.create(M.create(r,s+c+n),M.create(r,s+c+f.length+n))}),c+=f.length,o.length===4){c+=o[2].length;const d=o[3];i.push({type:"text",content:d,range:O.create(M.create(r,s+c+n),M.create(r,s+c+d.length+n))})}else i.push({type:"text",content:"",range:O.create(M.create(r,s+c+n),M.create(r,s+c+n))});s=l+o[0].length}const a=e.substring(s);a.length>0&&i.push({type:"text",content:a,range:O.create(M.create(r,s+n),M.create(r,s+n+a.length))})}return i}const kA=/\S/,xA=/\s*$/;function Pa(t,e){const r=t.substring(e).match(kA);return r?e+r.index:t.length}function SA(t){const e=t.match(xA);if(e&&typeof e.index=="number")return e.index}function IA(t){var e,r,n,i;const s=M.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Zu([],O.create(s,s));const a=[];for(;t.index<t.tokens.length;){const u=wA(t,a[a.length-1]);u&&a.push(u)}const o=(r=(e=a[0])===null||e===void 0?void 0:e.range.start)!==null&&r!==void 0?r:s,l=(i=(n=a[a.length-1])===null||n===void 0?void 0:n.range.end)!==null&&i!==void 0?i:s;return new Zu(a,O.create(o,l))}function wA(t,e){const r=t.tokens[t.index];if(r.type==="tag")return Td(t,!1);if(r.type==="text"||r.type==="inline-tag")return vd(t);bA(r,e),t.index++}function bA(t,e){if(e){const r=new $d("",t.range);"inlines"in e?e.inlines.push(r):e.content.inlines.push(r)}}function vd(t){let e=t.tokens[t.index];const r=e;let n=e;const i=[];for(;e&&e.type!=="break"&&e.type!=="tag";)i.push(CA(t)),n=e,e=t.tokens[t.index];return new Ma(i,O.create(r.range.start,n.range.end))}function CA(t){return t.tokens[t.index].type==="inline-tag"?Td(t,!0):Rd(t)}function Td(t,e){const r=t.tokens[t.index++],n=r.content.substring(1),i=t.tokens[t.index];if(i?.type==="text")if(e){const s=Rd(t);return new ks(n,new Ma([s],s.range),e,O.create(r.range.start,s.range.end))}else{const s=vd(t);return new ks(n,s,e,O.create(r.range.start,s.range.end))}else{const s=r.range;return new ks(n,new Ma([],s),e,s)}}function Rd(t){const e=t.tokens[t.index++];return new $d(e.content,e.range)}function ko(t){if(!t)return ko({start:"/**",end:"*/",line:"*"});const{start:e,end:r,line:n}=t;return{start:As(e,!0),end:As(r,!1),line:As(n,!0)}}function As(t,e){if(typeof t=="string"||typeof t=="object"){const r=typeof t=="string"?Li(t):t.source;return e?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}else return t}class Zu{constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(const r of this.elements)if(e.length===0)e=r.toString();else{const n=r.toString();e+=Ju(e)+n}return e.trim()}toMarkdown(e){let r="";for(const n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{const i=n.toMarkdown(e);r+=Ju(r)+i}return r.trim()}}class ks{constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`;const r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e}
118
+ ${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r,n;return(n=(r=e?.renderTag)===null||r===void 0?void 0:r.call(e,this))!==null&&n!==void 0?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){const r=this.content.toMarkdown(e);if(this.inline){const s=NA(this.name,r,e??{});if(typeof s=="string")return s}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} — ${r}`:this.content.inlines.length>1&&(i=`${i}
119
+ ${r}`),this.inline?`{${i}}`:i}}function NA(t,e,r){var n,i;if(t==="linkplain"||t==="linkcode"||t==="link"){const s=e.indexOf(" ");let a=e;if(s>0){const o=Pa(e,s);a=e.substring(o),e=e.substring(0,s)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(a=`\`${a}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,e,a))!==null&&i!==void 0?i:_A(e,a)}}function _A(t,e){try{return jt.parse(t,!0),`[${e}](${t})`}catch{return t}}class Ma{constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;r<this.inlines.length;r++){const n=this.inlines[r],i=this.inlines[r+1];e+=n.toString(),i&&i.range.start.line>n.range.start.line&&(e+=`
120
+ `)}return e}toMarkdown(e){let r="";for(let n=0;n<this.inlines.length;n++){const i=this.inlines[n],s=this.inlines[n+1];r+=i.toMarkdown(e),s&&s.range.start.line>i.range.start.line&&(r+=`
121
+ `)}return r}}class $d{constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}}function Ju(t){return t.endsWith(`
122
+ `)?`
123
+ `:`
124
+
125
+ `}class LA{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const r=this.commentProvider.getComment(e);if(r&&RA(r))return TA(r).toMarkdown({renderLink:(n,i)=>this.documentationLinkRenderer(e,n,i),renderTag:n=>this.documentationTagRenderer(e,n)})}documentationLinkRenderer(e,r,n){var i;const s=(i=this.findNameInPrecomputedScopes(e,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(e,r);if(s&&s.nameSegment){const a=s.nameSegment.range.start.line+1,o=s.nameSegment.range.start.character+1,l=s.documentUri.with({fragment:`L${a},${o}`});return`[${n}](${l.toString()})`}else return}documentationTagRenderer(e,r){}findNameInPrecomputedScopes(e,r){const n=pt(e).precomputedScopes;if(!n)return;let i=e;do{const s=n.get(i).find(a=>a.name===r);if(s)return s;i=i.$container}while(i)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(n=>n.name===r)}}class OA{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return eA(e)?e.$comment:(r=ih(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}class PA{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}}class MA{constructor(){this.previousTokenSource=new H.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();const r=jE();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=H.CancellationToken.None){const i=new Ao,s={action:r,deferred:i,cancellationToken:n};return e.push(s),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{const s=await Promise.resolve().then(()=>r(i));n.resolve(s)}catch(s){Ji(s)?n.resolve(void 0):n.reject(s)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class DA{constructor(e){this.grammarElementIdMap=new Wu,this.tokenTypeIdMap=new Wu,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(r=>Object.assign(Object.assign({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){const r=new Map,n=new Map;for(const i of Zt(e))r.set(i,{});if(e.$cstNode)for(const i of Zs(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){const n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(const[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){const a=[];n[i]=a;for(const o of s)le(o)?a.push(this.dehydrateAstNode(o,r)):We(o)?a.push(this.dehydrateReference(o,r)):a.push(o)}else le(s)?n[i]=this.dehydrateAstNode(s,r):We(s)?n[i]=this.dehydrateReference(s,r):s!==void 0&&(n[i]=s);return n}dehydrateReference(e,r){const n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){const n=r.cstNodes.get(e);return pc(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),tn(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):hc(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){const r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){const r=new Map,n=new Map;for(const s of Zt(e))r.set(s,{});let i;if(e.$cstNode)for(const s of Zs(e.$cstNode)){let a;"fullText"in s?(a=new ed(s.fullText),i=a):"content"in s?a=new $o:"tokenType"in s&&(a=this.hydrateCstLeafNode(s)),a&&(n.set(s,a),a.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){const n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(const[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){const a=[];n[i]=a;for(const o of s)le(o)?a.push(this.setParent(this.hydrateAstNode(o,r),n)):We(o)?a.push(this.hydrateReference(o,n,i,r)):a.push(o)}else le(s)?n[i]=this.setParent(this.hydrateAstNode(s,r),n):We(s)?n[i]=this.hydrateReference(s,n,i,r):s!==void 0&&(n[i]=s);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){const i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),tn(i))for(const s of e.content){const a=this.hydrateCstNode(s,r,n++);i.content.push(a)}return i}hydrateCstLeafNode(e){const r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,s=e.startLine,a=e.startColumn,o=e.endLine,l=e.endColumn,u=e.hidden;return new Ca(n,i,{start:{line:s,character:a},end:{line:o,character:l}},r,u)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(const r of Zt(this.grammar))ah(r)&&this.grammarElementIdMap.set(r,e++)}}function At(t){return{documentation:{CommentProvider:e=>new OA(e),DocumentationProvider:e=>new LA(e)},parser:{AsyncParser:e=>new PA(e),GrammarConfig:e=>Qh(e),LangiumParser:e=>OE(e),CompletionParser:e=>LE(e),ValueConverter:()=>new ud,TokenBuilder:()=>new ld,Lexer:e=>new yA(e),ParserErrorMessageProvider:()=>new nd,LexerErrorMessageProvider:()=>new mA},workspace:{AstNodeLocator:()=>new uA,AstNodeDescriptionProvider:e=>new oA(e),ReferenceDescriptionProvider:e=>new lA(e)},references:{Linker:e=>new VE(e),NameProvider:()=>new zE,ScopeProvider:e=>new JE(e),ScopeComputation:e=>new YE(e),References:e=>new WE(e)},serializer:{Hydrator:e=>new DA(e),JsonSerializer:e=>new tA(e)},validation:{DocumentValidator:e=>new iA(e),ValidationRegistry:e=>new nA(e)},shared:()=>t.shared}}function kt(t){return{ServiceRegistry:e=>new rA(e),workspace:{LangiumDocuments:e=>new KE(e),LangiumDocumentFactory:e=>new BE(e),DocumentBuilder:e=>new dA(e),IndexManager:e=>new hA(e),WorkspaceManager:e=>new pA(e),FileSystemProvider:e=>t.fileSystemProvider(e),WorkspaceLock:()=>new MA,ConfigurationProvider:e=>new fA(e)}}}var ec;(function(t){t.merge=(e,r)=>bi(bi({},e),r)})(ec||(ec={}));function ue(t,e,r,n,i,s,a,o,l){const u=[t,e,r,n,i,s,a,o,l].reduce(bi,{});return Ed(u)}const UA=Symbol("isProxy");function Ed(t,e){const r=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw new Error("Cannot set property on injected service container")},get:(n,i)=>i===UA?!0:rc(n,i,t,e||r),getOwnPropertyDescriptor:(n,i)=>(rc(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),has:(n,i)=>i in t,ownKeys:()=>[...Object.getOwnPropertyNames(t)]});return r}const tc=Symbol();function rc(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:t[e]});if(t[e]===tc)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){const i=r[e];t[e]=tc;try{t[e]=typeof i=="function"?i(n):Ed(i,n)}catch(s){throw t[e]=s instanceof Error?s:void 0,s}return t[e]}else return}function bi(t,e){if(e){for(const[r,n]of Object.entries(e))if(n!==void 0){const i=t[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?t[r]=bi(i,n):t[r]=n}}return t}class FA{readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}}const xt={fileSystemProvider:()=>new FA},jA={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},GA={AstReflection:()=>new $c};function BA(){const t=ue(kt(xt),GA),e=ue(At({shared:t}),jA);return t.ServiceRegistry.register(e),e}function zt(t){var e;const r=BA(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,jt.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var KA=Object.defineProperty,R=(t,e)=>KA(t,"name",{value:e,configurable:!0}),nc="Statement",Zn="Architecture";function VA(t){return Ve.isInstance(t,Zn)}R(VA,"isArchitecture");var Mn="Axis",qr="Branch";function HA(t){return Ve.isInstance(t,qr)}R(HA,"isBranch");var Dn="Checkout",Un="CherryPicking",xs="ClassDefStatement",Xr="Commit";function zA(t){return Ve.isInstance(t,Xr)}R(zA,"isCommit");var Ss="Curve",Is="Edge",ws="Entry",Qr="GitGraph";function WA(t){return Ve.isInstance(t,Qr)}R(WA,"isGitGraph");var bs="Group",Jn="Info";function YA(t){return Ve.isInstance(t,Jn)}R(YA,"isInfo");var Fn="Item",Cs="Junction",Zr="Merge";function qA(t){return Ve.isInstance(t,Zr)}R(qA,"isMerge");var Ns="Option",ei="Packet";function XA(t){return Ve.isInstance(t,ei)}R(XA,"isPacket");var ti="PacketBlock";function QA(t){return Ve.isInstance(t,ti)}R(QA,"isPacketBlock");var ri="Pie";function ZA(t){return Ve.isInstance(t,ri)}R(ZA,"isPie");var ni="PieSection";function JA(t){return Ve.isInstance(t,ni)}R(JA,"isPieSection");var _s="Radar",Ls="Service",ii="Treemap";function ek(t){return Ve.isInstance(t,ii)}R(ek,"isTreemap");var Os="TreemapRow",jn="Direction",Gn="Leaf",Bn="Section",Ps,Ad=(Ps=class extends dc{getAllTypes(){return[Zn,Mn,qr,Dn,Un,xs,Xr,Ss,jn,Is,ws,Qr,bs,Jn,Fn,Cs,Gn,Zr,Ns,ei,ti,ri,ni,_s,Bn,Ls,nc,ii,Os]}computeIsSubtype(t,e){switch(t){case qr:case Dn:case Un:case Xr:case Zr:return this.isSubtype(nc,e);case jn:return this.isSubtype(Qr,e);case Gn:case Bn:return this.isSubtype(Fn,e);default:return!1}}getReferenceType(t){const e=`${t.container.$type}:${t.property}`;if(e==="Entry:axis")return Mn;throw new Error(`${e} is not a valid reference id.`)}getTypeMetaData(t){switch(t){case Zn:return{name:Zn,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case Mn:return{name:Mn,properties:[{name:"label"},{name:"name"}]};case qr:return{name:qr,properties:[{name:"name"},{name:"order"}]};case Dn:return{name:Dn,properties:[{name:"branch"}]};case Un:return{name:Un,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case xs:return{name:xs,properties:[{name:"className"},{name:"styleText"}]};case Xr:return{name:Xr,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case Ss:return{name:Ss,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case Is:return{name:Is,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case ws:return{name:ws,properties:[{name:"axis"},{name:"value"}]};case Qr:return{name:Qr,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case bs:return{name:bs,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case Jn:return{name:Jn,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case Fn:return{name:Fn,properties:[{name:"classSelector"},{name:"name"}]};case Cs:return{name:Cs,properties:[{name:"id"},{name:"in"}]};case Zr:return{name:Zr,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case Ns:return{name:Ns,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case ei:return{name:ei,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case ti:return{name:ti,properties:[{name:"bits"},{name:"end"},{name:"label"},{name:"start"}]};case ri:return{name:ri,properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case ni:return{name:ni,properties:[{name:"label"},{name:"value"}]};case _s:return{name:_s,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case Ls:return{name:Ls,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case ii:return{name:ii,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"},{name:"TreemapRows",defaultValue:[]}]};case Os:return{name:Os,properties:[{name:"indent"},{name:"item"}]};case jn:return{name:jn,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};case Gn:return{name:Gn,properties:[{name:"classSelector"},{name:"name"},{name:"value"}]};case Bn:return{name:Bn,properties:[{name:"classSelector"},{name:"name"}]};default:return{name:t,properties:[]}}}},R(Ps,"MermaidAstReflection"),Ps),Ve=new Ad,ic,tk=R(()=>ic??(ic=zt(`{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"InfoGrammar"),sc,rk=R(()=>sc??(sc=zt(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),ac,nk=R(()=>ac??(ac=zt(`{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PieGrammar"),oc,ik=R(()=>oc??(oc=zt(`{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"ArchitectureGrammar"),lc,sk=R(()=>lc??(lc=zt(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),uc,ak=R(()=>uc??(uc=zt(`{"$type":"Grammar","isDeclared":true,"name":"Radar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),cc,ok=R(()=>cc??(cc=zt(`{"$type":"Grammar","isDeclared":true,"name":"Treemap","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","}},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammar"),lk={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},uk={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ck={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},fk={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},dk={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},hk={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},pk={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Wt={AstReflection:R(()=>new Ad,"AstReflection")},mk={Grammar:R(()=>tk(),"Grammar"),LanguageMetaData:R(()=>lk,"LanguageMetaData"),parser:{}},gk={Grammar:R(()=>rk(),"Grammar"),LanguageMetaData:R(()=>uk,"LanguageMetaData"),parser:{}},yk={Grammar:R(()=>nk(),"Grammar"),LanguageMetaData:R(()=>ck,"LanguageMetaData"),parser:{}},vk={Grammar:R(()=>ik(),"Grammar"),LanguageMetaData:R(()=>fk,"LanguageMetaData"),parser:{}},Tk={Grammar:R(()=>sk(),"Grammar"),LanguageMetaData:R(()=>dk,"LanguageMetaData"),parser:{}},Rk={Grammar:R(()=>ak(),"Grammar"),LanguageMetaData:R(()=>hk,"LanguageMetaData"),parser:{}},$k={Grammar:R(()=>ok(),"Grammar"),LanguageMetaData:R(()=>pk,"LanguageMetaData"),parser:{}},Ek=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,Ak=/accTitle[\t ]*:([^\n\r]*)/,kk=/title([\t ][^\n\r]*|)/,xk={ACC_DESCR:Ek,ACC_TITLE:Ak,TITLE:kk},Ms,es=(Ms=class extends ud{runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){const n=xk[t.name];if(n===void 0)return;const i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
126
+ `)}}},R(Ms,"AbstractMermaidValueConverter"),Ms),Ds,ts=(Ds=class extends es{runCustomConverter(t,e,r){}},R(Ds,"CommonValueConverter"),Ds),Us,St=(Us=class extends ld{constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){const n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},R(Us,"AbstractMermaidTokenBuilder"),Us),fc;fc=class extends St{},R(fc,"CommonTokenBuilder");var Fs,Sk=(Fs=class extends St{constructor(){super(["gitGraph"])}},R(Fs,"GitGraphTokenBuilder"),Fs),kd={parser:{TokenBuilder:R(()=>new Sk,"TokenBuilder"),ValueConverter:R(()=>new ts,"ValueConverter")}};function xd(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),Tk,kd);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}R(xd,"createGitGraphServices");var js,Ik=(js=class extends St{constructor(){super(["info","showInfo"])}},R(js,"InfoTokenBuilder"),js),Sd={parser:{TokenBuilder:R(()=>new Ik,"TokenBuilder"),ValueConverter:R(()=>new ts,"ValueConverter")}};function Id(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),mk,Sd);return e.ServiceRegistry.register(r),{shared:e,Info:r}}R(Id,"createInfoServices");var Gs,wk=(Gs=class extends St{constructor(){super(["packet"])}},R(Gs,"PacketTokenBuilder"),Gs),wd={parser:{TokenBuilder:R(()=>new wk,"TokenBuilder"),ValueConverter:R(()=>new ts,"ValueConverter")}};function bd(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),gk,wd);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}R(bd,"createPacketServices");var Bs,bk=(Bs=class extends St{constructor(){super(["pie","showData"])}},R(Bs,"PieTokenBuilder"),Bs),Ks,Ck=(Ks=class extends es{runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},R(Ks,"PieValueConverter"),Ks),Cd={parser:{TokenBuilder:R(()=>new bk,"TokenBuilder"),ValueConverter:R(()=>new Ck,"ValueConverter")}};function Nd(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),yk,Cd);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}R(Nd,"createPieServices");var Vs,Nk=(Vs=class extends St{constructor(){super(["architecture"])}},R(Vs,"ArchitectureTokenBuilder"),Vs),Hs,_k=(Hs=class extends es{runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},R(Hs,"ArchitectureValueConverter"),Hs),_d={parser:{TokenBuilder:R(()=>new Nk,"TokenBuilder"),ValueConverter:R(()=>new _k,"ValueConverter")}};function Ld(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),vk,_d);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}R(Ld,"createArchitectureServices");var zs,Lk=(zs=class extends St{constructor(){super(["radar-beta"])}},R(zs,"RadarTokenBuilder"),zs),Od={parser:{TokenBuilder:R(()=>new Lk,"TokenBuilder"),ValueConverter:R(()=>new ts,"ValueConverter")}};function Pd(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),Rk,Od);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}R(Pd,"createRadarServices");var Ws,Ok=(Ws=class extends St{constructor(){super(["treemap"])}},R(Ws,"TreemapTokenBuilder"),Ws),Pk=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,Ys,Mk=(Ys=class extends es{runCustomConverter(t,e,r){if(t.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(t.name==="SEPARATOR"||t.name==="STRING2")return e.substring(1,e.length-1);if(t.name==="INDENTATION")return e.length;if(t.name==="ClassDef"){if(typeof e!="string")return e;const n=Pk.exec(e);if(n)return{$type:"ClassDefStatement",className:n[1],styleText:n[2]||void 0}}}},R(Ys,"TreemapValueConverter"),Ys);function Md(t){const e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){const n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}R(Md,"registerValidationChecks");var qs,Dk=(qs=class{checkSingleRoot(t,e){let r;for(const n of t.TreemapRows)n.item&&(r===void 0&&n.indent===void 0?r=0:n.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}):r!==void 0&&r>=parseInt(n.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}))}},R(qs,"TreemapValidator"),qs),Dd={parser:{TokenBuilder:R(()=>new Ok,"TokenBuilder"),ValueConverter:R(()=>new Mk,"ValueConverter")},validation:{TreemapValidator:R(()=>new Dk,"TreemapValidator")}};function Ud(t=xt){const e=ue(kt(t),Wt),r=ue(At({shared:e}),$k,Dd);return e.ServiceRegistry.register(r),Md(r),{shared:e,Treemap:r}}R(Ud,"createTreemapServices");var rt={},Uk={info:R(async()=>{const{createInfoServices:t}=await bt(async()=>{const{createInfoServices:r}=await Promise.resolve().then(()=>Gk);return{createInfoServices:r}},void 0),e=t().Info.parser.LangiumParser;rt.info=e},"info"),packet:R(async()=>{const{createPacketServices:t}=await bt(async()=>{const{createPacketServices:r}=await Promise.resolve().then(()=>Bk);return{createPacketServices:r}},void 0),e=t().Packet.parser.LangiumParser;rt.packet=e},"packet"),pie:R(async()=>{const{createPieServices:t}=await bt(async()=>{const{createPieServices:r}=await Promise.resolve().then(()=>Kk);return{createPieServices:r}},void 0),e=t().Pie.parser.LangiumParser;rt.pie=e},"pie"),architecture:R(async()=>{const{createArchitectureServices:t}=await bt(async()=>{const{createArchitectureServices:r}=await Promise.resolve().then(()=>Vk);return{createArchitectureServices:r}},void 0),e=t().Architecture.parser.LangiumParser;rt.architecture=e},"architecture"),gitGraph:R(async()=>{const{createGitGraphServices:t}=await bt(async()=>{const{createGitGraphServices:r}=await Promise.resolve().then(()=>Hk);return{createGitGraphServices:r}},void 0),e=t().GitGraph.parser.LangiumParser;rt.gitGraph=e},"gitGraph"),radar:R(async()=>{const{createRadarServices:t}=await bt(async()=>{const{createRadarServices:r}=await Promise.resolve().then(()=>zk);return{createRadarServices:r}},void 0),e=t().Radar.parser.LangiumParser;rt.radar=e},"radar"),treemap:R(async()=>{const{createTreemapServices:t}=await bt(async()=>{const{createTreemapServices:r}=await Promise.resolve().then(()=>Wk);return{createTreemapServices:r}},void 0),e=t().Treemap.parser.LangiumParser;rt.treemap=e},"treemap")};async function Fk(t,e){const r=Uk[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);rt[t]||await r();const n=rt[t].parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new jk(n);return n.value}R(Fk,"parse");var Xs,jk=(Xs=class extends Error{constructor(t){const e=t.lexerErrors.map(n=>n.message).join(`
127
+ `),r=t.parserErrors.map(n=>n.message).join(`
128
+ `);super(`Parsing failed: ${e} ${r}`),this.result=t}},R(Xs,"MermaidParseError"),Xs);const Gk=Object.freeze(Object.defineProperty({__proto__:null,InfoModule:Sd,createInfoServices:Id},Symbol.toStringTag,{value:"Module"})),Bk=Object.freeze(Object.defineProperty({__proto__:null,PacketModule:wd,createPacketServices:bd},Symbol.toStringTag,{value:"Module"})),Kk=Object.freeze(Object.defineProperty({__proto__:null,PieModule:Cd,createPieServices:Nd},Symbol.toStringTag,{value:"Module"})),Vk=Object.freeze(Object.defineProperty({__proto__:null,ArchitectureModule:_d,createArchitectureServices:Ld},Symbol.toStringTag,{value:"Module"})),Hk=Object.freeze(Object.defineProperty({__proto__:null,GitGraphModule:kd,createGitGraphServices:xd},Symbol.toStringTag,{value:"Module"})),zk=Object.freeze(Object.defineProperty({__proto__:null,RadarModule:Od,createRadarServices:Pd},Symbol.toStringTag,{value:"Module"})),Wk=Object.freeze(Object.defineProperty({__proto__:null,TreemapModule:Dd,createTreemapServices:Ud},Symbol.toStringTag,{value:"Module"}));export{Fk as B};