@evoscientist/webui 0.2.7 → 0.2.9

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 (402) hide show
  1. package/dist/.next/BUILD_ID +1 -1
  2. package/dist/.next/build-manifest.json +3 -3
  3. package/dist/.next/prerender-manifest.json +3 -3
  4. package/dist/.next/required-server-files.json +5 -5
  5. package/dist/.next/server/app/_global-error/page.js.nft.json +1 -1
  6. package/dist/.next/server/app/_global-error.html +1 -1
  7. package/dist/.next/server/app/_global-error.rsc +1 -1
  8. package/dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/dist/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/dist/.next/server/app/_not-found.html +1 -1
  13. package/dist/.next/server/app/_not-found.rsc +1 -1
  14. package/dist/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  15. package/dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  16. package/dist/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  17. package/dist/.next/server/app/api/memory/executions/route.js +1 -1
  18. package/dist/.next/server/app/api/memory/executions/route.js.nft.json +1 -1
  19. package/dist/.next/server/app/api/memory/observations/route.js +1 -1
  20. package/dist/.next/server/app/api/memory/observations/route.js.nft.json +1 -1
  21. package/dist/.next/server/app/api/memory/route.js +1 -1
  22. package/dist/.next/server/app/api/memory/route.js.nft.json +1 -1
  23. package/dist/.next/server/app/api/skills/catalog/route.js +1 -1
  24. package/dist/.next/server/app/api/skills/catalog/route.js.nft.json +1 -1
  25. package/dist/.next/server/app/api/skills/detail/route.js +1 -1
  26. package/dist/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  27. package/dist/.next/server/app/api/skills/install/route.js +1 -1
  28. package/dist/.next/server/app/api/skills/install/route.js.nft.json +1 -1
  29. package/dist/.next/server/app/api/skills/route.js +1 -1
  30. package/dist/.next/server/app/api/skills/route.js.nft.json +1 -1
  31. package/dist/.next/server/app/api/workspace/download/route.js +1 -1
  32. package/dist/.next/server/app/api/workspace/download/route.js.nft.json +1 -1
  33. package/dist/.next/server/app/api/workspace/file/route.js +1 -1
  34. package/dist/.next/server/app/api/workspace/file/route.js.nft.json +1 -1
  35. package/dist/.next/server/app/api/workspace/route.js +1 -1
  36. package/dist/.next/server/app/api/workspace/route.js.nft.json +1 -1
  37. package/dist/.next/server/app/api/workspace/upload/route.js +1 -1
  38. package/dist/.next/server/app/api/workspace/upload/route.js.nft.json +1 -1
  39. package/dist/.next/server/app/index.html +1 -1
  40. package/dist/.next/server/app/index.rsc +2 -2
  41. package/dist/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  42. package/dist/.next/server/app/index.segments/_full.segment.rsc +2 -2
  43. package/dist/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  44. package/dist/.next/server/app/page.js.nft.json +1 -1
  45. package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
  46. package/dist/.next/server/chunks/{[root-of-the-server]__0k-rs5f._.js → [root-of-the-server]__01e0ekn._.js} +1 -1
  47. package/dist/.next/server/chunks/{[root-of-the-server]__0t923su._.js → [root-of-the-server]__08gtyud._.js} +1 -1
  48. package/dist/.next/server/chunks/{[root-of-the-server]__0key-2n._.js → [root-of-the-server]__0c_9zoh._.js} +1 -1
  49. package/dist/.next/server/chunks/{[root-of-the-server]__0zqsdzd._.js → [root-of-the-server]__0dsauq5._.js} +1 -1
  50. package/dist/.next/server/chunks/{[root-of-the-server]__0jsq76h._.js → [root-of-the-server]__0om1fsa._.js} +1 -1
  51. package/dist/.next/server/chunks/{[root-of-the-server]__1alqt3_._.js → [root-of-the-server]__19l67fj._.js} +1 -1
  52. package/dist/.next/server/chunks/{[root-of-the-server]__0nn8czk._.js → [root-of-the-server]__1nb3ezt._.js} +1 -1
  53. package/dist/.next/server/chunks/ssr/1daa_@mermaid-js_parser_dist_chunks_mermaid-parser_core_chunk-FOHPRMQF_mjs_0ybwfeq._.js +84 -0
  54. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_mindmap-definition-YA3MSWOX_mjs_19k8byt._.js +92 -0
  55. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_requirementDiagram-BXWQKSXE_mjs_0kwiv6n._.js +81 -0
  56. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_timeline-definition-24CTP7MA_mjs_10dmaxt._.js +117 -0
  57. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_gitGraphDiagram-WWUBYQGX_mjs_0g15hiw._.js +106 -0
  58. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_ishikawaDiagram-5VMMS53U_mjs_05o2e4d._.js +66 -0
  59. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_journeyDiagram-3NMN7TZE_mjs_16ehrbl._.js +136 -0
  60. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_kanban-definition-UXKFOSKX_mjs_1uiqd5g._.js +81 -0
  61. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_quadrantDiagram-AXDQQJYC_mjs_0h4a9wq._.js +3 -0
  62. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_sequenceDiagram-WJ2MYXX4_mjs_1n01m3a._.js +155 -0
  63. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_wardleyDiagram-VM6X3IG4_mjs_0kh3fjb._.js +79 -0
  64. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_xychartDiagram-S5SC5T6Z_mjs_08t5e44._.js +3 -0
  65. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0xpcv9w._.js +1 -1
  66. package/dist/.next/server/chunks/ssr/[root-of-the-server]__1q-wcrf._.js +15 -0
  67. package/dist/.next/server/chunks/ssr/node_modules_0-3gk4n._.js +3 -0
  68. package/dist/.next/server/chunks/ssr/node_modules_03mz3d2._.js +3 -0
  69. package/dist/.next/server/chunks/ssr/node_modules_042csl2._.js +17 -0
  70. package/dist/.next/server/chunks/ssr/node_modules_063ofsn._.js +64 -0
  71. package/dist/.next/server/chunks/ssr/node_modules_0_3n1hi._.js +26 -0
  72. package/dist/.next/server/chunks/ssr/node_modules_0_n1n9u._.js +43 -0
  73. package/dist/.next/server/chunks/ssr/node_modules_0bnt8d5._.js +3 -0
  74. package/dist/.next/server/chunks/ssr/node_modules_0dxcji9._.js +3 -0
  75. package/dist/.next/server/chunks/ssr/{node_modules_082g_84._.js → node_modules_0f5_pdq._.js} +12 -3
  76. package/dist/.next/server/chunks/ssr/node_modules_0gmj-7m._.js +3 -0
  77. package/dist/.next/server/chunks/ssr/node_modules_0j6b-p5._.js +3 -0
  78. package/dist/.next/server/chunks/ssr/{node_modules_111pp7w._.js → node_modules_0klo3i5._.js} +2 -2
  79. package/dist/.next/server/chunks/ssr/node_modules_0koo_87._.js +3 -0
  80. package/dist/.next/server/chunks/ssr/node_modules_0mhroki._.js +17 -0
  81. package/dist/.next/server/chunks/ssr/node_modules_0pimgwq._.js +3 -0
  82. package/dist/.next/server/chunks/ssr/node_modules_0qw862r._.js +3 -0
  83. package/dist/.next/server/chunks/ssr/node_modules_0rb-_la._.js +3 -0
  84. package/dist/.next/server/chunks/ssr/node_modules_0s436hr._.js +24 -0
  85. package/dist/.next/server/chunks/ssr/node_modules_0u5o24a._.js +3 -0
  86. package/dist/.next/server/chunks/ssr/node_modules_0z53q9t._.js +17 -0
  87. package/dist/.next/server/chunks/ssr/node_modules_0zzr3iv._.js +3 -0
  88. package/dist/.next/server/chunks/ssr/{node_modules_1p9b60w._.js → node_modules_11trqmi._.js} +4 -4
  89. package/dist/.next/server/chunks/ssr/{node_modules_1-wfv6i._.js → node_modules_14_5zct._.js} +2 -2
  90. package/dist/.next/server/chunks/ssr/node_modules_14gkv49._.js +3 -0
  91. package/dist/.next/server/chunks/ssr/node_modules_14j-r2i._.js +3 -0
  92. package/dist/.next/server/chunks/ssr/{node_modules_1nck62h._.js → node_modules_16ih6qm._.js} +2 -2
  93. package/dist/.next/server/chunks/ssr/node_modules_18frml9._.js +17 -0
  94. package/dist/.next/server/chunks/ssr/node_modules_1_d0q_7._.js +289 -0
  95. package/dist/.next/server/chunks/ssr/node_modules_1asq18n._.js +29 -0
  96. package/dist/.next/server/chunks/ssr/node_modules_1b08rf0._.js +3 -0
  97. package/dist/.next/server/chunks/ssr/node_modules_1bddg7x._.js +3 -0
  98. package/dist/.next/server/chunks/ssr/node_modules_1bo15xl._.js +3 -0
  99. package/dist/.next/server/chunks/ssr/node_modules_1bompw4._.js +3 -0
  100. package/dist/.next/server/chunks/ssr/node_modules_1c0h-_d._.js +3 -0
  101. package/dist/.next/server/chunks/ssr/node_modules_1i5ml3x._.js +3 -0
  102. package/dist/.next/server/chunks/ssr/node_modules_1jpkt5_._.js +3 -0
  103. package/dist/.next/server/chunks/ssr/node_modules_1ki78ma._.js +3 -0
  104. package/dist/.next/server/chunks/ssr/{node_modules_0v4zc0t._.js → node_modules_1nl12mt._.js} +2 -2
  105. package/dist/.next/server/chunks/ssr/node_modules_1rsc-gt._.js +17 -0
  106. package/dist/.next/server/chunks/ssr/node_modules_1thrjjl._.js +3 -0
  107. package/dist/.next/server/chunks/ssr/node_modules_1ti62ba._.js +3 -0
  108. package/dist/.next/server/chunks/ssr/{node_modules_0456qqx._.js → node_modules_1tsuh_o._.js} +3 -3
  109. package/dist/.next/server/chunks/ssr/node_modules_1vbiuwu._.js +63 -0
  110. package/dist/.next/server/chunks/ssr/{node_modules_1_v-pb8._.js → node_modules_1wn8qu0._.js} +2 -2
  111. package/dist/.next/server/chunks/ssr/{node_modules_1z_uie6._.js → node_modules_1wvft2t._.js} +2 -2
  112. package/dist/.next/server/chunks/ssr/node_modules_1xgltz7._.js +3 -0
  113. package/dist/.next/server/chunks/ssr/node_modules_1y4f8cf._.js +3 -0
  114. package/dist/.next/server/chunks/ssr/node_modules_1z39zs4._.js +3 -0
  115. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_066fcep._.js +3 -0
  116. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0_301m2._.js +3 -0
  117. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0it10w8._.js +3 -0
  118. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0m-ahsg._.js +3 -0
  119. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0n8rqkj._.js +3 -0
  120. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0nb4v-i._.js +3 -0
  121. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0tdjo9s._.js +3 -0
  122. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_12betp4._.js +3 -0
  123. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1mu01rb._.js +3 -0
  124. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1xda76v._.js +3 -0
  125. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1z2f7i3._.js +3 -0
  126. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_20vrei_._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_00ptcss._.js} +2 -2
  127. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0_iovbk._.js +3 -0
  128. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1quf15b._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0a2p_6-._.js} +2 -2
  129. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0muxjzn._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0c6uq4c._.js} +2 -2
  130. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0d8brvh._.js +3 -0
  131. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0__ix0y._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0ha29gs._.js} +2 -2
  132. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0597f-k._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0mkvkrn._.js} +2 -2
  133. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1vi37xl._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0xbyurn._.js} +2 -2
  134. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_10l-aox._.js +3 -0
  135. package/dist/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1fzbfn5._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_11iptmm._.js} +2 -2
  136. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_183vuvb._.js +3 -0
  137. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1_98arq._.js +3 -0
  138. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1lr-xqr._.js +3 -0
  139. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1p161c7._.js +3 -0
  140. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1t9e3ef._.js +3 -0
  141. package/dist/.next/server/chunks/ssr/node_modules_dagre-d3-es_src_dagre_index_0g66msq.js +1 -1
  142. package/dist/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_04eh6b6._.js → node_modules_katex_dist_katex_mjs_16enqn_._.js} +1 -1
  143. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_0e5n4p5._.js +3 -0
  144. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_blockDiagram-I7D4REHJ_mjs_0qg1lr5._.js +126 -0
  145. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_c4Diagram-7LVT6UL2_mjs_06bhe3-._.js +34 -0
  146. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-2E4U76K2_mjs_20f4_iz._.js +3 -0
  147. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-4HAMMTFA_mjs_1cfif1_._.js +64 -0
  148. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-75Z2AOVW_mjs_051rute._.js +4 -0
  149. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-DU6HZSFF_mjs_20hsuk9._.js +124 -0
  150. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-IMKFNOWR_mjs_0vdq1-l._.js +228 -0
  151. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-LNGE3PJU_mjs_15ujw6f._.js +3 -0
  152. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-OSK3NFVY_mjs_0x5leh1._.js +12 -0
  153. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-SHT3W25Y_mjs_00p5j42._.js +160 -0
  154. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-SVP7TREG_mjs_03r5m21._.js +88 -0
  155. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-TICWLB2K_mjs_1t97mh7._.js +203 -0
  156. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-Y2CYZVJY_mjs_20i4m4_._.js +3 -0
  157. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_diagram-VX7I27RA_mjs_0dl8gzm._.js +26 -0
  158. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_erDiagram-RLTQ6QDP_mjs_18g60i7._.js +96 -0
  159. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_sankeyDiagram-P5KCCOFB_mjs_187yyta._.js +36 -0
  160. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_stateDiagram-D77RDMKH_mjs_1mer5fv._.js +3 -0
  161. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_swimlanes-42K2YHIH_mjs_0scuk32._.js +3 -0
  162. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_vennDiagram-4TSXK5OY_mjs_0anqu7y._.js +25 -0
  163. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_mermaid_core_mjs_1ao-jv5._.js +3 -3
  164. package/dist/.next/server/middleware-build-manifest.js +3 -3
  165. package/dist/.next/server/pages/404.html +1 -1
  166. package/dist/.next/server/pages/500.html +1 -1
  167. package/dist/.next/server/server-reference-manifest.js +1 -1
  168. package/dist/.next/server/server-reference-manifest.json +1 -1
  169. package/dist/.next/static/chunks/00h58csdfefay.js +1 -0
  170. package/dist/.next/static/chunks/01_remgex0cp2.js +1 -0
  171. package/dist/.next/static/chunks/01xjer0i_e5z5.js +15 -0
  172. package/dist/.next/static/chunks/025bmrgeukcb2.js +15 -0
  173. package/dist/.next/static/chunks/02slxciv9jt1p.js +77 -0
  174. package/dist/.next/static/chunks/04e-e--5lk26x.js +287 -0
  175. package/dist/.next/static/chunks/09nk4rn1z6j8b.js +1 -0
  176. package/dist/.next/static/chunks/0_l0vn2teso0z.js +1 -0
  177. package/dist/.next/static/chunks/0a_kuude9z_bg.js +1 -0
  178. package/dist/.next/static/chunks/0bz8pjqbx0nt7.js +1 -0
  179. package/dist/.next/static/chunks/0cnrxsj5iw5ld.js +2 -0
  180. package/dist/.next/static/chunks/0dcfqbly-089u.js +10 -0
  181. package/dist/.next/static/chunks/0dhmf6y59xjoo.js +1 -0
  182. package/dist/.next/static/chunks/{2-tnv5f86ywqz.js → 0kdfzi54utgbh.js} +1 -1
  183. package/dist/.next/static/chunks/0m-pl93u72hp9.js +1 -0
  184. package/dist/.next/static/chunks/0mkmxdnpoteey.js +1 -0
  185. package/dist/.next/static/chunks/{41ii5ld31fjk5.js → 0oyz95sujd2c7.js} +3 -3
  186. package/dist/.next/static/chunks/0p54qye85am3w.js +1 -0
  187. package/dist/.next/static/chunks/0q5tyevxl-ioe.js +1 -0
  188. package/dist/.next/static/chunks/0r79_ebje0i6_.js +1 -0
  189. package/dist/.next/static/chunks/0si45yj1su8y7.js +23 -0
  190. package/dist/.next/static/chunks/0u3ktztrzu1fa.js +1 -0
  191. package/dist/.next/static/chunks/0u9ae9k_2g7k3.js +1 -0
  192. package/dist/.next/static/chunks/{357a_3k2qrz6b.js → 0vhltcpdssl3-.js} +1 -1
  193. package/dist/.next/static/chunks/0x7n81v2cw92f.js +64 -0
  194. package/dist/.next/static/chunks/{1wsp3h55ims3-.js → 1-2_pusn4n8oh.js} +3 -3
  195. package/dist/.next/static/chunks/1-axl1a1s8xi7.js +1 -0
  196. package/dist/.next/static/chunks/14osgsp3aiqpz.js +79 -0
  197. package/dist/.next/static/chunks/16mzcd_gvdgbo.js +1 -0
  198. package/dist/.next/static/chunks/1815xwa8351ma.js +1 -0
  199. package/dist/.next/static/chunks/1d9i8nlx-zy9a.js +62 -0
  200. package/dist/.next/static/chunks/1ebh7wwf-wzqn.js +32 -0
  201. package/dist/.next/static/chunks/1g6hadfcoz4ag.js +62 -0
  202. package/dist/.next/static/chunks/1kg8hnvdsweku.js +1 -0
  203. package/dist/.next/static/chunks/1kzq0rdlu1v0j.js +86 -0
  204. package/dist/.next/static/chunks/1qapeyh3r6cg3.js +1 -0
  205. package/dist/.next/static/chunks/1rh4z578p-h1a.js +104 -0
  206. package/dist/.next/static/chunks/1rowt7kr1tu9y.js +1 -0
  207. package/dist/.next/static/chunks/1u5i-jti87jbo.js +153 -0
  208. package/dist/.next/static/chunks/1v15lv0fcel0n.js +1 -0
  209. package/dist/.next/static/chunks/1wrwqqt23_cqy.js +94 -0
  210. package/dist/.next/static/chunks/21o6_7520je3e.js +1 -0
  211. package/dist/.next/static/chunks/221-n1wtpkus8.js +27 -0
  212. package/dist/.next/static/chunks/25pfy8u3vc_bn.js +24 -0
  213. package/dist/.next/static/chunks/266qo7h19xz_m.js +24 -0
  214. package/dist/.next/static/chunks/27ag7-c9a81uz.js +1 -0
  215. package/dist/.next/static/chunks/2b4v6n9b8htrv.js +158 -0
  216. package/dist/.next/static/chunks/2b57kmz64uj8h.js +1 -0
  217. package/dist/.next/static/chunks/2gocl3dq0_h1s.js +15 -0
  218. package/dist/.next/static/chunks/2itcfm_igcz5x.js +201 -0
  219. package/dist/.next/static/chunks/2l1phv_g29xz7.js +61 -0
  220. package/dist/.next/static/chunks/2m267diam_vib.js +22 -0
  221. package/dist/.next/static/chunks/2o4dndk0d68do.js +1 -0
  222. package/dist/.next/static/chunks/2qq7e47gpyc_e.js +82 -0
  223. package/dist/.next/static/chunks/2re701zfx-nrj.js +1 -0
  224. package/dist/.next/static/chunks/2sdwbfs1x5skp.js +1 -0
  225. package/dist/.next/static/chunks/2udhdtq_z8488.js +115 -0
  226. package/dist/.next/static/chunks/31etpuynk3lai.js +1 -0
  227. package/dist/.next/static/chunks/{05cl5ojgc4_ku.js → 32e7ex-ufg57f.js} +14 -14
  228. package/dist/.next/static/chunks/38h4_u_fq6ose.js +38 -0
  229. package/dist/.next/static/chunks/397b67vbg5iof.js +4 -0
  230. package/dist/.next/static/chunks/3fg_vuz1xt14w.js +1 -0
  231. package/dist/.next/static/chunks/3her9o9_qn46y.js +226 -0
  232. package/dist/.next/static/chunks/3lnrl25cwsoyk.js +90 -0
  233. package/dist/.next/static/chunks/3lx-n8v_8u7og.js +1 -0
  234. package/dist/.next/static/chunks/3mjwob-a5hhwz.js +1 -0
  235. package/dist/.next/static/chunks/3n80kknp-eoi9.js +1 -0
  236. package/dist/.next/static/chunks/3oif9bymgqjgd.js +41 -0
  237. package/dist/.next/static/chunks/3peltyinql2qj.js +34 -0
  238. package/dist/.next/static/chunks/3r4zv-ypmltqz.js +13 -0
  239. package/dist/.next/static/chunks/3r7r2d2yc93-y.js +1 -0
  240. package/dist/.next/static/chunks/3s-zbm7kxc46y.js +93 -0
  241. package/dist/.next/static/chunks/3s09ok8dc101_.js +1 -0
  242. package/dist/.next/static/chunks/3t9huugh-5_ps.js +1 -0
  243. package/dist/.next/static/chunks/3w5gsie2472pe.js +1 -0
  244. package/dist/.next/static/chunks/3zgnmu3cnahk0.js +122 -0
  245. package/dist/.next/static/chunks/41r6lojo50nzh.js +1 -0
  246. package/dist/.next/static/chunks/41uertskgrvwu.js +1 -0
  247. package/dist/.next/static/chunks/42kilhgqayez4.js +124 -0
  248. package/dist/node_modules/@img/sharp-darwin-arm64/index.cjs +1 -1
  249. package/dist/node_modules/@img/sharp-darwin-arm64/lib/{sharp-darwin-arm64-0.35.3.node → sharp-darwin-arm64-0.35.4.node} +0 -0
  250. package/dist/node_modules/@img/sharp-darwin-arm64/package.json +2 -2
  251. package/dist/node_modules/@img/sharp-libvips-darwin-arm64/lib/glib-2.0/include/glibconfig.h +1 -1
  252. package/dist/node_modules/@img/sharp-libvips-darwin-arm64/lib/{libvips-cpp.8.18.3.dylib → libvips-cpp.8.18.6.dylib} +0 -0
  253. package/dist/node_modules/@img/sharp-libvips-darwin-arm64/package.json +2 -2
  254. package/dist/node_modules/@img/sharp-libvips-darwin-arm64/versions.json +13 -13
  255. package/dist/node_modules/sharp/dist/composite.cjs +6 -6
  256. package/dist/node_modules/sharp/dist/composite.mjs +6 -6
  257. package/dist/node_modules/sharp/dist/constructor.cjs +1 -1
  258. package/dist/node_modules/sharp/dist/constructor.mjs +1 -1
  259. package/dist/node_modules/sharp/dist/index.d.cts +2 -2
  260. package/dist/node_modules/sharp/dist/index.d.mts +2 -2
  261. package/dist/node_modules/sharp/dist/input.cjs +20 -15
  262. package/dist/node_modules/sharp/dist/input.mjs +20 -15
  263. package/dist/node_modules/sharp/dist/operation.cjs +4 -0
  264. package/dist/node_modules/sharp/dist/operation.mjs +4 -0
  265. package/dist/node_modules/sharp/dist/output.cjs +4 -7
  266. package/dist/node_modules/sharp/dist/output.mjs +4 -7
  267. package/dist/node_modules/sharp/dist/resize.cjs +8 -8
  268. package/dist/node_modules/sharp/dist/resize.mjs +8 -8
  269. package/dist/node_modules/sharp/package.json +38 -38
  270. package/dist/package.json +3 -4
  271. package/dist/server.js +1 -1
  272. package/package.json +3 -4
  273. package/dist/.next/server/chunks/ssr/1daa_@mermaid-js_parser_dist_chunks_mermaid-parser_core_chunk-NNHCCRGN_mjs_03i6i8q._.js +0 -82
  274. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_mindmap-definition-RKZ34NQL_mjs_1m8bey3._.js +0 -92
  275. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_requirementDiagram-4Y6WPE33_mjs_0cvy8c2._.js +0 -81
  276. package/dist/.next/server/chunks/ssr/1daa_mermaid_dist_chunks_mermaid_core_timeline-definition-PNZ67QCA_mjs_0vzw4gu._.js +0 -117
  277. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_gitGraphDiagram-PVQCEYII_mjs_1kl1645._.js +0 -106
  278. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_ishikawaDiagram-YF4QCWOH_mjs_1-btteu._.js +0 -66
  279. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_journeyDiagram-JHISSGLW_mjs_0omhwqk._.js +0 -136
  280. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_kanban-definition-UN3LZRKU_mjs_052rc5y._.js +0 -81
  281. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_quadrantDiagram-W4KKPZXB_mjs_0l8r0bx._.js +0 -3
  282. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_sequenceDiagram-3UESZ5HK_mjs_0c-9sj0._.js +0 -155
  283. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_wardleyDiagram-YWT4CUSO_mjs_0hqmyh5._.js +0 -79
  284. package/dist/.next/server/chunks/ssr/1q96_modules_mermaid_dist_chunks_mermaid_core_xychartDiagram-2RQKCTM6_mjs_1l5rlhy._.js +0 -3
  285. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0nzxyl0._.js +0 -3
  286. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0owaq8w._.js +0 -12
  287. package/dist/.next/server/chunks/ssr/node_modules_0-n78w2._.js +0 -17
  288. package/dist/.next/server/chunks/ssr/node_modules_00cex-8._.js +0 -3
  289. package/dist/.next/server/chunks/ssr/node_modules_07zdzg3._.js +0 -17
  290. package/dist/.next/server/chunks/ssr/node_modules_0_w_s0o._.js +0 -3
  291. package/dist/.next/server/chunks/ssr/node_modules_0chqc93._.js +0 -11
  292. package/dist/.next/server/chunks/ssr/node_modules_0i3cah4._.js +0 -17
  293. package/dist/.next/server/chunks/ssr/node_modules_0jx8vby._.js +0 -3
  294. package/dist/.next/server/chunks/ssr/node_modules_0kh3gaq._.js +0 -45
  295. package/dist/.next/server/chunks/ssr/node_modules_0oiuulr._.js +0 -3
  296. package/dist/.next/server/chunks/ssr/node_modules_0sud39z._.js +0 -3
  297. package/dist/.next/server/chunks/ssr/node_modules_0ty2qhi._.js +0 -3
  298. package/dist/.next/server/chunks/ssr/node_modules_0uvms5m._.js +0 -3
  299. package/dist/.next/server/chunks/ssr/node_modules_0xme7lg._.js +0 -3
  300. package/dist/.next/server/chunks/ssr/node_modules_0z2foqi._.js +0 -3
  301. package/dist/.next/server/chunks/ssr/node_modules_0z4gniu._.js +0 -17
  302. package/dist/.next/server/chunks/ssr/node_modules_15pczok._.js +0 -3
  303. package/dist/.next/server/chunks/ssr/node_modules_16l6ua_._.js +0 -3
  304. package/dist/.next/server/chunks/ssr/node_modules_16q2m8u._.js +0 -3
  305. package/dist/.next/server/chunks/ssr/node_modules_17rj81n._.js +0 -3
  306. package/dist/.next/server/chunks/ssr/node_modules_19b6jde._.js +0 -3
  307. package/dist/.next/server/chunks/ssr/node_modules_1_jf-yx._.js +0 -17
  308. package/dist/.next/server/chunks/ssr/node_modules_1lio4hi._.js +0 -3
  309. package/dist/.next/server/chunks/ssr/node_modules_1tj6b0h._.js +0 -3
  310. package/dist/.next/server/chunks/ssr/node_modules_1zskgct._.js +0 -26
  311. package/dist/.next/server/chunks/ssr/node_modules_20p8pl7._.js +0 -289
  312. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_01lis5y._.js +0 -3
  313. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_07fm7s3._.js +0 -3
  314. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0kitx9n._.js +0 -3
  315. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0x5ivvr._.js +0 -3
  316. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_145f4t2._.js +0 -3
  317. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1_o7dux._.js +0 -3
  318. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1alyi8-._.js +0 -3
  319. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1bxlr8e._.js +0 -3
  320. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1grmhd9._.js +0 -3
  321. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_01pthdh._.js +0 -3
  322. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_03fanqm._.js +0 -3
  323. package/dist/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_16vf13h._.js +0 -3
  324. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_blockDiagram-GPEHLZMM_mjs_0jxv2ay._.js +0 -129
  325. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_c4Diagram-AAUBKEIU_mjs_1yyt6ej._.js +0 -7
  326. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-3OPIFGDE_mjs_165ua5_._.js +0 -64
  327. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-5ZQYHXKU_mjs_16ac76u._.js +0 -4
  328. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-727SXJPM_mjs_0a9kagr._.js +0 -203
  329. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-AQP2D5EJ_mjs_1p-51mn._.js +0 -228
  330. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-CSCIHK7Q_mjs_0savw5-._.js +0 -121
  331. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-KSCS5N6A_mjs_1vk17qr._.js +0 -12
  332. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-O5CBEL6O_mjs_074844c._.js +0 -62
  333. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-XPW4576I_mjs_0u9wa-b._.js +0 -3
  334. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_dagre-BM42HDAG_mjs_0w_brpy._.js +0 -3
  335. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_diagram-OG6HWLK6_mjs_0pzbdul._.js +0 -26
  336. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_erDiagram-TEJ5UH35_mjs_1_cyy1q._.js +0 -82
  337. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_flowDiagram-I6XJVG4X_mjs_01y3363._.js +0 -154
  338. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_sankeyDiagram-5OEKKPKP_mjs_1nsv0tt._.js +0 -36
  339. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_stateDiagram-AJRCARHV_mjs_0j4-fk2._.js +0 -3
  340. package/dist/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_vennDiagram-CIIHVFJN_mjs_1jvbrvq._.js +0 -25
  341. package/dist/.next/static/chunks/01nhrh-3r57wh.js +0 -1
  342. package/dist/.next/static/chunks/03regxjjibliy.js +0 -29
  343. package/dist/.next/static/chunks/059oqdb-4djh4.js +0 -1
  344. package/dist/.next/static/chunks/0bk3aw3m9c72a.js +0 -201
  345. package/dist/.next/static/chunks/0bko6sy3fi25l.js +0 -1
  346. package/dist/.next/static/chunks/0c4y7_xzemq6-.js +0 -1
  347. package/dist/.next/static/chunks/0catqiaei7kwh.js +0 -62
  348. package/dist/.next/static/chunks/0cm59yzmvnr6a.js +0 -1
  349. package/dist/.next/static/chunks/0dm2etancr7wp.js +0 -2
  350. package/dist/.next/static/chunks/0l2v1ybx0rm07.js +0 -1
  351. package/dist/.next/static/chunks/0ll25xvc8tvc7.js +0 -60
  352. package/dist/.next/static/chunks/0o19535rrdg5j.js +0 -1
  353. package/dist/.next/static/chunks/0piaur2yhvb4v.js +0 -1
  354. package/dist/.next/static/chunks/0r-qze3me8owo.js +0 -5
  355. package/dist/.next/static/chunks/0s3geiy0as3cz.js +0 -104
  356. package/dist/.next/static/chunks/0wf_g68m1dyuq.js +0 -152
  357. package/dist/.next/static/chunks/0z7hf76h0cz39.js +0 -1
  358. package/dist/.next/static/chunks/0zao0i_njogzy.js +0 -79
  359. package/dist/.next/static/chunks/11jp13p4e7ycl.js +0 -1
  360. package/dist/.next/static/chunks/12b5tf_04ca4i.js +0 -10
  361. package/dist/.next/static/chunks/13j02-7zvh70e.js +0 -1
  362. package/dist/.next/static/chunks/15746zaz9af2k.js +0 -80
  363. package/dist/.next/static/chunks/15m2ikcj71414.js +0 -1
  364. package/dist/.next/static/chunks/17y1ca1c2d1k0.js +0 -127
  365. package/dist/.next/static/chunks/17zvg7jc-nx5v.js +0 -1
  366. package/dist/.next/static/chunks/18dnd1yq8sjcm.js +0 -80
  367. package/dist/.next/static/chunks/1bi4m489puezc.js +0 -64
  368. package/dist/.next/static/chunks/1g6nbgmclpjgd.js +0 -90
  369. package/dist/.next/static/chunks/1h978hs06gqwr.js +0 -1
  370. package/dist/.next/static/chunks/1rxbddx-dyypf.js +0 -226
  371. package/dist/.next/static/chunks/1s8wltynx2kei.js +0 -24
  372. package/dist/.next/static/chunks/1un-c368y76x-.js +0 -1
  373. package/dist/.next/static/chunks/1vqrf8u3eyf8l.js +0 -1
  374. package/dist/.next/static/chunks/1x5foe7mtvd8m.js +0 -15
  375. package/dist/.next/static/chunks/20uqpnur2j1hn.js +0 -1
  376. package/dist/.next/static/chunks/24c-6p_4lbozm.js +0 -1
  377. package/dist/.next/static/chunks/24l5e3uup8rxf.js +0 -153
  378. package/dist/.next/static/chunks/26t_0sbrej8uf.js +0 -15
  379. package/dist/.next/static/chunks/27n_wru0tprv5.js +0 -4
  380. package/dist/.next/static/chunks/29x7ecuc6vybp.js +0 -1
  381. package/dist/.next/static/chunks/2dqeid-8xhwun.js +0 -93
  382. package/dist/.next/static/chunks/2f6739bq5ewxz.js +0 -34
  383. package/dist/.next/static/chunks/2fuc_smcevit1.js +0 -15
  384. package/dist/.next/static/chunks/2h7acwi-mfsrx.js +0 -1
  385. package/dist/.next/static/chunks/2ia3pig2diart.js +0 -43
  386. package/dist/.next/static/chunks/2y3wq_x8yyu_b.js +0 -115
  387. package/dist/.next/static/chunks/2zrfdnujo3u51.js +0 -1
  388. package/dist/.next/static/chunks/3-q38f64d_smq.js +0 -77
  389. package/dist/.next/static/chunks/3-t8rqn47mim5.js +0 -1
  390. package/dist/.next/static/chunks/383s4_f7pq0oz.js +0 -1
  391. package/dist/.next/static/chunks/3cnkwh7z04e3e.js +0 -24
  392. package/dist/.next/static/chunks/3cvv663zekq_n.js +0 -119
  393. package/dist/.next/static/chunks/3mcxvhb8ujk39.js +0 -1
  394. package/dist/.next/static/chunks/3s7at3o7ube_p.js +0 -9
  395. package/dist/.next/static/chunks/3wb9uvu5ii1sy.js +0 -287
  396. package/dist/.next/static/chunks/3x5hww03ialmf.js +0 -1
  397. package/dist/.next/static/chunks/3ypwau9uw-qzz.js +0 -23
  398. package/dist/.next/static/chunks/42yfqecr30v0q.js +0 -10
  399. package/dist/.next/static/chunks/44dlrjamdw9zn.js +0 -1
  400. /package/dist/.next/static/{0ElnbO3cxvcyCbDz0Tuqe → jymT8vIg_gKraNQQCXVtL}/_buildManifest.js +0 -0
  401. /package/dist/.next/static/{0ElnbO3cxvcyCbDz0Tuqe → jymT8vIg_gKraNQQCXVtL}/_clientMiddlewareManifest.js +0 -0
  402. /package/dist/.next/static/{0ElnbO3cxvcyCbDz0Tuqe → jymT8vIg_gKraNQQCXVtL}/_ssgManifest.js +0 -0
@@ -0,0 +1,82 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,951773,e=>{"use strict";let t,r;var n,i,a,s,o,l,u,c,p,f,d,m,h,y,g,T,$,v,R,E,A,b,C,S,k,x,N,I,_,w,P,O,D,L,M,j,F,G,z,K,q,U,B,W,V,H,Y,Z,X,J,Q,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ep,ef,ed,em,eh,ey,eg,eT,e$,ev,eR,eE,eA,eb,eC,eS,ek,ex,eN,eI,e_,ew,eP,eO,eD,eL,eM,ej,eF,eG,ez,eK,eq,eU,eB,eW,eV,eH,eY,eZ,eX,eJ,eQ,e0,e1,e2,e3,e9,e4,e5,e7,e8,e6,te,tt,tr,tn,ti,ta,ts,to,tl,tu,tc,tp,tf,td,tm,th,ty,tg,tT,t$,tv,tR,tE,tA,tb,tC,tS,tk=e.i(247167),tx=Object.create,tN=Object.defineProperty,tI=Object.getOwnPropertyDescriptor,t_=Object.getOwnPropertyNames,tw=Object.getPrototypeOf,tP=Object.prototype.hasOwnProperty,tO=(e,t)=>tN(e,"name",{value:t,configurable:!0}),tD=(e,t)=>function(){return t||(0,e[t_(e)[0]])((t={exports:{}}).exports,t),t.exports},tL=(e,t)=>{for(var r in t)tN(e,r,{get:t[r],enumerable:!0})},tM=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of t_(t))tP.call(e,i)||i===r||tN(e,i,{get:()=>t[i],enumerable:!(n=tI(t,i))||n.enumerable});return e},tj=(e,t,r)=>(tM(e,t,"default"),r&&tM(r,t,"default")),tF=(e,t,r)=>(r=null!=e?tx(tw(e)):{},tM(!t&&e&&e.__esModule?r:tN(r,"default",{value:e,enumerable:!0}),e)),tG=e=>tM(tN({},"__esModule",{value:!0}),e),tz={};tL(tz,{AnnotatedTextEdit:()=>L,ChangeAnnotation:()=>O,ChangeAnnotationIdentifier:()=>D,CodeAction:()=>e$,CodeActionContext:()=>eT,CodeActionKind:()=>ey,CodeActionTriggerKind:()=>eg,CodeDescription:()=>I,CodeLens:()=>ev,Color:()=>E,ColorInformation:()=>A,ColorPresentation:()=>b,Command:()=>w,CompletionItem:()=>en,CompletionItemKind:()=>X,CompletionItemLabelDetails:()=>er,CompletionItemTag:()=>Q,CompletionList:()=>ei,CreateFile:()=>j,DeleteFile:()=>G,Diagnostic:()=>_,DiagnosticRelatedInformation:()=>k,DiagnosticSeverity:()=>x,DiagnosticTag:()=>N,DocumentHighlight:()=>ec,DocumentHighlightKind:()=>eu,DocumentLink:()=>eE,DocumentSymbol:()=>eh,DocumentUri:()=>m,EOL:()=>ez,FoldingRange:()=>S,FoldingRangeKind:()=>C,FormattingOptions:()=>eR,Hover:()=>es,InlayHint:()=>eP,InlayHintKind:()=>e_,InlayHintLabelPart:()=>ew,InlineCompletionContext:()=>eF,InlineCompletionItem:()=>eD,InlineCompletionList:()=>eL,InlineCompletionTriggerKind:()=>eM,InlineValueContext:()=>eI,InlineValueEvaluatableExpression:()=>eN,InlineValueText:()=>ek,InlineValueVariableLookup:()=>ex,InsertReplaceEdit:()=>ee,InsertTextFormat:()=>J,InsertTextMode:()=>et,Location:()=>v,LocationLink:()=>R,MarkedString:()=>ea,MarkupContent:()=>Z,MarkupKind:()=>Y,OptionalVersionedTextDocumentIdentifier:()=>V,ParameterInformation:()=>eo,Position:()=>T,Range:()=>$,RenameFile:()=>F,SelectedCompletionInfo:()=>ej,SelectionRange:()=>eA,SemanticTokenModifiers:()=>eC,SemanticTokenTypes:()=>eb,SemanticTokens:()=>eS,SignatureInformation:()=>el,StringValue:()=>eO,SymbolInformation:()=>ed,SymbolKind:()=>ep,SymbolTag:()=>ef,TextDocument:()=>eK,TextDocumentEdit:()=>M,TextDocumentIdentifier:()=>B,TextDocumentItem:()=>H,TextEdit:()=>P,URI:()=>h,VersionedTextDocumentIdentifier:()=>W,WorkspaceChange:()=>U,WorkspaceEdit:()=>z,WorkspaceFolder:()=>eG,WorkspaceSymbol:()=>em,integer:()=>y,uinteger:()=>g});var tK=(t={"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var e,t,r,n,i,a,s,o,l,u,c,p,f,d=m||(m={});function eB(e){return"string"==typeof e}tO(eB,"is"),d.is=eB;var eW=h||(h={});function eV(e){return"string"==typeof e}tO(eV,"is"),eW.is=eV;var eH=y||(y={});function eY(e){return"number"==typeof e&&eH.MIN_VALUE<=e&&e<=eH.MAX_VALUE}eH.MIN_VALUE=-0x80000000,eH.MAX_VALUE=0x7fffffff,tO(eY,"is"),eH.is=eY;var eZ=g||(g={});function eX(e){return"number"==typeof e&&eZ.MIN_VALUE<=e&&e<=eZ.MAX_VALUE}eZ.MIN_VALUE=0,eZ.MAX_VALUE=0x7fffffff,tO(eX,"is"),eZ.is=eX;var eJ=T||(T={});function eQ(e,t){return e===Number.MAX_VALUE&&(e=g.MAX_VALUE),t===Number.MAX_VALUE&&(t=g.MAX_VALUE),{line:e,character:t}}function e0(e){return eU.objectLiteral(e)&&eU.uinteger(e.line)&&eU.uinteger(e.character)}tO(eQ,"create"),eJ.create=eQ,tO(e0,"is"),eJ.is=e0;var e1=$||($={});function e2(e,t,r,n){if(eU.uinteger(e)&&eU.uinteger(t)&&eU.uinteger(r)&&eU.uinteger(n))return{start:T.create(e,t),end:T.create(r,n)};if(T.is(e)&&T.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)}function e3(e){return eU.objectLiteral(e)&&T.is(e.start)&&T.is(e.end)}tO(e2,"create"),e1.create=e2,tO(e3,"is"),e1.is=e3;var e9=v||(v={});function e4(e,t){return{uri:e,range:t}}function e5(e){return eU.objectLiteral(e)&&$.is(e.range)&&(eU.string(e.uri)||eU.undefined(e.uri))}tO(e4,"create"),e9.create=e4,tO(e5,"is"),e9.is=e5;var e7=R||(R={});function e8(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}}function e6(e){return eU.objectLiteral(e)&&$.is(e.targetRange)&&eU.string(e.targetUri)&&$.is(e.targetSelectionRange)&&($.is(e.originSelectionRange)||eU.undefined(e.originSelectionRange))}tO(e8,"create"),e7.create=e8,tO(e6,"is"),e7.is=e6;var te=E||(E={});function tt(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}}function tr(e){return eU.objectLiteral(e)&&eU.numberRange(e.red,0,1)&&eU.numberRange(e.green,0,1)&&eU.numberRange(e.blue,0,1)&&eU.numberRange(e.alpha,0,1)}tO(tt,"create"),te.create=tt,tO(tr,"is"),te.is=tr;var tn=A||(A={});function ti(e,t){return{range:e,color:t}}function ta(e){return eU.objectLiteral(e)&&$.is(e.range)&&E.is(e.color)}tO(ti,"create"),tn.create=ti,tO(ta,"is"),tn.is=ta;var ts=b||(b={});function to(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}}function tl(e){return eU.objectLiteral(e)&&eU.string(e.label)&&(eU.undefined(e.textEdit)||P.is(e))&&(eU.undefined(e.additionalTextEdits)||eU.typedArray(e.additionalTextEdits,P.is))}tO(to,"create"),ts.create=to,tO(tl,"is"),ts.is=tl,(e=C||(C={})).Comment="comment",e.Imports="imports",e.Region="region";var tu=S||(S={});function tc(e,t,r,n,i,a){let s={startLine:e,endLine:t};return eU.defined(r)&&(s.startCharacter=r),eU.defined(n)&&(s.endCharacter=n),eU.defined(i)&&(s.kind=i),eU.defined(a)&&(s.collapsedText=a),s}function tp(e){return eU.objectLiteral(e)&&eU.uinteger(e.startLine)&&eU.uinteger(e.startLine)&&(eU.undefined(e.startCharacter)||eU.uinteger(e.startCharacter))&&(eU.undefined(e.endCharacter)||eU.uinteger(e.endCharacter))&&(eU.undefined(e.kind)||eU.string(e.kind))}tO(tc,"create"),tu.create=tc,tO(tp,"is"),tu.is=tp;var tf=k||(k={});function td(e,t){return{location:e,message:t}}function tm(e){return eU.defined(e)&&v.is(e.location)&&eU.string(e.message)}tO(td,"create"),tf.create=td,tO(tm,"is"),tf.is=tm,(t=x||(x={})).Error=1,t.Warning=2,t.Information=3,t.Hint=4,(r=N||(N={})).Unnecessary=1,r.Deprecated=2;var th=I||(I={});function ty(e){return eU.objectLiteral(e)&&eU.string(e.href)}tO(ty,"is"),th.is=ty;var tg=_||(_={});function tT(e,t,r,n,i,a){let s={range:e,message:t};return eU.defined(r)&&(s.severity=r),eU.defined(n)&&(s.code=n),eU.defined(i)&&(s.source=i),eU.defined(a)&&(s.relatedInformation=a),s}function t$(e){var t;return eU.defined(e)&&$.is(e.range)&&eU.string(e.message)&&(eU.number(e.severity)||eU.undefined(e.severity))&&(eU.integer(e.code)||eU.string(e.code)||eU.undefined(e.code))&&(eU.undefined(e.codeDescription)||eU.string(null==(t=e.codeDescription)?void 0:t.href))&&(eU.string(e.source)||eU.undefined(e.source))&&(eU.undefined(e.relatedInformation)||eU.typedArray(e.relatedInformation,k.is))}tO(tT,"create"),tg.create=tT,tO(t$,"is"),tg.is=t$;var tv=w||(w={});function tR(e,t,...r){let n={title:e,command:t};return eU.defined(r)&&r.length>0&&(n.arguments=r),n}function tE(e){return eU.defined(e)&&eU.string(e.title)&&eU.string(e.command)}tO(tR,"create"),tv.create=tR,tO(tE,"is"),tv.is=tE,function(e){function t(e,t){return{range:e,newText:t}}function r(e,t){return{range:{start:e,end:e},newText:t}}function n(e){return{range:e,newText:""}}function i(e){return eU.objectLiteral(e)&&eU.string(e.newText)&&$.is(e.range)}tO(t,"replace"),e.replace=t,tO(r,"insert"),e.insert=r,tO(n,"del"),e.del=n,tO(i,"is"),e.is=i}(P||(P={}));var tA=O||(O={});function tb(e,t,r){let n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n}function tC(e){return eU.objectLiteral(e)&&eU.string(e.label)&&(eU.boolean(e.needsConfirmation)||void 0===e.needsConfirmation)&&(eU.string(e.description)||void 0===e.description)}tO(tb,"create"),tA.create=tb,tO(tC,"is"),tA.is=tC;var tS=D||(D={});function tk(e){return eU.string(e)}tO(tk,"is"),tS.is=tk,function(e){function t(e,t,r){return{range:e,newText:t,annotationId:r}}function r(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}}function n(e,t){return{range:e,newText:"",annotationId:t}}function i(e){return P.is(e)&&(O.is(e.annotationId)||D.is(e.annotationId))}tO(t,"replace"),e.replace=t,tO(r,"insert"),e.insert=r,tO(n,"del"),e.del=n,tO(i,"is"),e.is=i}(L||(L={}));var tx=M||(M={});function tN(e,t){return{textDocument:e,edits:t}}function tI(e){return eU.defined(e)&&V.is(e.textDocument)&&Array.isArray(e.edits)}tO(tN,"create"),tx.create=tN,tO(tI,"is"),tx.is=tI;var t_=j||(j={});function tw(e,t,r){let n={kind:"create",uri:e};return void 0!==t&&(void 0!==t.overwrite||void 0!==t.ignoreIfExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n}function tP(e){return e&&"create"===e.kind&&eU.string(e.uri)&&(void 0===e.options||(void 0===e.options.overwrite||eU.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||eU.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||D.is(e.annotationId))}tO(tw,"create"),t_.create=tw,tO(tP,"is"),t_.is=tP;var tD=F||(F={});function tL(e,t,r,n){let i={kind:"rename",oldUri:e,newUri:t};return void 0!==r&&(void 0!==r.overwrite||void 0!==r.ignoreIfExists)&&(i.options=r),void 0!==n&&(i.annotationId=n),i}function tM(e){return e&&"rename"===e.kind&&eU.string(e.oldUri)&&eU.string(e.newUri)&&(void 0===e.options||(void 0===e.options.overwrite||eU.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||eU.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||D.is(e.annotationId))}tO(tL,"create"),tD.create=tL,tO(tM,"is"),tD.is=tM;var tj=G||(G={});function tF(e,t,r){let n={kind:"delete",uri:e};return void 0!==t&&(void 0!==t.recursive||void 0!==t.ignoreIfNotExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n}function tG(e){return e&&"delete"===e.kind&&eU.string(e.uri)&&(void 0===e.options||(void 0===e.options.recursive||eU.boolean(e.options.recursive))&&(void 0===e.options.ignoreIfNotExists||eU.boolean(e.options.ignoreIfNotExists)))&&(void 0===e.annotationId||D.is(e.annotationId))}tO(tF,"create"),tj.create=tF,tO(tG,"is"),tj.is=tG;var tz=z||(z={});function tK(e){return e&&(void 0!==e.changes||void 0!==e.documentChanges)&&(void 0===e.documentChanges||e.documentChanges.every(e=>eU.string(e.kind)?j.is(e)||F.is(e)||G.is(e):M.is(e)))}tO(tK,"is"),tz.is=tK,K=class{static{tO(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,i;if(void 0===r?n=P.insert(e,t):D.is(r)?(i=r,n=L.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=L.insert(e,t,i)),this.edits.push(n),void 0!==i)return i}replace(e,t,r){let n,i;if(void 0===r?n=P.replace(e,t):D.is(r)?(i=r,n=L.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=L.replace(e,t,i)),this.edits.push(n),void 0!==i)return i}delete(e,t){let r,n;if(void 0===t?r=P.del(e):D.is(t)?(n=t,r=L.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=L.del(e,n)),this.edits.push(r),void 0!==n)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(void 0===e)throw Error("Text edit change is not configured to manage change annotations.")}},q=class{static{tO(this,"ChangeAnnotations")}constructor(e){this._annotations=void 0===e?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(D.is(e)?r=e:(r=this.nextId(),t=e),void 0!==this._annotations[r])throw Error(`Id ${r} is already in use.`);if(void 0===t)throw Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},U=class{static{tO(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),void 0!==e?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new q(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(e=>{if(M.is(e)){let t=new K(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}})):e.changes&&Object.keys(e.changes).forEach(t=>{let r=new K(e.changes[t]);this._textEditChanges[t]=r})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),void 0!==this._changeAnnotations&&(0===this._changeAnnotations.size?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(V.is(e)){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");let t={uri:e.uri,version:e.version},r=this._textEditChanges[t.uri];if(!r){let e=[];this._workspaceEdit.documentChanges.push({textDocument:t,edits:e}),r=new K(e,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}{if(this.initChanges(),void 0===this._workspaceEdit.changes)throw Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){let r=[];this._workspaceEdit.changes[e]=r,t=new K(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._changeAnnotations=new q,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,r){let n,i,a;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(O.is(t)||D.is(t)?n=t:r=t,void 0===n?i=j.create(e,r):(a=D.is(n)?n:this._changeAnnotations.manage(n),i=j.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}renameFile(e,t,r,n){let i,a,s;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(O.is(r)||D.is(r)?i=r:n=r,void 0===i?a=F.create(e,t,n):(s=D.is(i)?i:this._changeAnnotations.manage(i),a=F.create(e,t,n,s)),this._workspaceEdit.documentChanges.push(a),void 0!==s)return s}deleteFile(e,t,r){let n,i,a;if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw Error("Workspace edit is not configured for document changes.");if(O.is(t)||D.is(t)?n=t:r=t,void 0===n?i=G.create(e,r):(a=D.is(n)?n:this._changeAnnotations.manage(n),i=G.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}};var tq=B||(B={});function tU(e){return{uri:e}}function tB(e){return eU.defined(e)&&eU.string(e.uri)}tO(tU,"create"),tq.create=tU,tO(tB,"is"),tq.is=tB;var tW=W||(W={});function tV(e,t){return{uri:e,version:t}}function tH(e){return eU.defined(e)&&eU.string(e.uri)&&eU.integer(e.version)}tO(tV,"create"),tW.create=tV,tO(tH,"is"),tW.is=tH;var tY=V||(V={});function tZ(e,t){return{uri:e,version:t}}function tX(e){return eU.defined(e)&&eU.string(e.uri)&&(null===e.version||eU.integer(e.version))}tO(tZ,"create"),tY.create=tZ,tO(tX,"is"),tY.is=tX;var tJ=H||(H={});function tQ(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}}function t0(e){return eU.defined(e)&&eU.string(e.uri)&&eU.string(e.languageId)&&eU.integer(e.version)&&eU.string(e.text)}tO(tQ,"create"),tJ.create=tQ,tO(t0,"is"),tJ.is=t0;var t1=Y||(Y={});function t2(e){return e===t1.PlainText||e===t1.Markdown}t1.PlainText="plaintext",t1.Markdown="markdown",tO(t2,"is"),t1.is=t2;var t3=Z||(Z={});function t9(e){return eU.objectLiteral(e)&&Y.is(e.kind)&&eU.string(e.value)}tO(t9,"is"),t3.is=t9,(n=X||(X={})).Text=1,n.Method=2,n.Function=3,n.Constructor=4,n.Field=5,n.Variable=6,n.Class=7,n.Interface=8,n.Module=9,n.Property=10,n.Unit=11,n.Value=12,n.Enum=13,n.Keyword=14,n.Snippet=15,n.Color=16,n.File=17,n.Reference=18,n.Folder=19,n.EnumMember=20,n.Constant=21,n.Struct=22,n.Event=23,n.Operator=24,n.TypeParameter=25,(i=J||(J={})).PlainText=1,i.Snippet=2,(Q||(Q={})).Deprecated=1;var t4=ee||(ee={});function t5(e,t,r){return{newText:e,insert:t,replace:r}}function t7(e){return e&&eU.string(e.newText)&&$.is(e.insert)&&$.is(e.replace)}tO(t5,"create"),t4.create=t5,tO(t7,"is"),t4.is=t7,(a=et||(et={})).asIs=1,a.adjustIndentation=2;var t8=er||(er={});function t6(e){return e&&(eU.string(e.detail)||void 0===e.detail)&&(eU.string(e.description)||void 0===e.description)}tO(t6,"is"),t8.is=t6;var re=en||(en={});function rt(e){return{label:e}}tO(rt,"create"),re.create=rt;var rr=ei||(ei={});function rn(e,t){return{items:e||[],isIncomplete:!!t}}tO(rn,"create"),rr.create=rn;var ri=ea||(ea={});function ra(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}function rs(e){return eU.string(e)||eU.objectLiteral(e)&&eU.string(e.language)&&eU.string(e.value)}tO(ra,"fromPlainText"),ri.fromPlainText=ra,tO(rs,"is"),ri.is=rs;var ro=es||(es={});function rl(e){return!!e&&eU.objectLiteral(e)&&(Z.is(e.contents)||ea.is(e.contents)||eU.typedArray(e.contents,ea.is))&&(void 0===e.range||$.is(e.range))}tO(rl,"is"),ro.is=rl;var ru=eo||(eo={});function rc(e,t){return t?{label:e,documentation:t}:{label:e}}tO(rc,"create"),ru.create=rc;var rp=el||(el={});function rf(e,t,...r){let n={label:e};return eU.defined(t)&&(n.documentation=t),eU.defined(r)?n.parameters=r:n.parameters=[],n}tO(rf,"create"),rp.create=rf,(s=eu||(eu={})).Text=1,s.Read=2,s.Write=3;var rd=ec||(ec={});function rm(e,t){let r={range:e};return eU.number(t)&&(r.kind=t),r}tO(rm,"create"),rd.create=rm,(o=ep||(ep={})).File=1,o.Module=2,o.Namespace=3,o.Package=4,o.Class=5,o.Method=6,o.Property=7,o.Field=8,o.Constructor=9,o.Enum=10,o.Interface=11,o.Function=12,o.Variable=13,o.Constant=14,o.String=15,o.Number=16,o.Boolean=17,o.Array=18,o.Object=19,o.Key=20,o.Null=21,o.EnumMember=22,o.Struct=23,o.Event=24,o.Operator=25,o.TypeParameter=26,(ef||(ef={})).Deprecated=1;var rh=ed||(ed={});function ry(e,t,r,n,i){let a={name:e,kind:t,location:{uri:n,range:r}};return i&&(a.containerName=i),a}tO(ry,"create"),rh.create=ry;var rg=em||(em={});function rT(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}}tO(rT,"create"),rg.create=rT;var r$=eh||(eh={});function rv(e,t,r,n,i,a){let s={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==a&&(s.children=a),s}function rR(e){return e&&eU.string(e.name)&&eU.number(e.kind)&&$.is(e.range)&&$.is(e.selectionRange)&&(void 0===e.detail||eU.string(e.detail))&&(void 0===e.deprecated||eU.boolean(e.deprecated))&&(void 0===e.children||Array.isArray(e.children))&&(void 0===e.tags||Array.isArray(e.tags))}tO(rv,"create"),r$.create=rv,tO(rR,"is"),r$.is=rR,(l=ey||(ey={})).Empty="",l.QuickFix="quickfix",l.Refactor="refactor",l.RefactorExtract="refactor.extract",l.RefactorInline="refactor.inline",l.RefactorRewrite="refactor.rewrite",l.Source="source",l.SourceOrganizeImports="source.organizeImports",l.SourceFixAll="source.fixAll",(u=eg||(eg={})).Invoked=1,u.Automatic=2;var rE=eT||(eT={});function rA(e,t,r){let n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n}function rb(e){return eU.defined(e)&&eU.typedArray(e.diagnostics,_.is)&&(void 0===e.only||eU.typedArray(e.only,eU.string))&&(void 0===e.triggerKind||e.triggerKind===eg.Invoked||e.triggerKind===eg.Automatic)}tO(rA,"create"),rE.create=rA,tO(rb,"is"),rE.is=rb;var rC=e$||(e$={});function rS(e,t,r){let n={title:e},i=!0;return"string"==typeof t?(i=!1,n.kind=t):w.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n}function rk(e){return e&&eU.string(e.title)&&(void 0===e.diagnostics||eU.typedArray(e.diagnostics,_.is))&&(void 0===e.kind||eU.string(e.kind))&&(void 0!==e.edit||void 0!==e.command)&&(void 0===e.command||w.is(e.command))&&(void 0===e.isPreferred||eU.boolean(e.isPreferred))&&(void 0===e.edit||z.is(e.edit))}tO(rS,"create"),rC.create=rS,tO(rk,"is"),rC.is=rk;var rx=ev||(ev={});function rN(e,t){let r={range:e};return eU.defined(t)&&(r.data=t),r}function rI(e){return eU.defined(e)&&$.is(e.range)&&(eU.undefined(e.command)||w.is(e.command))}tO(rN,"create"),rx.create=rN,tO(rI,"is"),rx.is=rI;var r_=eR||(eR={});function rw(e,t){return{tabSize:e,insertSpaces:t}}function rP(e){return eU.defined(e)&&eU.uinteger(e.tabSize)&&eU.boolean(e.insertSpaces)}tO(rw,"create"),r_.create=rw,tO(rP,"is"),r_.is=rP;var rO=eE||(eE={});function rD(e,t,r){return{range:e,target:t,data:r}}function rL(e){return eU.defined(e)&&$.is(e.range)&&(eU.undefined(e.target)||eU.string(e.target))}tO(rD,"create"),rO.create=rD,tO(rL,"is"),rO.is=rL;var rM=eA||(eA={});function rj(e,t){return{range:e,parent:t}}function rF(e){return eU.objectLiteral(e)&&$.is(e.range)&&(void 0===e.parent||rM.is(e.parent))}tO(rj,"create"),rM.create=rj,tO(rF,"is"),rM.is=rF,(c=eb||(eb={})).namespace="namespace",c.type="type",c.class="class",c.enum="enum",c.interface="interface",c.struct="struct",c.typeParameter="typeParameter",c.parameter="parameter",c.variable="variable",c.property="property",c.enumMember="enumMember",c.event="event",c.function="function",c.method="method",c.macro="macro",c.keyword="keyword",c.modifier="modifier",c.comment="comment",c.string="string",c.number="number",c.regexp="regexp",c.operator="operator",c.decorator="decorator",(p=eC||(eC={})).declaration="declaration",p.definition="definition",p.readonly="readonly",p.static="static",p.deprecated="deprecated",p.abstract="abstract",p.async="async",p.modification="modification",p.documentation="documentation",p.defaultLibrary="defaultLibrary";var rG=eS||(eS={});function rz(e){return eU.objectLiteral(e)&&(void 0===e.resultId||"string"==typeof e.resultId)&&Array.isArray(e.data)&&(0===e.data.length||"number"==typeof e.data[0])}tO(rz,"is"),rG.is=rz;var rK=ek||(ek={});function rq(e,t){return{range:e,text:t}}function rU(e){return null!=e&&$.is(e.range)&&eU.string(e.text)}tO(rq,"create"),rK.create=rq,tO(rU,"is"),rK.is=rU;var rB=ex||(ex={});function rW(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}}function rV(e){return null!=e&&$.is(e.range)&&eU.boolean(e.caseSensitiveLookup)&&(eU.string(e.variableName)||void 0===e.variableName)}tO(rW,"create"),rB.create=rW,tO(rV,"is"),rB.is=rV;var rH=eN||(eN={});function rY(e,t){return{range:e,expression:t}}function rZ(e){return null!=e&&$.is(e.range)&&(eU.string(e.expression)||void 0===e.expression)}tO(rY,"create"),rH.create=rY,tO(rZ,"is"),rH.is=rZ;var rX=eI||(eI={});function rJ(e,t){return{frameId:e,stoppedLocation:t}}function rQ(e){return eU.defined(e)&&$.is(e.stoppedLocation)}tO(rJ,"create"),rX.create=rJ,tO(rQ,"is"),rX.is=rQ;var r0=e_||(e_={});function r1(e){return 1===e||2===e}r0.Type=1,r0.Parameter=2,tO(r1,"is"),r0.is=r1;var r2=ew||(ew={});function r3(e){return{value:e}}function r9(e){return eU.objectLiteral(e)&&(void 0===e.tooltip||eU.string(e.tooltip)||Z.is(e.tooltip))&&(void 0===e.location||v.is(e.location))&&(void 0===e.command||w.is(e.command))}tO(r3,"create"),r2.create=r3,tO(r9,"is"),r2.is=r9;var r4=eP||(eP={});function r5(e,t,r){let n={position:e,label:t};return void 0!==r&&(n.kind=r),n}function r7(e){return eU.objectLiteral(e)&&T.is(e.position)&&(eU.string(e.label)||eU.typedArray(e.label,ew.is))&&(void 0===e.kind||e_.is(e.kind))&&void 0===e.textEdits||eU.typedArray(e.textEdits,P.is)&&(void 0===e.tooltip||eU.string(e.tooltip)||Z.is(e.tooltip))&&(void 0===e.paddingLeft||eU.boolean(e.paddingLeft))&&(void 0===e.paddingRight||eU.boolean(e.paddingRight))}tO(r5,"create"),r4.create=r5,tO(r7,"is"),r4.is=r7;var r8=eO||(eO={});function r6(e){return{kind:"snippet",value:e}}tO(r6,"createSnippet"),r8.createSnippet=r6;var ne=eD||(eD={});function nt(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}}tO(nt,"create"),ne.create=nt;var nr=eL||(eL={});function nn(e){return{items:e}}tO(nn,"create"),nr.create=nn,(f=eM||(eM={})).Invoked=0,f.Automatic=1;var ni=ej||(ej={});function na(e,t){return{range:e,text:t}}tO(na,"create"),ni.create=na;var ns=eF||(eF={});function no(e,t){return{triggerKind:e,selectedCompletionInfo:t}}tO(no,"create"),ns.create=no;var nl=eG||(eG={});function nu(e){return eU.objectLiteral(e)&&h.is(e.uri)&&eU.string(e.name)}tO(nu,"is"),nl.is=nu,ez=["\n","\r\n","\r"],function(e){function t(e,t,r,n){return new eq(e,t,r,n)}function r(e){return!!(eU.defined(e)&&eU.string(e.uri)&&(eU.undefined(e.languageId)||eU.string(e.languageId))&&eU.uinteger(e.lineCount)&&eU.func(e.getText)&&eU.func(e.positionAt)&&eU.func(e.offsetAt))}function n(e,t){let r=e.getText(),n=i(t,(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),a=r.length;for(let t=n.length-1;t>=0;t--){let i=n[t],s=e.offsetAt(i.range.start),o=e.offsetAt(i.range.end);if(o<=a)r=r.substring(0,s)+i.newText+r.substring(o,r.length);else throw Error("Overlapping edit");a=s}return r}function i(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),a=e.slice(r);i(n,t),i(a,t);let s=0,o=0,l=0;for(;s<n.length&&o<a.length;)0>=t(n[s],a[o])?e[l++]=n[s++]:e[l++]=a[o++];for(;s<n.length;)e[l++]=n[s++];for(;o<a.length;)e[l++]=a[o++];return e}tO(t,"create"),e.create=t,tO(r,"is"),e.is=r,tO(n,"applyEdits"),e.applyEdits=n,tO(i,"mergeSort")}(eK||(eK={})),eq=class{static{tO(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return T.create(0,e);for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return T.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}},function(e){let t=Object.prototype.toString;function r(e){return void 0!==e}function n(e){return void 0===e}function i(e){return!0===e||!1===e}function a(e){return"[object String]"===t.call(e)}function s(e){return"[object Number]"===t.call(e)}function o(e,r,n){return"[object Number]"===t.call(e)&&r<=e&&e<=n}function l(e){return"[object Number]"===t.call(e)&&-0x80000000<=e&&e<=0x7fffffff}function u(e){return"[object Number]"===t.call(e)&&0<=e&&e<=0x7fffffff}function c(e){return"[object Function]"===t.call(e)}function p(e){return null!==e&&"object"==typeof e}function f(e,t){return Array.isArray(e)&&e.every(t)}tO(r,"defined"),e.defined=r,tO(n,"undefined"),e.undefined=n,tO(i,"boolean"),e.boolean=i,tO(a,"string"),e.string=a,tO(s,"number"),e.number=s,tO(o,"numberRange"),e.numberRange=o,tO(l,"integer"),e.integer=l,tO(u,"uinteger"),e.uinteger=u,tO(c,"func"),e.func=c,tO(p,"objectLiteral"),e.objectLiteral=p,tO(f,"typedArray"),e.typedArray=f}(eU||(eU={}))}},function(){return t&&(r=(0,t[t_(t)[0]])(t=0)),r}),tq=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(e){function t(){if(void 0===r)throw Error("No runtime abstraction layer installed");return r}Object.defineProperty(e,"__esModule",{value:!0}),tO(t,"RAL");var r,n=t||(t={});function i(e){if(void 0===e)throw Error("No runtime abstraction layer provided");r=e}tO(i,"install"),n.install=i,e.default=t}}),tU=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}Object.defineProperty(e,"__esModule",{value:!0}),e.stringArray=e.array=e.func=e.error=e.number=e.string=e.boolean=void 0,tO(t,"boolean"),e.boolean=t,tO(r,"string"),e.string=r,tO(n,"number"),e.number=n,tO(i,"error"),e.error=i,tO(a,"func"),e.func=a,tO(s,"array"),e.array=s,tO(o,"stringArray"),e.stringArray=o}}),tB=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(e){let t;Object.defineProperty(e,"__esModule",{value:!0}),e.Emitter=e.Event=void 0;var r,n,i=tq();r=n||(e.Event=n={}),t={dispose(){}},r.None=function(){return t};var a=class{static{tO(this,"CallbackList")}add(e,t=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(r)&&r.push({dispose:tO(()=>this.remove(e,t),"dispose")})}remove(e,t=null){if(!this._callbacks)return;let r=!1;for(let n=0,i=this._callbacks.length;n<i;n++)if(this._callbacks[n]===e)if(this._contexts[n]===t){this._callbacks.splice(n,1),this._contexts.splice(n,1);return}else r=!0;if(r)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let t=[],r=this._callbacks.slice(0),n=this._contexts.slice(0);for(let a=0,s=r.length;a<s;a++)try{t.push(r[a].apply(n[a],e))}catch(e){(0,i.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}},s=class e{static{tO(this,"Emitter")}constructor(e){this._options=e}get event(){return this._event||(this._event=(t,r,n)=>{this._callbacks||(this._callbacks=new a),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,r);let i={dispose:tO(()=>{this._callbacks&&(this._callbacks.remove(t,r),i.dispose=e._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};e.Emitter=s,s._noop=function(){}}}),tW=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CancellationTokenSource=e.CancellationToken=void 0;var t,r=tq(),n=tU(),i=tB(),a=t||(e.CancellationToken=t={});function s(e){return e&&(e===a.None||e===a.Cancelled||n.boolean(e.isCancellationRequested)&&!!e.onCancellationRequested)}a.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:i.Event.None}),a.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:i.Event.None}),tO(s,"is"),a.is=s;var o=Object.freeze(function(e,t){let n=(0,r.default)().timer.setTimeout(e.bind(t),0);return{dispose(){n.dispose()}}}),l=class{static{tO(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?o:(this._emitter||(this._emitter=new i.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}};e.CancellationTokenSource=class{static{tO(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new l),this._token}cancel(){this._token?this._token.cancel():this._token=t.Cancelled}dispose(){this._token?this._token instanceof l&&this._token.dispose():this._token=t.None}}}}),tV=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Message=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType=e.RequestType0=e.AbstractMessageSignature=e.ParameterStructures=e.ResponseError=e.ErrorCodes=void 0;var t,r,n,i=tU();(t=r||(e.ErrorCodes=r={})).ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3,e.ResponseError=class e extends Error{static{tO(this,"ResponseError")}constructor(t,n,a){super(n),this.code=i.number(t)?t:r.UnknownErrorCode,this.data=a,Object.setPrototypeOf(this,e.prototype)}toJson(){let e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data),e}};var a=class e{static{tO(this,"ParameterStructures")}constructor(e){this.kind=e}static is(t){return t===e.auto||t===e.byName||t===e.byPosition}toString(){return this.kind}};e.ParameterStructures=a,a.auto=new a("auto"),a.byPosition=new a("byPosition"),a.byName=new a("byName");var s=class{static{tO(this,"AbstractMessageSignature")}constructor(e,t){this.method=e,this.numberOfParams=t}get parameterStructures(){return a.auto}};e.AbstractMessageSignature=s,e.RequestType0=class extends s{static{tO(this,"RequestType0")}constructor(e){super(e,0)}},e.RequestType=class extends s{static{tO(this,"RequestType")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType1=class extends s{static{tO(this,"RequestType1")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType2=class extends s{static{tO(this,"RequestType2")}constructor(e){super(e,2)}},e.RequestType3=class extends s{static{tO(this,"RequestType3")}constructor(e){super(e,3)}},e.RequestType4=class extends s{static{tO(this,"RequestType4")}constructor(e){super(e,4)}},e.RequestType5=class extends s{static{tO(this,"RequestType5")}constructor(e){super(e,5)}},e.RequestType6=class extends s{static{tO(this,"RequestType6")}constructor(e){super(e,6)}},e.RequestType7=class extends s{static{tO(this,"RequestType7")}constructor(e){super(e,7)}},e.RequestType8=class extends s{static{tO(this,"RequestType8")}constructor(e){super(e,8)}},e.RequestType9=class extends s{static{tO(this,"RequestType9")}constructor(e){super(e,9)}},e.NotificationType=class extends s{static{tO(this,"NotificationType")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType0=class extends s{static{tO(this,"NotificationType0")}constructor(e){super(e,0)}},e.NotificationType1=class extends s{static{tO(this,"NotificationType1")}constructor(e,t=a.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType2=class extends s{static{tO(this,"NotificationType2")}constructor(e){super(e,2)}},e.NotificationType3=class extends s{static{tO(this,"NotificationType3")}constructor(e){super(e,3)}},e.NotificationType4=class extends s{static{tO(this,"NotificationType4")}constructor(e){super(e,4)}},e.NotificationType5=class extends s{static{tO(this,"NotificationType5")}constructor(e){super(e,5)}},e.NotificationType6=class extends s{static{tO(this,"NotificationType6")}constructor(e){super(e,6)}},e.NotificationType7=class extends s{static{tO(this,"NotificationType7")}constructor(e){super(e,7)}},e.NotificationType8=class extends s{static{tO(this,"NotificationType8")}constructor(e){super(e,8)}},e.NotificationType9=class extends s{static{tO(this,"NotificationType9")}constructor(e){super(e,9)}},function(e){function t(e){return e&&i.string(e.method)&&(i.string(e.id)||i.number(e.id))}function r(e){return e&&i.string(e.method)&&void 0===e.id}function n(e){return e&&(void 0!==e.result||!!e.error)&&(i.string(e.id)||i.number(e.id)||null===e.id)}tO(t,"isRequest"),e.isRequest=t,tO(r,"isNotification"),e.isNotification=r,tO(n,"isResponse"),e.isResponse=n}(n||(e.Message=n={}))}}),tH=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LRUCache=e.LinkedMap=e.Touch=void 0,(t=n||(e.Touch=n={})).None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last;var t,r,n,i=class{static{tO(this,"LinkedMap")}constructor(){this[r]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=n.None){let r=this._map.get(e);if(r)return t!==n.None&&this.touch(r,t),r.value}set(e,t,r=n.None){let i=this._map.get(e);if(i)i.value=t,r!==n.None&&this.touch(i,r);else{switch(i={key:e,value:t,next:void 0,previous:void 0},r){case n.None:this.addItemLast(i);break;case n.First:this.addItemFirst(i);break;case n.Last:default:this.addItemLast(i)}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){let r=this._state,n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==r)throw Error("LinkedMap got modified during iteration.");n=n.next}}keys(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tO(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:t.key,done:!1};return t=t.next,e}},"next")};return r}values(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tO(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:t.value,done:!1};return t=t.next,e}},"next")};return r}entries(){let e=this._state,t=this._head,r={[Symbol.iterator]:()=>r,next:tO(()=>{if(this._state!==e)throw Error("LinkedMap got modified during iteration.");if(!t)return{value:void 0,done:!0};{let e={value:[t.key,t.value],done:!1};return t=t.next,e}},"next")};return r}[(r=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.next,r--;this._head=t,this._size=r,t&&(t.previous=void 0),this._state++}addItemFirst(e){if(this._head||this._tail)if(this._head)e.next=this._head,this._head.previous=e;else throw Error("Invalid list");else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail)if(this._tail)e.previous=this._tail,this._tail.next=e;else throw Error("Invalid list");else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let t=e.next,r=e.previous;if(!t||!r)throw Error("Invalid list");t.previous=r,r.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw Error("Invalid list");if(t===n.First||t===n.Last){if(t===n.First){if(e===this._head)return;let t=e.next,r=e.previous;e===this._tail?(r.next=void 0,this._tail=r):(t.previous=r,r.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===n.Last){if(e===this._tail)return;let t=e.next,r=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=r,r.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((t,r)=>{e.push([r,t])}),e}fromJSON(e){for(let[t,r]of(this.clear(),e))this.set(t,r)}};e.LinkedMap=i,e.LRUCache=class extends i{static{tO(this,"LRUCache")}constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,t=n.AsNew){return super.get(e,t)}peek(e){return super.get(e,n.None)}set(e,t){return super.set(e,t,n.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}}}),tY=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Disposable=void 0;var t,r=t||(e.Disposable=t={});function n(e){return{dispose:e}}tO(n,"create"),r.create=n}}),tZ=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=void 0;var t,r,n=tW();(t=r||(r={})).Continue=0,t.Cancelled=1,e.SharedArraySenderStrategy=class{static{tO(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(e){if(null===e.id)return;let t=new SharedArrayBuffer(4);new Int32Array(t,0,1)[0]=r.Continue,this.buffers.set(e.id,t),e.$cancellationData=t}async sendCancellation(e,t){let n=this.buffers.get(t);if(void 0===n)return;let i=new Int32Array(n,0,1);Atomics.store(i,0,r.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};var i=class{static{tO(this,"SharedArrayBufferCancellationToken")}constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===r.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},a=class{static{tO(this,"SharedArrayBufferCancellationTokenSource")}constructor(e){this.token=new i(e)}cancel(){}dispose(){}};e.SharedArrayReceiverStrategy=class{static{tO(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(e){let t=e.$cancellationData;return void 0===t?new n.CancellationTokenSource:new a(t)}}}}),tX=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Semaphore=void 0;var t=tq();e.Semaphore=class{static{tO(this,"Semaphore")}constructor(e=1){if(e<=0)throw Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((t,r)=>{this._waiting.push({thunk:e,resolve:t,reject:r}),this.runNext()})}get active(){return this._active}runNext(){0!==this._waiting.length&&this._active!==this._capacity&&(0,t.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(0===this._waiting.length||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let t=e.thunk();t instanceof Promise?t.then(t=>{this._active--,e.resolve(t),this.runNext()},t=>{this._active--,e.reject(t),this.runNext()}):(this._active--,e.resolve(t),this.runNext())}catch(t){this._active--,e.reject(t),this.runNext()}}}}}),tJ=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=void 0;var t,r,n=tq(),i=tU(),a=tB(),s=tX(),o=t||(e.MessageReader=t={});function l(e){return e&&i.func(e.listen)&&i.func(e.dispose)&&i.func(e.onError)&&i.func(e.onClose)&&i.func(e.onPartialMessage)}tO(l,"is"),o.is=l;var u=class{static{tO(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new a.Emitter,this.closeEmitter=new a.Emitter,this.partialMessageEmitter=new a.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:Error(`Reader received error. Reason: ${i.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageReader=u;var c=r||(r={});function p(e){let t,r,i,a=new Map,s=new Map;if(void 0===e||"string"==typeof e)t=e??"utf-8";else{if(t=e.charset??"utf-8",void 0!==e.contentDecoder&&(r=e.contentDecoder,a.set(r.name,r)),void 0!==e.contentDecoders)for(let t of e.contentDecoders)a.set(t.name,t);if(void 0!==e.contentTypeDecoder&&(i=e.contentTypeDecoder,s.set(i.name,i)),void 0!==e.contentTypeDecoders)for(let t of e.contentTypeDecoders)s.set(t.name,t)}return void 0===i&&(i=(0,n.default)().applicationJson.decoder,s.set(i.name,i)),{charset:t,contentDecoder:r,contentDecoders:a,contentTypeDecoder:i,contentTypeDecoders:s}}tO(p,"fromOptions"),c.fromOptions=p,e.ReadableStreamMessageReader=class extends u{static{tO(this,"ReadableStreamMessageReader")}constructor(e,t){super(),this.readable=e,this.options=r.fromOptions(t),this.buffer=(0,n.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new s.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let t=this.readable.onData(e=>{this.onData(e)});return this.readable.onError(e=>this.fireError(e)),this.readable.onClose(()=>this.fireClose()),t}onData(e){try{for(this.buffer.append(e);;){if(-1===this.nextMessageLength){let e=this.buffer.tryReadHeaders(!0);if(!e)return;let t=e.get("content-length");if(!t)return void this.fireError(Error(`Header must provide a Content-Length property.
2
+ ${JSON.stringify(Object.fromEntries(e))}`));let r=parseInt(t);if(isNaN(r))return void this.fireError(Error(`Content-Length value must be a number. Got ${t}`));this.nextMessageLength=r}let e=this.buffer.tryReadBody(this.nextMessageLength);if(void 0===e)return void this.setPartialMessageTimer();this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let t=void 0!==this.options.contentDecoder?await this.options.contentDecoder.decode(e):e,r=await this.options.contentTypeDecoder.decode(t,this.options);this.callback(r)}).catch(e=>{this.fireError(e)})}}catch(e){this.fireError(e)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),this._partialMessageTimeout<=0||(this.partialMessageTimer=(0,n.default)().timer.setTimeout((e,t)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:t}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}}}}),tQ=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=void 0;var t,r,n=tq(),i=tU(),a=tX(),s=tB(),o=t||(e.MessageWriter=t={});function l(e){return e&&i.func(e.dispose)&&i.func(e.onClose)&&i.func(e.onError)&&i.func(e.write)}tO(l,"is"),o.is=l;var u=class{static{tO(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new s.Emitter,this.closeEmitter=new s.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,t,r){this.errorEmitter.fire([this.asError(e),t,r])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:Error(`Writer received error. Reason: ${i.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageWriter=u;var c=r||(r={});function p(e){return void 0===e||"string"==typeof e?{charset:e??"utf-8",contentTypeEncoder:(0,n.default)().applicationJson.encoder}:{charset:e.charset??"utf-8",contentEncoder:e.contentEncoder,contentTypeEncoder:e.contentTypeEncoder??(0,n.default)().applicationJson.encoder}}tO(p,"fromOptions"),c.fromOptions=p,e.WriteableStreamMessageWriter=class extends u{static{tO(this,"WriteableStreamMessageWriter")}constructor(e,t){super(),this.writable=e,this.options=r.fromOptions(t),this.errorCount=0,this.writeSemaphore=new a.Semaphore(1),this.writable.onError(e=>this.fireError(e)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(e=>void 0!==this.options.contentEncoder?this.options.contentEncoder.encode(e):e).then(t=>{let r=[];return r.push("Content-Length: ",t.byteLength.toString(),"\r\n"),r.push("\r\n"),this.doWrite(e,r,t)},e=>{throw this.fireError(e),e}))}async doWrite(e,t,r){try{return await this.writable.write(t.join(""),"ascii"),this.writable.write(r)}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){this.writable.end()}}}}),t0=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMessageBuffer=void 0,e.AbstractMessageBuffer=class{static{tO(this,"AbstractMessageBuffer")}constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let t="string"==typeof e?this.fromString(e,this._encoding):e;this._chunks.push(t),this._totalLength+=t.byteLength}tryReadHeaders(e=!1){if(0===this._chunks.length)return;let t=0,r=0,n=0,i=0;e:for(;r<this._chunks.length;){let e=this._chunks[r];for(n=0;n<e.length;){switch(e[n]){case 13:switch(t){case 0:t=1;break;case 2:t=3;break;default:t=0}break;case 10:switch(t){case 1:t=2;break;case 3:t=4,n++;break e;default:t=0}break;default:t=0}n++}i+=e.byteLength,r++}if(4!==t)return;let a=this._read(i+n),s=new Map,o=this.toString(a,"ascii").split("\r\n");if(o.length<2)return s;for(let t=0;t<o.length-2;t++){let r=o[t],n=r.indexOf(":");if(-1===n)throw Error(`Message header must separate key and value using ':'
3
+ ${r}`);let i=r.substr(0,n),a=r.substr(n+1).trim();s.set(e?i.toLowerCase():i,a)}return s}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(0===e)return this.emptyBuffer();if(e>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let t=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(t)}if(this._chunks[0].byteLength>e){let t=this._chunks[0],r=this.asNative(t,e);return this._chunks[0]=t.slice(e),this._totalLength-=e,r}let t=this.allocNative(e),r=0;for(;e>0;){let n=this._chunks[0];if(n.byteLength>e){let i=n.slice(0,e);t.set(i,r),r+=e,this._chunks[0]=n.slice(e),this._totalLength-=e,e-=e}else t.set(n,r),r+=n.byteLength,this._chunks.shift(),this._totalLength-=n.byteLength,e-=n.byteLength}return t}}}}),t1=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createMessageConnection=e.ConnectionOptions=e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.ConnectionStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.Trace=e.NullLogger=e.ProgressType=e.ProgressToken=void 0;var t,r,n,i,a,s,o,l,u,c,p,f,d,m,h,y,g,T,$,v,R,E,A,b,C=tq(),S=tU(),k=tV(),x=tH(),N=tB(),I=tW();(s||(s={})).type=new k.NotificationType("$/cancelRequest");var _=o||(e.ProgressToken=o={});function w(e){return"string"==typeof e||"number"==typeof e}tO(w,"is"),_.is=w,(l||(l={})).type=new k.NotificationType("$/progress"),e.ProgressType=class{static{tO(this,"ProgressType")}};var P=u||(u={});function O(e){return S.func(e)}tO(O,"is"),P.is=O,e.NullLogger=Object.freeze({error:tO(()=>{},"error"),warn:tO(()=>{},"warn"),info:tO(()=>{},"info"),log:tO(()=>{},"log")}),(t=c||(e.Trace=c={}))[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose",(r=p||(e.TraceValues=p={})).Off="off",r.Messages="messages",r.Compact="compact",r.Verbose="verbose";var D=c||(e.Trace=c={});function L(e){if(!S.string(e))return D.Off;switch(e=e.toLowerCase()){case"off":default:return D.Off;case"messages":return D.Messages;case"compact":return D.Compact;case"verbose":return D.Verbose}}function M(e){switch(e){case D.Off:return"off";case D.Messages:return"messages";case D.Compact:return"compact";case D.Verbose:return"verbose";default:return"off"}}tO(L,"fromString"),D.fromString=L,tO(M,"toString"),D.toString=M,(n=f||(e.TraceFormat=f={})).Text="text",n.JSON="json";var j=f||(e.TraceFormat=f={});function F(e){return S.string(e)&&"json"===(e=e.toLowerCase())?j.JSON:j.Text}tO(F,"fromString"),j.fromString=F,(d||(e.SetTraceNotification=d={})).type=new k.NotificationType("$/setTrace"),(m||(e.LogTraceNotification=m={})).type=new k.NotificationType("$/logTrace"),(i=h||(e.ConnectionErrors=h={}))[i.Closed=1]="Closed",i[i.Disposed=2]="Disposed",i[i.AlreadyListening=3]="AlreadyListening";var G=class e extends Error{static{tO(this,"ConnectionError")}constructor(t,r){super(r),this.code=t,Object.setPrototypeOf(this,e.prototype)}};e.ConnectionError=G;var z=y||(e.ConnectionStrategy=y={});function K(e){return e&&S.func(e.cancelUndispatched)}tO(K,"is"),z.is=K;var q=g||(e.IdCancellationReceiverStrategy=g={});function U(e){return e&&(void 0===e.kind||"id"===e.kind)&&S.func(e.createCancellationTokenSource)&&(void 0===e.dispose||S.func(e.dispose))}tO(U,"is"),q.is=U;var B=T||(e.RequestCancellationReceiverStrategy=T={});function W(e){return e&&"request"===e.kind&&S.func(e.createCancellationTokenSource)&&(void 0===e.dispose||S.func(e.dispose))}tO(W,"is"),B.is=W;var V=$||(e.CancellationReceiverStrategy=$={});function H(e){return g.is(e)||T.is(e)}V.Message=Object.freeze({createCancellationTokenSource:e=>new I.CancellationTokenSource}),tO(H,"is"),V.is=H;var Y=v||(e.CancellationSenderStrategy=v={});function Z(e){return e&&S.func(e.sendCancellation)&&S.func(e.cleanup)}Y.Message=Object.freeze({sendCancellation:(e,t)=>e.sendNotification(s.type,{id:t}),cleanup(e){}}),tO(Z,"is"),Y.is=Z;var X=R||(e.CancellationStrategy=R={});function J(e){return e&&$.is(e.receiver)&&v.is(e.sender)}X.Message=Object.freeze({receiver:$.Message,sender:v.Message}),tO(J,"is"),X.is=J;var Q=E||(e.MessageStrategy=E={});function ee(e){return e&&S.func(e.handleMessage)}tO(ee,"is"),Q.is=ee;var et=A||(e.ConnectionOptions=A={});function er(e){return e&&(R.is(e.cancellationStrategy)||y.is(e.connectionStrategy)||E.is(e.messageStrategy))}function en(t,r,n,i){let a,p,y,T,$=void 0!==n?n:e.NullLogger,v=0,A=0,_=0,w=new Map,P=new Map,O=new Map,D=new x.LinkedMap,L=new Map,M=new Set,j=new Map,F=c.Off,z=f.Text,K=b.New,q=new N.Emitter,U=new N.Emitter,B=new N.Emitter,W=new N.Emitter,V=new N.Emitter,H=i&&i.cancellationStrategy?i.cancellationStrategy:R.Message;function Y(e){if(null===e)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+e.toString()}function Z(e){return null===e?"res-unknown-"+(++_).toString():"res-"+e.toString()}function X(){return"not-"+(++A).toString()}function J(e,t){k.Message.isRequest(t)?e.set(Y(t.id),t):k.Message.isResponse(t)?e.set(Z(t.id),t):e.set(X(),t)}function Q(e){}function ee(){return K===b.Listening}function et(){return K===b.Closed}function er(){return K===b.Disposed}function en(){(K===b.New||K===b.Listening)&&(K=b.Closed,U.fire(void 0))}function ei(e){q.fire([e,void 0,void 0])}function ea(e){q.fire(e)}function es(){a||0===D.size||(a=(0,C.default)().timer.setImmediate(()=>{a=void 0,el()}))}function eo(e){k.Message.isRequest(e)?ec(e):k.Message.isNotification(e)?ef(e):k.Message.isResponse(e)?ep(e):ed(e)}function el(){if(0===D.size)return;let e=D.shift();try{let t=i?.messageStrategy;E.is(t)?t.handleMessage(e,eo):eo(e)}finally{es()}}tO(Y,"createRequestQueueKey"),tO(Z,"createResponseQueueKey"),tO(X,"createNotificationQueueKey"),tO(J,"addMessageToQueue"),tO(Q,"cancelUndispatched"),tO(ee,"isListening"),tO(et,"isClosed"),tO(er,"isDisposed"),tO(en,"closeHandler"),tO(ei,"readErrorHandler"),tO(ea,"writeErrorHandler"),t.onClose(en),t.onError(ei),r.onClose(en),r.onError(ea),tO(es,"triggerMessageQueue"),tO(eo,"handleMessage"),tO(el,"processMessageQueue");let eu=tO(e=>{try{if(k.Message.isNotification(e)&&e.method===s.type.method){let t=e.params.id,n=Y(t),a=D.get(n);if(k.Message.isRequest(a)){let s=i?.connectionStrategy,o=s&&s.cancelUndispatched?s.cancelUndispatched(a,Q):Q(a);if(o&&(void 0!==o.error||void 0!==o.result)){D.delete(n),j.delete(t),o.id=a.id,eg(o,e.method,Date.now()),r.write(o).catch(()=>$.error("Sending response for canceled message failed."));return}}let s=j.get(t);if(void 0!==s){s.cancel(),e$(e);return}M.add(t)}J(D,e)}finally{es()}},"callback");function ec(e){let t,n;if(er())return;function i(t,n,i){let a={jsonrpc:"2.0",id:e.id};t instanceof k.ResponseError?a.error=t.toJson():a.result=void 0===t?null:t,eg(a,n,i),r.write(a).catch(()=>$.error("Sending response failed."))}function a(t,n,i){let a={jsonrpc:"2.0",id:e.id,error:t.toJson()};eg(a,n,i),r.write(a).catch(()=>$.error("Sending response failed."))}function s(t,n,i){void 0===t&&(t=null);let a={jsonrpc:"2.0",id:e.id,result:t};eg(a,n,i),r.write(a).catch(()=>$.error("Sending response failed."))}tO(i,"reply"),tO(a,"replyError"),tO(s,"replySuccess"),eT(e);let o=w.get(e.method);o&&(t=o.type,n=o.handler);let l=Date.now();if(n||y){let r=e.id??String(Date.now()),o=g.is(H.receiver)?H.receiver.createCancellationTokenSource(r):H.receiver.createCancellationTokenSource(e);null!==e.id&&M.has(e.id)&&o.cancel(),null!==e.id&&j.set(r,o);try{let u;if(n)if(void 0===e.params){if(void 0!==t&&0!==t.numberOfParams)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines ${t.numberOfParams} params but received none.`),e.method,l);u=n(o.token)}else if(Array.isArray(e.params)){if(void 0!==t&&t.parameterStructures===k.ParameterStructures.byName)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by name but received parameters by position`),e.method,l);u=n(...e.params,o.token)}else{if(void 0!==t&&t.parameterStructures===k.ParameterStructures.byPosition)return void a(new k.ResponseError(k.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by position but received parameters by name`),e.method,l);u=n(e.params,o.token)}else y&&(u=y(e.method,e.params,o.token));let c=u;u?c.then?c.then(t=>{j.delete(r),i(t,e.method,l)},t=>{j.delete(r),t instanceof k.ResponseError?a(t,e.method,l):t&&S.string(t.message)?a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,l):a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,l)}):(j.delete(r),i(u,e.method,l)):(j.delete(r),s(u,e.method,l))}catch(t){j.delete(r),t instanceof k.ResponseError?i(t,e.method,l):t&&S.string(t.message)?a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,l):a(new k.ResponseError(k.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,l)}}else a(new k.ResponseError(k.ErrorCodes.MethodNotFound,`Unhandled method ${e.method}`),e.method,l)}function ep(e){if(!er())if(null===e.id)e.error?$.error(`Received response message without id: Error is:
4
+ ${JSON.stringify(e.error,void 0,4)}`):$.error("Received response message without id. No further error information provided.");else{let t=e.id,r=L.get(t);if(ev(e,r),void 0!==r){L.delete(t);try{if(e.error){let t=e.error;r.reject(new k.ResponseError(t.code,t.message,t.data))}else if(void 0!==e.result)r.resolve(e.result);else throw Error("Should never happen.")}catch(e){e.message?$.error(`Response handler '${r.method}' failed with message: ${e.message}`):$.error(`Response handler '${r.method}' failed unexpectedly.`)}}}}function ef(e){let t,r;if(!er()){if(e.method===s.type.method){let t=e.params.id;M.delete(t),e$(e);return}{let n=P.get(e.method);n&&(t=n.handler,r=n.type)}if(t||T)try{if(e$(e),t)if(void 0===e.params)void 0!==r&&0!==r.numberOfParams&&r.parameterStructures!==k.ParameterStructures.byName&&$.error(`Notification ${e.method} defines ${r.numberOfParams} params but received none.`),t();else if(Array.isArray(e.params)){let n=e.params;e.method===l.type.method&&2===n.length&&o.is(n[0])?t({token:n[0],value:n[1]}):(void 0!==r&&(r.parameterStructures===k.ParameterStructures.byName&&$.error(`Notification ${e.method} defines parameters by name but received parameters by position`),r.numberOfParams!==e.params.length&&$.error(`Notification ${e.method} defines ${r.numberOfParams} params but received ${n.length} arguments`)),t(...n))}else void 0!==r&&r.parameterStructures===k.ParameterStructures.byPosition&&$.error(`Notification ${e.method} defines parameters by position but received parameters by name`),t(e.params);else T&&T(e.method,e.params)}catch(t){t.message?$.error(`Notification handler '${e.method}' failed with message: ${t.message}`):$.error(`Notification handler '${e.method}' failed unexpectedly.`)}else B.fire(e)}}function ed(e){if(!e)return void $.error("Received empty message.");if($.error(`Received message which is neither a response nor a notification message:
5
+ ${JSON.stringify(e,null,4)}`),S.string(e.id)||S.number(e.id)){let t=e.id,r=L.get(t);r&&r.reject(Error("The received response has neither a result nor an error property."))}}function em(e){if(null!=e)switch(F){case c.Verbose:return JSON.stringify(e,null,4);case c.Compact:return JSON.stringify(e);default:return}}function eh(e){if(F!==c.Off&&p)if(z===f.Text){let t;(F===c.Verbose||F===c.Compact)&&e.params&&(t=`Params: ${em(e.params)}
6
+
7
+ `),p.log(`Sending request '${e.method} - (${e.id})'.`,t)}else eR("send-request",e)}function ey(e){if(F!==c.Off&&p)if(z===f.Text){let t;(F===c.Verbose||F===c.Compact)&&(t=e.params?`Params: ${em(e.params)}
8
+
9
+ `:"No parameters provided.\n\n"),p.log(`Sending notification '${e.method}'.`,t)}else eR("send-notification",e)}function eg(e,t,r){if(F!==c.Off&&p)if(z===f.Text){let n;(F===c.Verbose||F===c.Compact)&&(e.error&&e.error.data?n=`Error data: ${em(e.error.data)}
10
+
11
+ `:e.result?n=`Result: ${em(e.result)}
12
+
13
+ `:void 0===e.error&&(n="No result returned.\n\n")),p.log(`Sending response '${t} - (${e.id})'. Processing request took ${Date.now()-r}ms`,n)}else eR("send-response",e)}function eT(e){if(F!==c.Off&&p)if(z===f.Text){let t;(F===c.Verbose||F===c.Compact)&&e.params&&(t=`Params: ${em(e.params)}
14
+
15
+ `),p.log(`Received request '${e.method} - (${e.id})'.`,t)}else eR("receive-request",e)}function e$(e){if(F!==c.Off&&p&&e.method!==m.type.method)if(z===f.Text){let t;(F===c.Verbose||F===c.Compact)&&(t=e.params?`Params: ${em(e.params)}
16
+
17
+ `:"No parameters provided.\n\n"),p.log(`Received notification '${e.method}'.`,t)}else eR("receive-notification",e)}function ev(e,t){if(F!==c.Off&&p)if(z===f.Text){let r;if((F===c.Verbose||F===c.Compact)&&(e.error&&e.error.data?r=`Error data: ${em(e.error.data)}
18
+
19
+ `:e.result?r=`Result: ${em(e.result)}
20
+
21
+ `:void 0===e.error&&(r="No result returned.\n\n")),t){let n=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:"";p.log(`Received response '${t.method} - (${e.id})' in ${Date.now()-t.timerStart}ms.${n}`,r)}else p.log(`Received response ${e.id} without active response promise.`,r)}else eR("receive-response",e)}function eR(e,t){if(!p||F===c.Off)return;let r={isLSPMessage:!0,type:e,message:t,timestamp:Date.now()};p.log(r)}function eE(){if(et())throw new G(h.Closed,"Connection is closed.");if(er())throw new G(h.Disposed,"Connection is disposed.")}function eA(){if(ee())throw new G(h.AlreadyListening,"Connection is already listening")}function eb(){if(!ee())throw Error("Call listen() first.")}function eC(e){return void 0===e?null:e}function eS(e){if(null!==e)return e}function ek(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}function ex(e,t){switch(e){case k.ParameterStructures.auto:if(ek(t))return eS(t);return[eC(t)];case k.ParameterStructures.byName:if(!ek(t))throw Error("Received parameters by name but param is not an object literal.");return eS(t);case k.ParameterStructures.byPosition:return[eC(t)];default:throw Error(`Unknown parameter structure ${e.toString()}`)}}function eN(e,t){let r,n=e.numberOfParams;switch(n){case 0:r=void 0;break;case 1:r=ex(e.parameterStructures,t[0]);break;default:r=[];for(let e=0;e<t.length&&e<n;e++)r.push(eC(t[e]));if(t.length<n)for(let e=t.length;e<n;e++)r.push(null)}return r}tO(ec,"handleRequest"),tO(ep,"handleResponse"),tO(ef,"handleNotification"),tO(ed,"handleInvalidMessage"),tO(em,"stringifyTrace"),tO(eh,"traceSendingRequest"),tO(ey,"traceSendingNotification"),tO(eg,"traceSendingResponse"),tO(eT,"traceReceivedRequest"),tO(e$,"traceReceivedNotification"),tO(ev,"traceReceivedResponse"),tO(eR,"logLSPMessage"),tO(eE,"throwIfClosedOrDisposed"),tO(eA,"throwIfListening"),tO(eb,"throwIfNotListening"),tO(eC,"undefinedToNull"),tO(eS,"nullToUndefined"),tO(ek,"isNamedParam"),tO(ex,"computeSingleParam"),tO(eN,"computeMessageParams");let eI={sendNotification:tO((e,...t)=>{let n,i;if(eE(),S.string(e)){n=e;let r=t[0],a=0,s=k.ParameterStructures.auto;k.ParameterStructures.is(r)&&(a=1,s=r);let o=t.length,l=o-a;switch(l){case 0:i=void 0;break;case 1:i=ex(s,t[a]);break;default:if(s===k.ParameterStructures.byName)throw Error(`Received ${l} parameters for 'by Name' notification parameter structure.`);i=t.slice(a,o).map(e=>eC(e))}}else n=e.method,i=eN(e,t);let a={jsonrpc:"2.0",method:n,params:i};return ey(a),r.write(a).catch(e=>{throw $.error("Sending notification failed."),e})},"sendNotification"),onNotification:tO((e,t)=>{let r;return eE(),S.func(e)?T=e:t&&(S.string(e)?(r=e,P.set(e,{type:void 0,handler:t})):(r=e.method,P.set(e.method,{type:e,handler:t}))),{dispose:tO(()=>{void 0!==r?P.delete(r):T=void 0},"dispose")}},"onNotification"),onProgress:tO((e,t,r)=>{if(O.has(t))throw Error(`Progress handler for token ${t} already registered`);return O.set(t,r),{dispose:tO(()=>{O.delete(t)},"dispose")}},"onProgress"),sendProgress:tO((e,t,r)=>eI.sendNotification(l.type,{token:t,value:r}),"sendProgress"),onUnhandledProgress:W.event,sendRequest:tO((e,...t)=>{let n,i,a,s;if(eE(),eb(),S.string(e)){n=e;let r=t[0],a=t[t.length-1],o=0,l=k.ParameterStructures.auto;k.ParameterStructures.is(r)&&(o=1,l=r);let u=t.length;I.CancellationToken.is(a)&&(u-=1,s=a);let c=u-o;switch(c){case 0:i=void 0;break;case 1:i=ex(l,t[o]);break;default:if(l===k.ParameterStructures.byName)throw Error(`Received ${c} parameters for 'by Name' request parameter structure.`);i=t.slice(o,u).map(e=>eC(e))}}else{n=e.method,i=eN(e,t);let r=e.numberOfParams;s=I.CancellationToken.is(t[r])?t[r]:void 0}let o=v++;s&&(a=s.onCancellationRequested(()=>{let e=H.sender.sendCancellation(eI,o);return void 0===e?($.log(`Received no promise from cancellation strategy when cancelling id ${o}`),Promise.resolve()):e.catch(()=>{$.log(`Sending cancellation messages for id ${o} failed`)})}));let l={jsonrpc:"2.0",id:o,method:n,params:i};return eh(l),"function"==typeof H.sender.enableCancellation&&H.sender.enableCancellation(l),new Promise(async(e,t)=>{let i=tO(t=>{e(t),H.sender.cleanup(o),a?.dispose()},"resolveWithCleanup"),s=tO(e=>{t(e),H.sender.cleanup(o),a?.dispose()},"rejectWithCleanup"),u={method:n,timerStart:Date.now(),resolve:i,reject:s};try{await r.write(l),L.set(o,u)}catch(e){throw $.error("Sending request failed."),u.reject(new k.ResponseError(k.ErrorCodes.MessageWriteError,e.message?e.message:"Unknown reason")),e}})},"sendRequest"),onRequest:tO((e,t)=>{eE();let r=null;return u.is(e)?(r=void 0,y=e):S.string(e)?(r=null,void 0!==t&&(r=e,w.set(e,{handler:t,type:void 0}))):void 0!==t&&(r=e.method,w.set(e.method,{type:e,handler:t})),{dispose:tO(()=>{null!==r&&(void 0!==r?w.delete(r):y=void 0)},"dispose")}},"onRequest"),hasPendingResponse:tO(()=>L.size>0,"hasPendingResponse"),trace:tO(async(e,t,r)=>{let n=!1,i=f.Text;void 0!==r&&(S.boolean(r)?n=r:(n=r.sendNotification||!1,i=r.traceFormat||f.Text)),F=e,z=i,p=F===c.Off?void 0:t,!n||et()||er()||await eI.sendNotification(d.type,{value:c.toString(e)})},"trace"),onError:q.event,onClose:U.event,onUnhandledNotification:B.event,onDispose:V.event,end:tO(()=>{r.end()},"end"),dispose:tO(()=>{if(er())return;K=b.Disposed,V.fire(void 0);let e=new k.ResponseError(k.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let t of L.values())t.reject(e);L=new Map,j=new Map,M=new Set,D=new x.LinkedMap,S.func(r.dispose)&&r.dispose(),S.func(t.dispose)&&t.dispose()},"dispose"),listen:tO(()=>{eE(),eA(),K=b.Listening,t.listen(eu)},"listen"),inspect:tO(()=>{(0,C.default)().console.log("inspect")},"inspect")};return eI.onNotification(m.type,e=>{if(F===c.Off||!p)return;let t=F===c.Verbose||F===c.Compact;p.log(e.message,t?e.verbose:void 0)}),eI.onNotification(l.type,e=>{let t=O.get(e.token);t?t(e.value):W.fire(e)}),eI}tO(er,"is"),et.is=er,(a=b||(b={}))[a.New=1]="New",a[a.Listening=2]="Listening",a[a.Closed=3]="Closed",a[a.Disposed=4]="Disposed",tO(en,"createMessageConnection"),e.createMessageConnection=en}}),t2=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ProgressType=e.ProgressToken=e.createMessageConnection=e.NullLogger=e.ConnectionOptions=e.ConnectionStrategy=e.AbstractMessageBuffer=e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=e.CancellationToken=e.CancellationTokenSource=e.Emitter=e.Event=e.Disposable=e.LRUCache=e.Touch=e.LinkedMap=e.ParameterStructures=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.ErrorCodes=e.ResponseError=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType0=e.RequestType=e.Message=e.RAL=void 0,e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.Trace=void 0;var t=tV();Object.defineProperty(e,"Message",{enumerable:!0,get:tO(function(){return t.Message},"get")}),Object.defineProperty(e,"RequestType",{enumerable:!0,get:tO(function(){return t.RequestType},"get")}),Object.defineProperty(e,"RequestType0",{enumerable:!0,get:tO(function(){return t.RequestType0},"get")}),Object.defineProperty(e,"RequestType1",{enumerable:!0,get:tO(function(){return t.RequestType1},"get")}),Object.defineProperty(e,"RequestType2",{enumerable:!0,get:tO(function(){return t.RequestType2},"get")}),Object.defineProperty(e,"RequestType3",{enumerable:!0,get:tO(function(){return t.RequestType3},"get")}),Object.defineProperty(e,"RequestType4",{enumerable:!0,get:tO(function(){return t.RequestType4},"get")}),Object.defineProperty(e,"RequestType5",{enumerable:!0,get:tO(function(){return t.RequestType5},"get")}),Object.defineProperty(e,"RequestType6",{enumerable:!0,get:tO(function(){return t.RequestType6},"get")}),Object.defineProperty(e,"RequestType7",{enumerable:!0,get:tO(function(){return t.RequestType7},"get")}),Object.defineProperty(e,"RequestType8",{enumerable:!0,get:tO(function(){return t.RequestType8},"get")}),Object.defineProperty(e,"RequestType9",{enumerable:!0,get:tO(function(){return t.RequestType9},"get")}),Object.defineProperty(e,"ResponseError",{enumerable:!0,get:tO(function(){return t.ResponseError},"get")}),Object.defineProperty(e,"ErrorCodes",{enumerable:!0,get:tO(function(){return t.ErrorCodes},"get")}),Object.defineProperty(e,"NotificationType",{enumerable:!0,get:tO(function(){return t.NotificationType},"get")}),Object.defineProperty(e,"NotificationType0",{enumerable:!0,get:tO(function(){return t.NotificationType0},"get")}),Object.defineProperty(e,"NotificationType1",{enumerable:!0,get:tO(function(){return t.NotificationType1},"get")}),Object.defineProperty(e,"NotificationType2",{enumerable:!0,get:tO(function(){return t.NotificationType2},"get")}),Object.defineProperty(e,"NotificationType3",{enumerable:!0,get:tO(function(){return t.NotificationType3},"get")}),Object.defineProperty(e,"NotificationType4",{enumerable:!0,get:tO(function(){return t.NotificationType4},"get")}),Object.defineProperty(e,"NotificationType5",{enumerable:!0,get:tO(function(){return t.NotificationType5},"get")}),Object.defineProperty(e,"NotificationType6",{enumerable:!0,get:tO(function(){return t.NotificationType6},"get")}),Object.defineProperty(e,"NotificationType7",{enumerable:!0,get:tO(function(){return t.NotificationType7},"get")}),Object.defineProperty(e,"NotificationType8",{enumerable:!0,get:tO(function(){return t.NotificationType8},"get")}),Object.defineProperty(e,"NotificationType9",{enumerable:!0,get:tO(function(){return t.NotificationType9},"get")}),Object.defineProperty(e,"ParameterStructures",{enumerable:!0,get:tO(function(){return t.ParameterStructures},"get")});var r=tH();Object.defineProperty(e,"LinkedMap",{enumerable:!0,get:tO(function(){return r.LinkedMap},"get")}),Object.defineProperty(e,"LRUCache",{enumerable:!0,get:tO(function(){return r.LRUCache},"get")}),Object.defineProperty(e,"Touch",{enumerable:!0,get:tO(function(){return r.Touch},"get")});var n=tY();Object.defineProperty(e,"Disposable",{enumerable:!0,get:tO(function(){return n.Disposable},"get")});var i=tB();Object.defineProperty(e,"Event",{enumerable:!0,get:tO(function(){return i.Event},"get")}),Object.defineProperty(e,"Emitter",{enumerable:!0,get:tO(function(){return i.Emitter},"get")});var a=tW();Object.defineProperty(e,"CancellationTokenSource",{enumerable:!0,get:tO(function(){return a.CancellationTokenSource},"get")}),Object.defineProperty(e,"CancellationToken",{enumerable:!0,get:tO(function(){return a.CancellationToken},"get")});var s=tZ();Object.defineProperty(e,"SharedArraySenderStrategy",{enumerable:!0,get:tO(function(){return s.SharedArraySenderStrategy},"get")}),Object.defineProperty(e,"SharedArrayReceiverStrategy",{enumerable:!0,get:tO(function(){return s.SharedArrayReceiverStrategy},"get")});var o=tJ();Object.defineProperty(e,"MessageReader",{enumerable:!0,get:tO(function(){return o.MessageReader},"get")}),Object.defineProperty(e,"AbstractMessageReader",{enumerable:!0,get:tO(function(){return o.AbstractMessageReader},"get")}),Object.defineProperty(e,"ReadableStreamMessageReader",{enumerable:!0,get:tO(function(){return o.ReadableStreamMessageReader},"get")});var l=tQ();Object.defineProperty(e,"MessageWriter",{enumerable:!0,get:tO(function(){return l.MessageWriter},"get")}),Object.defineProperty(e,"AbstractMessageWriter",{enumerable:!0,get:tO(function(){return l.AbstractMessageWriter},"get")}),Object.defineProperty(e,"WriteableStreamMessageWriter",{enumerable:!0,get:tO(function(){return l.WriteableStreamMessageWriter},"get")});var u=t0();Object.defineProperty(e,"AbstractMessageBuffer",{enumerable:!0,get:tO(function(){return u.AbstractMessageBuffer},"get")});var c=t1();Object.defineProperty(e,"ConnectionStrategy",{enumerable:!0,get:tO(function(){return c.ConnectionStrategy},"get")}),Object.defineProperty(e,"ConnectionOptions",{enumerable:!0,get:tO(function(){return c.ConnectionOptions},"get")}),Object.defineProperty(e,"NullLogger",{enumerable:!0,get:tO(function(){return c.NullLogger},"get")}),Object.defineProperty(e,"createMessageConnection",{enumerable:!0,get:tO(function(){return c.createMessageConnection},"get")}),Object.defineProperty(e,"ProgressToken",{enumerable:!0,get:tO(function(){return c.ProgressToken},"get")}),Object.defineProperty(e,"ProgressType",{enumerable:!0,get:tO(function(){return c.ProgressType},"get")}),Object.defineProperty(e,"Trace",{enumerable:!0,get:tO(function(){return c.Trace},"get")}),Object.defineProperty(e,"TraceValues",{enumerable:!0,get:tO(function(){return c.TraceValues},"get")}),Object.defineProperty(e,"TraceFormat",{enumerable:!0,get:tO(function(){return c.TraceFormat},"get")}),Object.defineProperty(e,"SetTraceNotification",{enumerable:!0,get:tO(function(){return c.SetTraceNotification},"get")}),Object.defineProperty(e,"LogTraceNotification",{enumerable:!0,get:tO(function(){return c.LogTraceNotification},"get")}),Object.defineProperty(e,"ConnectionErrors",{enumerable:!0,get:tO(function(){return c.ConnectionErrors},"get")}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:tO(function(){return c.ConnectionError},"get")}),Object.defineProperty(e,"CancellationReceiverStrategy",{enumerable:!0,get:tO(function(){return c.CancellationReceiverStrategy},"get")}),Object.defineProperty(e,"CancellationSenderStrategy",{enumerable:!0,get:tO(function(){return c.CancellationSenderStrategy},"get")}),Object.defineProperty(e,"CancellationStrategy",{enumerable:!0,get:tO(function(){return c.CancellationStrategy},"get")}),Object.defineProperty(e,"MessageStrategy",{enumerable:!0,get:tO(function(){return c.MessageStrategy},"get")}),e.RAL=tq().default}}),t3=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(e){Object.defineProperty(e,"__esModule",{value:!0});var t=t2(),r=class e extends t.AbstractMessageBuffer{static{tO(this,"MessageBuffer")}constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return e.emptyBuffer}fromString(e,t){return new TextEncoder().encode(e)}toString(e,t){return"ascii"===t?this.asciiDecoder.decode(e):new TextDecoder(t).decode(e)}asNative(e,t){return void 0===t?e:e.slice(0,t)}allocNative(e){return new Uint8Array(e)}};r.emptyBuffer=new Uint8Array(0);var n=class{static{tO(this,"ReadableStreamWrapper")}constructor(e){this.socket=e,this._onData=new t.Emitter,this._messageListener=e=>{e.data.arrayBuffer().then(e=>{this._onData.fire(new Uint8Array(e))},()=>{(0,t.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),t.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),t.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),t.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}},i=class{static{tO(this,"WritableStreamWrapper")}constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),t.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),t.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),t.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,t){if("string"==typeof e){if(void 0!==t&&"utf-8"!==t)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${t}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}},a=new TextEncoder,s=Object.freeze({messageBuffer:Object.freeze({create:tO(e=>new r(e),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:tO((e,t)=>{if("utf-8"!==t.charset)throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${t.charset}`);return Promise.resolve(a.encode(JSON.stringify(e,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:tO((e,t)=>{if(!(e instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(t.charset).decode(e)))},"decode")})}),stream:Object.freeze({asReadableStream:tO(e=>new n(e),"asReadableStream"),asWritableStream:tO(e=>new i(e),"asWritableStream")}),console,timer:Object.freeze({setTimeout(e,t,...r){let n=setTimeout(e,t,...r);return{dispose:tO(()=>clearTimeout(n),"dispose")}},setImmediate(e,...t){let r=setTimeout(e,0,...t);return{dispose:tO(()=>clearTimeout(r),"dispose")}},setInterval(e,t,...r){let n=setInterval(e,t,...r);return{dispose:tO(()=>clearInterval(n),"dispose")}}})});function o(){return s}tO(o,"RIL");var l=o||(o={});function u(){t.RAL.install(s)}tO(u,"install"),l.install=u,e.default=o}}),t9=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tO(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__exportStar||function(e,r){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(r,n)||t(r,e,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.createMessageConnection=e.BrowserMessageWriter=e.BrowserMessageReader=void 0,t3().default.install();var n=t2();function i(e,t,r,i){return void 0===r&&(r=n.NullLogger),n.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,n.createMessageConnection)(e,t,r,i)}r(t2(),e),e.BrowserMessageReader=class extends n.AbstractMessageReader{static{tO(this,"BrowserMessageReader")}constructor(e){super(),this._onData=new n.Emitter,this._messageListener=e=>{this._onData.fire(e.data)},e.addEventListener("error",e=>this.fireError(e)),e.onmessage=this._messageListener}listen(e){return this._onData.event(e)}},e.BrowserMessageWriter=class extends n.AbstractMessageWriter{static{tO(this,"BrowserMessageWriter")}constructor(e){super(),this.port=e,this.errorCount=0,e.addEventListener("error",e=>this.fireError(e))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}},tO(i,"createMessageConnection"),e.createMessageConnection=i}}),t4=tD({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(e,t){t.exports=t9()}}),t5=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ProtocolNotificationType=e.ProtocolNotificationType0=e.ProtocolRequestType=e.ProtocolRequestType0=e.RegistrationType=e.MessageDirection=void 0;var t,r,n=t9();(t=r||(e.MessageDirection=r={})).clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both",e.RegistrationType=class{static{tO(this,"RegistrationType")}constructor(e){this.method=e}},e.ProtocolRequestType0=class extends n.RequestType0{static{tO(this,"ProtocolRequestType0")}constructor(e){super(e)}},e.ProtocolRequestType=class extends n.RequestType{static{tO(this,"ProtocolRequestType")}constructor(e){super(e,n.ParameterStructures.byName)}},e.ProtocolNotificationType0=class extends n.NotificationType0{static{tO(this,"ProtocolNotificationType0")}constructor(e){super(e)}},e.ProtocolNotificationType=class extends n.NotificationType{static{tO(this,"ProtocolNotificationType")}constructor(e){super(e,n.ParameterStructures.byName)}}}}),t7=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}function l(e,t){return Array.isArray(e)&&e.every(t)}function u(e){return null!==e&&"object"==typeof e}Object.defineProperty(e,"__esModule",{value:!0}),e.objectLiteral=e.typedArray=e.stringArray=e.array=e.func=e.error=e.number=e.string=e.boolean=void 0,tO(t,"boolean"),e.boolean=t,tO(r,"string"),e.string=r,tO(n,"number"),e.number=n,tO(i,"error"),e.error=i,tO(a,"func"),e.func=a,tO(s,"array"),e.array=s,tO(o,"stringArray"),e.stringArray=o,tO(l,"typedArray"),e.typedArray=l,tO(u,"objectLiteral"),e.objectLiteral=u}}),t8=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ImplementationRequest=void 0;var t,r,n=t5();(t=r||(e.ImplementationRequest=r={})).method="textDocument/implementation",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),t6=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeDefinitionRequest=void 0;var t,r,n=t5();(t=r||(e.TypeDefinitionRequest=r={})).method="textDocument/typeDefinition",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),re=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=void 0;var t,r,n,i,a=t5();(t=n||(e.WorkspaceFoldersRequest=n={})).method="workspace/workspaceFolders",t.messageDirection=a.MessageDirection.serverToClient,t.type=new a.ProtocolRequestType0(t.method),(r=i||(e.DidChangeWorkspaceFoldersNotification=i={})).method="workspace/didChangeWorkspaceFolders",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolNotificationType(r.method)}}),rt=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigurationRequest=void 0;var t,r,n=t5();(t=r||(e.ConfigurationRequest=r={})).method="workspace/configuration",t.messageDirection=n.MessageDirection.serverToClient,t.type=new n.ProtocolRequestType(t.method)}}),rr=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ColorPresentationRequest=e.DocumentColorRequest=void 0;var t,r,n,i,a=t5();(t=n||(e.DocumentColorRequest=n={})).method="textDocument/documentColor",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.ColorPresentationRequest=i={})).method="textDocument/colorPresentation",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method)}}),rn=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=void 0;var t,r,n,i,a=t5();(t=n||(e.FoldingRangeRequest=n={})).method="textDocument/foldingRange",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.FoldingRangeRefreshRequest=i={})).method="workspace/foldingRange/refresh",r.messageDirection=a.MessageDirection.serverToClient,r.type=new a.ProtocolRequestType0(r.method)}}),ri=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DeclarationRequest=void 0;var t,r,n=t5();(t=r||(e.DeclarationRequest=r={})).method="textDocument/declaration",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),ra=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionRangeRequest=void 0;var t,r,n=t5();(t=r||(e.SelectionRangeRequest=r={})).method="textDocument/selectionRange",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),rs=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=void 0;var t,r,n,i,a,s=t9(),o=t5(),l=n||(e.WorkDoneProgress=n={});function u(e){return e===l.type}l.type=new s.ProgressType,tO(u,"is"),l.is=u,(t=i||(e.WorkDoneProgressCreateRequest=i={})).method="window/workDoneProgress/create",t.messageDirection=o.MessageDirection.serverToClient,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.WorkDoneProgressCancelNotification=a={})).method="window/workDoneProgress/cancel",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolNotificationType(r.method)}}),ro=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.CallHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=t5();(t=i||(e.CallHierarchyPrepareRequest=i={})).method="textDocument/prepareCallHierarchy",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.CallHierarchyIncomingCallsRequest=a={})).method="callHierarchy/incomingCalls",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.CallHierarchyOutgoingCallsRequest=s={})).method="callHierarchy/outgoingCalls",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),rl=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.SemanticTokensRegistrationType=e.TokenFormat=void 0;var t,r,n,i,a,s,o,l,u,c,p,f=t5();(s||(e.TokenFormat=s={})).Relative="relative",(t=o||(e.SemanticTokensRegistrationType=o={})).method="textDocument/semanticTokens",t.type=new f.RegistrationType(t.method),(r=l||(e.SemanticTokensRequest=l={})).method="textDocument/semanticTokens/full",r.messageDirection=f.MessageDirection.clientToServer,r.type=new f.ProtocolRequestType(r.method),r.registrationMethod=o.method,(n=u||(e.SemanticTokensDeltaRequest=u={})).method="textDocument/semanticTokens/full/delta",n.messageDirection=f.MessageDirection.clientToServer,n.type=new f.ProtocolRequestType(n.method),n.registrationMethod=o.method,(i=c||(e.SemanticTokensRangeRequest=c={})).method="textDocument/semanticTokens/range",i.messageDirection=f.MessageDirection.clientToServer,i.type=new f.ProtocolRequestType(i.method),i.registrationMethod=o.method,(a=p||(e.SemanticTokensRefreshRequest=p={})).method="workspace/semanticTokens/refresh",a.messageDirection=f.MessageDirection.serverToClient,a.type=new f.ProtocolRequestType0(a.method)}}),ru=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ShowDocumentRequest=void 0;var t,r,n=t5();(t=r||(e.ShowDocumentRequest=r={})).method="window/showDocument",t.messageDirection=n.MessageDirection.serverToClient,t.type=new n.ProtocolRequestType(t.method)}}),rc=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedEditingRangeRequest=void 0;var t,r,n=t5();(t=r||(e.LinkedEditingRangeRequest=r={})).method="textDocument/linkedEditingRange",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),rp=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.DidRenameFilesNotification=e.WillRenameFilesRequest=e.DidCreateFilesNotification=e.WillCreateFilesRequest=e.FileOperationPatternKind=void 0;var t,r,n,i,a,s,o,l,u,c,p,f,d,m,h=t5();(t=l||(e.FileOperationPatternKind=l={})).file="file",t.folder="folder",(r=u||(e.WillCreateFilesRequest=u={})).method="workspace/willCreateFiles",r.messageDirection=h.MessageDirection.clientToServer,r.type=new h.ProtocolRequestType(r.method),(n=c||(e.DidCreateFilesNotification=c={})).method="workspace/didCreateFiles",n.messageDirection=h.MessageDirection.clientToServer,n.type=new h.ProtocolNotificationType(n.method),(i=p||(e.WillRenameFilesRequest=p={})).method="workspace/willRenameFiles",i.messageDirection=h.MessageDirection.clientToServer,i.type=new h.ProtocolRequestType(i.method),(a=f||(e.DidRenameFilesNotification=f={})).method="workspace/didRenameFiles",a.messageDirection=h.MessageDirection.clientToServer,a.type=new h.ProtocolNotificationType(a.method),(s=d||(e.DidDeleteFilesNotification=d={})).method="workspace/didDeleteFiles",s.messageDirection=h.MessageDirection.clientToServer,s.type=new h.ProtocolNotificationType(s.method),(o=m||(e.WillDeleteFilesRequest=m={})).method="workspace/willDeleteFiles",o.messageDirection=h.MessageDirection.clientToServer,o.type=new h.ProtocolRequestType(o.method)}}),rf=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=void 0;var t,r,n,i,a,s,o=t5();(t=i||(e.UniquenessLevel=i={})).document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global",(r=a||(e.MonikerKind=a={})).$import="import",r.$export="export",r.local="local",(n=s||(e.MonikerRequest=s={})).method="textDocument/moniker",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),rd=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHierarchySubtypesRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=t5();(t=i||(e.TypeHierarchyPrepareRequest=i={})).method="textDocument/prepareTypeHierarchy",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.TypeHierarchySupertypesRequest=a={})).method="typeHierarchy/supertypes",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.TypeHierarchySubtypesRequest=s={})).method="typeHierarchy/subtypes",n.messageDirection=o.MessageDirection.clientToServer,n.type=new o.ProtocolRequestType(n.method)}}),rm=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineValueRefreshRequest=e.InlineValueRequest=void 0;var t,r,n,i,a=t5();(t=n||(e.InlineValueRequest=n={})).method="textDocument/inlineValue",t.messageDirection=a.MessageDirection.clientToServer,t.type=new a.ProtocolRequestType(t.method),(r=i||(e.InlineValueRefreshRequest=i={})).method="workspace/inlineValue/refresh",r.messageDirection=a.MessageDirection.serverToClient,r.type=new a.ProtocolRequestType0(r.method)}}),rh=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=void 0;var t,r,n,i,a,s,o=t5();(t=i||(e.InlayHintRequest=i={})).method="textDocument/inlayHint",t.messageDirection=o.MessageDirection.clientToServer,t.type=new o.ProtocolRequestType(t.method),(r=a||(e.InlayHintResolveRequest=a={})).method="inlayHint/resolve",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),(n=s||(e.InlayHintRefreshRequest=s={})).method="workspace/inlayHint/refresh",n.messageDirection=o.MessageDirection.serverToClient,n.type=new o.ProtocolRequestType0(n.method)}}),ry=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=void 0;var t,r,n,i,a,s,o,l,u,c=t9(),p=t7(),f=t5(),d=a||(e.DiagnosticServerCancellationData=a={});function m(e){return e&&p.boolean(e.retriggerRequest)}tO(m,"is"),d.is=m,(t=s||(e.DocumentDiagnosticReportKind=s={})).Full="full",t.Unchanged="unchanged",(r=o||(e.DocumentDiagnosticRequest=o={})).method="textDocument/diagnostic",r.messageDirection=f.MessageDirection.clientToServer,r.type=new f.ProtocolRequestType(r.method),r.partialResult=new c.ProgressType,(n=l||(e.WorkspaceDiagnosticRequest=l={})).method="workspace/diagnostic",n.messageDirection=f.MessageDirection.clientToServer,n.type=new f.ProtocolRequestType(n.method),n.partialResult=new c.ProgressType,(i=u||(e.DiagnosticRefreshRequest=u={})).method="workspace/diagnostic/refresh",i.messageDirection=f.MessageDirection.serverToClient,i.type=new f.ProtocolRequestType0(i.method)}}),rg=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=void 0;var t,r,n,i,a,s,o,l,u,c,p,f,d,m,h,y=(tK(),tG(tz)),g=t7(),T=t5(),$=s||(e.NotebookCellKind=s={});function v(e){return 1===e||2===e}$.Markup=1,$.Code=2,tO(v,"is"),$.is=v,function(e){function t(e,t){let r={executionOrder:e};return(!0===t||!1===t)&&(r.success=t),r}function r(e){return g.objectLiteral(e)&&y.uinteger.is(e.executionOrder)&&(void 0===e.success||g.boolean(e.success))}function n(e,t){return e===t||null!=e&&null!=t&&e.executionOrder===t.executionOrder&&e.success===t.success}tO(t,"create"),e.create=t,tO(r,"is"),e.is=r,tO(n,"equals"),e.equals=n}(o||(e.ExecutionSummary=o={})),function(e){function t(e,t){return{kind:e,document:t}}function r(e){return g.objectLiteral(e)&&s.is(e.kind)&&y.DocumentUri.is(e.document)&&(void 0===e.metadata||g.objectLiteral(e.metadata))}function n(e,t){let r=new Set;return e.document!==t.document&&r.add("document"),e.kind!==t.kind&&r.add("kind"),e.executionSummary!==t.executionSummary&&r.add("executionSummary"),void 0===e.metadata&&void 0===t.metadata||i(e.metadata,t.metadata)||r.add("metadata"),void 0===e.executionSummary&&void 0===t.executionSummary||o.equals(e.executionSummary,t.executionSummary)||r.add("executionSummary"),r}function i(e,t){if(e===t)return!0;if(null==e||null==t||typeof e!=typeof t||"object"!=typeof e)return!1;let r=Array.isArray(e),n=Array.isArray(t);if(r!==n)return!1;if(r&&n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!i(e[r],t[r]))return!1}if(g.objectLiteral(e)&&g.objectLiteral(t)){let r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length||(r.sort(),n.sort(),!i(r,n)))return!1;for(let n=0;n<r.length;n++){let a=r[n];if(!i(e[a],t[a]))return!1}}return!0}tO(t,"create"),e.create=t,tO(r,"is"),e.is=r,tO(n,"diff"),e.diff=n,tO(i,"equalsMetadata")}(l||(e.NotebookCell=l={}));var R=u||(e.NotebookDocument=u={});function E(e,t,r,n){return{uri:e,notebookType:t,version:r,cells:n}}function A(e){return g.objectLiteral(e)&&g.string(e.uri)&&y.integer.is(e.version)&&g.typedArray(e.cells,l.is)}tO(E,"create"),R.create=E,tO(A,"is"),R.is=A,(t=c||(e.NotebookDocumentSyncRegistrationType=c={})).method="notebookDocument/sync",t.messageDirection=T.MessageDirection.clientToServer,t.type=new T.RegistrationType(t.method),(r=p||(e.DidOpenNotebookDocumentNotification=p={})).method="notebookDocument/didOpen",r.messageDirection=T.MessageDirection.clientToServer,r.type=new T.ProtocolNotificationType(r.method),r.registrationMethod=c.method;var b=f||(e.NotebookCellArrayChange=f={});function C(e){return g.objectLiteral(e)&&y.uinteger.is(e.start)&&y.uinteger.is(e.deleteCount)&&(void 0===e.cells||g.typedArray(e.cells,l.is))}function S(e,t,r){let n={start:e,deleteCount:t};return void 0!==r&&(n.cells=r),n}tO(C,"is"),b.is=C,tO(S,"create"),b.create=S,(n=d||(e.DidChangeNotebookDocumentNotification=d={})).method="notebookDocument/didChange",n.messageDirection=T.MessageDirection.clientToServer,n.type=new T.ProtocolNotificationType(n.method),n.registrationMethod=c.method,(i=m||(e.DidSaveNotebookDocumentNotification=m={})).method="notebookDocument/didSave",i.messageDirection=T.MessageDirection.clientToServer,i.type=new T.ProtocolNotificationType(i.method),i.registrationMethod=c.method,(a=h||(e.DidCloseNotebookDocumentNotification=h={})).method="notebookDocument/didClose",a.messageDirection=T.MessageDirection.clientToServer,a.type=new T.ProtocolNotificationType(a.method),a.registrationMethod=c.method}}),rT=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineCompletionRequest=void 0;var t,r,n=t5();(t=r||(e.InlineCompletionRequest=r={})).method="textDocument/inlineCompletion",t.messageDirection=n.MessageDirection.clientToServer,t.type=new n.ProtocolRequestType(t.method)}}),r$=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspaceSymbolRequest=e.CodeActionResolveRequest=e.CodeActionRequest=e.DocumentSymbolRequest=e.DocumentHighlightRequest=e.ReferencesRequest=e.DefinitionRequest=e.SignatureHelpRequest=e.SignatureHelpTriggerKind=e.HoverRequest=e.CompletionResolveRequest=e.CompletionRequest=e.CompletionTriggerKind=e.PublishDiagnosticsNotification=e.WatchKind=e.RelativePattern=e.FileChangeType=e.DidChangeWatchedFilesNotification=e.WillSaveTextDocumentWaitUntilRequest=e.WillSaveTextDocumentNotification=e.TextDocumentSaveReason=e.DidSaveTextDocumentNotification=e.DidCloseTextDocumentNotification=e.DidChangeTextDocumentNotification=e.TextDocumentContentChangeEvent=e.DidOpenTextDocumentNotification=e.TextDocumentSyncKind=e.TelemetryEventNotification=e.LogMessageNotification=e.ShowMessageRequest=e.ShowMessageNotification=e.MessageType=e.DidChangeConfigurationNotification=e.ExitNotification=e.ShutdownRequest=e.InitializedNotification=e.InitializeErrorCodes=e.InitializeRequest=e.WorkDoneProgressOptions=e.TextDocumentRegistrationOptions=e.StaticRegistrationOptions=e.PositionEncodingKind=e.FailureHandlingKind=e.ResourceOperationKind=e.UnregistrationRequest=e.RegistrationRequest=e.DocumentSelector=e.NotebookCellTextDocumentFilter=e.NotebookDocumentFilter=e.TextDocumentFilter=void 0,e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.WillRenameFilesRequest=e.DidRenameFilesNotification=e.WillCreateFilesRequest=e.DidCreateFilesNotification=e.FileOperationPatternKind=e.LinkedEditingRangeRequest=e.ShowDocumentRequest=e.SemanticTokensRegistrationType=e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.TokenFormat=e.CallHierarchyPrepareRequest=e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=e.SelectionRangeRequest=e.DeclarationRequest=e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=e.ColorPresentationRequest=e.DocumentColorRequest=e.ConfigurationRequest=e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=e.TypeDefinitionRequest=e.ImplementationRequest=e.ApplyWorkspaceEditRequest=e.ExecuteCommandRequest=e.PrepareRenameRequest=e.RenameRequest=e.PrepareSupportDefaultBehavior=e.DocumentOnTypeFormattingRequest=e.DocumentRangesFormattingRequest=e.DocumentRangeFormattingRequest=e.DocumentFormattingRequest=e.DocumentLinkResolveRequest=e.DocumentLinkRequest=e.CodeLensRefreshRequest=e.CodeLensResolveRequest=e.CodeLensRequest=e.WorkspaceSymbolResolveRequest=void 0,e.InlineCompletionRequest=e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=e.InlineValueRefreshRequest=e.InlineValueRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchySubtypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o,l,u,c,p,f,d,m,h,y,g,T,$,v,R,E,A,b,C,S,k,x,N,I,_,w,P,O,D,L,M,j,F,G,z,K,q,U,B,W,V,H,Y,Z,X,J,Q,ee,et,er,en,ei,ea,es,eo,el,eu,ec,ep,ef,ed,em,eh,ey,eg,eT,e$,ev,eR,eE,eA,eb,eC,eS,ek,ex,eN,eI,e_,ew,eP,eO,eD,eL,eM,ej,eF,eG,ez,eK,eq,eU,eB,eW,eV,eH,eY,eZ,eX,eJ,eQ,e0,e1,e2,e3,e9,e4,e5,e7,e8,e6,te,tt,tr=t5(),tn=(tK(),tG(tz)),ti=t7(),ta=t8();Object.defineProperty(e,"ImplementationRequest",{enumerable:!0,get:tO(function(){return ta.ImplementationRequest},"get")});var ts=t6();Object.defineProperty(e,"TypeDefinitionRequest",{enumerable:!0,get:tO(function(){return ts.TypeDefinitionRequest},"get")});var to=re();Object.defineProperty(e,"WorkspaceFoldersRequest",{enumerable:!0,get:tO(function(){return to.WorkspaceFoldersRequest},"get")}),Object.defineProperty(e,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:tO(function(){return to.DidChangeWorkspaceFoldersNotification},"get")});var tl=rt();Object.defineProperty(e,"ConfigurationRequest",{enumerable:!0,get:tO(function(){return tl.ConfigurationRequest},"get")});var tu=rr();Object.defineProperty(e,"DocumentColorRequest",{enumerable:!0,get:tO(function(){return tu.DocumentColorRequest},"get")}),Object.defineProperty(e,"ColorPresentationRequest",{enumerable:!0,get:tO(function(){return tu.ColorPresentationRequest},"get")});var tc=rn();Object.defineProperty(e,"FoldingRangeRequest",{enumerable:!0,get:tO(function(){return tc.FoldingRangeRequest},"get")}),Object.defineProperty(e,"FoldingRangeRefreshRequest",{enumerable:!0,get:tO(function(){return tc.FoldingRangeRefreshRequest},"get")});var tp=ri();Object.defineProperty(e,"DeclarationRequest",{enumerable:!0,get:tO(function(){return tp.DeclarationRequest},"get")});var tf=ra();Object.defineProperty(e,"SelectionRangeRequest",{enumerable:!0,get:tO(function(){return tf.SelectionRangeRequest},"get")});var td=rs();Object.defineProperty(e,"WorkDoneProgress",{enumerable:!0,get:tO(function(){return td.WorkDoneProgress},"get")}),Object.defineProperty(e,"WorkDoneProgressCreateRequest",{enumerable:!0,get:tO(function(){return td.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(e,"WorkDoneProgressCancelNotification",{enumerable:!0,get:tO(function(){return td.WorkDoneProgressCancelNotification},"get")});var tm=ro();Object.defineProperty(e,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:tO(function(){return tm.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:tO(function(){return tm.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyPrepareRequest",{enumerable:!0,get:tO(function(){return tm.CallHierarchyPrepareRequest},"get")});var th=rl();Object.defineProperty(e,"TokenFormat",{enumerable:!0,get:tO(function(){return th.TokenFormat},"get")}),Object.defineProperty(e,"SemanticTokensRequest",{enumerable:!0,get:tO(function(){return th.SemanticTokensRequest},"get")}),Object.defineProperty(e,"SemanticTokensDeltaRequest",{enumerable:!0,get:tO(function(){return th.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(e,"SemanticTokensRangeRequest",{enumerable:!0,get:tO(function(){return th.SemanticTokensRangeRequest},"get")}),Object.defineProperty(e,"SemanticTokensRefreshRequest",{enumerable:!0,get:tO(function(){return th.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(e,"SemanticTokensRegistrationType",{enumerable:!0,get:tO(function(){return th.SemanticTokensRegistrationType},"get")});var ty=ru();Object.defineProperty(e,"ShowDocumentRequest",{enumerable:!0,get:tO(function(){return ty.ShowDocumentRequest},"get")});var tg=rc();Object.defineProperty(e,"LinkedEditingRangeRequest",{enumerable:!0,get:tO(function(){return tg.LinkedEditingRangeRequest},"get")});var tT=rp();Object.defineProperty(e,"FileOperationPatternKind",{enumerable:!0,get:tO(function(){return tT.FileOperationPatternKind},"get")}),Object.defineProperty(e,"DidCreateFilesNotification",{enumerable:!0,get:tO(function(){return tT.DidCreateFilesNotification},"get")}),Object.defineProperty(e,"WillCreateFilesRequest",{enumerable:!0,get:tO(function(){return tT.WillCreateFilesRequest},"get")}),Object.defineProperty(e,"DidRenameFilesNotification",{enumerable:!0,get:tO(function(){return tT.DidRenameFilesNotification},"get")}),Object.defineProperty(e,"WillRenameFilesRequest",{enumerable:!0,get:tO(function(){return tT.WillRenameFilesRequest},"get")}),Object.defineProperty(e,"DidDeleteFilesNotification",{enumerable:!0,get:tO(function(){return tT.DidDeleteFilesNotification},"get")}),Object.defineProperty(e,"WillDeleteFilesRequest",{enumerable:!0,get:tO(function(){return tT.WillDeleteFilesRequest},"get")});var t$=rf();Object.defineProperty(e,"UniquenessLevel",{enumerable:!0,get:tO(function(){return t$.UniquenessLevel},"get")}),Object.defineProperty(e,"MonikerKind",{enumerable:!0,get:tO(function(){return t$.MonikerKind},"get")}),Object.defineProperty(e,"MonikerRequest",{enumerable:!0,get:tO(function(){return t$.MonikerRequest},"get")});var tv=rd();Object.defineProperty(e,"TypeHierarchyPrepareRequest",{enumerable:!0,get:tO(function(){return tv.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(e,"TypeHierarchySubtypesRequest",{enumerable:!0,get:tO(function(){return tv.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(e,"TypeHierarchySupertypesRequest",{enumerable:!0,get:tO(function(){return tv.TypeHierarchySupertypesRequest},"get")});var tR=rm();Object.defineProperty(e,"InlineValueRequest",{enumerable:!0,get:tO(function(){return tR.InlineValueRequest},"get")}),Object.defineProperty(e,"InlineValueRefreshRequest",{enumerable:!0,get:tO(function(){return tR.InlineValueRefreshRequest},"get")});var tE=rh();Object.defineProperty(e,"InlayHintRequest",{enumerable:!0,get:tO(function(){return tE.InlayHintRequest},"get")}),Object.defineProperty(e,"InlayHintResolveRequest",{enumerable:!0,get:tO(function(){return tE.InlayHintResolveRequest},"get")}),Object.defineProperty(e,"InlayHintRefreshRequest",{enumerable:!0,get:tO(function(){return tE.InlayHintRefreshRequest},"get")});var tA=ry();Object.defineProperty(e,"DiagnosticServerCancellationData",{enumerable:!0,get:tO(function(){return tA.DiagnosticServerCancellationData},"get")}),Object.defineProperty(e,"DocumentDiagnosticReportKind",{enumerable:!0,get:tO(function(){return tA.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(e,"DocumentDiagnosticRequest",{enumerable:!0,get:tO(function(){return tA.DocumentDiagnosticRequest},"get")}),Object.defineProperty(e,"WorkspaceDiagnosticRequest",{enumerable:!0,get:tO(function(){return tA.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(e,"DiagnosticRefreshRequest",{enumerable:!0,get:tO(function(){return tA.DiagnosticRefreshRequest},"get")});var tb=rg();Object.defineProperty(e,"NotebookCellKind",{enumerable:!0,get:tO(function(){return tb.NotebookCellKind},"get")}),Object.defineProperty(e,"ExecutionSummary",{enumerable:!0,get:tO(function(){return tb.ExecutionSummary},"get")}),Object.defineProperty(e,"NotebookCell",{enumerable:!0,get:tO(function(){return tb.NotebookCell},"get")}),Object.defineProperty(e,"NotebookDocument",{enumerable:!0,get:tO(function(){return tb.NotebookDocument},"get")}),Object.defineProperty(e,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:tO(function(){return tb.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(e,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:tO(function(){return tb.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(e,"NotebookCellArrayChange",{enumerable:!0,get:tO(function(){return tb.NotebookCellArrayChange},"get")}),Object.defineProperty(e,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:tO(function(){return tb.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:tO(function(){return tb.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:tO(function(){return tb.DidCloseNotebookDocumentNotification},"get")});var tC=rT();Object.defineProperty(e,"InlineCompletionRequest",{enumerable:!0,get:tO(function(){return tC.InlineCompletionRequest},"get")});var tS=et||(e.TextDocumentFilter=et={});function tk(e){return ti.string(e)||ti.string(e.language)||ti.string(e.scheme)||ti.string(e.pattern)}tO(tk,"is"),tS.is=tk;var tx=er||(e.NotebookDocumentFilter=er={});function tN(e){return ti.objectLiteral(e)&&(ti.string(e.notebookType)||ti.string(e.scheme)||ti.string(e.pattern))}tO(tN,"is"),tx.is=tN;var tI=en||(e.NotebookCellTextDocumentFilter=en={});function t_(e){return ti.objectLiteral(e)&&(ti.string(e.notebook)||er.is(e.notebook))&&(void 0===e.language||ti.string(e.language))}tO(t_,"is"),tI.is=t_;var tw=ei||(e.DocumentSelector=ei={});function tP(e){if(!Array.isArray(e))return!1;for(let t of e)if(!ti.string(t)&&!et.is(t)&&!en.is(t))return!1;return!0}tO(tP,"is"),tw.is=tP,(t=ea||(e.RegistrationRequest=ea={})).method="client/registerCapability",t.messageDirection=tr.MessageDirection.serverToClient,t.type=new tr.ProtocolRequestType(t.method),(r=es||(e.UnregistrationRequest=es={})).method="client/unregisterCapability",r.messageDirection=tr.MessageDirection.serverToClient,r.type=new tr.ProtocolRequestType(r.method),(n=eo||(e.ResourceOperationKind=eo={})).Create="create",n.Rename="rename",n.Delete="delete",(i=el||(e.FailureHandlingKind=el={})).Abort="abort",i.Transactional="transactional",i.TextOnlyTransactional="textOnlyTransactional",i.Undo="undo",(a=eu||(e.PositionEncodingKind=eu={})).UTF8="utf-8",a.UTF16="utf-16",a.UTF32="utf-32";var tD=ec||(e.StaticRegistrationOptions=ec={});function tL(e){return e&&ti.string(e.id)&&e.id.length>0}tO(tL,"hasId"),tD.hasId=tL;var tM=ep||(e.TextDocumentRegistrationOptions=ep={});function tj(e){return e&&(null===e.documentSelector||ei.is(e.documentSelector))}tO(tj,"is"),tM.is=tj;var tF=ef||(e.WorkDoneProgressOptions=ef={});function tq(e){return ti.objectLiteral(e)&&(void 0===e.workDoneProgress||ti.boolean(e.workDoneProgress))}function tU(e){return e&&ti.boolean(e.workDoneProgress)}tO(tq,"is"),tF.is=tq,tO(tU,"hasWorkDoneProgress"),tF.hasWorkDoneProgress=tU,(s=ed||(e.InitializeRequest=ed={})).method="initialize",s.messageDirection=tr.MessageDirection.clientToServer,s.type=new tr.ProtocolRequestType(s.method),(em||(e.InitializeErrorCodes=em={})).unknownProtocolVersion=1,(o=eh||(e.InitializedNotification=eh={})).method="initialized",o.messageDirection=tr.MessageDirection.clientToServer,o.type=new tr.ProtocolNotificationType(o.method),(l=ey||(e.ShutdownRequest=ey={})).method="shutdown",l.messageDirection=tr.MessageDirection.clientToServer,l.type=new tr.ProtocolRequestType0(l.method),(u=eg||(e.ExitNotification=eg={})).method="exit",u.messageDirection=tr.MessageDirection.clientToServer,u.type=new tr.ProtocolNotificationType0(u.method),(c=eT||(e.DidChangeConfigurationNotification=eT={})).method="workspace/didChangeConfiguration",c.messageDirection=tr.MessageDirection.clientToServer,c.type=new tr.ProtocolNotificationType(c.method),(p=e$||(e.MessageType=e$={})).Error=1,p.Warning=2,p.Info=3,p.Log=4,p.Debug=5,(f=ev||(e.ShowMessageNotification=ev={})).method="window/showMessage",f.messageDirection=tr.MessageDirection.serverToClient,f.type=new tr.ProtocolNotificationType(f.method),(d=eR||(e.ShowMessageRequest=eR={})).method="window/showMessageRequest",d.messageDirection=tr.MessageDirection.serverToClient,d.type=new tr.ProtocolRequestType(d.method),(m=eE||(e.LogMessageNotification=eE={})).method="window/logMessage",m.messageDirection=tr.MessageDirection.serverToClient,m.type=new tr.ProtocolNotificationType(m.method),(h=eA||(e.TelemetryEventNotification=eA={})).method="telemetry/event",h.messageDirection=tr.MessageDirection.serverToClient,h.type=new tr.ProtocolNotificationType(h.method),(y=eb||(e.TextDocumentSyncKind=eb={})).None=0,y.Full=1,y.Incremental=2,(g=eC||(e.DidOpenTextDocumentNotification=eC={})).method="textDocument/didOpen",g.messageDirection=tr.MessageDirection.clientToServer,g.type=new tr.ProtocolNotificationType(g.method);var tB=eS||(e.TextDocumentContentChangeEvent=eS={});function tW(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}function tV(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}tO(tW,"isIncremental"),tB.isIncremental=tW,tO(tV,"isFull"),tB.isFull=tV,(T=ek||(e.DidChangeTextDocumentNotification=ek={})).method="textDocument/didChange",T.messageDirection=tr.MessageDirection.clientToServer,T.type=new tr.ProtocolNotificationType(T.method),($=ex||(e.DidCloseTextDocumentNotification=ex={})).method="textDocument/didClose",$.messageDirection=tr.MessageDirection.clientToServer,$.type=new tr.ProtocolNotificationType($.method),(v=eN||(e.DidSaveTextDocumentNotification=eN={})).method="textDocument/didSave",v.messageDirection=tr.MessageDirection.clientToServer,v.type=new tr.ProtocolNotificationType(v.method),(R=eI||(e.TextDocumentSaveReason=eI={})).Manual=1,R.AfterDelay=2,R.FocusOut=3,(E=e_||(e.WillSaveTextDocumentNotification=e_={})).method="textDocument/willSave",E.messageDirection=tr.MessageDirection.clientToServer,E.type=new tr.ProtocolNotificationType(E.method),(A=ew||(e.WillSaveTextDocumentWaitUntilRequest=ew={})).method="textDocument/willSaveWaitUntil",A.messageDirection=tr.MessageDirection.clientToServer,A.type=new tr.ProtocolRequestType(A.method),(b=eP||(e.DidChangeWatchedFilesNotification=eP={})).method="workspace/didChangeWatchedFiles",b.messageDirection=tr.MessageDirection.clientToServer,b.type=new tr.ProtocolNotificationType(b.method),(C=eO||(e.FileChangeType=eO={})).Created=1,C.Changed=2,C.Deleted=3;var tH=eD||(e.RelativePattern=eD={});function tY(e){return ti.objectLiteral(e)&&(tn.URI.is(e.baseUri)||tn.WorkspaceFolder.is(e.baseUri))&&ti.string(e.pattern)}tO(tY,"is"),tH.is=tY,(S=eL||(e.WatchKind=eL={})).Create=1,S.Change=2,S.Delete=4,(k=eM||(e.PublishDiagnosticsNotification=eM={})).method="textDocument/publishDiagnostics",k.messageDirection=tr.MessageDirection.serverToClient,k.type=new tr.ProtocolNotificationType(k.method),(x=ej||(e.CompletionTriggerKind=ej={})).Invoked=1,x.TriggerCharacter=2,x.TriggerForIncompleteCompletions=3,(N=eF||(e.CompletionRequest=eF={})).method="textDocument/completion",N.messageDirection=tr.MessageDirection.clientToServer,N.type=new tr.ProtocolRequestType(N.method),(I=eG||(e.CompletionResolveRequest=eG={})).method="completionItem/resolve",I.messageDirection=tr.MessageDirection.clientToServer,I.type=new tr.ProtocolRequestType(I.method),(_=ez||(e.HoverRequest=ez={})).method="textDocument/hover",_.messageDirection=tr.MessageDirection.clientToServer,_.type=new tr.ProtocolRequestType(_.method),(w=eK||(e.SignatureHelpTriggerKind=eK={})).Invoked=1,w.TriggerCharacter=2,w.ContentChange=3,(P=eq||(e.SignatureHelpRequest=eq={})).method="textDocument/signatureHelp",P.messageDirection=tr.MessageDirection.clientToServer,P.type=new tr.ProtocolRequestType(P.method),(O=eU||(e.DefinitionRequest=eU={})).method="textDocument/definition",O.messageDirection=tr.MessageDirection.clientToServer,O.type=new tr.ProtocolRequestType(O.method),(D=eB||(e.ReferencesRequest=eB={})).method="textDocument/references",D.messageDirection=tr.MessageDirection.clientToServer,D.type=new tr.ProtocolRequestType(D.method),(L=eW||(e.DocumentHighlightRequest=eW={})).method="textDocument/documentHighlight",L.messageDirection=tr.MessageDirection.clientToServer,L.type=new tr.ProtocolRequestType(L.method),(M=eV||(e.DocumentSymbolRequest=eV={})).method="textDocument/documentSymbol",M.messageDirection=tr.MessageDirection.clientToServer,M.type=new tr.ProtocolRequestType(M.method),(j=eH||(e.CodeActionRequest=eH={})).method="textDocument/codeAction",j.messageDirection=tr.MessageDirection.clientToServer,j.type=new tr.ProtocolRequestType(j.method),(F=eY||(e.CodeActionResolveRequest=eY={})).method="codeAction/resolve",F.messageDirection=tr.MessageDirection.clientToServer,F.type=new tr.ProtocolRequestType(F.method),(G=eZ||(e.WorkspaceSymbolRequest=eZ={})).method="workspace/symbol",G.messageDirection=tr.MessageDirection.clientToServer,G.type=new tr.ProtocolRequestType(G.method),(z=eX||(e.WorkspaceSymbolResolveRequest=eX={})).method="workspaceSymbol/resolve",z.messageDirection=tr.MessageDirection.clientToServer,z.type=new tr.ProtocolRequestType(z.method),(K=eJ||(e.CodeLensRequest=eJ={})).method="textDocument/codeLens",K.messageDirection=tr.MessageDirection.clientToServer,K.type=new tr.ProtocolRequestType(K.method),(q=eQ||(e.CodeLensResolveRequest=eQ={})).method="codeLens/resolve",q.messageDirection=tr.MessageDirection.clientToServer,q.type=new tr.ProtocolRequestType(q.method),(U=e0||(e.CodeLensRefreshRequest=e0={})).method="workspace/codeLens/refresh",U.messageDirection=tr.MessageDirection.serverToClient,U.type=new tr.ProtocolRequestType0(U.method),(B=e1||(e.DocumentLinkRequest=e1={})).method="textDocument/documentLink",B.messageDirection=tr.MessageDirection.clientToServer,B.type=new tr.ProtocolRequestType(B.method),(W=e2||(e.DocumentLinkResolveRequest=e2={})).method="documentLink/resolve",W.messageDirection=tr.MessageDirection.clientToServer,W.type=new tr.ProtocolRequestType(W.method),(V=e3||(e.DocumentFormattingRequest=e3={})).method="textDocument/formatting",V.messageDirection=tr.MessageDirection.clientToServer,V.type=new tr.ProtocolRequestType(V.method),(H=e9||(e.DocumentRangeFormattingRequest=e9={})).method="textDocument/rangeFormatting",H.messageDirection=tr.MessageDirection.clientToServer,H.type=new tr.ProtocolRequestType(H.method),(Y=e4||(e.DocumentRangesFormattingRequest=e4={})).method="textDocument/rangesFormatting",Y.messageDirection=tr.MessageDirection.clientToServer,Y.type=new tr.ProtocolRequestType(Y.method),(Z=e5||(e.DocumentOnTypeFormattingRequest=e5={})).method="textDocument/onTypeFormatting",Z.messageDirection=tr.MessageDirection.clientToServer,Z.type=new tr.ProtocolRequestType(Z.method),(e7||(e.PrepareSupportDefaultBehavior=e7={})).Identifier=1,(X=e8||(e.RenameRequest=e8={})).method="textDocument/rename",X.messageDirection=tr.MessageDirection.clientToServer,X.type=new tr.ProtocolRequestType(X.method),(J=e6||(e.PrepareRenameRequest=e6={})).method="textDocument/prepareRename",J.messageDirection=tr.MessageDirection.clientToServer,J.type=new tr.ProtocolRequestType(J.method),(Q=te||(e.ExecuteCommandRequest=te={})).method="workspace/executeCommand",Q.messageDirection=tr.MessageDirection.clientToServer,Q.type=new tr.ProtocolRequestType(Q.method),(ee=tt||(e.ApplyWorkspaceEditRequest=tt={})).method="workspace/applyEdit",ee.messageDirection=tr.MessageDirection.serverToClient,ee.type=new tr.ProtocolRequestType("workspace/applyEdit")}}),rv=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=void 0;var t=t9();function r(e,r,n,i){return t.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,t.createMessageConnection)(e,r,n,i)}tO(r,"createProtocolConnection"),e.createProtocolConnection=r}}),rR=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(e){var t,r,n=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tO(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=e&&e.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.LSPErrorCodes=e.createProtocolConnection=void 0,i(t9(),e),i((tK(),tG(tz)),e),i(t5(),e),i(r$(),e);var a=rv();Object.defineProperty(e,"createProtocolConnection",{enumerable:!0,get:tO(function(){return a.createProtocolConnection},"get")}),(t=r||(e.LSPErrorCodes=r={})).lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800}}),rE=tD({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:tO(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__exportStar||function(e,r){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(r,n)||t(r,e,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=void 0;var n=t4();function i(e,t,r,i){return(0,n.createMessageConnection)(e,t,r,i)}r(t4(),e),r(rR(),e),tO(i,"createProtocolConnection"),e.createProtocolConnection=i}}),rA={};tL(rA,{AbstractAstReflection:()=>rI,AbstractCstNode:()=>T_,AbstractLangiumParser:()=>TF,AbstractParserErrorMessageProvider:()=>Tz,AbstractThreadedAsyncParser:()=>vF,AstUtils:()=>rz,BiMap:()=>$P,Cancellation:()=>$s,CompositeCstNodeImpl:()=>TP,ContextCache:()=>$z,CstNodeBuilder:()=>TI,CstUtils:()=>rb,DEFAULT_TOKENIZE_OPTIONS:()=>vi,DONE_RESULT:()=>rj,DatatypeSymbol:()=>TL,DefaultAstNodeDescriptionProvider:()=>$2,DefaultAstNodeLocator:()=>$9,DefaultAsyncParser:()=>vj,DefaultCommentProvider:()=>vM,DefaultConfigurationProvider:()=>$5,DefaultDocumentBuilder:()=>ve,DefaultDocumentValidator:()=>$J,DefaultHydrator:()=>vK,DefaultIndexManager:()=>vt,DefaultJsonSerializer:()=>$V,DefaultLangiumDocumentFactory:()=>$C,DefaultLangiumDocuments:()=>$S,DefaultLangiumProfiler:()=>v8,DefaultLexer:()=>va,DefaultLexerErrorMessageProvider:()=>vn,DefaultLinker:()=>$x,DefaultNameProvider:()=>$I,DefaultReferenceDescriptionProvider:()=>$3,DefaultReferences:()=>$_,DefaultScopeComputation:()=>$O,DefaultScopeProvider:()=>$U,DefaultServiceRegistry:()=>$H,DefaultTokenBuilder:()=>$i,DefaultValueConverter:()=>$a,DefaultWorkspaceLock:()=>vz,DefaultWorkspaceManager:()=>vr,Deferred:()=>$h,Disposable:()=>e9,DisposableCache:()=>$F,DocumentCache:()=>$K,DocumentState:()=>e1,DocumentValidator:()=>e3,EMPTY_SCOPE:()=>$j,EMPTY_STREAM:()=>rM,EmptyFileSystem:()=>v3,EmptyFileSystemProvider:()=>v2,ErrorWithLocation:()=>i9,GrammarAST:()=>r2,GrammarUtils:()=>i3,IndentationAwareLexer:()=>v0,IndentationAwareTokenBuilder:()=>vQ,JSDocDocumentationProvider:()=>vL,LangiumCompletionParser:()=>Tq,LangiumParser:()=>TG,LangiumParserErrorMessageProvider:()=>TK,LeafCstNodeImpl:()=>Tw,LexingMode:()=>e5,MapScope:()=>$L,Module:()=>e4,MultiMap:()=>$w,MultiMapScope:()=>$M,OperationCancelled:()=>$f,ParserWorker:()=>vG,ProfilingTask:()=>v6,Reduction:()=>eB,RefResolving:()=>$k,RegExpUtils:()=>i7,RootCstNodeImpl:()=>TD,SimpleCache:()=>$G,StreamImpl:()=>rO,StreamScope:()=>$D,TextDocument:()=>eJ,TreeStreamImpl:()=>rG,URI:()=>$E,UriTrie:()=>$b,UriUtils:()=>e0,VALIDATE_EACH_NODE:()=>$X,ValidationCategory:()=>e2,ValidationRegistry:()=>$Z,ValueConverter:()=>eX,WorkspaceCache:()=>$q,assertCondition:()=>i5,assertUnreachable:()=>i4,createCompletionParser:()=>$t,createDefaultCoreModule:()=>vq,createDefaultSharedCoreModule:()=>vU,createGrammarConfig:()=>a7,createLangiumParser:()=>$r,createParser:()=>TV,delayNextTick:()=>$o,diagnosticData:()=>$Y,eagerLoad:()=>vV,getDiagnosticRange:()=>$Q,indentationBuilderDefaultOptions:()=>vJ,inject:()=>vB,interruptAndCheck:()=>$m,isAstNode:()=>rC,isAstNodeDescription:()=>rx,isAstNodeWithComment:()=>$B,isCompositeCstNode:()=>r_,isIMultiModeLexerDefinition:()=>vo,isJSDoc:()=>vc,isLeafCstNode:()=>rw,isLinkingError:()=>rN,isMultiReference:()=>rk,isNamed:()=>$N,isOperationCancelled:()=>$d,isReference:()=>rS,isRootCstNode:()=>rP,isTokenTypeArray:()=>vs,isTokenTypeDictionary:()=>vl,loadGrammarFromJson:()=>v7,parseJSDoc:()=>vu,prepareLangiumParser:()=>$n,setInterruptionPeriod:()=>$p,startCancelableOperation:()=>$c,stream:()=>rF,toDiagnosticData:()=>$1,toDiagnosticSeverity:()=>$0});var rb={};function rC(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function rS(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"ref"in e}function rk(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"items"in e}function rx(e){return"object"==typeof e&&null!==e&&"string"==typeof e.name&&"string"==typeof e.type&&"string"==typeof e.path}function rN(e){return"object"==typeof e&&null!==e&&"object"==typeof e.info&&"string"==typeof e.message}tL(rb,{DefaultNameRegexp:()=>iU,RangeComparison:()=>eW,compareRange:()=>iK,findCommentNode:()=>iW,findDeclarationNodeAtOffset:()=>iB,findLeafNodeAtOffset:()=>iH,findLeafNodeBeforeOffset:()=>iY,flattenCst:()=>ij,getDatatypeNode:()=>iL,getInteriorNodes:()=>i0,getNextNode:()=>iJ,getPreviousNode:()=>iX,getStartlineNode:()=>iQ,inRange:()=>iq,isChildNode:()=>iF,isCommentNode:()=>iV,streamCst:()=>iM,toDocumentSegment:()=>iz,tokenToRange:()=>iG}),tO(rC,"isAstNode"),tO(rS,"isReference"),tO(rk,"isMultiReference"),tO(rx,"isAstNodeDescription"),tO(rN,"isLinkingError");var rI=class{static{tO(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let t=this.types[e.container.$type];if(!t)throw Error(`Type ${e.container.$type||"undefined"} not found.`);let r=t.properties[e.property]?.referenceType;if(!r)throw Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){let t=this.types[e];return t||{name:e,properties:{},superTypes:[]}}isInstance(e,t){return rC(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});let n=r[t];if(void 0!==n)return n;{let n=this.types[e],i=!!n&&n.superTypes.some(e=>this.isSubtype(e,t));return r[t]=i,i}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let t=this.getAllTypes(),r=[];for(let n of t)this.isSubtype(n,e)&&r.push(n);return this.allSubtypes[e]=r,r}}};function r_(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function rw(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function rP(e){return r_(e)&&"string"==typeof e.fullText}tO(r_,"isCompositeCstNode"),tO(rw,"isLeafCstNode"),tO(rP,"isRootCstNode");var rO=class e{static{tO(this,"StreamImpl")}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:tO(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),t=0,r=e.next();for(;!r.done;)t++,r=e.next();return t}toArray(){let e,t=[],r=this.iterator();do void 0!==(e=r.next()).value&&t.push(e.value);while(!e.done)return t}toSet(){return new Set(this)}toMap(e,t){return new Map(this.map(r=>[e?e(r):r,t?t(r):r]))}toString(){return this.join()}concat(t){return new e(()=>({first:this.startFn(),firstDone:!1,iterator:t[Symbol.iterator]()}),e=>{let t;if(!e.firstDone){do if(!(t=this.nextFn(e.first)).done)return t;while(!t.done)e.firstDone=!0}do if(!(t=e.iterator.next()).done)return t;while(!t.done)return rj})}join(e=","){let t,r=this.iterator(),n="",i=!1;do(t=r.next()).done||(i&&(n+=e),n+=rD(t.value)),i=!0;while(!t.done)return n}indexOf(e,t=0){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(n>=t&&i.value===e)return n;i=r.next(),n++}return -1}every(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)e(n.value,r),n=t.next(),r++}map(t){return new e(this.startFn,e=>{let{done:r,value:n}=this.nextFn(e);return r?rj:{done:!1,value:t(n)}})}filter(t){return new e(this.startFn,e=>{let r;do if(!(r=this.nextFn(e)).done&&t(r.value))return r;while(!r.done)return rj})}nonNullable(){return this.filter(e=>null!=e)}reduce(e,t){let r=this.iterator(),n=t,i=r.next();for(;!i.done;)n=void 0===n?i.value:e(n,i.value),i=r.next();return n}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let n=e.next();if(n.done)return r;let i=this.recursiveReduce(e,t,r);return void 0===i?n.value:t(i,n.value)}find(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(e(r.value))return r.value;r=t.next()}}findIndex(e){let t=this.iterator(),r=0,n=t.next();for(;!n.done;){if(e(n.value))return r;n=t.next(),r++}return -1}includes(e){let t=this.iterator(),r=t.next();for(;!r.done;){if(r.value===e)return!0;r=t.next()}return!1}flatMap(t){return new e(()=>({this:this.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:r,value:n}=this.nextFn(e.this);if(!r){let r=t(n);if(!rL(r))return{done:!1,value:r};e.iterator=r[Symbol.iterator]()}}while(e.iterator)return rj})}flat(t){if(void 0===t&&(t=1),t<=0)return this;let r=t>1?this.flat(t-1):this;return new e(()=>({this:r.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}let{done:t,value:n}=r.nextFn(e.this);if(!t)if(!rL(n))return{done:!1,value:n};else e.iterator=n[Symbol.iterator]()}while(e.iterator)return rj})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(t=1){return new e(()=>{let e=this.startFn();for(let r=0;r<t&&!this.nextFn(e).done;r++);return e},this.nextFn)}limit(t){return new e(()=>({size:0,state:this.startFn()}),e=>(e.size++,e.size>t)?rj:this.nextFn(e.state))}distinct(t){return new e(()=>({set:new Set,internalState:this.startFn()}),e=>{let r;do if(!(r=this.nextFn(e.internalState)).done){let n=t?t(r.value):r.value;if(!e.set.has(n))return e.set.add(n),r}while(!r.done)return rj})}exclude(e,t){let r=new Set;for(let n of e){let e=t?t(n):n;r.add(e)}return this.filter(e=>{let n=t?t(e):e;return!r.has(n)})}};function rD(e){return"string"==typeof e?e:void 0===e?"undefined":"function"==typeof e.toString?e.toString():Object.prototype.toString.call(e)}function rL(e){return!!e&&"function"==typeof e[Symbol.iterator]}tO(rD,"toString"),tO(rL,"isIterable");var rM=new rO(()=>void 0,()=>rj),rj=Object.freeze({done:!0,value:void 0});function rF(...e){if(1===e.length){let t=e[0];if(t instanceof rO)return t;if(rL(t))return new rO(()=>t[Symbol.iterator](),e=>e.next());if("number"==typeof t.length)return new rO(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:rj)}return e.length>1?new rO(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){let r=e[t.collIndex++];rL(r)?t.iterator=r[Symbol.iterator]():r&&"number"==typeof r.length&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length)return rj}):rM}tO(rF,"stream");var rG=class extends rO{static{tO(this,"TreeStreamImpl")}constructor(e,t,r){super(()=>({iterators:r?.includeRoot?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){let r=e.iterators[e.iterators.length-1].next();if(!r.done)return e.iterators.push(t(r.value)[Symbol.iterator]()),r;e.iterators.pop()}return rj})}iterator(){let e={state:this.startFn(),next:tO(()=>this.nextFn(e.state),"next"),prune:tO(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};!function(e){function t(e){return e.reduce((e,t)=>e+t,0)}function r(e){return e.reduce((e,t)=>e*t,0)}function n(e){return e.reduce((e,t)=>Math.min(e,t))}function i(e){return e.reduce((e,t)=>Math.max(e,t))}tO(t,"sum"),e.sum=t,tO(r,"product"),e.product=r,tO(n,"min"),e.min=n,tO(i,"max"),e.max=i}(eB||(eB={}));var rz={};function rK(e,t={}){for(let[r,n]of Object.entries(e))!r.startsWith("$")&&(Array.isArray(n)?n.forEach((n,i)=>{rC(n)&&(n.$container=e,n.$containerProperty=r,n.$containerIndex=i,t.deep&&rK(n,t))}):rC(n)&&(n.$container=e,n.$containerProperty=r,t.deep&&rK(n,t)))}function rq(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function rU(e,t){let r=e;for(;r;){if(t(r))return!0;r=r.$container}return!1}function rB(e){let t=rW(e).$document;if(!t)throw Error("AST node has no document.");return t}function rW(e){for(;e.$container;)e=e.$container;return e}function rV(e){return rS(e)?e.ref?[e.ref]:[]:rk(e)?e.items.map(e=>e.ref):[]}function rH(e,t){if(!e)throw Error("Node must be an AstNode.");let r=t?.range;return new rO(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let n=t.keys[t.keyIndex];if(!n.startsWith("$")){let i=e[n];if(rC(i)){if(t.keyIndex++,rX(i,r))return{done:!1,value:i}}else if(Array.isArray(i)){for(;t.arrayIndex<i.length;){let e=i[t.arrayIndex++];if(rC(e)&&rX(e,r))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return rj})}function rY(e,t){if(!e)throw Error("Root node must be an AstNode.");return new rG(e,e=>rH(e,t))}function rZ(e,t){if(e){if(t?.range&&!rX(e,t.range))return new rG(e,()=>[])}else throw Error("Root node must be an AstNode.");return new rG(e,e=>rH(e,t),{includeRoot:!0})}function rX(e,t){if(!t)return!0;let r=e.$cstNode?.range;return!!r&&iq(r,t)}function rJ(e){return new rO(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let r=t.keys[t.keyIndex];if(!r.startsWith("$")){let n=e[r];if(rS(n)||rk(n))return t.keyIndex++,{done:!1,value:{reference:n,container:e,property:r}};if(Array.isArray(n)){for(;t.arrayIndex<n.length;){let i=t.arrayIndex++,a=n[i];if(rS(a)||rk(n))return{done:!1,value:{reference:a,container:e,property:r,index:i}}}t.arrayIndex=0}}t.keyIndex++}return rj})}function rQ(e,t){for(let r of Object.values(e.getTypeMetaData(t.$type).properties))void 0!==r.defaultValue&&void 0===t[r.name]&&(t[r.name]=r0(r.defaultValue))}function r0(e){return Array.isArray(e)?[...e.map(r0)]:e}function r1(e,t,r){let n={$type:e.$type};for(let[i,a]of(r&&(r.set(e,n),r.set(n,e)),Object.entries(e)))if(!i.startsWith("$"))if(rC(a))n[i]=r1(a,t,r);else if(rS(a))n[i]=t(n,i,a.$refNode,a.$refText,a);else if(Array.isArray(a)){let e=[];for(let s of a)rC(s)?e.push(r1(s,t,r)):rS(s)?e.push(t(n,i,s.$refNode,s.$refText,s)):e.push(s);n[i]=e}else n[i]=a;return rK(n,{deep:!0}),n}tL(rz,{assignMandatoryProperties:()=>rQ,copyAstNode:()=>r1,findRootNode:()=>rW,getContainerOfType:()=>rq,getDocument:()=>rB,getReferenceNodes:()=>rV,hasContainerOfType:()=>rU,linkContentToContainer:()=>rK,streamAllContents:()=>rY,streamAst:()=>rZ,streamContents:()=>rH,streamReferences:()=>rJ}),tO(rK,"linkContentToContainer"),tO(rq,"getContainerOfType"),tO(rU,"hasContainerOfType"),tO(rB,"getDocument"),tO(rW,"findRootNode"),tO(rV,"getReferenceNodes"),tO(rH,"streamContents"),tO(rY,"streamAllContents"),tO(rZ,"streamAst"),tO(rX,"isAstNodeInRange"),tO(rJ,"streamReferences"),tO(rQ,"assignMandatoryProperties"),tO(r0,"copyDefaultValue"),tO(r1,"copyAstNode");var r2={};tL(r2,{AbstractElement:()=>r9,AbstractParserRule:()=>r5,AbstractRule:()=>r8,AbstractType:()=>ne,Action:()=>nr,Alternatives:()=>ni,ArrayLiteral:()=>ns,ArrayType:()=>nl,Assignment:()=>nc,BooleanLiteral:()=>nf,CharacterRange:()=>nm,Condition:()=>ny,Conjunction:()=>nT,CrossReference:()=>nv,Disjunction:()=>nE,EndOfFile:()=>nb,Grammar:()=>nS,GrammarImport:()=>nx,Group:()=>nI,InferredType:()=>nw,InfixRule:()=>nO,InfixRuleOperatorList:()=>nL,InfixRuleOperators:()=>nj,Interface:()=>nG,Keyword:()=>nK,LangiumGrammarAstReflection:()=>iO,LangiumGrammarTerminals:()=>r3,NamedArgument:()=>nU,NegatedToken:()=>nW,Negation:()=>nH,NumberLiteral:()=>nZ,Parameter:()=>nJ,ParameterReference:()=>n0,ParserRule:()=>n2,ReferenceType:()=>n9,RegexToken:()=>n5,ReturnType:()=>n8,RuleCall:()=>ie,SimpleType:()=>ir,StringLiteral:()=>ia,TerminalAlternatives:()=>io,TerminalElement:()=>iu,TerminalGroup:()=>ip,TerminalRule:()=>im,TerminalRuleCall:()=>iy,Type:()=>iT,TypeAttribute:()=>iv,TypeDefinition:()=>iE,UnionType:()=>ib,UnorderedGroup:()=>iS,UntilToken:()=>ix,ValueLiteral:()=>iI,Wildcard:()=>iw,isAbstractElement:()=>r4,isAbstractParserRule:()=>r7,isAbstractRule:()=>r6,isAbstractType:()=>nt,isAction:()=>nn,isAlternatives:()=>na,isArrayLiteral:()=>no,isArrayType:()=>nu,isAssignment:()=>np,isBooleanLiteral:()=>nd,isCharacterRange:()=>nh,isCondition:()=>ng,isConjunction:()=>n$,isCrossReference:()=>nR,isDisjunction:()=>nA,isEndOfFile:()=>nC,isGrammar:()=>nk,isGrammarImport:()=>nN,isGroup:()=>n_,isInferredType:()=>nP,isInfixRule:()=>nD,isInfixRuleOperatorList:()=>nM,isInfixRuleOperators:()=>nF,isInterface:()=>nz,isKeyword:()=>nq,isNamedArgument:()=>nB,isNegatedToken:()=>nV,isNegation:()=>nY,isNumberLiteral:()=>nX,isParameter:()=>nQ,isParameterReference:()=>n1,isParserRule:()=>n3,isReferenceType:()=>n4,isRegexToken:()=>n7,isReturnType:()=>n6,isRuleCall:()=>it,isSimpleType:()=>ii,isStringLiteral:()=>is,isTerminalAlternatives:()=>il,isTerminalElement:()=>ic,isTerminalGroup:()=>id,isTerminalRule:()=>ih,isTerminalRuleCall:()=>ig,isType:()=>i$,isTypeAttribute:()=>iR,isTypeDefinition:()=>iA,isUnionType:()=>iC,isUnorderedGroup:()=>ik,isUntilToken:()=>iN,isValueLiteral:()=>i_,isWildcard:()=>iP,reflection:()=>iD});var r3={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},r9={$type:"AbstractElement",cardinality:"cardinality"};function r4(e){return iD.isInstance(e,r9.$type)}tO(r4,"isAbstractElement");var r5={$type:"AbstractParserRule"};function r7(e){return iD.isInstance(e,r5.$type)}tO(r7,"isAbstractParserRule");var r8={$type:"AbstractRule"};function r6(e){return iD.isInstance(e,r8.$type)}tO(r6,"isAbstractRule");var ne={$type:"AbstractType"};function nt(e){return iD.isInstance(e,ne.$type)}tO(nt,"isAbstractType");var nr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function nn(e){return iD.isInstance(e,nr.$type)}tO(nn,"isAction");var ni={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function na(e){return iD.isInstance(e,ni.$type)}tO(na,"isAlternatives");var ns={$type:"ArrayLiteral",elements:"elements"};function no(e){return iD.isInstance(e,ns.$type)}tO(no,"isArrayLiteral");var nl={$type:"ArrayType",elementType:"elementType"};function nu(e){return iD.isInstance(e,nl.$type)}tO(nu,"isArrayType");var nc={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function np(e){return iD.isInstance(e,nc.$type)}tO(np,"isAssignment");var nf={$type:"BooleanLiteral",true:"true"};function nd(e){return iD.isInstance(e,nf.$type)}tO(nd,"isBooleanLiteral");var nm={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function nh(e){return iD.isInstance(e,nm.$type)}tO(nh,"isCharacterRange");var ny={$type:"Condition"};function ng(e){return iD.isInstance(e,ny.$type)}tO(ng,"isCondition");var nT={$type:"Conjunction",left:"left",right:"right"};function n$(e){return iD.isInstance(e,nT.$type)}tO(n$,"isConjunction");var nv={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function nR(e){return iD.isInstance(e,nv.$type)}tO(nR,"isCrossReference");var nE={$type:"Disjunction",left:"left",right:"right"};function nA(e){return iD.isInstance(e,nE.$type)}tO(nA,"isDisjunction");var nb={$type:"EndOfFile",cardinality:"cardinality"};function nC(e){return iD.isInstance(e,nb.$type)}tO(nC,"isEndOfFile");var nS={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function nk(e){return iD.isInstance(e,nS.$type)}tO(nk,"isGrammar");var nx={$type:"GrammarImport",path:"path"};function nN(e){return iD.isInstance(e,nx.$type)}tO(nN,"isGrammarImport");var nI={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function n_(e){return iD.isInstance(e,nI.$type)}tO(n_,"isGroup");var nw={$type:"InferredType",name:"name"};function nP(e){return iD.isInstance(e,nw.$type)}tO(nP,"isInferredType");var nO={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function nD(e){return iD.isInstance(e,nO.$type)}tO(nD,"isInfixRule");var nL={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function nM(e){return iD.isInstance(e,nL.$type)}tO(nM,"isInfixRuleOperatorList");var nj={$type:"InfixRuleOperators",precedences:"precedences"};function nF(e){return iD.isInstance(e,nj.$type)}tO(nF,"isInfixRuleOperators");var nG={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function nz(e){return iD.isInstance(e,nG.$type)}tO(nz,"isInterface");var nK={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function nq(e){return iD.isInstance(e,nK.$type)}tO(nq,"isKeyword");var nU={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function nB(e){return iD.isInstance(e,nU.$type)}tO(nB,"isNamedArgument");var nW={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function nV(e){return iD.isInstance(e,nW.$type)}tO(nV,"isNegatedToken");var nH={$type:"Negation",value:"value"};function nY(e){return iD.isInstance(e,nH.$type)}tO(nY,"isNegation");var nZ={$type:"NumberLiteral",value:"value"};function nX(e){return iD.isInstance(e,nZ.$type)}tO(nX,"isNumberLiteral");var nJ={$type:"Parameter",name:"name"};function nQ(e){return iD.isInstance(e,nJ.$type)}tO(nQ,"isParameter");var n0={$type:"ParameterReference",parameter:"parameter"};function n1(e){return iD.isInstance(e,n0.$type)}tO(n1,"isParameterReference");var n2={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function n3(e){return iD.isInstance(e,n2.$type)}tO(n3,"isParserRule");var n9={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function n4(e){return iD.isInstance(e,n9.$type)}tO(n4,"isReferenceType");var n5={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function n7(e){return iD.isInstance(e,n5.$type)}tO(n7,"isRegexToken");var n8={$type:"ReturnType",name:"name"};function n6(e){return iD.isInstance(e,n8.$type)}tO(n6,"isReturnType");var ie={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function it(e){return iD.isInstance(e,ie.$type)}tO(it,"isRuleCall");var ir={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function ii(e){return iD.isInstance(e,ir.$type)}tO(ii,"isSimpleType");var ia={$type:"StringLiteral",value:"value"};function is(e){return iD.isInstance(e,ia.$type)}tO(is,"isStringLiteral");var io={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function il(e){return iD.isInstance(e,io.$type)}tO(il,"isTerminalAlternatives");var iu={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function ic(e){return iD.isInstance(e,iu.$type)}tO(ic,"isTerminalElement");var ip={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function id(e){return iD.isInstance(e,ip.$type)}tO(id,"isTerminalGroup");var im={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function ih(e){return iD.isInstance(e,im.$type)}tO(ih,"isTerminalRule");var iy={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function ig(e){return iD.isInstance(e,iy.$type)}tO(ig,"isTerminalRuleCall");var iT={$type:"Type",name:"name",type:"type"};function i$(e){return iD.isInstance(e,iT.$type)}tO(i$,"isType");var iv={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function iR(e){return iD.isInstance(e,iv.$type)}tO(iR,"isTypeAttribute");var iE={$type:"TypeDefinition"};function iA(e){return iD.isInstance(e,iE.$type)}tO(iA,"isTypeDefinition");var ib={$type:"UnionType",types:"types"};function iC(e){return iD.isInstance(e,ib.$type)}tO(iC,"isUnionType");var iS={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function ik(e){return iD.isInstance(e,iS.$type)}tO(ik,"isUnorderedGroup");var ix={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function iN(e){return iD.isInstance(e,ix.$type)}tO(iN,"isUntilToken");var iI={$type:"ValueLiteral"};function i_(e){return iD.isInstance(e,iI.$type)}tO(i_,"isValueLiteral");var iw={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function iP(e){return iD.isInstance(e,iw.$type)}tO(iP,"isWildcard");var iO=class extends rI{static{tO(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:r9.$type,properties:{cardinality:{name:r9.cardinality}},superTypes:[]},AbstractParserRule:{name:r5.$type,properties:{},superTypes:[r8.$type,ne.$type]},AbstractRule:{name:r8.$type,properties:{},superTypes:[]},AbstractType:{name:ne.$type,properties:{},superTypes:[]},Action:{name:nr.$type,properties:{cardinality:{name:nr.cardinality},feature:{name:nr.feature},inferredType:{name:nr.inferredType},operator:{name:nr.operator},type:{name:nr.type,referenceType:ne.$type}},superTypes:[r9.$type]},Alternatives:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},elements:{name:ni.elements,defaultValue:[]}},superTypes:[r9.$type]},ArrayLiteral:{name:ns.$type,properties:{elements:{name:ns.elements,defaultValue:[]}},superTypes:[iI.$type]},ArrayType:{name:nl.$type,properties:{elementType:{name:nl.elementType}},superTypes:[iE.$type]},Assignment:{name:nc.$type,properties:{cardinality:{name:nc.cardinality},feature:{name:nc.feature},operator:{name:nc.operator},predicate:{name:nc.predicate},terminal:{name:nc.terminal}},superTypes:[r9.$type]},BooleanLiteral:{name:nf.$type,properties:{true:{name:nf.true,defaultValue:!1}},superTypes:[ny.$type,iI.$type]},CharacterRange:{name:nm.$type,properties:{cardinality:{name:nm.cardinality},left:{name:nm.left},lookahead:{name:nm.lookahead},parenthesized:{name:nm.parenthesized,defaultValue:!1},right:{name:nm.right}},superTypes:[iu.$type]},Condition:{name:ny.$type,properties:{},superTypes:[]},Conjunction:{name:nT.$type,properties:{left:{name:nT.left},right:{name:nT.right}},superTypes:[ny.$type]},CrossReference:{name:nv.$type,properties:{cardinality:{name:nv.cardinality},deprecatedSyntax:{name:nv.deprecatedSyntax,defaultValue:!1},isMulti:{name:nv.isMulti,defaultValue:!1},terminal:{name:nv.terminal},type:{name:nv.type,referenceType:ne.$type}},superTypes:[r9.$type]},Disjunction:{name:nE.$type,properties:{left:{name:nE.left},right:{name:nE.right}},superTypes:[ny.$type]},EndOfFile:{name:nb.$type,properties:{cardinality:{name:nb.cardinality}},superTypes:[r9.$type]},Grammar:{name:nS.$type,properties:{imports:{name:nS.imports,defaultValue:[]},interfaces:{name:nS.interfaces,defaultValue:[]},isDeclared:{name:nS.isDeclared,defaultValue:!1},name:{name:nS.name},rules:{name:nS.rules,defaultValue:[]},types:{name:nS.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:nx.$type,properties:{path:{name:nx.path}},superTypes:[]},Group:{name:nI.$type,properties:{cardinality:{name:nI.cardinality},elements:{name:nI.elements,defaultValue:[]},guardCondition:{name:nI.guardCondition},predicate:{name:nI.predicate}},superTypes:[r9.$type]},InferredType:{name:nw.$type,properties:{name:{name:nw.name}},superTypes:[ne.$type]},InfixRule:{name:nO.$type,properties:{call:{name:nO.call},dataType:{name:nO.dataType},inferredType:{name:nO.inferredType},name:{name:nO.name},operators:{name:nO.operators},parameters:{name:nO.parameters,defaultValue:[]},returnType:{name:nO.returnType,referenceType:ne.$type}},superTypes:[r5.$type]},InfixRuleOperatorList:{name:nL.$type,properties:{associativity:{name:nL.associativity},operators:{name:nL.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:nj.$type,properties:{precedences:{name:nj.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:nG.$type,properties:{attributes:{name:nG.attributes,defaultValue:[]},name:{name:nG.name},superTypes:{name:nG.superTypes,defaultValue:[],referenceType:ne.$type}},superTypes:[ne.$type]},Keyword:{name:nK.$type,properties:{cardinality:{name:nK.cardinality},predicate:{name:nK.predicate},value:{name:nK.value}},superTypes:[r9.$type]},NamedArgument:{name:nU.$type,properties:{calledByName:{name:nU.calledByName,defaultValue:!1},parameter:{name:nU.parameter,referenceType:nJ.$type},value:{name:nU.value}},superTypes:[]},NegatedToken:{name:nW.$type,properties:{cardinality:{name:nW.cardinality},lookahead:{name:nW.lookahead},parenthesized:{name:nW.parenthesized,defaultValue:!1},terminal:{name:nW.terminal}},superTypes:[iu.$type]},Negation:{name:nH.$type,properties:{value:{name:nH.value}},superTypes:[ny.$type]},NumberLiteral:{name:nZ.$type,properties:{value:{name:nZ.value}},superTypes:[iI.$type]},Parameter:{name:nJ.$type,properties:{name:{name:nJ.name}},superTypes:[]},ParameterReference:{name:n0.$type,properties:{parameter:{name:n0.parameter,referenceType:nJ.$type}},superTypes:[ny.$type]},ParserRule:{name:n2.$type,properties:{dataType:{name:n2.dataType},definition:{name:n2.definition},entry:{name:n2.entry,defaultValue:!1},fragment:{name:n2.fragment,defaultValue:!1},inferredType:{name:n2.inferredType},name:{name:n2.name},parameters:{name:n2.parameters,defaultValue:[]},returnType:{name:n2.returnType,referenceType:ne.$type}},superTypes:[r5.$type]},ReferenceType:{name:n9.$type,properties:{isMulti:{name:n9.isMulti,defaultValue:!1},referenceType:{name:n9.referenceType}},superTypes:[iE.$type]},RegexToken:{name:n5.$type,properties:{cardinality:{name:n5.cardinality},lookahead:{name:n5.lookahead},parenthesized:{name:n5.parenthesized,defaultValue:!1},regex:{name:n5.regex}},superTypes:[iu.$type]},ReturnType:{name:n8.$type,properties:{name:{name:n8.name}},superTypes:[]},RuleCall:{name:ie.$type,properties:{arguments:{name:ie.arguments,defaultValue:[]},cardinality:{name:ie.cardinality},predicate:{name:ie.predicate},rule:{name:ie.rule,referenceType:r8.$type}},superTypes:[r9.$type]},SimpleType:{name:ir.$type,properties:{primitiveType:{name:ir.primitiveType},stringType:{name:ir.stringType},typeRef:{name:ir.typeRef,referenceType:ne.$type}},superTypes:[iE.$type]},StringLiteral:{name:ia.$type,properties:{value:{name:ia.value}},superTypes:[iI.$type]},TerminalAlternatives:{name:io.$type,properties:{cardinality:{name:io.cardinality},elements:{name:io.elements,defaultValue:[]},lookahead:{name:io.lookahead},parenthesized:{name:io.parenthesized,defaultValue:!1}},superTypes:[iu.$type]},TerminalElement:{name:iu.$type,properties:{cardinality:{name:iu.cardinality},lookahead:{name:iu.lookahead},parenthesized:{name:iu.parenthesized,defaultValue:!1}},superTypes:[r9.$type]},TerminalGroup:{name:ip.$type,properties:{cardinality:{name:ip.cardinality},elements:{name:ip.elements,defaultValue:[]},lookahead:{name:ip.lookahead},parenthesized:{name:ip.parenthesized,defaultValue:!1}},superTypes:[iu.$type]},TerminalRule:{name:im.$type,properties:{definition:{name:im.definition},fragment:{name:im.fragment,defaultValue:!1},hidden:{name:im.hidden,defaultValue:!1},name:{name:im.name},type:{name:im.type}},superTypes:[r8.$type]},TerminalRuleCall:{name:iy.$type,properties:{cardinality:{name:iy.cardinality},lookahead:{name:iy.lookahead},parenthesized:{name:iy.parenthesized,defaultValue:!1},rule:{name:iy.rule,referenceType:im.$type}},superTypes:[iu.$type]},Type:{name:iT.$type,properties:{name:{name:iT.name},type:{name:iT.type}},superTypes:[ne.$type]},TypeAttribute:{name:iv.$type,properties:{defaultValue:{name:iv.defaultValue},isOptional:{name:iv.isOptional,defaultValue:!1},name:{name:iv.name},type:{name:iv.type}},superTypes:[]},TypeDefinition:{name:iE.$type,properties:{},superTypes:[]},UnionType:{name:ib.$type,properties:{types:{name:ib.types,defaultValue:[]}},superTypes:[iE.$type]},UnorderedGroup:{name:iS.$type,properties:{cardinality:{name:iS.cardinality},elements:{name:iS.elements,defaultValue:[]}},superTypes:[r9.$type]},UntilToken:{name:ix.$type,properties:{cardinality:{name:ix.cardinality},lookahead:{name:ix.lookahead},parenthesized:{name:ix.parenthesized,defaultValue:!1},terminal:{name:ix.terminal}},superTypes:[iu.$type]},ValueLiteral:{name:iI.$type,properties:{},superTypes:[]},Wildcard:{name:iw.$type,properties:{cardinality:{name:iw.cardinality},lookahead:{name:iw.lookahead},parenthesized:{name:iw.parenthesized,defaultValue:!1}},superTypes:[iu.$type]}}}},iD=new iO;function iL(e){let t=e,r=!1;for(;t;){let e=rq(t.grammarSource,n3);if(e&&e.dataType)t=t.container,r=!0;else if(r)return t;else break}}function iM(e){return new rG(e,e=>r_(e)?e.content:[],{includeRoot:!0})}function ij(e){return iM(e).filter(rw)}function iF(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}function iG(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function iz(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function iK(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return eW.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return eW.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?eW.Inside:r?eW.OverlapBack:n?eW.OverlapFront:eW.Outside}function iq(e,t){return iK(e,t)>eW.After}tO(iL,"getDatatypeNode"),tO(iM,"streamCst"),tO(ij,"flattenCst"),tO(iF,"isChildNode"),tO(iG,"tokenToRange"),tO(iz,"toDocumentSegment"),(n=eW||(eW={}))[n.Before=0]="Before",n[n.After=1]="After",n[n.OverlapFront=2]="OverlapFront",n[n.OverlapBack=3]="OverlapBack",n[n.Inside=4]="Inside",n[n.Outside=5]="Outside",tO(iK,"compareRange"),tO(iq,"inRange");var iU=/^[\w\p{L}]$/u;function iB(e,t,r=iU){if(e){if(t>0){let n=t-e.offset,i=e.text.charAt(n);!r.test(i)&&t--}return iH(e,t)}}function iW(e,t){if(e){let r=iX(e,!0);if(r&&iV(r,t))return r;if(rP(e)){let r=e.content.findIndex(e=>!e.hidden);for(let n=r-1;n>=0;n--){let r=e.content[n];if(iV(r,t))return r}}}}function iV(e,t){return rw(e)&&t.includes(e.tokenType.name)}function iH(e,t){if(rw(e))return e;if(r_(e)){let r=iZ(e,t,!1);if(r)return iH(r,t)}}function iY(e,t){if(rw(e))return e;if(r_(e)){let r=iZ(e,t,!0);if(r)return iY(r,t)}}function iZ(e,t,r){let n,i=0,a=e.content.length-1;for(;i<=a;){let s=Math.floor((i+a)/2),o=e.content[s];if(o.offset<=t&&o.end>t)return o;o.end<=t?(n=r?o:void 0,i=s+1):a=s-1}return n}function iX(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let e=r.content[n];if(t||!e.hidden)return e}e=r}}function iJ(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e),i=r.content.length-1;for(;n<i;){n++;let e=r.content[n];if(t||!e.hidden)return e}e=r}}function iQ(e){let t;if(0===e.range.start.character)return e;let r=e.range.start.line,n=e;for(;e.container;){let i=e.container,a=t??i.content.indexOf(e);if(0===a?(e=i,t=void 0):(t=a-1,e=i.content[t]),e.range.start.line!==r)break;n=e}return n}function i0(e,t){let r=i1(e,t);return r?r.parent.content.slice(r.a+1,r.b):[]}function i1(e,t){let r,n=i2(e),i=i2(t);for(let e=0;e<n.length&&e<i.length;e++){let t=n[e],a=i[e];if(t.parent===a.parent)r={parent:t.parent,a:t.index,b:a.index};else break}return r}function i2(e){let t=[];for(;e.container;){let r=e.container,n=r.content.indexOf(e);t.push({parent:r,index:n}),e=r}return t.reverse()}tO(iB,"findDeclarationNodeAtOffset"),tO(iW,"findCommentNode"),tO(iV,"isCommentNode"),tO(iH,"findLeafNodeAtOffset"),tO(iY,"findLeafNodeBeforeOffset"),tO(iZ,"binarySearch"),tO(iX,"getPreviousNode"),tO(iJ,"getNextNode"),tO(iQ,"getStartlineNode"),tO(i0,"getInteriorNodes"),tO(i1,"getCommonParent"),tO(i2,"getParentChain");var i3={};tL(i3,{findAssignment:()=>aD,findNameAssignment:()=>aL,findNodeForKeyword:()=>aP,findNodeForProperty:()=>aI,findNodesForKeyword:()=>aw,findNodesForKeywordInternal:()=>aO,findNodesForProperty:()=>aN,getActionAtElement:()=>aj,getActionType:()=>aH,getAllReachableRules:()=>ab,getAllRulesUsedForCrossReferences:()=>aS,getCrossReferenceTerminal:()=>ak,getEntryRule:()=>aE,getExplicitRuleType:()=>aW,getHiddenRules:()=>aA,getRuleType:()=>aZ,getRuleTypeName:()=>aY,getTypeName:()=>aV,isArrayCardinality:()=>aG,isArrayOperator:()=>az,isCommentTerminal:()=>ax,isDataType:()=>aU,isDataTypeRule:()=>aK,isOptionalCardinality:()=>aF,terminalRegex:()=>aX});var i9=class extends Error{static{tO(this,"ErrorWithLocation")}constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}};function i4(e,t="Error: Got unexpected value."){throw Error(t)}function i5(e,t="Error: Condition is violated."){if(!e)throw Error(t)}tO(i4,"assertUnreachable"),tO(i5,"assertCondition");var i7={};function i8(e){return e.charCodeAt(0)}function i6(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function ae(e,t){if(!0===e[t])throw"duplicate flag "+t;e[t],e[t]=!0}function at(e){if(void 0===e)throw Error("Internal Error - Should never get here!");return!0}function ar(){throw Error("Internal Error - Should never get here!")}function an(e){return"Character"===e.type}tL(i7,{NEWLINE_REGEXP:()=>af,escapeRegExp:()=>a$,getTerminalParts:()=>ah,isMultilineComment:()=>ay,isWhitespace:()=>aT,partialMatches:()=>av,partialRegExp:()=>aR,whitespaceCharacters:()=>ag}),tO(i8,"cc"),tO(i6,"insertToSet"),tO(ae,"addFlag"),tO(at,"ASSERT_EXISTS"),tO(ar,"ASSERT_NEVER_REACH_HERE"),tO(an,"isCharacter");var ai=[];for(let e=i8("0");e<=i8("9");e++)ai.push(e);var aa=[i8("_")].concat(ai);for(let e=i8("a");e<=i8("z");e++)aa.push(e);for(let e=i8("A");e<=i8("Z");e++)aa.push(e);var as=[i8(" "),i8("\f"),i8("\n"),i8("\r"),i8(" "),i8("\v"),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8(" "),i8("\u2028"),i8("\u2029"),i8(" "),i8(" "),i8(" "),i8("\uFEFF")],ao=/[0-9a-fA-F]/,al=/[0-9]/,au=/[1-9]/,ac=class{static{tO(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let t=this.disjunction();this.consumeChar("/");let r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":ae(r,"global");break;case"i":ae(r,"ignoreCase");break;case"m":ae(r,"multiLine");break;case"u":ae(r,"unicode");break;case"y":ae(r,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":let t;switch(this.consumeChar("?"),this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}}at(t);let r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return ar()}quantifier(e=!1){let t,r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":let n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":t=this.isDigit()?{atLeast:n,atMost:this.integerIncludingZero()}:{atLeast:n,atMost:1/0},this.consumeChar("}")}if(!0===e&&void 0===t)return;at(t)}if((!0!==e||void 0!==t)&&at(t))return"?"===this.peekChar(0)?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t}atom(){let e,t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group()}if(void 0===e&&this.isPatternCharacter()&&(e=this.patternCharacter()),at(e))return e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[i8("\n"),i8("\r"),i8("\u2028"),i8("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=ai;break;case"D":e=ai,t=!0;break;case"s":e=as;break;case"S":e=as,t=!0;break;case"w":e=aa;break;case"W":e=aa,t=!0}if(at(e))return{type:"Set",value:e,complement:t}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=i8("\f");break;case"n":e=i8("\n");break;case"r":e=i8("\r");break;case"t":e=i8(" ");break;case"v":e=i8("\v")}if(at(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(!1===/[a-zA-Z]/.test(e))throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:i8("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:i8(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:i8(this.popChar())}}}characterClass(){let e=[],t=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),t=!0);this.isClassAtom();){let t=this.classAtom();if(t.type,an(t)&&this.isRangeDash()){this.consumeChar("-");let r=this.classAtom();if(r.type,an(r)){if(r.value<t.value)throw Error("Range out of order in character class");e.push({from:t.value,to:r.value})}else i6(t.value,e),e.push(i8("-")),i6(r.value,e)}else i6(t.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:i8("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;this.consumeChar("("),"?"===this.peekChar(0)?(this.consumeChar("?"),this.consumeChar(":"),e=!1):this.groupIdx++;let t=this.disjunction();this.consumeChar(")");let r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(!1===au.test(e))throw Error("Expecting a positive integer");for(;al.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(!1===al.test(e))throw Error("Expecting an integer");for(;al.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:i8(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 al.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2)||"<"===this.peekChar(2)&&("="===this.peekChar(3)||"!"===this.peekChar(3)));default:return!1}}isQuantifier(){let e=this.saveState();try{return void 0!==this.quantifier(!0)}catch(e){return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let r=0;r<e;r++){let e=this.popChar();if(!1===ao.test(e))throw Error("Expecting a HexDecimal digits");t+=e}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(void 0!==e&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}},ap=class{static{tO(this,"BaseRegExpVisitor")}visitChildren(e){for(let t in e){let r=e[t];e.hasOwnProperty(t)&&(void 0!==r.type?this.visit(r):Array.isArray(r)&&r.forEach(e=>{this.visit(e)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}},af=/\r?\n/gm,ad=new ac,am=new class extends ap{static{tO(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=a$(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){let t=new RegExp(this.regex.substring(e.loc.begin,e.loc.end));this.multiline=!!"\n".match(t)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}};function ah(e){try{"string"!=typeof e&&(e=e.source),e=`/${e}/`;let t=ad.pattern(e),r=[];for(let n of t.value.value)am.reset(e),am.visit(n),r.push({start:am.startRegexp,end:am.endRegex});return r}catch{return[]}}function ay(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),am.reset(e),am.visit(ad.pattern(e)),am.multiline}catch{return!1}}tO(ah,"getTerminalParts"),tO(ay,"isMultilineComment");var ag="\f\n\r \v              \u2028\u2029   \uFEFF".split("");function aT(e){let t="string"==typeof e?new RegExp(e):e;return ag.some(e=>t.test(e))}function a$(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function av(e,t){let r=aR(e),n=t.match(r);return!!n&&n[0].length>0}function aR(e){"string"==typeof e&&(e=new RegExp(e));let t=e,r=e.source,n=0;function i(){let e="",a;function s(t){e+=r.substr(n,t),n+=t}function o(t){e+="(?:"+r.substr(n,t)+"|$)",n+=t}for(tO(s,"appendRaw"),tO(o,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":o(3);break;case"x":o(4);break;case"u":o(t.unicode?"{"===r[n+2]?r.indexOf("}",n)-n+1:6:2);break;case"p":case"P":o(t.unicode?r.indexOf("}",n)-n+1:2);break;case"k":o(r.indexOf(">",n)-n+1);break;default:o(2)}break;case"[":(a=/\[(?:\\.|.)*?\]/g).lastIndex=n,o((a=a.exec(r)||[])[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":s(1);break;case"{":(a=/\{\d+,?\d*\}/g).lastIndex=n,(a=a.exec(r))?s(a[0].length):o(1);break;case"(":if("?"===r[n+1])switch(r[n+2]){case":":e+="(?:",n+=3,e+=i()+"|$)";break;case"=":e+="(?=",n+=3,e+=i()+")";break;case"!":a=n,n+=3,i(),e+=r.substr(a,n-a);break;case"<":switch(r[n+3]){case"=":case"!":a=n,n+=4,i(),e+=r.substr(a,n-a);break;default:s(r.indexOf(">",n)-n+1),e+=i()+"|$)"}}else s(1),e+=i()+"|$)";break;case")":return++n,e;default:o(1)}return e}return tO(i,"process"),new RegExp(i(),e.flags)}function aE(e){return e.rules.find(e=>n3(e)&&e.entry)}function aA(e){return e.rules.filter(e=>ih(e)&&e.hidden)}function ab(e,t){let r=new Set,n=aE(e);if(!n)return new Set(e.rules);for(let i of[n].concat(aA(e)))aC(i,r,t);let i=new Set;for(let t of e.rules)(r.has(t.name)||ih(t)&&t.hidden)&&i.add(t);return i}function aC(e,t,r){t.add(e.name),rY(e).forEach(e=>{if(it(e)||r&&ig(e)){let n=e.rule.ref;n&&!t.has(n.name)&&aC(n,t,r)}})}function aS(e){let t=new Set;return rY(e).forEach(e=>{nR(e)&&(n3(e.type.ref)&&t.add(e.type.ref),nP(e.type.ref)&&n3(e.type.ref.$container)&&t.add(e.type.ref.$container))}),t}function ak(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=aL(e.type.ref);return t?.terminal}}function ax(e){return e.hidden&&!aT(aX(e))}function aN(e,t){return e&&t?a_(e,t,e.astNode,!0):[]}function aI(e,t,r){if(!e||!t)return;let n=a_(e,t,e.astNode,!0);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function a_(e,t,r,n){if(!n){let r=rq(e.grammarSource,np);if(r&&r.feature===t)return[e]}return r_(e)&&e.astNode===r?e.content.flatMap(e=>a_(e,t,r,!1)):[]}function aw(e,t){return e?aO(e,t,e?.astNode):[]}function aP(e,t,r){if(!e)return;let n=aO(e,t,e?.astNode);if(0!==n.length)return r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0,n[r]}function aO(e,t,r){let n;if(e.astNode!==r)return[];if(nq(e.grammarSource)&&e.grammarSource.value===t)return[e];let i=iM(e).iterator(),a=[];do if(!(n=i.next()).done){let e=n.value;e.astNode===r?nq(e.grammarSource)&&e.grammarSource.value===t&&a.push(e):i.prune()}while(!n.done)return a}function aD(e){let t=e.astNode;for(;t===e.container?.astNode;){let t=rq(e.grammarSource,np);if(t)return t;e=e.container}}function aL(e){let t=e;return nP(t)&&(nn(t.$container)?t=t.$container.$container:r7(t.$container)?t=t.$container:i4(t.$container)),aM(e,t,new Map)}function aM(e,t,r){function n(t,n){let i;return rq(t,np)||(i=aM(n,n,r)),r.set(e,i),i}if(tO(n,"go"),r.has(e))return r.get(e);for(let i of(r.set(e,void 0),rY(t)))if(np(i)&&"name"===i.feature.toLowerCase())return r.set(e,i),i;else if(it(i)&&n3(i.rule.ref))return n(i,i.rule.ref);else if(ii(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}function aj(e){let t=e.$container;if(n_(t)){let r=t.elements,n=r.indexOf(e);for(let e=n-1;e>=0;e--){let t=r[e];if(nn(t))return t;{let t=rY(r[e]).find(nn);if(t)return t}}}return r4(t)?aj(t):void 0}function aF(e,t){return"?"===e||"*"===e||n_(t)&&!!t.guardCondition}function aG(e){return"*"===e||"+"===e}function az(e){return"+="===e}function aK(e){return aq(e,new Set)}function aq(e,t){if(t.has(e))return!0;for(let r of(t.add(e),rY(e)))if(it(r)){if(!r.rule.ref||n3(r.rule.ref)&&!aq(r.rule.ref,t)||nD(r.rule.ref))return!1}else if(np(r))return!1;else if(nn(r))return!1;return!!e.definition}function aU(e){return aB(e.type,new Set)}function aB(e,t){if(t.has(e))return!0;if(t.add(e),nu(e)||n4(e))return!1;if(iC(e))return e.types.every(e=>aB(e,t));{if(!ii(e))return!1;if(void 0!==e.primitiveType||void 0!==e.stringType)return!0;if(void 0===e.typeRef)return!1;let r=e.typeRef.ref;return!!i$(r)&&aB(r.type,t)}}function aW(e){if(!ih(e)){if(e.inferredType)return e.inferredType.name;else if(e.dataType)return e.dataType;else if(e.returnType){let t=e.returnType.ref;if(t)return t.name}}}function aV(e){if(r7(e))return n3(e)&&aK(e)?e.name:aW(e)??e.name;if(nz(e)||i$(e)||n6(e))return e.name;if(nn(e)){let t=aH(e);if(t)return t}else if(nP(e))return e.name;throw Error("Cannot get name of Unknown Type")}function aH(e){return e.inferredType?e.inferredType.name:e.type?.ref?aV(e.type.ref):void 0}function aY(e){return ih(e)?e.type?.name??"string":n3(e)&&aK(e)?e.name:aW(e)??e.name}function aZ(e){return ih(e)?e.type?.name??"string":aW(e)??e.name}function aX(e){let t={s:!1,i:!1,u:!1};return new RegExp(aQ(e.definition,t),Object.entries(t).filter(([,e])=>e).map(([e])=>e).join(""))}tO(aT,"isWhitespace"),tO(a$,"escapeRegExp"),tO(av,"partialMatches"),tO(aR,"partialRegExp"),tO(aE,"getEntryRule"),tO(aA,"getHiddenRules"),tO(ab,"getAllReachableRules"),tO(aC,"ruleDfs"),tO(aS,"getAllRulesUsedForCrossReferences"),tO(ak,"getCrossReferenceTerminal"),tO(ax,"isCommentTerminal"),tO(aN,"findNodesForProperty"),tO(aI,"findNodeForProperty"),tO(a_,"findNodesForPropertyInternal"),tO(aw,"findNodesForKeyword"),tO(aP,"findNodeForKeyword"),tO(aO,"findNodesForKeywordInternal"),tO(aD,"findAssignment"),tO(aL,"findNameAssignment"),tO(aM,"findNameAssignmentInternal"),tO(aj,"getActionAtElement"),tO(aF,"isOptionalCardinality"),tO(aG,"isArrayCardinality"),tO(az,"isArrayOperator"),tO(aK,"isDataTypeRule"),tO(aq,"isDataTypeRuleInternal"),tO(aU,"isDataType"),tO(aB,"isDataTypeInternal"),tO(aW,"getExplicitRuleType"),tO(aV,"getTypeName"),tO(aH,"getActionType"),tO(aY,"getRuleTypeName"),tO(aZ,"getRuleType"),tO(aX,"terminalRegex");var aJ=/[\s\S]/.source;function aQ(e,t){if(il(e))return a0(e);if(id(e))return a1(e);if(nh(e))return a9(e);if(ig(e)){let t=e.rule.ref;if(!t)throw Error("Missing rule reference.");return a5(aQ(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}if(nV(e))return a3(e);else if(iN(e))return a2(e);else if(n7(e)){let r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),i=e.regex.substring(r+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),a5(n,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}else if(iP(e))return a5(aJ,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized});else throw Error(`Invalid terminal element: ${e?.$type}, ${e?.$cstNode?.text}`)}function a0(e){return a5(e.elements.map(e=>aQ(e)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function a1(e){return a5(e.elements.map(e=>aQ(e)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function a2(e){return a5(`${aJ}*?${aQ(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function a3(e){return a5(`(?!${aQ(e.terminal)})${aJ}*?`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function a9(e){return e.right?a5(`[${a4(e.left)}-${a4(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1}):a5(a4(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function a4(e){return a$(e.value)}function a5(e,t){if(t.parenthesized||t.lookahead||!1!==t.wrap){let r=t.lookahead??(t.parenthesized?"":"?:");e=`(${r}${e})`}return t.cardinality?`${e}${t.cardinality}`:e}function a7(e){let t=[];for(let r of e.Grammar.rules)ih(r)&&ax(r)&&ay(aX(r))&&t.push(r.name);return{multilineCommentRules:t,nameRegexp:iU}}tO(aQ,"abstractElementToRegex"),tO(a0,"terminalAlternativesToRegex"),tO(a1,"terminalGroupToRegex"),tO(a2,"untilTokenToRegex"),tO(a3,"negateTokenToRegex"),tO(a9,"characterRangeToRegex"),tO(a4,"keywordToRegex"),tO(a5,"withCardinality"),tO(a7,"createGrammarConfig");var a8=e.g&&e.g.Object===Object&&e.g,a6="object"==typeof self&&self&&self.Object===Object&&self,se=a8||a6||Function("return this")(),st=se.Symbol,sr=Object.prototype,sn=sr.hasOwnProperty,si=sr.toString,sa=st?st.toStringTag:void 0;function ss(e){var t=sn.call(e,sa),r=e[sa];try{e[sa]=void 0;var n=!0}catch(e){}var i=si.call(e);return n&&(t?e[sa]=r:delete e[sa]),i}tO(ss,"getRawTag");var so=Object.prototype.toString;function sl(e){return so.call(e)}tO(sl,"objectToString");var su=st?st.toStringTag:void 0;function sc(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":su&&su in Object(e)?ss(e):sl(e)}function sp(e){return null!=e&&"object"==typeof e}function sf(e){return"symbol"==typeof e||sp(e)&&"[object Symbol]"==sc(e)}function sd(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}tO(sc,"baseGetTag"),tO(sp,"isObjectLike"),tO(sf,"isSymbol"),tO(sd,"arrayMap");var sm=Array.isArray,sh=1/0,sy=st?st.prototype:void 0,sg=sy?sy.toString:void 0;function sT(e){if("string"==typeof e)return e;if(sm(e))return sd(e,sT)+"";if(sf(e))return sg?sg.call(e):"";var t=e+"";return"0"==t&&1/e==-sh?"-0":t}tO(sT,"baseToString");var s$=/\s/;function sv(e){for(var t=e.length;t--&&s$.test(e.charAt(t)););return t}tO(sv,"trimmedEndIndex");var sR=/^\s+/;function sE(e){return e?e.slice(0,sv(e)+1).replace(sR,""):e}function sA(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}tO(sE,"baseTrim"),tO(sA,"isObject");var sb=0/0,sC=/^[-+]0x[0-9a-f]+$/i,sS=/^0b[01]+$/i,sk=/^0o[0-7]+$/i,sx=parseInt;function sN(e){if("number"==typeof e)return e;if(sf(e))return sb;if(sA(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=sA(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=sE(e);var r=sS.test(e);return r||sk.test(e)?sx(e.slice(2),r?2:8):sC.test(e)?sb:+e}tO(sN,"toNumber");var sI=1/0;function s_(e){return e?(e=sN(e))===sI||e===-sI?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}function sw(e){var t=s_(e),r=t%1;return t==t?r?t-r:t:0}function sP(e){return e}function sO(e){if(!sA(e))return!1;var t=sc(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}tO(s_,"toFinite"),tO(sw,"toInteger"),tO(sP,"identity"),tO(sO,"isFunction");var sD=se["__core-js_shared__"],sL=(i=/[^.]+$/.exec(sD&&sD.keys&&sD.keys.IE_PROTO||""))?"Symbol(src)_1."+i:"";function sM(e){return!!sL&&sL in e}tO(sM,"isMasked");var sj=Function.prototype.toString;function sF(e){if(null!=e){try{return sj.call(e)}catch(e){}try{return e+""}catch(e){}}return""}tO(sF,"toSource");var sG=/^\[object .+?Constructor\]$/,sz=Object.prototype,sK=Function.prototype.toString,sq=sz.hasOwnProperty,sU=RegExp("^"+sK.call(sq).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function sB(e){return!(!sA(e)||sM(e))&&(sO(e)?sU:sG).test(sF(e))}function sW(e,t){return null==e?void 0:e[t]}function sV(e,t){var r=sW(e,t);return sB(r)?r:void 0}tO(sB,"baseIsNative"),tO(sW,"getValue"),tO(sV,"getNative");var sH=sV(se,"WeakMap"),sY=Object.create,sZ=function(){function e(){}return tO(e,"object"),function(t){if(!sA(t))return{};if(sY)return sY(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function sX(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function sJ(){}function sQ(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}tO(sX,"apply"),tO(sJ,"noop"),tO(sQ,"copyArray");var s0=Date.now;function s1(e){var t=0,r=0;return function(){var n=s0(),i=16-(n-r);if(r=n,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function s2(e){return function(){return e}}tO(s1,"shortOut"),tO(s2,"constant");var s3=function(){try{var e=sV(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),s9=s1(s3?function(e,t){return s3(e,"toString",{configurable:!0,enumerable:!1,value:s2(t),writable:!0})}:sP);function s4(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function s5(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return -1}function s7(e){return e!=e}function s8(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return -1}function s6(e,t,r){return t==t?s8(e,t,r):s5(e,s7,r)}function oe(e,t){return!!(null==e?0:e.length)&&s6(e,t,0)>-1}tO(s4,"arrayEach"),tO(s5,"baseFindIndex"),tO(s7,"baseIsNaN"),tO(s8,"strictIndexOf"),tO(s6,"baseIndexOf"),tO(oe,"arrayIncludes");var ot=/^(?:0|[1-9]\d*)$/;function or(e,t){var r=typeof e;return!!(t=null==t?0x1fffffffffffff:t)&&("number"==r||"symbol"!=r&&ot.test(e))&&e>-1&&e%1==0&&e<t}function on(e,t,r){"__proto__"==t&&s3?s3(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function oi(e,t){return e===t||e!=e&&t!=t}tO(or,"isIndex"),tO(on,"baseAssignValue"),tO(oi,"eq");var oa=Object.prototype.hasOwnProperty;function os(e,t,r){var n=e[t];oa.call(e,t)&&oi(n,r)&&(void 0!==r||t in e)||on(e,t,r)}function oo(e,t,r,n){var i=!r;r||(r={});for(var a=-1,s=t.length;++a<s;){var o=t[a],l=n?n(r[o],e[o],o,r,e):void 0;void 0===l&&(l=e[o]),i?on(r,o,l):os(r,o,l)}return r}tO(os,"assignValue"),tO(oo,"copyObject");var ol=Math.max;function ou(e,t,r){return t=ol(void 0===t?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=ol(n.length-t,0),s=Array(a);++i<a;)s[i]=n[t+i];i=-1;for(var o=Array(t+1);++i<t;)o[i]=n[i];return o[t]=r(s),sX(e,this,o)}}function oc(e,t){return s9(ou(e,t,sP),e+"")}function op(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}function of(e){return null!=e&&op(e.length)&&!sO(e)}function od(e,t,r){if(!sA(r))return!1;var n=typeof t;return("number"==n?!!(of(r)&&or(t,r.length)):"string"==n&&t in r)&&oi(r[t],e)}function om(e){return oc(function(t,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,s&&od(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++n<i;){var o=r[n];o&&e(t,o,n,a)}return t})}tO(ou,"overRest"),tO(oc,"baseRest"),tO(op,"isLength"),tO(of,"isArrayLike"),tO(od,"isIterateeCall"),tO(om,"createAssigner");var oh=Object.prototype;function oy(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||oh)}function og(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function oT(e){return sp(e)&&"[object Arguments]"==sc(e)}tO(oy,"isPrototype"),tO(og,"baseTimes"),tO(oT,"baseIsArguments");var o$=Object.prototype,ov=o$.hasOwnProperty,oR=o$.propertyIsEnumerable,oE=oT(function(){return arguments}())?oT:function(e){return sp(e)&&ov.call(e,"callee")&&!oR.call(e,"callee")};function oA(){return!1}tO(oA,"stubFalse");var ob={};function oC(e){return sp(e)&&op(e.length)&&!!ob[sc(e)]}function oS(e){return function(t){return e(t)}}ob["[object Float32Array]"]=ob["[object Float64Array]"]=ob["[object Int8Array]"]=ob["[object Int16Array]"]=ob["[object Int32Array]"]=ob["[object Uint8Array]"]=ob["[object Uint8ClampedArray]"]=ob["[object Uint16Array]"]=ob["[object Uint32Array]"]=!0,ob["[object Arguments]"]=ob["[object Array]"]=ob["[object ArrayBuffer]"]=ob["[object Boolean]"]=ob["[object DataView]"]=ob["[object Date]"]=ob["[object Error]"]=ob["[object Function]"]=ob["[object Map]"]=ob["[object Number]"]=ob["[object Object]"]=ob["[object RegExp]"]=ob["[object Set]"]=ob["[object String]"]=ob["[object WeakMap]"]=!1,tO(oC,"baseIsTypedArray"),tO(oS,"baseUnary");var ok=function(){try{return!1}catch(e){}}(),ox=ok&&ok.isTypedArray,oN=ox?oS(ox):oC,oI=Object.prototype.hasOwnProperty;function o_(e,t){var r=sm(e),n=!r&&oE(e),i=!r&&!n&&oA(),a=!r&&!n&&!i&&oN(e),s=r||n||i||a,o=s?og(e.length,String):[],l=o.length;for(var u in e)(t||oI.call(e,u))&&!(s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||or(u,l)))&&o.push(u);return o}function ow(e,t){return function(r){return e(t(r))}}tO(o_,"arrayLikeKeys"),tO(ow,"overArg");var oP=ow(Object.keys,Object),oO=Object.prototype.hasOwnProperty;function oD(e){if(!oy(e))return oP(e);var t=[];for(var r in Object(e))oO.call(e,r)&&"constructor"!=r&&t.push(r);return t}function oL(e){return of(e)?o_(e):oD(e)}tO(oD,"baseKeys"),tO(oL,"keys");var oM=Object.prototype.hasOwnProperty,oj=om(function(e,t){if(oy(t)||of(t))return void oo(t,oL(t),e);for(var r in t)oM.call(t,r)&&os(e,r,t[r])});function oF(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}tO(oF,"nativeKeysIn");var oG=Object.prototype.hasOwnProperty;function oz(e){if(!sA(e))return oF(e);var t=oy(e),r=[];for(var n in e)"constructor"==n&&(t||!oG.call(e,n))||r.push(n);return r}function oK(e){return of(e)?o_(e,!0):oz(e)}tO(oz,"baseKeysIn"),tO(oK,"keysIn");var oq=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,oU=/^\w*$/;function oB(e,t){if(sm(e))return!1;var r=typeof e;return!!("number"==r||"symbol"==r||"boolean"==r||null==e||sf(e))||oU.test(e)||!oq.test(e)||null!=t&&e in Object(t)}tO(oB,"isKey");var oW=sV(Object,"create");function oV(){this.__data__=oW?oW(null):{},this.size=0}function oH(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=!!t,t}tO(oV,"hashClear"),tO(oH,"hashDelete");var oY=Object.prototype.hasOwnProperty;function oZ(e){var t=this.__data__;if(oW){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return oY.call(t,e)?t[e]:void 0}tO(oZ,"hashGet");var oX=Object.prototype.hasOwnProperty;function oJ(e){var t=this.__data__;return oW?void 0!==t[e]:oX.call(t,e)}function oQ(e,t){var r=this.__data__;return this.size+=+!this.has(e),r[e]=oW&&void 0===t?"__lodash_hash_undefined__":t,this}function o0(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function o1(){this.__data__=[],this.size=0}function o2(e,t){for(var r=e.length;r--;)if(oi(e[r][0],t))return r;return -1}tO(oJ,"hashHas"),tO(oQ,"hashSet"),tO(o0,"Hash"),o0.prototype.clear=oV,o0.prototype.delete=oH,o0.prototype.get=oZ,o0.prototype.has=oJ,o0.prototype.set=oQ,tO(o1,"listCacheClear"),tO(o2,"assocIndexOf");var o3=Array.prototype.splice;function o9(e){var t=this.__data__,r=o2(t,e);return!(r<0)&&(r==t.length-1?t.pop():o3.call(t,r,1),--this.size,!0)}function o4(e){var t=this.__data__,r=o2(t,e);return r<0?void 0:t[r][1]}function o5(e){return o2(this.__data__,e)>-1}function o7(e,t){var r=this.__data__,n=o2(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function o8(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}tO(o9,"listCacheDelete"),tO(o4,"listCacheGet"),tO(o5,"listCacheHas"),tO(o7,"listCacheSet"),tO(o8,"ListCache"),o8.prototype.clear=o1,o8.prototype.delete=o9,o8.prototype.get=o4,o8.prototype.has=o5,o8.prototype.set=o7;var o6=sV(se,"Map");function le(){this.size=0,this.__data__={hash:new o0,map:new(o6||o8),string:new o0}}function lt(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function lr(e,t){var r=e.__data__;return lt(t)?r["string"==typeof t?"string":"hash"]:r.map}function ln(e){var t=lr(this,e).delete(e);return this.size-=!!t,t}function li(e){return lr(this,e).get(e)}function la(e){return lr(this,e).has(e)}function ls(e,t){var r=lr(this,e),n=r.size;return r.set(e,t),this.size+=+(r.size!=n),this}function lo(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ll(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var r=tO(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(ll.Cache||lo),r}function lu(e){var t=ll(e,function(e){return 500===r.size&&r.clear(),e}),r=t.cache;return t}tO(le,"mapCacheClear"),tO(lt,"isKeyable"),tO(lr,"getMapData"),tO(ln,"mapCacheDelete"),tO(li,"mapCacheGet"),tO(la,"mapCacheHas"),tO(ls,"mapCacheSet"),tO(lo,"MapCache"),lo.prototype.clear=le,lo.prototype.delete=ln,lo.prototype.get=li,lo.prototype.has=la,lo.prototype.set=ls,tO(ll,"memoize"),ll.Cache=lo,tO(lu,"memoizeCapped");var lc=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,lp=/\\(\\)?/g,lf=lu(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(lc,function(e,r,n,i){t.push(n?i.replace(lp,"$1"):r||e)}),t});function ld(e){return null==e?"":sT(e)}function lm(e,t){return sm(e)?e:oB(e,t)?[e]:lf(ld(e))}tO(ld,"toString"),tO(lm,"castPath");var lh=1/0;function ly(e){if("string"==typeof e||sf(e))return e;var t=e+"";return"0"==t&&1/e==-lh?"-0":t}function lg(e,t){t=lm(t,e);for(var r=0,n=t.length;null!=e&&r<n;)e=e[ly(t[r++])];return r&&r==n?e:void 0}function lT(e,t,r){var n=null==e?void 0:lg(e,t);return void 0===n?r:n}function l$(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}tO(ly,"toKey"),tO(lg,"baseGet"),tO(lT,"get"),tO(l$,"arrayPush");var lv=st?st.isConcatSpreadable:void 0;function lR(e){return sm(e)||oE(e)||!!(lv&&e&&e[lv])}function lE(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=lR),i||(i=[]);++a<s;){var o=e[a];t>0&&r(o)?t>1?lE(o,t-1,r,n,i):l$(i,o):n||(i[i.length]=o)}return i}function lA(e){return(null==e?0:e.length)?lE(e,1):[]}tO(lR,"isFlattenable"),tO(lE,"baseFlatten"),tO(lA,"flatten");var lb=ow(Object.getPrototypeOf,Object);function lC(e,t,r){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(r=r>i?i:r)<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n<i;)a[n]=e[n+t];return a}function lS(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function lk(){this.__data__=new o8,this.size=0}function lx(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function lN(e){return this.__data__.get(e)}function lI(e){return this.__data__.has(e)}function l_(e,t){var r=this.__data__;if(r instanceof o8){var n=r.__data__;if(!o6||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new lo(n)}return r.set(e,t),this.size=r.size,this}function lw(e){var t=this.__data__=new o8(e);this.size=t.size}function lP(e,t){return e&&oo(t,oL(t),e)}function lO(e,t){return e&&oo(t,oK(t),e)}tO(lC,"baseSlice"),tO(lS,"arrayReduce"),tO(lk,"stackClear"),tO(lx,"stackDelete"),tO(lN,"stackGet"),tO(lI,"stackHas"),tO(l_,"stackSet"),tO(lw,"Stack"),lw.prototype.clear=lk,lw.prototype.delete=lx,lw.prototype.get=lN,lw.prototype.has=lI,lw.prototype.set=l_,tO(lP,"baseAssign"),tO(lO,"baseAssignIn");function lD(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[i++]=s)}return a}function lL(){return[]}tO(function(e,t){if(t)return e.slice();var r=e.length,n=new e.constructor(r);return e.copy(n),n},"cloneBuffer"),tO(lD,"arrayFilter"),tO(lL,"stubArray");var lM=Object.prototype.propertyIsEnumerable,lj=Object.getOwnPropertySymbols,lF=lj?function(e){return null==e?[]:lD(lj(e=Object(e)),function(t){return lM.call(e,t)})}:lL;function lG(e,t){return oo(e,lF(e),t)}tO(lG,"copySymbols");var lz=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)l$(t,lF(e)),e=lb(e);return t}:lL;function lK(e,t){return oo(e,lz(e),t)}function lq(e,t,r){var n=t(e);return sm(e)?n:l$(n,r(e))}function lU(e){return lq(e,oL,lF)}function lB(e){return lq(e,oK,lz)}tO(lK,"copySymbolsIn"),tO(lq,"baseGetAllKeys"),tO(lU,"getAllKeys"),tO(lB,"getAllKeysIn");var lW=sV(se,"DataView"),lV=sV(se,"Promise"),lH=sV(se,"Set"),lY="[object Map]",lZ="[object Promise]",lX="[object Set]",lJ="[object WeakMap]",lQ="[object DataView]",l0=sF(lW),l1=sF(o6),l2=sF(lV),l3=sF(lH),l9=sF(sH),l4=sc;(lW&&l4(new lW(new ArrayBuffer(1)))!=lQ||o6&&l4(new o6)!=lY||lV&&l4(lV.resolve())!=lZ||lH&&l4(new lH)!=lX||sH&&l4(new sH)!=lJ)&&(l4=tO(function(e){var t=sc(e),r="[object Object]"==t?e.constructor:void 0,n=r?sF(r):"";if(n)switch(n){case l0:return lQ;case l1:return lY;case l2:return lZ;case l3:return lX;case l9:return lJ}return t},"getTag"));var l5=l4,l7=Object.prototype.hasOwnProperty;function l8(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&l7.call(e,"index")&&(r.index=e.index,r.input=e.input),r}tO(l8,"initCloneArray");var l6=se.Uint8Array;function ue(e){var t=new e.constructor(e.byteLength);return new l6(t).set(new l6(e)),t}function ut(e,t){var r=t?ue(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}tO(ue,"cloneArrayBuffer"),tO(ut,"cloneDataView");var ur=/\w*$/;function un(e){var t=new e.constructor(e.source,ur.exec(e));return t.lastIndex=e.lastIndex,t}tO(un,"cloneRegExp");var ui=st?st.prototype:void 0,ua=ui?ui.valueOf:void 0;function us(e){return ua?Object(ua.call(e)):{}}function uo(e,t){var r=t?ue(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function ul(e,t,r){var n=e.constructor;switch(t){case"[object ArrayBuffer]":return ue(e);case"[object Boolean]":case"[object Date]":return new n(+e);case"[object DataView]":return ut(e,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return uo(e,r);case"[object Map]":case"[object Set]":return new n;case"[object Number]":case"[object String]":return new n(e);case"[object RegExp]":return un(e);case"[object Symbol]":return us(e)}}function uu(e){return"function"!=typeof e.constructor||oy(e)?{}:sZ(lb(e))}function uc(e){return sp(e)&&"[object Map]"==l5(e)}tO(us,"cloneSymbol"),tO(uo,"cloneTypedArray"),tO(ul,"initCloneByTag"),tO(uu,"initCloneObject"),tO(uc,"baseIsMap");var up=ok&&ok.isMap,uf=up?oS(up):uc;function ud(e){return sp(e)&&"[object Set]"==l5(e)}tO(ud,"baseIsSet");var um=ok&&ok.isSet,uh=um?oS(um):ud,uy="[object Arguments]",ug="[object Function]",uT="[object Object]",u$={};function uv(e,t,r,n,i,a){var s,o=1&t,l=2&t,u=4&t;if(r&&(s=i?r(e,n,i,a):r(e)),void 0!==s)return s;if(!sA(e))return e;var c=sm(e);if(c){if(s=l8(e),!o)return sQ(e,s)}else{var p=l5(e),f=p==ug||"[object GeneratorFunction]"==p;if(oA(),p==uT||p==uy||f&&!i){if(s=l||f?{}:uu(e),!o)return l?lK(e,lO(s,e)):lG(e,lP(s,e))}else{if(!u$[p])return i?e:{};s=ul(e,p,o)}}a||(a=new lw);var d=a.get(e);if(d)return d;a.set(e,s),uh(e)?e.forEach(function(n){s.add(uv(n,t,r,n,e,a))}):uf(e)&&e.forEach(function(n,i){s.set(i,uv(n,t,r,i,e,a))});var m=u?l?lB:lU:l?oK:oL,h=c?void 0:m(e);return s4(h||e,function(n,i){h&&(n=e[i=n]),os(s,i,uv(n,t,r,i,e,a))}),s}function uR(e){return uv(e,4)}function uE(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var a=e[t];a&&(i[n++]=a)}return i}function uA(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}function ub(e){return this.__data__.has(e)}function uC(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new lo;++t<r;)this.add(e[t])}function uS(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function uk(e,t){return e.has(t)}function ux(e,t,r,n,i,a){var s=1&r,o=e.length,l=t.length;if(o!=l&&!(s&&l>o))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var p=-1,f=!0,d=2&r?new uC:void 0;for(a.set(e,t),a.set(t,e);++p<o;){var m=e[p],h=t[p];if(n)var y=s?n(h,m,p,t,e,a):n(m,h,p,e,t,a);if(void 0!==y){if(y)continue;f=!1;break}if(d){if(!uS(t,function(e,t){if(!uk(d,t)&&(m===e||i(m,e,r,n,a)))return d.push(t)})){f=!1;break}}else if(!(m===h||i(m,h,r,n,a))){f=!1;break}}return a.delete(e),a.delete(t),f}function uN(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r}function uI(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}u$[uy]=u$["[object Array]"]=u$["[object ArrayBuffer]"]=u$["[object DataView]"]=u$["[object Boolean]"]=u$["[object Date]"]=u$["[object Float32Array]"]=u$["[object Float64Array]"]=u$["[object Int8Array]"]=u$["[object Int16Array]"]=u$["[object Int32Array]"]=u$["[object Map]"]=u$["[object Number]"]=u$[uT]=u$["[object RegExp]"]=u$["[object Set]"]=u$["[object String]"]=u$["[object Symbol]"]=u$["[object Uint8Array]"]=u$["[object Uint8ClampedArray]"]=u$["[object Uint16Array]"]=u$["[object Uint32Array]"]=!0,u$["[object Error]"]=u$[ug]=u$["[object WeakMap]"]=!1,tO(uv,"baseClone"),tO(uR,"clone"),tO(uE,"compact"),tO(uA,"setCacheAdd"),tO(ub,"setCacheHas"),tO(uC,"SetCache"),uC.prototype.add=uC.prototype.push=uA,uC.prototype.has=ub,tO(uS,"arraySome"),tO(uk,"cacheHas"),tO(ux,"equalArrays"),tO(uN,"mapToArray"),tO(uI,"setToArray");var u_=st?st.prototype:void 0,uw=u_?u_.valueOf:void 0;function uP(e,t,r,n,i,a,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":if(e.byteLength!=t.byteLength||!a(new l6(e),new l6(t)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return oi(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var o=uN;case"[object Set]":var l=1&n;if(o||(o=uI),e.size!=t.size&&!l)break;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=ux(o(e),o(t),n,i,a,s);return s.delete(e),c;case"[object Symbol]":if(uw)return uw.call(e)==uw.call(t)}return!1}tO(uP,"equalByTag");var uO=Object.prototype.hasOwnProperty;function uD(e,t,r,n,i,a){var s=1&r,o=lU(e),l=o.length;if(l!=lU(t).length&&!s)return!1;for(var u=l;u--;){var c=o[u];if(!(s?c in t:uO.call(t,c)))return!1}var p=a.get(e),f=a.get(t);if(p&&f)return p==t&&f==e;var d=!0;a.set(e,t),a.set(t,e);for(var m=s;++u<l;){var h=e[c=o[u]],y=t[c];if(n)var g=s?n(y,h,c,t,e,a):n(h,y,c,e,t,a);if(!(void 0===g?h===y||i(h,y,r,n,a):g)){d=!1;break}m||(m="constructor"==c)}if(d&&!m){var T=e.constructor,$=t.constructor;T!=$&&"constructor"in e&&"constructor"in t&&!("function"==typeof T&&T instanceof T&&"function"==typeof $&&$ instanceof $)&&(d=!1)}return a.delete(e),a.delete(t),d}tO(uD,"equalObjects");var uL="[object Arguments]",uM="[object Array]",uj="[object Object]",uF=Object.prototype.hasOwnProperty;function uG(e,t,r,n,i,a){var s=sm(e),o=sm(t),l=s?uM:l5(e),u=o?uM:l5(t);l=l==uL?uj:l,u=u==uL?uj:u;var c=l==uj,p=u==uj,f=l==u;if(f&&oA(),f&&!c)return a||(a=new lw),s||oN(e)?ux(e,t,r,n,i,a):uP(e,t,l,r,n,i,a);if(!(1&r)){var d=c&&uF.call(e,"__wrapped__"),m=p&&uF.call(t,"__wrapped__");if(d||m){var h=d?e.value():e,y=m?t.value():t;return a||(a=new lw),i(h,y,r,n,a)}}return!!f&&(a||(a=new lw),uD(e,t,r,n,i,a))}function uz(e,t,r,n,i){return e===t||(null!=e&&null!=t&&(sp(e)||sp(t))?uG(e,t,r,n,uz,i):e!=e&&t!=t)}function uK(e,t,r,n){var i=r.length,a=i,s=!n;if(null==e)return!a;for(e=Object(e);i--;){var o=r[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var l=(o=r[i])[0],u=e[l],c=o[1];if(s&&o[2]){if(void 0===u&&!(l in e))return!1}else{var p=new lw;if(n)var f=n(u,c,l,e,t,p);if(!(void 0===f?uz(c,u,3,n,p):f))return!1}}return!0}function uq(e){return e==e&&!sA(e)}function uU(e){for(var t=oL(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,uq(i)]}return t}function uB(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}}function uW(e){var t=uU(e);return 1==t.length&&t[0][2]?uB(t[0][0],t[0][1]):function(r){return r===e||uK(r,e,t)}}function uV(e,t){return null!=e&&t in Object(e)}function uH(e,t,r){t=lm(t,e);for(var n=-1,i=t.length,a=!1;++n<i;){var s=ly(t[n]);if(!(a=null!=e&&r(e,s)))break;e=e[s]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&op(i)&&or(s,i)&&(sm(e)||oE(e))}function uY(e,t){return null!=e&&uH(e,t,uV)}function uZ(e,t){return oB(e)&&uq(t)?uB(ly(e),t):function(r){var n=lT(r,e);return void 0===n&&n===t?uY(r,e):uz(t,n,3)}}function uX(e){return function(t){return null==t?void 0:t[e]}}function uJ(e){return function(t){return lg(t,e)}}function uQ(e){return oB(e)?uX(ly(e)):uJ(e)}function u0(e){return"function"==typeof e?e:null==e?sP:"object"==typeof e?sm(e)?uZ(e[0],e[1]):uW(e):uQ(e)}function u1(e,t,r,n){for(var i=-1,a=null==e?0:e.length;++i<a;){var s=e[i];t(n,s,r(s),e)}return n}function u2(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===r(a[l],l,a))break}return t}}tO(uG,"baseIsEqualDeep"),tO(uz,"baseIsEqual"),tO(uK,"baseIsMatch"),tO(uq,"isStrictComparable"),tO(uU,"getMatchData"),tO(uB,"matchesStrictComparable"),tO(uW,"baseMatches"),tO(uV,"baseHasIn"),tO(uH,"hasPath"),tO(uY,"hasIn"),tO(uZ,"baseMatchesProperty"),tO(uX,"baseProperty"),tO(uJ,"basePropertyDeep"),tO(uQ,"property"),tO(u0,"baseIteratee"),tO(u1,"arrayAggregator"),tO(u2,"createBaseFor");var u3=u2();function u9(e,t){return e&&u3(e,t,oL)}function u4(e,t){return function(r,n){if(null==r)return r;if(!of(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a<i)&&!1!==n(s[a],a,s););return r}}tO(u9,"baseForOwn"),tO(u4,"createBaseEach");var u5=u4(u9);function u7(e,t,r,n){return u5(e,function(e,i,a){t(n,e,r(e),a)}),n}function u8(e,t){return function(r,n){var i=sm(r)?u1:u7,a=t?t():{};return i(r,e,u0(n),a)}}tO(u7,"baseAggregator"),tO(u8,"createAggregator");var u6=Object.prototype,ce=u6.hasOwnProperty,ct=oc(function(e,t){e=Object(e);var r=-1,n=t.length,i=n>2?t[2]:void 0;for(i&&od(t[0],t[1],i)&&(n=1);++r<n;)for(var a=t[r],s=oK(a),o=-1,l=s.length;++o<l;){var u=s[o],c=e[u];(void 0===c||oi(c,u6[u])&&!ce.call(e,u))&&(e[u]=a[u])}return e});function cr(e){return sp(e)&&of(e)}function cn(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function ci(e,t,r,n){var i=-1,a=oe,s=!0,o=e.length,l=[],u=t.length;if(!o)return l;r&&(t=sd(t,oS(r))),n?(a=cn,s=!1):t.length>=200&&(a=uk,s=!1,t=new uC(t));t:for(;++i<o;){var c=e[i],p=null==r?c:r(c);if(c=n||0!==c?c:0,s&&p==p){for(var f=u;f--;)if(t[f]===p)continue t;l.push(c)}else a(t,p,n)||l.push(c)}return l}tO(cr,"isArrayLikeObject"),tO(cn,"arrayIncludesWith"),tO(ci,"baseDifference");var ca=oc(function(e,t){return cr(e)?ci(e,lE(t,1,cr,!0)):[]});function cs(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}function co(e,t,r){var n=null==e?0:e.length;return n?lC(e,(t=r||void 0===t?1:sw(t))<0?0:t,n):[]}function cl(e,t,r){var n=null==e?0:e.length;return n?lC(e,0,(t=n-(t=r||void 0===t?1:sw(t)))<0?0:t):[]}function cu(e){return"function"==typeof e?e:sP}function cc(e,t){return(sm(e)?s4:u5)(e,cu(t))}function cp(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function cf(e,t){var r=!0;return u5(e,function(e,n,i){return r=!!t(e,n,i)}),r}function cd(e,t,r){var n=sm(e)?cp:cf;return r&&od(e,t,r)&&(t=void 0),n(e,u0(t))}function cm(e,t){var r=[];return u5(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}function ch(e,t){return(sm(e)?lD:cm)(e,u0(t))}function cy(e){return function(t,r,n){var i=Object(t);if(!of(t)){var a=u0(r);t=oL(t),r=tO(function(e){return a(i[e],e,i)},"predicate")}var s=e(t,r,n);return s>-1?i[a?t[s]:s]:void 0}}tO(cs,"last"),tO(co,"drop"),tO(cl,"dropRight"),tO(cu,"castFunction"),tO(cc,"forEach"),tO(cp,"arrayEvery"),tO(cf,"baseEvery"),tO(cd,"every"),tO(cm,"baseFilter"),tO(ch,"filter"),tO(cy,"createFind");var cg=Math.max;function cT(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var i=null==r?0:sw(r);return i<0&&(i=cg(n+i,0)),s5(e,u0(t),i)}tO(cT,"findIndex");var c$=cy(cT);function cv(e){return e&&e.length?e[0]:void 0}function cR(e,t){var r=-1,n=of(e)?Array(e.length):[];return u5(e,function(e,i,a){n[++r]=t(e,i,a)}),n}function cE(e,t){return(sm(e)?sd:cR)(e,u0(t))}function cA(e,t){return lE(cE(e,t),1)}tO(cv,"head"),tO(cR,"baseMap"),tO(cE,"map"),tO(cA,"flatMap");var cb=Object.prototype.hasOwnProperty,cC=u8(function(e,t,r){cb.call(e,r)?e[r].push(t):on(e,r,[t])}),cS=Object.prototype.hasOwnProperty;function ck(e,t){return null!=e&&cS.call(e,t)}function cx(e,t){return null!=e&&uH(e,t,ck)}function cN(e){return"string"==typeof e||!sm(e)&&sp(e)&&"[object String]"==sc(e)}function cI(e,t){return sd(t,function(t){return e[t]})}function c_(e){return null==e?[]:cI(e,oL(e))}tO(ck,"baseHas"),tO(cx,"has"),tO(cN,"isString"),tO(cI,"baseValues"),tO(c_,"values");var cw=Math.max;function cP(e,t,r,n){e=of(e)?e:c_(e),r=r&&!n?sw(r):0;var i=e.length;return r<0&&(r=cw(i+r,0)),cN(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&s6(e,t,r)>-1}tO(cP,"includes");var cO=Math.max;function cD(e,t,r){var n=null==e?0:e.length;if(!n)return -1;var i=null==r?0:sw(r);return i<0&&(i=cO(n+i,0)),s6(e,t,i)}tO(cD,"indexOf");var cL=Object.prototype.hasOwnProperty;function cM(e){if(null==e)return!0;if(of(e)&&(sm(e)||"string"==typeof e||"function"==typeof e.splice||oA()||oN(e)||oE(e)))return!e.length;var t=l5(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(oy(e))return!oD(e).length;for(var r in e)if(cL.call(e,r))return!1;return!0}function cj(e){return sp(e)&&"[object RegExp]"==sc(e)}tO(cM,"isEmpty"),tO(cj,"baseIsRegExp");var cF=ok&&ok.isRegExp,cG=cF?oS(cF):cj;function cz(e){return void 0===e}function cK(e){if("function"!=typeof e)throw TypeError("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function cq(e,t,r,n){if(!sA(e))return e;t=lm(t,e);for(var i=-1,a=t.length,s=a-1,o=e;null!=o&&++i<a;){var l=ly(t[i]),u=r;if("__proto__"===l||"constructor"===l||"prototype"===l)break;if(i!=s){var c=o[l];void 0===(u=n?n(c,l,o):void 0)&&(u=sA(c)?c:or(t[i+1])?[]:{})}os(o,l,u),o=o[l]}return e}function cU(e,t,r){for(var n=-1,i=t.length,a={};++n<i;){var s=t[n],o=lg(e,s);r(o,s)&&cq(a,lm(s,e),o)}return a}function cB(e,t){if(null==e)return{};var r=sd(lB(e),function(e){return[e]});return t=u0(t),cU(e,r,function(e,r){return t(e,r[0])})}function cW(e,t,r,n,i){return i(e,function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)}),r}function cV(e,t,r){var n=sm(e)?lS:cW,i=arguments.length<3;return n(e,u0(t),r,i,u5)}function cH(e,t){return(sm(e)?lD:cm)(e,cK(u0(t)))}function cY(e,t){var r;return u5(e,function(e,n,i){return!(r=t(e,n,i))}),!!r}function cZ(e,t,r){var n=sm(e)?uS:cY;return r&&od(e,t,r)&&(t=void 0),n(e,u0(t))}tO(cz,"isUndefined"),tO(cK,"negate"),tO(cq,"baseSet"),tO(cU,"basePickBy"),tO(cB,"pickBy"),tO(cW,"baseReduce"),tO(cV,"reduce"),tO(cH,"reject"),tO(cY,"baseSome"),tO(cZ,"some");var cX=lH&&1/uI(new lH([,-0]))[1]==1/0?function(e){return new lH(e)}:sJ;function cJ(e,t,r){var n=-1,i=oe,a=e.length,s=!0,o=[],l=o;if(r)s=!1,i=cn;else if(a>=200){var u=t?null:cX(e);if(u)return uI(u);s=!1,i=uk,l=new uC}else l=t?[]:o;t:for(;++n<a;){var c=e[n],p=t?t(c):c;if(c=r||0!==c?c:0,s&&p==p){for(var f=l.length;f--;)if(l[f]===p)continue t;t&&l.push(p),o.push(c)}else i(l,p,r)||(l!==o&&l.push(p),o.push(c))}return o}function cQ(e){return e&&e.length?cJ(e):[]}function c0(e){console&&console.error&&console.error(`Error: ${e}`)}function c1(e){console&&console.warn&&console.warn(`Warning: ${e}`)}function c2(e){let t=new Date().getTime(),r=e();return{time:new Date().getTime()-t,value:r}}function c3(e){function t(){}tO(t,"FakeConstructor"),t.prototype=e;let r=new t;function n(){return typeof r.bar}return tO(n,"fakeAccess"),n(),n(),e}function c9(e){return c4(e)?e.LABEL:e.name}function c4(e){return cN(e.LABEL)&&""!==e.LABEL}tO(cJ,"baseUniq"),tO(cQ,"uniq"),tO(c0,"PRINT_ERROR"),tO(c1,"PRINT_WARNING"),tO(c2,"timer"),tO(c3,"toFastProperties"),tO(c9,"tokenLabel"),tO(c4,"hasTokenLabel");var c5=class{static{tO(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),cc(this.definition,t=>{t.accept(e)})}},c7=class extends c5{static{tO(this,"NonTerminal")}constructor(e){super([]),this.idx=1,oj(this,cB(e,e=>void 0!==e))}set definition(e){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(e){e.visit(this)}},c8=class extends c5{static{tO(this,"Rule")}constructor(e){super(e.definition),this.orgText="",oj(this,cB(e,e=>void 0!==e))}},c6=class extends c5{static{tO(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,oj(this,cB(e,e=>void 0!==e))}},pe=class extends c5{static{tO(this,"Option")}constructor(e){super(e.definition),this.idx=1,oj(this,cB(e,e=>void 0!==e))}},pt=class extends c5{static{tO(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,oj(this,cB(e,e=>void 0!==e))}},pr=class extends c5{static{tO(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,oj(this,cB(e,e=>void 0!==e))}},pn=class extends c5{static{tO(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,oj(this,cB(e,e=>void 0!==e))}},pi=class extends c5{static{tO(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,oj(this,cB(e,e=>void 0!==e))}},pa=class extends c5{static{tO(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,oj(this,cB(e,e=>void 0!==e))}},ps=class{static{tO(this,"Terminal")}constructor(e){this.idx=1,oj(this,cB(e,e=>void 0!==e))}accept(e){e.visit(this)}};function po(e){return cE(e,pl)}function pl(e){function t(e){return cE(e,pl)}if(tO(t,"convertDefinition"),e instanceof c7){let t={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return cN(e.label)&&(t.label=e.label),t}if(e instanceof c6)return{type:"Alternative",definition:t(e.definition)};if(e instanceof pe)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof pt)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof pr)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:pl(new ps({terminalType:e.separator})),definition:t(e.definition)};else if(e instanceof pi)return{type:"RepetitionWithSeparator",idx:e.idx,separator:pl(new ps({terminalType:e.separator})),definition:t(e.definition)};else if(e instanceof pn)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};else if(e instanceof pa)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};else if(e instanceof ps){let t={type:"Terminal",name:e.terminalType.name,label:c9(e.terminalType),idx:e.idx};cN(e.label)&&(t.terminalLabel=e.label);let r=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=cG(r)?r.source:r),t}else if(e instanceof c8)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};else throw Error("non exhaustive match")}tO(po,"serializeGrammar"),tO(pl,"serializeProduction");var pu=class{static{tO(this,"GAstVisitor")}visit(e){switch(e.constructor){case c7:return this.visitNonTerminal(e);case c6:return this.visitAlternative(e);case pe:return this.visitOption(e);case pt:return this.visitRepetitionMandatory(e);case pr:return this.visitRepetitionMandatoryWithSeparator(e);case pi:return this.visitRepetitionWithSeparator(e);case pn:return this.visitRepetition(e);case pa:return this.visitAlternation(e);case ps:return this.visitTerminal(e);case c8:return this.visitRule(e);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function pc(e){return e instanceof c6||e instanceof pe||e instanceof pn||e instanceof pt||e instanceof pr||e instanceof pi||e instanceof ps||e instanceof c8}function pp(e,t=[]){return e instanceof pe||e instanceof pn||e instanceof pi||(e instanceof pa?cZ(e.definition,e=>pp(e,t)):!(e instanceof c7&&cP(t,e))&&e instanceof c5&&(e instanceof c7&&t.push(e),cd(e.definition,e=>pp(e,t))))}function pf(e){return e instanceof pa}function pd(e){if(e instanceof c7)return"SUBRULE";if(e instanceof pe)return"OPTION";if(e instanceof pa)return"OR";if(e instanceof pt)return"AT_LEAST_ONE";if(e instanceof pr)return"AT_LEAST_ONE_SEP";else if(e instanceof pi)return"MANY_SEP";else if(e instanceof pn)return"MANY";else if(e instanceof ps)return"CONSUME";else throw Error("non exhaustive match")}tO(pc,"isSequenceProd"),tO(pp,"isOptionalProd"),tO(pf,"isBranchingProd"),tO(pd,"getProductionDslName");var pm=class{static{tO(this,"RestWalker")}walk(e,t=[]){cc(e.definition,(r,n)=>{let i=co(e.definition,n+1);if(r instanceof c7)this.walkProdRef(r,i,t);else if(r instanceof ps)this.walkTerminal(r,i,t);else if(r instanceof c6)this.walkFlat(r,i,t);else if(r instanceof pe)this.walkOption(r,i,t);else if(r instanceof pt)this.walkAtLeastOne(r,i,t);else if(r instanceof pr)this.walkAtLeastOneSep(r,i,t);else if(r instanceof pi)this.walkManySep(r,i,t);else if(r instanceof pn)this.walkMany(r,i,t);else if(r instanceof pa)this.walkOr(r,i,t);else throw Error("non exhaustive match")})}walkTerminal(e,t,r){}walkProdRef(e,t,r){}walkFlat(e,t,r){let n=t.concat(r);this.walk(e,n)}walkOption(e,t,r){let n=t.concat(r);this.walk(e,n)}walkAtLeastOne(e,t,r){let n=[new pe({definition:e.definition})].concat(t,r);this.walk(e,n)}walkAtLeastOneSep(e,t,r){let n=ph(e,t,r);this.walk(e,n)}walkMany(e,t,r){let n=[new pe({definition:e.definition})].concat(t,r);this.walk(e,n)}walkManySep(e,t,r){let n=ph(e,t,r);this.walk(e,n)}walkOr(e,t,r){let n=t.concat(r);cc(e.definition,e=>{let t=new c6({definition:[e]});this.walk(t,n)})}};function ph(e,t,r){return[new pe({definition:[new ps({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}function py(e){if(e instanceof c7)return py(e.referencedRule);if(e instanceof ps)return p$(e);if(pc(e))return pg(e);if(pf(e))return pT(e);throw Error("non exhaustive match")}function pg(e){let t,r=[],n=e.definition,i=0,a=n.length>i,s=!0;for(;a&&s;)s=pp(t=n[i]),r=r.concat(py(t)),i+=1,a=n.length>i;return cQ(r)}function pT(e){return cQ(lA(cE(e.definition,e=>py(e))))}function p$(e){return[e.terminalType]}tO(ph,"restForRepetitionWithSeparator"),tO(py,"first"),tO(pg,"firstForSequence"),tO(pT,"firstForBranching"),tO(p$,"firstForTerminal");var pv="_~IN~_",pR=class extends pm{static{tO(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,r){}walkProdRef(e,t,r){let n=pA(e.referencedRule,e.idx)+this.topProd.name,i=py(new c6({definition:t.concat(r)}));this.follows[n]=i}};function pE(e){let t={};return cc(e,e=>{oj(t,new pR(e).startWalking())}),t}function pA(e,t){return e.name+t+pv}tO(pE,"computeAllProdsFollows"),tO(pA,"buildBetweenProdsFollowPrefix");var pb={},pC=new ac;function pS(e){let t=e.toString();if(pb.hasOwnProperty(t))return pb[t];{let e=pC.pattern(t);return pb[t]=e,e}}function pk(){pb={}}tO(pS,"getRegExpAst"),tO(pk,"clearRegExpParserCache");var px="Complement Sets are not supported for first char optimization",pN='Unable to use "first char" lexer optimizations:\n';function pI(e,t=!1){try{let t=pS(e);return p_(t.value,{},t.flags.ignoreCase)}catch(r){if(r.message===px)t&&c1(`${pN} Unable to optimize: < ${e.toString()} >
22
+ Complement Sets cannot be automatically optimized.
23
+ This will disable the lexer's first char optimizations.
24
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let r="";t&&(r="\n This will disable the lexer's first char optimizations.\n See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."),c0(`${pN}
25
+ Failed parsing: < ${e.toString()} >
26
+ Using the @chevrotain/regexp-to-ast library
27
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function p_(e,t,r){switch(e.type){case"Disjunction":for(let n=0;n<e.value.length;n++)p_(e.value[n],t,r);break;case"Alternative":let n=e.value;for(let e=0;e<n.length;e++){let i=n[e];switch(i.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}switch(i.type){case"Character":pw(i.value,t,r);break;case"Set":if(!0===i.complement)throw Error(px);cc(i.value,e=>{if("number"==typeof e)pw(e,t,r);else if(!0===r)for(let n=e.from;n<=e.to;n++)pw(n,t,r);else{for(let n=e.from;n<=e.to&&n<fs;n++)pw(n,t,r);if(e.to>=fs){let r=e.from>=fs?e.from:fs,n=e.to,i=fl(r),a=fl(n);for(let e=i;e<=a;e++)t[e]=e}}});break;case"Group":p_(i.value,t,r);break;default:throw Error("Non Exhaustive Match")}let a=void 0!==i.quantifier&&0===i.quantifier.atLeast;if("Group"===i.type&&!1===pD(i)||"Group"!==i.type&&!1===a)break}break;default:throw Error("non exhaustive match!")}return c_(t)}function pw(e,t,r){let n=fl(e);t[n]=n,!0===r&&pP(e,t)}function pP(e,t){let r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){let e=fl(n.charCodeAt(0));t[e]=e}else{let e=r.toLowerCase();if(e!==r){let r=fl(e.charCodeAt(0));t[r]=r}}}function pO(e,t){return c$(e.value,e=>"number"==typeof e?cP(t,e):void 0!==c$(t,t=>e.from<=t&&t<=e.to))}function pD(e){let t=e.quantifier;return!!t&&0===t.atLeast||!!e.value&&(sm(e.value)?cd(e.value,pD):pD(e.value))}tO(pI,"getOptimizedStartCodesIndices"),tO(p_,"firstCharOptimizedIndices"),tO(pw,"addOptimizedIdxToResult"),tO(pP,"handleIgnoreCase"),tO(pO,"findCode"),tO(pD,"isWholeOptional");var pL=class extends ap{static{tO(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(!0!==this.found){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){cP(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?void 0===pO(e,this.targetCharCodes)&&(this.found=!0):void 0!==pO(e,this.targetCharCodes)&&(this.found=!0)}};function pM(e,t){if(!(t instanceof RegExp))return void 0!==c$(t,t=>cP(e,t.charCodeAt(0)));{let r=pS(t),n=new pL(e);return n.visit(r),n.found}}tO(pM,"canMatchCharCode");var pj="PATTERN",pF="defaultMode",pG="modes";function pz(e,t){let r,n,i,a,s,o,l,u,c,p,f,d,m=(t=ct(t,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:tO((e,t)=>t(),"tracer")})).tracer;m("initCharCodeToOptimizedIndexMap",()=>{fu()}),m("Reject Lexer.NA",()=>{r=cH(e,e=>e[pj]===fk.NA)});let h=!1;m("Transform Patterns",()=>{h=!1,n=cE(r,e=>{let t=e[pj];if(cG(t)){let e=t.source;return 1!==e.length||"^"===e||"$"===e||"."===e||t.ignoreCase?2!==e.length||"\\"!==e[0]||cP(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],e[1])?p4(t):e[1]:e}if(sO(t))return h=!0,{exec:t};if("object"==typeof t)return h=!0,t;if("string"==typeof t)if(1===t.length)return t;else return p4(new RegExp(t.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")));throw Error("non exhaustive match")})}),m("misc mapping",()=>{i=cE(r,e=>e.tokenTypeIdx),a=cE(r,e=>{let t=e.GROUP;if(t!==fk.SKIPPED){if(cN(t))return t;if(cz(t))return!1;throw Error("non exhaustive match")}}),s=cE(r,e=>{let t=e.LONGER_ALT;if(t)return sm(t)?cE(t,e=>cD(r,e)):[cD(r,t)]}),o=cE(r,e=>e.PUSH_MODE),l=cE(r,e=>cx(e,"POP_MODE"))}),m("Line Terminator Handling",()=>{let e=fi(t.lineTerminatorCharacters);u=cE(r,e=>!1),"onlyOffset"!==t.positionTracking&&(u=cE(r,t=>cx(t,"LINE_BREAKS")?!!t.LINE_BREAKS:!1===fr(t,e)&&pM(e,t.PATTERN)))}),m("Misc Mapping #2",()=>{c=cE(r,p6),p=cE(n,fe),f=cV(r,(e,t)=>{let r=t.GROUP;return cN(r)&&r!==fk.SKIPPED&&(e[r]=[]),e},{}),d=cE(n,(e,t)=>({pattern:n[t],longerAlt:s[t],canLineTerminator:u[t],isCustom:c[t],short:p[t],group:a[t],push:o[t],pop:l[t],tokenTypeIdx:i[t],tokenType:r[t]}))});let y=!0,g=[];return t.safeMode||m("First Char Optimization",()=>{g=cV(r,(e,r,n)=>{if("string"==typeof r.PATTERN)fa(e,fl(r.PATTERN.charCodeAt(0)),d[n]);else if(sm(r.START_CHARS_HINT)){let t;cc(r.START_CHARS_HINT,r=>{let i=fl("string"==typeof r?r.charCodeAt(0):r);t!==i&&(t=i,fa(e,i,d[n]))})}else if(cG(r.PATTERN))if(r.PATTERN.unicode)y=!1,t.ensureOptimizations&&c0(`${pN} Unable to analyze < ${r.PATTERN.toString()} > pattern.
28
+ The regexp unicode flag is not currently supported by the regexp-to-ast library.
29
+ This will disable the lexer's first char optimizations.
30
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let i=pI(r.PATTERN,t.ensureOptimizations);cM(i)&&(y=!1),cc(i,t=>{fa(e,t,d[n])})}else t.ensureOptimizations&&c0(`${pN} TokenType: <${r.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
31
+ This will disable the lexer's first char optimizations.
32
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),y=!1;return e},[])}),{emptyGroups:f,patternIdxToConfig:d,charCodeToPatternIdxToConfig:g,hasCustom:h,canBeOptimized:y}}function pK(e,t){let r=[],n=pU(e);r=r.concat(n.errors);let i=pB(n.valid),a=i.valid;return(r=(r=(r=(r=r.concat(i.errors)).concat(pq(a))).concat(pQ(a))).concat(p0(a,t))).concat(p1(a))}function pq(e){let t=[],r=ch(e,e=>cG(e[pj]));return(t=(t=(t=(t=t.concat(pV(r))).concat(pZ(r))).concat(pX(r))).concat(pJ(r))).concat(pH(r))}function pU(e){let t=ch(e,e=>!cx(e,pj));return{errors:cE(t,e=>({message:"Token Type: ->"+e.name+"<- missing static 'PATTERN' property",type:eV.MISSING_PATTERN,tokenTypes:[e]})),valid:ca(e,t)}}function pB(e){let t=ch(e,e=>{let t=e[pj];return!cG(t)&&!sO(t)&&!cx(t,"exec")&&!cN(t)});return{errors:cE(t,e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:eV.INVALID_PATTERN,tokenTypes:[e]})),valid:ca(e,t)}}tO(pz,"analyzeTokenTypes"),tO(pK,"validatePatterns"),tO(pq,"validateRegExpPattern"),tO(pU,"findMissingPatterns"),tO(pB,"findInvalidPatterns");var pW=/[^\\][$]/;function pV(e){class t extends ap{static{tO(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}return cE(ch(e,e=>{let r=e.PATTERN;try{let e=pS(r),n=new t;return n.visit(e),n.found}catch(e){return pW.test(r.source)}}),e=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+e.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:eV.EOI_ANCHOR_FOUND,tokenTypes:[e]}))}function pH(e){return cE(ch(e,e=>e.PATTERN.test("")),e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' must not match an empty string",type:eV.EMPTY_MATCH_PATTERN,tokenTypes:[e]}))}tO(pV,"findEndOfInputAnchor"),tO(pH,"findEmptyMatchRegExps");var pY=/[^\\[][\^]|^\^/;function pZ(e){class t extends ap{static{tO(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}return cE(ch(e,e=>{let r=e.PATTERN;try{let e=pS(r),n=new t;return n.visit(e),n.found}catch(e){return pY.test(r.source)}}),e=>({message:"Unexpected RegExp Anchor Error:\n Token Type: ->"+e.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.",type:eV.SOI_ANCHOR_FOUND,tokenTypes:[e]}))}function pX(e){return cE(ch(e,e=>{let t=e[pj];return t instanceof RegExp&&(t.multiline||t.global)}),e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:eV.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]}))}function pJ(e){let t=[],r=cE(e,r=>cV(e,(e,n)=>(r.PATTERN.source!==n.PATTERN.source||cP(t,n)||n.PATTERN===fk.NA||(t.push(n),e.push(n)),e),[]));return cE(ch(r=uE(r),e=>e.length>1),e=>{let t=cE(e,e=>e.name),r=cv(e).PATTERN;return{message:`The same RegExp pattern ->${r}<-has been used in all of the following Token Types: ${t.join(", ")} <-`,type:eV.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}})}function pQ(e){return cE(ch(e,e=>{if(!cx(e,"GROUP"))return!1;let t=e.GROUP;return t!==fk.SKIPPED&&t!==fk.NA&&!cN(t)}),e=>({message:"Token Type: ->"+e.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:eV.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]}))}function p0(e,t){return cE(ch(e,e=>void 0!==e.PUSH_MODE&&!cP(t,e.PUSH_MODE)),e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:eV.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]}))}function p1(e){let t=[],r=cV(e,(e,t,r)=>{let n=t.PATTERN;return n===fk.NA||(cN(n)?e.push({str:n,idx:r,tokenType:t}):cG(n)&&p3(n)&&e.push({str:n.source,idx:r,tokenType:t})),e},[]);return cc(e,(e,n)=>{cc(r,({str:r,idx:i,tokenType:a})=>{if(n<i&&p2(r,e.PATTERN)){let r=`Token: ->${a.name}<- can never be matched.
33
+ Because it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.
34
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:r,type:eV.UNREACHABLE_PATTERN,tokenTypes:[e,a]})}})}),t}function p2(e,t){if(cG(t)){if(p9(t))return!1;let r=t.exec(e);return null!==r&&0===r.index}if(sO(t))return t(e,0,[],{});if(cx(t,"exec"))return t.exec(e,0,[],{});if("string"==typeof t)return t===e;throw Error("non exhaustive match")}function p3(e){return void 0===c$([".","\\","[","]","|","^","$","(",")","?","*","+","{"],t=>-1!==e.source.indexOf(t))}function p9(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}function p4(e){let t=e.ignoreCase?"iy":"y";return RegExp(`${e.source}`,t)}function p5(e,t,r){let n=[];return cx(e,pF)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+pF+"> property in its definition\n",type:eV.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),cx(e,pG)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+pG+"> property in its definition\n",type:eV.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),cx(e,pG)&&cx(e,pF)&&!cx(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${pF}: <${e.defaultMode}>which does not exist
35
+ `,type:eV.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),cx(e,pG)&&cc(e.modes,(e,t)=>{cc(e,(r,i)=>{cz(r)?n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${t}> at index: <${i}>
36
+ `,type:eV.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):cx(r,"LONGER_ALT")&&cc(sm(r.LONGER_ALT)?r.LONGER_ALT:[r.LONGER_ALT],i=>{cz(i)||cP(e,i)||n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${r.name}> outside of mode <${t}>
37
+ `,type:eV.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),n}function p7(e,t,r){let n=[],i=!1,a=cH(uE(lA(c_(e.modes))),e=>e[pj]===fk.NA),s=fi(r);return t&&cc(a,e=>{let t=fr(e,s);if(!1!==t){let r={message:fn(e,t),type:t.issue,tokenType:e};n.push(r)}else cx(e,"LINE_BREAKS")?!0===e.LINE_BREAKS&&(i=!0):pM(s,e.PATTERN)&&(i=!0)}),t&&!i&&n.push({message:"Warning: No LINE_BREAKS Found.\n This Lexer has been defined to track line and column information,\n But none of the Token Types can be identified as matching a line terminator.\n See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n for details.",type:eV.NO_LINE_BREAKS_FLAGS}),n}function p8(e){let t={};return cc(oL(e),r=>{if(sm(e[r]))t[r]=[];else throw Error("non exhaustive match")}),t}function p6(e){let t=e.PATTERN;if(cG(t))return!1;if(sO(t))return!0;if(cx(t,"exec"))return!0;if(cN(t))return!1;throw Error("non exhaustive match")}function fe(e){return!!cN(e)&&1===e.length&&e.charCodeAt(0)}tO(pZ,"findStartOfInputAnchor"),tO(pX,"findUnsupportedFlags"),tO(pJ,"findDuplicatePatterns"),tO(pQ,"findInvalidGroupType"),tO(p0,"findModesThatDoNotExist"),tO(p1,"findUnreachablePatterns"),tO(p2,"tryToMatchStrToPattern"),tO(p3,"noMetaChar"),tO(p9,"usesLookAheadOrBehind"),tO(p4,"addStickyFlag"),tO(p5,"performRuntimeChecks"),tO(p7,"performWarningRuntimeChecks"),tO(p8,"cloneEmptyGroups"),tO(p6,"isCustomPattern"),tO(fe,"isShortPattern");var ft={test:tO(function(e){let t=e.length;for(let r=this.lastIndex;r<t;r++){let t=e.charCodeAt(r);if(10===t)return this.lastIndex=r+1,!0;if(13===t)return 10===e.charCodeAt(r+1)?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function fr(e,t){if(cx(e,"LINE_BREAKS"))return!1;if(cG(e.PATTERN)){try{pM(t,e.PATTERN)}catch(e){return{issue:eV.IDENTIFY_TERMINATOR,errMsg:e.message}}return!1}if(cN(e.PATTERN))return!1;if(p6(e))return{issue:eV.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}function fn(e,t){if(t.issue===eV.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
38
+ The problem is in the <${e.name}> Token Type
39
+ Root cause: ${t.errMsg}.
40
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===eV.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
41
+ The problem is in the <${e.name}> Token Type
42
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function fi(e){return cE(e,e=>cN(e)?e.charCodeAt(0):e)}function fa(e,t,r){void 0===e[t]?e[t]=[r]:e[t].push(r)}tO(fr,"checkLineBreaksIssues"),tO(fn,"buildLineBreakIssueMessage"),tO(fi,"getCharCodes"),tO(fa,"addToMapOfArrays");var fs=256,fo=[];function fl(e){return e<fs?e:fo[e]}function fu(){if(cM(fo)){fo=Array(65536);for(let e=0;e<65536;e++)fo[e]=e>255?255+~~(e/255):e}}function fc(e,t){let r=e.tokenTypeIdx;return r===t.tokenTypeIdx||!0===t.isParent&&!0===t.categoryMatchesMap[r]}function fp(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}tO(fl,"charCodeToOptimizedIndex"),tO(fu,"initCharCodeToOptimizedIndexMap"),tO(fc,"tokenStructuredMatcher"),tO(fp,"tokenStructuredMatcherNoCategories");var ff=1,fd={};function fm(e){let t=fh(e);fy(t),fT(t),fg(t),cc(t,e=>{e.isParent=e.categoryMatches.length>0})}function fh(e){let t=uR(e),r=e,n=!0;for(;n;){let e=ca(r=uE(lA(cE(r,e=>e.CATEGORIES))),t);t=t.concat(e),cM(e)?n=!1:r=e}return t}function fy(e){cc(e,e=>{fv(e)||(fd[ff]=e,e.tokenTypeIdx=ff++),fR(e)&&!sm(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),fR(e)||(e.CATEGORIES=[]),fE(e)||(e.categoryMatches=[]),fA(e)||(e.categoryMatchesMap={})})}function fg(e){cc(e,e=>{e.categoryMatches=[],cc(e.categoryMatchesMap,(t,r)=>{e.categoryMatches.push(fd[r].tokenTypeIdx)})})}function fT(e){cc(e,e=>{f$([],e)})}function f$(e,t){cc(e,e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0}),cc(t.CATEGORIES,r=>{let n=e.concat(t);cP(n,r)||f$(n,r)})}function fv(e){return cx(e,"tokenTypeIdx")}function fR(e){return cx(e,"CATEGORIES")}function fE(e){return cx(e,"categoryMatches")}function fA(e){return cx(e,"categoryMatchesMap")}function fb(e){return cx(e,"tokenTypeIdx")}tO(fm,"augmentTokenTypes"),tO(fh,"expandCategories"),tO(fy,"assignTokenDefaultProps"),tO(fg,"assignCategoriesTokensProp"),tO(fT,"assignCategoriesMapProp"),tO(f$,"singleAssignCategoriesToksMap"),tO(fv,"hasShortKeyProperty"),tO(fR,"hasCategoriesProperty"),tO(fE,"hasExtendingTokensTypesProperty"),tO(fA,"hasExtendingTokensTypesMapProperty"),tO(fb,"isTokenType");var fC={buildUnableToPopLexerModeMessage:e=>`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(e,t,r,n,i,a)=>`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`};(a=eV||(eV={}))[a.MISSING_PATTERN=0]="MISSING_PATTERN",a[a.INVALID_PATTERN=1]="INVALID_PATTERN",a[a.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",a[a.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",a[a.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",a[a.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",a[a.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",a[a.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",a[a.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",a[a.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",a[a.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",a[a.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",a[a.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",a[a.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",a[a.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",a[a.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",a[a.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",a[a.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE";var fS={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:fC,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(fS);var fk=class{static{tO(this,"Lexer")}constructor(e,t=fS){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(e,t)=>{if(!0!==this.traceInitPerf)return t();{this.traceInitIndent++;let r=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:i}=c2(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}},"boolean"==typeof t)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=oj({},fS,t);const r=this.config.traceInitPerf;!0===r?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof r&&(this.traceInitMaxIdent=r,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,n=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===fS.lineTerminatorsPattern)this.config.lineTerminatorsPattern=ft;else if(this.config.lineTerminatorCharacters===fS.lineTerminatorCharacters)throw Error("Error: Missing <lineTerminatorCharacters> property on the Lexer config.\n For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS");if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),sm(e)?r={modes:{defaultMode:uR(e)},defaultMode:pF}:(n=!1,r=uR(e))}),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(p5(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(p7(r,this.trackStartLines,this.config.lineTerminatorCharacters))})),r.modes=r.modes?r.modes:{},cc(r.modes,(e,t)=>{r.modes[t]=cH(e,e=>cz(e))});let i=oL(r.modes);if(cc(r.modes,(e,r)=>{this.TRACE_INIT(`Mode: <${r}> processing`,()=>{if(this.modes.push(r),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(pK(e,i))}),cM(this.lexerDefinitionErrors)){let n;fm(e),this.TRACE_INIT("analyzeTokenTypes",()=>{n=pz(e,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[r]=n.patternIdxToConfig,this.charCodeToPatternIdxToConfig[r]=n.charCodeToPatternIdxToConfig,this.emptyGroups=oj({},this.emptyGroups,n.emptyGroups),this.hasCustom=n.hasCustom||this.hasCustom,this.canModeBeOptimized[r]=n.canBeOptimized}})}),this.defaultMode=r.defaultMode,!cM(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling)throw Error("Errors detected in definition of Lexer:\n"+cE(this.lexerDefinitionErrors,e=>e.message).join("-----------------------\n"));cc(this.lexerDefinitionWarning,e=>{c1(e.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(n&&(this.handleModes=sJ),!1===this.trackStartLines&&(this.computeNewColumn=sP),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=sJ),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let e=cV(this.canModeBeOptimized,(e,t,r)=>(!1===t&&e.push(r),e),[]);if(t.ensureOptimizations&&!cM(e))throw Error(`Lexer Modes: < ${e.join(", ")} > cannot be optimized.
43
+ Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
44
+ Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{pk()}),this.TRACE_INIT("toFastProperties",()=>{c3(this)})})}tokenize(e,t=this.defaultMode){if(!cM(this.lexerDefinitionErrors))throw Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+cE(this.lexerDefinitionErrors,e=>e.message).join("-----------------------\n"));return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let r,n,i,a,s,o,l,u,c,p,f,d,m,h,y,g,T=e.length,$=0,v=0,R=Array(this.hasCustom?0:Math.floor(e.length/10)),E=[],A=this.trackStartLines?1:void 0,b=this.trackStartLines?1:void 0,C=p8(this.emptyGroups),S=this.trackStartLines,k=this.config.lineTerminatorsPattern,x=0,N=[],I=[],_=[],w=[];Object.freeze(w);let P=!1,O=tO(e=>{if(1===_.length&&void 0===e.tokenType.PUSH_MODE){let t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);E.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{_.pop();let e=cs(_);N=this.patternIdxToConfig[e],I=this.charCodeToPatternIdxToConfig[e],x=N.length;let t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;P=!!I&&!!t}},"pop_mode");function D(e){_.push(e),I=this.charCodeToPatternIdxToConfig[e],x=(N=this.patternIdxToConfig[e]).length,x=N.length;let t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;P=!!I&&!!t}tO(D,"push_mode"),D.call(this,t);let L=this.config.recoveryEnabled;for(;$<T;){let t;o=null,c=-1;let M=e.charCodeAt($);if(P){let e=I[fl(M)];t=void 0!==e?e:w}else t=N;let j=t.length;for(r=0;r<j;r++){let n=(g=t[r]).pattern;l=null;let p=g.short;if(!1!==p?M===p&&(c=1,o=n):!0===g.isCustom?null!==(y=n.exec(e,$,R,C))?(c=(o=y[0]).length,void 0!==y.payload&&(l=y.payload)):o=null:(n.lastIndex=$,c=this.matchLength(n,e,$)),-1!==c){if(void 0!==(s=g.longerAlt)){o=e.substring($,$+c);let t=s.length;for(i=0;i<t;i++){let t=N[s[i]],r=t.pattern;if(u=null,!0===t.isCustom?null!==(y=r.exec(e,$,R,C))?(a=y[0],void 0!==y.payload&&(u=y.payload)):a=null:(r.lastIndex=$,a=this.match(r,e,$)),a&&a.length>o.length){o=a,c=a.length,l=u,g=t;break}}}break}}if(-1!==c){if(void 0!==(p=g.group)&&(o=null!==o?o:e.substring($,$+c),f=g.tokenTypeIdx,d=this.createTokenInstance(o,$,f,g.tokenType,A,b,c),this.handlePayload(d,l),!1===p?v=this.addToken(R,v,d):C[p].push(d)),!0===S&&!0===g.canLineTerminator){let t,r,n=0;k.lastIndex=0;do o=null!==o?o:e.substring($,$+c),!0===(t=k.test(o))&&(r=k.lastIndex-1,n++);while(!0===t)0!==n?(A+=n,b=c-r,this.updateTokenEndLineColumnLocation(d,p,r,n,A,b,c)):b=this.computeNewColumn(b,c)}else b=this.computeNewColumn(b,c);$+=c,this.handleModes(g,O,D,d)}else{let t=$,r=A,i=b,a=!1===L;for(;!1===a&&$<T;)for($++,n=0;n<x;n++){let t=N[n],r=t.pattern,i=t.short;if(!1!==i?e.charCodeAt($)===i&&(a=!0):!0===t.isCustom?a=null!==r.exec(e,$,R,C):(r.lastIndex=$,a=null!==r.exec(e)),!0===a)break}if(m=$-t,b=this.computeNewColumn(b,m),h=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(e,t,m,r,i,cs(_)),E.push({offset:t,line:r,column:i,length:m,message:h}),!1===L)break}}return this.hasCustom||(R.length=v),{tokens:R,groups:C,errors:E}}handleModes(e,t,r,n){if(!0===e.pop){let i=e.push;t(n),void 0!==i&&r.call(this,i)}else void 0!==e.push&&r.call(this,e.push)}updateTokenEndLineColumnLocation(e,t,r,n,i,a,s){let o,l;void 0!==t&&(l=(o=r===s-1)?-1:0,(1!==n||!0!==o)&&(e.endLine=i+l,e.endColumn=a-1+-l))}computeNewColumn(e,t){return e+t}createOffsetOnlyToken(e,t,r,n){return{image:e,startOffset:t,tokenTypeIdx:r,tokenType:n}}createStartOnlyToken(e,t,r,n,i,a){return{image:e,startOffset:t,startLine:i,startColumn:a,tokenTypeIdx:r,tokenType:n}}createFullToken(e,t,r,n,i,a,s){return{image:e,startOffset:t,endOffset:t+s-1,startLine:i,endLine:i,startColumn:a,endColumn:a+s-1,tokenTypeIdx:r,tokenType:n}}addTokenUsingPush(e,t,r){return e.push(r),t}addTokenUsingMemberAccess(e,t,r){return e[t]=r,++t}handlePayloadNoCustom(e,t){}handlePayloadWithCustom(e,t){null!==t&&(e.payload=t)}match(e,t,r){return!0===e.test(t)?t.substring(r,e.lastIndex):null}matchLength(e,t,r){return!0===e.test(t)?e.lastIndex-r:-1}};function fx(e){return fN(e)?e.LABEL:e.name}function fN(e){return cN(e.LABEL)&&""!==e.LABEL}fk.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",fk.NA=/NOT_APPLICABLE/,tO(fx,"tokenLabel"),tO(fN,"hasTokenLabel");var fI="categories",f_="label",fw="group",fP="push_mode",fO="pop_mode",fD="longer_alt",fL="line_breaks",fM="start_chars_hint";function fj(e){return fF(e)}function fF(e){let t=e.pattern,r={};if(r.name=e.name,cz(t)||(r.PATTERN=t),cx(e,"parent"))throw"The parent property is no longer supported.\nSee: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.";return cx(e,fI)&&(r.CATEGORIES=e[fI]),fm([r]),cx(e,f_)&&(r.LABEL=e[f_]),cx(e,fw)&&(r.GROUP=e[fw]),cx(e,fO)&&(r.POP_MODE=e[fO]),cx(e,fP)&&(r.PUSH_MODE=e[fP]),cx(e,fD)&&(r.LONGER_ALT=e[fD]),cx(e,fL)&&(r.LINE_BREAKS=e[fL]),cx(e,fM)&&(r.START_CHARS_HINT=e[fM]),r}tO(fj,"createToken"),tO(fF,"createTokenInternal");var fG=fj({name:"EOF",pattern:fk.NA});function fz(e,t,r,n,i,a,s,o){return{image:t,startOffset:r,endOffset:n,startLine:i,endLine:a,startColumn:s,endColumn:o,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}function fK(e,t){return fc(e,t)}fm([fG]),tO(fz,"createTokenInstance"),tO(fK,"tokenMatcher");var fq={buildMismatchTokenMessage({expected:e,actual:t,previous:r,ruleName:n}){let i=fN(e)?`--> ${fx(e)} <--`:`token of type --> ${e.name} <--`;return`Expecting ${i} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage:({firstRedundant:e,ruleName:t})=>"Redundant input, expecting EOF but found: "+e.image,buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",s="\nbut found: '"+cv(t).image+"'";if(n)return a+n+s;{let t=cE(cV(e,(e,t)=>e.concat(t),[]),e=>`[${cE(e,e=>fx(e)).join(", ")}]`),r=cE(t,(e,t)=>` ${t+1}. ${e}`);return a+`one of these possible Token sequences:
45
+ ${r.join("\n")}`+s}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){let i="Expecting: ",a="\nbut found: '"+cv(t).image+"'";if(r)return i+r+a;{let t=cE(e,e=>`[${cE(e,e=>fx(e)).join(",")}]`);return i+`expecting at least one iteration which starts with one of these possible Token sequences::
46
+ <${t.join(" ,")}>`+a}}};Object.freeze(fq);var fU={buildRuleNotFoundError:(e,t)=>"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+"<-\ninside top level rule: ->"+e.name+"<-"},fB={buildDuplicateFoundError(e,t){function r(e){return e instanceof ps?e.terminalType.name:e instanceof c7?e.nonTerminalName:""}tO(r,"getExtraProductionArgument");let n=e.name,i=cv(t),a=i.idx,s=pd(i),o=r(i),l=`->${s}${a>0?a:""}<- ${o?`with argument: ->${o}<-`:""}
47
+ appears more than once (${t.length} times) in the top level rule: ->${n}<-.
48
+ For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
49
+ `;return(l=l.replace(/[ \t]+/g," ")).replace(/\s\s+/g,"\n")},buildNamespaceConflictError:e=>`Namespace conflict found in grammar.
50
+ The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.
51
+ To resolve this make sure each Terminal and Non-Terminal names are unique
52
+ This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
53
+ and Non-Terminal names start with a lower case letter.`,buildAlternationPrefixAmbiguityError(e){let t=cE(e.prefixPath,e=>fx(e)).join(", "),r=0===e.alternation.idx?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix
54
+ in <OR${r}> inside <${e.topLevelRule.name}> Rule,
55
+ <${t}> may appears as a prefix path in all these alternatives.
56
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
57
+ For Further details.`},buildAlternationAmbiguityError(e){let t=0===e.alternation.idx?"":e.alternation.idx,r=0===e.prefixPath.length,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${t}> inside <${e.topLevelRule.name}> Rule,
58
+ `;if(r)n+=`These alternatives are all empty (match no tokens), making them indistinguishable.
59
+ Only the last alternative may be empty.
60
+ `;else{let t=cE(e.prefixPath,e=>fx(e)).join(", ");n+=`<${t}> may appears as a prefix path in all these alternatives.
61
+ `}return n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
62
+ For Further details.`},buildEmptyRepetitionError(e){let t=pd(e.repetition);return 0!==e.repetition.idx&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
63
+ This could lead to an infinite loop.`},buildTokenNameError:e=>"deprecated",buildEmptyAlternationError:e=>`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
64
+ Only the last alternative may be an empty alternative.`,buildTooManyAlternativesError:e=>`An Alternation cannot have more than 256 alternatives:
65
+ <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
66
+ has ${e.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(e){let t=e.topLevelRule.name,r=cE(e.leftRecursionPath,e=>e.name),n=`${t} --> ${r.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar.
67
+ rule: <${t}> can be invoked from itself (directly or indirectly)
68
+ without consuming any Tokens. The grammar path that causes this is:
69
+ ${n}
70
+ To fix this refactor your grammar to remove the left recursion.
71
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:e=>"deprecated",buildDuplicateRuleNameError(e){let t;return t=e.topLevelRule instanceof c8?e.topLevelRule.name:e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function fW(e,t){let r=new fV(e,t);return r.resolveRefs(),r.errors}tO(fW,"resolveGrammar");var fV=class extends pu{static{tO(this,"GastRefResolverVisitor")}constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){cc(c_(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{let t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:t,type:eZ.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},fH=class extends pm{static{tO(this,"AbstractNextPossibleTokensWalker")}constructor(e,t){super(),this.topProd=e,this.path=t,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=uR(this.path.ruleStack).reverse(),this.occurrenceStack=uR(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,t=[]){this.found||super.walk(e,t)}walkProdRef(e,t,r){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let n=t.concat(r);this.updateExpectedNext(),this.walk(e.referencedRule,n)}}updateExpectedNext(){cM(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},fY=class extends fH{static{tO(this,"NextAfterTokenWalker")}constructor(e,t){super(e,t),this.path=t,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,t,r){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let e=new c6({definition:t.concat(r)});this.possibleTokTypes=py(e),this.found=!0}}},fZ=class extends pm{static{tO(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,t){super(),this.topRule=e,this.occurrence=t,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},fX=class extends fZ{static{tO(this,"NextTerminalAfterManyWalker")}walkMany(e,t,r){if(e.idx===this.occurrence){let e=cv(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof ps&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkMany(e,t,r)}},fJ=class extends fZ{static{tO(this,"NextTerminalAfterManySepWalker")}walkManySep(e,t,r){if(e.idx===this.occurrence){let e=cv(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof ps&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkManySep(e,t,r)}},fQ=class extends fZ{static{tO(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,t,r){if(e.idx===this.occurrence){let e=cv(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof ps&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOne(e,t,r)}},f0=class extends fZ{static{tO(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,t,r){if(e.idx===this.occurrence){let e=cv(t.concat(r));this.result.isEndOfRule=void 0===e,e instanceof ps&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOneSep(e,t,r)}};function f1(e,t,r=[]){r=uR(r);let n=[],i=0;function a(t){return t.concat(co(e,i+1))}function s(e){let i=f1(a(e),t,r);return n.concat(i)}for(tO(a,"remainingPathWith"),tO(s,"getAlternativesForProd");r.length<t&&i<e.length;){let t=e[i];if(t instanceof c6)return s(t.definition);if(t instanceof c7)return s(t.definition);if(t instanceof pe)n=s(t.definition);else if(t instanceof pt)return s(t.definition.concat([new pn({definition:t.definition})]));else if(t instanceof pr)return s([new c6({definition:t.definition}),new pn({definition:[new ps({terminalType:t.separator})].concat(t.definition)})]);else if(t instanceof pi)n=s(t.definition.concat([new pn({definition:[new ps({terminalType:t.separator})].concat(t.definition)})]));else if(t instanceof pn)n=s(t.definition.concat([new pn({definition:t.definition})]));else if(t instanceof pa)return cc(t.definition,e=>{!1===cM(e.definition)&&(n=s(e.definition))}),n;else if(t instanceof ps)r.push(t.terminalType);else throw Error("non exhaustive match");i++}return n.push({partialPath:r,suffixDef:co(e,i)}),n}function f2(e,t,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",o=!1,l=t.length,u=l-n-1,c=[],p=[];for(p.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!cM(p);){let e=p.pop();if(e===s){o&&cs(p).idx<=u&&p.pop();continue}let n=e.def,f=e.idx,d=e.ruleStack,m=e.occurrenceStack;if(cM(n))continue;let h=n[0];if(h===i){let e={idx:f,def:co(n),ruleStack:cl(d),occurrenceStack:cl(m)};p.push(e)}else if(h instanceof ps)if(f<l-1){let e=f+1;if(r(t[e],h.terminalType)){let t={idx:e,def:co(n),ruleStack:d,occurrenceStack:m};p.push(t)}}else if(f===l-1)c.push({nextTokenType:h.terminalType,nextTokenOccurrence:h.idx,ruleStack:d,occurrenceStack:m}),o=!0;else throw Error("non exhaustive match");else if(h instanceof c7){let e=uR(d);e.push(h.nonTerminalName);let t=uR(m);t.push(h.idx);let r={idx:f,def:h.definition.concat(a,co(n)),ruleStack:e,occurrenceStack:t};p.push(r)}else if(h instanceof pe){let e={idx:f,def:co(n),ruleStack:d,occurrenceStack:m};p.push(e),p.push(s);let t={idx:f,def:h.definition.concat(co(n)),ruleStack:d,occurrenceStack:m};p.push(t)}else if(h instanceof pt){let e=new pn({definition:h.definition,idx:h.idx}),t={idx:f,def:h.definition.concat([e],co(n)),ruleStack:d,occurrenceStack:m};p.push(t)}else if(h instanceof pr){let e=new pn({definition:[new ps({terminalType:h.separator})].concat(h.definition),idx:h.idx}),t={idx:f,def:h.definition.concat([e],co(n)),ruleStack:d,occurrenceStack:m};p.push(t)}else if(h instanceof pi){let e={idx:f,def:co(n),ruleStack:d,occurrenceStack:m};p.push(e),p.push(s);let t=new pn({definition:[new ps({terminalType:h.separator})].concat(h.definition),idx:h.idx}),r={idx:f,def:h.definition.concat([t],co(n)),ruleStack:d,occurrenceStack:m};p.push(r)}else if(h instanceof pn){let e={idx:f,def:co(n),ruleStack:d,occurrenceStack:m};p.push(e),p.push(s);let t=new pn({definition:h.definition,idx:h.idx}),r={idx:f,def:h.definition.concat([t],co(n)),ruleStack:d,occurrenceStack:m};p.push(r)}else if(h instanceof pa)for(let e=h.definition.length-1;e>=0;e--){let t={idx:f,def:h.definition[e].definition.concat(co(n)),ruleStack:d,occurrenceStack:m};p.push(t),p.push(s)}else if(h instanceof c6)p.push({idx:f,def:h.definition.concat(co(n)),ruleStack:d,occurrenceStack:m});else if(h instanceof c8)p.push(f3(h,f,d,m));else throw Error("non exhaustive match")}return c}function f3(e,t,r,n){let i=uR(r);i.push(e.name);let a=uR(n);return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}function f9(e){if(e instanceof pe||"Option"===e)return eH.OPTION;if(e instanceof pn||"Repetition"===e)return eH.REPETITION;if(e instanceof pt||"RepetitionMandatory"===e)return eH.REPETITION_MANDATORY;if(e instanceof pr||"RepetitionMandatoryWithSeparator"===e)return eH.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof pi||"RepetitionWithSeparator"===e)return eH.REPETITION_WITH_SEPARATOR;else if(e instanceof pa||"Alternation"===e)return eH.ALTERNATION;else throw Error("non exhaustive match")}function f4(e){let{occurrence:t,rule:r,prodType:n,maxLookahead:i}=e,a=f9(n);return a===eH.ALTERNATION?ds(t,r,i):dl(t,r,a,i)}function f5(e,t,r,n,i,a){let s=ds(e,t,r),o=dp(s)?fp:fc;return a(s,n,o,i)}function f7(e,t,r,n,i,a){let s=dl(e,t,i,r),o=dp(s)?fp:fc;return a(s[0],o,n)}function f8(e,t,r,n){let i=e.length,a=cd(e,e=>cd(e,e=>1===e.length));if(t)return function(t){let n=cE(t,e=>e.GATE);for(let t=0;t<i;t++){let i=e[t],a=i.length,s=n[t];if(void 0===s||!1!==s.call(this))r:for(let e=0;e<a;e++){let n=i[e],a=n.length;for(let e=0;e<a;e++)if(!1===r(this.LA(e+1),n[e]))continue r;return t}}};if(!a||n)return function(){for(let t=0;t<i;t++){let n=e[t],i=n.length;r:for(let e=0;e<i;e++){let i=n[e],a=i.length;for(let e=0;e<a;e++)if(!1===r(this.LA(e+1),i[e]))continue r;return t}}};{let t=cV(cE(e,e=>lA(e)),(e,t,r)=>(cc(t,t=>{cx(e,t.tokenTypeIdx)||(e[t.tokenTypeIdx]=r),cc(t.categoryMatches,t=>{cx(e,t)||(e[t]=r)})}),e),{});return function(){return t[this.LA(1).tokenTypeIdx]}}}function f6(e,t,r){let n=cd(e,e=>1===e.length),i=e.length;if(!n||r)return function(){r:for(let r=0;r<i;r++){let n=e[r],i=n.length;for(let e=0;e<i;e++)if(!1===t(this.LA(e+1),n[e]))continue r;return!0}return!1};{let t=lA(e);if(1===t.length&&cM(t[0].categoryMatches)){let e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{let e=cV(t,(e,t,r)=>(e[t.tokenTypeIdx]=!0,cc(t.categoryMatches,t=>{e[t]=!0}),e),[]);return function(){return!0===e[this.LA(1).tokenTypeIdx]}}}}tO(f1,"possiblePathsFrom"),tO(f2,"nextPossibleTokensAfter"),tO(f3,"expandTopLevelRule"),(s=eH||(eH={}))[s.OPTION=0]="OPTION",s[s.REPETITION=1]="REPETITION",s[s.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",s[s.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",s[s.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",s[s.ALTERNATION=5]="ALTERNATION",tO(f9,"getProdType"),tO(f4,"getLookaheadPaths"),tO(f5,"buildLookaheadFuncForOr"),tO(f7,"buildLookaheadFuncForOptionalProd"),tO(f8,"buildAlternativesLookAheadFunc"),tO(f6,"buildSingleAlternativeLookaheadFunction");var de=class extends pm{static{tO(this,"RestDefinitionFinderWalker")}constructor(e,t,r){super(),this.topProd=e,this.targetOccurrence=t,this.targetProdType=r}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,t,r,n){return e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.restDef=r.concat(n),!0)}walkOption(e,t,r){this.checkIsTarget(e,eH.OPTION,t,r)||super.walkOption(e,t,r)}walkAtLeastOne(e,t,r){this.checkIsTarget(e,eH.REPETITION_MANDATORY,t,r)||super.walkOption(e,t,r)}walkAtLeastOneSep(e,t,r){this.checkIsTarget(e,eH.REPETITION_MANDATORY_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}walkMany(e,t,r){this.checkIsTarget(e,eH.REPETITION,t,r)||super.walkOption(e,t,r)}walkManySep(e,t,r){this.checkIsTarget(e,eH.REPETITION_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}},dt=class extends pu{static{tO(this,"InsideDefinitionFinderVisitor")}constructor(e,t,r){super(),this.targetOccurrence=e,this.targetProdType=t,this.targetRef=r,this.result=[]}checkIsTarget(e,t){e.idx===this.targetOccurrence&&this.targetProdType===t&&(void 0===this.targetRef||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,eH.OPTION)}visitRepetition(e){this.checkIsTarget(e,eH.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,eH.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,eH.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,eH.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,eH.ALTERNATION)}};function dr(e){let t=Array(e);for(let r=0;r<e;r++)t[r]=[];return t}function dn(e){let t=[""];for(let r=0;r<e.length;r++){let n=e[r],i=[];for(let e=0;e<t.length;e++){let r=t[e];i.push(r+"_"+n.tokenTypeIdx);for(let e=0;e<n.categoryMatches.length;e++){let t="_"+n.categoryMatches[e];i.push(r+t)}}t=i}return t}function di(e,t,r){for(let n=0;n<e.length;n++){if(n===r)continue;let i=e[n];for(let e=0;e<t.length;e++)if(!0===i[t[e]])return!1}return!0}function da(e,t){let r=cE(e,e=>f1([e],1)),n=dr(r.length),i=cE(r,e=>{let t={};return cc(e,e=>{cc(dn(e.partialPath),e=>{t[e]=!0})}),t}),a=r;for(let e=1;e<=t;e++){let r=a;a=dr(r.length);for(let s=0;s<r.length;s++){let o=r[s];for(let r=0;r<o.length;r++){let l=o[r].partialPath,u=o[r].suffixDef,c=dn(l);if(di(i,c,s)||cM(u)||l.length===t){let e=n[s];if(!1===du(e,l)){e.push(l);for(let e=0;e<c.length;e++){let t=c[e];i[s][t]=!0}}}else{let t=f1(u,e+1,l);a[s]=a[s].concat(t),cc(t,e=>{cc(dn(e.partialPath),e=>{i[s][e]=!0})})}}}}return n}function ds(e,t,r,n){let i=new dt(e,eH.ALTERNATION,n);return t.accept(i),da(i.result,r)}function dl(e,t,r,n){let i=new dt(e,r);t.accept(i);let a=i.result,s=new de(t,e,r).startWalking();return da([new c6({definition:a}),new c6({definition:s})],n)}function du(e,t){n:for(let r=0;r<e.length;r++){let n=e[r];if(n.length===t.length){for(let e=0;e<n.length;e++){let r=t[e],i=n[e];if(!1==(r===i||void 0!==i.categoryMatchesMap[r.tokenTypeIdx]))continue n}return!0}}return!1}function dc(e,t){return e.length<t.length&&cd(e,(e,r)=>{let n=t[r];return e===n||n.categoryMatchesMap[e.tokenTypeIdx]})}function dp(e){return cd(e,e=>cd(e,e=>cd(e,e=>cM(e.categoryMatches))))}function df(e){return cE(e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName}),e=>Object.assign({type:eZ.CUSTOM_LOOKAHEAD_VALIDATION},e))}function dd(e,t,r,n){let i=cA(e,e=>dm(e,r)),a=dI(e,t,r),s=cA(e,e=>dS(e,r)),o=cA(e,t=>dT(t,e,n,r));return i.concat(a,s,o)}function dm(e,t){let r=new dg;return e.accept(r),cE(c_(cB(cC(r.allProductions,dh),e=>e.length>1)),r=>{let n=cv(r),i=t.buildDuplicateFoundError(e,r),a=pd(n),s={message:i,type:eZ.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:a,occurrence:n.idx},o=dy(n);return o&&(s.parameter=o),s})}function dh(e){return`${pd(e)}_#_${e.idx}_#_${dy(e)}`}function dy(e){return e instanceof ps?e.terminalType.name:e instanceof c7?e.nonTerminalName:""}tO(dr,"initializeArrayOfArrays"),tO(dn,"pathToHashKeys"),tO(di,"isUniquePrefixHash"),tO(da,"lookAheadSequenceFromAlternatives"),tO(ds,"getLookaheadPathsForOr"),tO(dl,"getLookaheadPathsForOptionalProd"),tO(du,"containsPath"),tO(dc,"isStrictPrefixOfPath"),tO(dp,"areTokenCategoriesNotUsed"),tO(df,"validateLookahead"),tO(dd,"validateGrammar"),tO(dm,"validateDuplicateProductions"),tO(dh,"identifyProductionForDuplicates"),tO(dy,"getExtraProductionArgument");var dg=class extends pu{static{tO(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function dT(e,t,r,n){let i=[];if(cV(t,(t,r)=>r.name===e.name?t+1:t,0)>1){let t=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:t,type:eZ.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}function d$(e,t,r){let n=[];return cP(t,e)||n.push({message:`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,type:eZ.INVALID_RULE_OVERRIDE,ruleName:e}),n}function dv(e,t,r,n=[]){let i=[],a=dR(t.definition);if(cM(a))return[];{let t=e.name;cP(a,e)&&i.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:eZ.LEFT_RECURSION,ruleName:t});let s=cA(ca(a,n.concat([e])),t=>{let i=uR(n);return i.push(t),dv(e,t,r,i)});return i.concat(s)}}function dR(e){let t=[];if(cM(e))return t;let r=cv(e);if(r instanceof c7)t.push(r.referencedRule);else if(r instanceof c6||r instanceof pe||r instanceof pt||r instanceof pr||r instanceof pi||r instanceof pn)t=t.concat(dR(r.definition));else if(r instanceof pa)t=lA(cE(r.definition,e=>dR(e.definition)));else if(r instanceof ps);else throw Error("non exhaustive match");let n=pp(r),i=e.length>1;if(!n||!i)return t;{let r=co(e);return t.concat(dR(r))}}tO(dT,"validateRuleDoesNotAlreadyExist"),tO(d$,"validateRuleIsOverridden"),tO(dv,"validateNoLeftRecursion"),tO(dR,"getFirstNoneTerminal");var dE=class extends pu{static{tO(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function dA(e,t){let r=new dE;return e.accept(r),cA(r.alternations,r=>cA(cl(r.definition),(n,i)=>cM(f2([n],[],fc,1))?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:r,emptyChoiceIdx:i}),type:eZ.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:r.idx,alternative:i+1}]:[]))}function db(e,t,r){let n=new dE;e.accept(n);let i=n.alternations;return cA(i=cH(i,e=>!0===e.ignoreAmbiguities),n=>{let i=ds(n.idx,e,n.maxLookahead||t,n),a=dx(i,n,e,r),s=dN(i,n,e,r);return a.concat(s)})}tO(dA,"validateEmptyOrAlternative"),tO(db,"validateAmbiguousAlternationAlternatives");var dC=class extends pu{static{tO(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function dS(e,t){let r=new dE;return e.accept(r),cA(r.alternations,r=>r.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:r}),type:eZ.TOO_MANY_ALTS,ruleName:e.name,occurrence:r.idx}]:[])}function dk(e,t,r){let n=[];return cc(e,e=>{let i=new dC;e.accept(i),cc(i.allProductions,i=>{let a=f9(i),s=i.maxLookahead||t;if(cM(lA(dl(i.idx,e,a,s)[0]))){let t=r.buildEmptyRepetitionError({topLevelRule:e,repetition:i});n.push({message:t,type:eZ.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}})}),n}function dx(e,t,r,n){let i=[];return cE(cV(e,(r,n,a)=>(!0===t.definition[a].ignoreAmbiguities||cc(n,n=>{let s=[a];cc(e,(e,r)=>{a!==r&&du(e,n)&&!0!==t.definition[r].ignoreAmbiguities&&s.push(r)}),s.length>1&&!du(i,n)&&(i.push(n),r.push({alts:s,path:n}))}),r),[]),e=>{let i=cE(e.alts,e=>e+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:eZ.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:e.alts}})}function dN(e,t,r,n){let i=cV(e,(e,t,r)=>{let n=cE(t,e=>({idx:r,path:e}));return e.concat(n)},[]);return uE(cA(i,e=>{if(!0===t.definition[e.idx].ignoreAmbiguities)return[];let a=e.idx,s=e.path;return cE(ch(i,e=>!0!==t.definition[e.idx].ignoreAmbiguities&&e.idx<a&&dc(e.path,s)),e=>{let i=[e.idx+1,a+1],s=0===t.idx?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:eZ.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:s,alternatives:i}})}))}function dI(e,t,r){let n=[],i=cE(t,e=>e.name);return cc(e,e=>{let t=e.name;if(cP(i,t)){let i=r.buildNamespaceConflictError(e);n.push({message:i,type:eZ.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}}),n}function d_(e){let t=ct(e,{errMsgProvider:fU}),r={};return cc(e.rules,e=>{r[e.name]=e}),fW(r,t.errMsgProvider)}function dw(e){return dd((e=ct(e,{errMsgProvider:fB})).rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}tO(dS,"validateTooManyAlts"),tO(dk,"validateSomeNonEmptyLookaheadPath"),tO(dx,"checkAlternativesAmbiguities"),tO(dN,"checkPrefixAlternativesAmbiguities"),tO(dI,"checkTerminalAndNoneTerminalsNameSpace"),tO(d_,"resolveGrammar"),tO(dw,"validateGrammar");var dP="MismatchedTokenException",dO="NoViableAltException",dD="EarlyExitException",dL="NotAllInputParsedException",dM=[dP,dO,dD,dL];function dj(e){return cP(dM,e.name)}Object.freeze(dM),tO(dj,"isRecognitionException");var dF=class extends Error{static{tO(this,"RecognitionException")}constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},dG=class extends dF{static{tO(this,"MismatchedTokenException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=dP}},dz=class extends dF{static{tO(this,"NoViableAltException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=dO}},dK=class extends dF{static{tO(this,"NotAllInputParsedException")}constructor(e,t){super(e,t),this.name=dL}},dq=class extends dF{static{tO(this,"EarlyExitException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=dD}},dU={},dB="InRuleRecoveryException",dW=class extends Error{static{tO(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=dB}},dV=class{static{tO(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=cx(e,"recoveryEnabled")?e.recoveryEnabled:mT.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=dH)}getTokenToInsert(e){let t=fz(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,r,n){let i=this.findReSyncTokenType(),a=this.exportLexerState(),s=[],o=!1,l=this.LA(1),u=this.LA(1),c=tO(()=>{let e=this.LA(0),t=new dG(this.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:l,previous:e,ruleName:this.getCurrRuleFullName()}),l,this.LA(0));t.resyncedTokens=cl(s),this.SAVE_ERROR(t)},"generateErrorMessage");for(;!o;)if(this.tokenMatcher(u,n))return void c();else if(r.call(this)){c(),e.apply(this,t);return}else this.tokenMatcher(u,i)?o=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,s));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,t,r){return!(!1===r||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t)))}getFollowsForInRuleRecovery(e,t){let r=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(r)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let e=this.SKIP_TOKEN();return this.consumeToken(),e}throw new dW("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e)||cM(t))return!1;let r=this.LA(1);return void 0!==c$(t,e=>this.tokenMatcher(r,e))}canRecoverWithSingleTokenDeletion(e){return!!this.canTokenTypeBeDeletedInRecovery(e)&&this.tokenMatcher(this.LA(2),e)}isInCurrentRuleReSyncSet(e){let t=this.getCurrFollowKey();return cP(this.getFollowSetFromFollowKey(t),e)}findReSyncTokenType(){let e=this.flattenFollowSet(),t=this.LA(1),r=2;for(;;){let n=c$(e,e=>fK(t,e));if(void 0!==n)return n;t=this.LA(r),r++}}getCurrFollowKey(){if(1===this.RULE_STACK.length)return dU;let e=this.getLastExplicitRuleShortName(),t=this.getLastExplicitRuleOccurrenceIndex(),r=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(r)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK;return cE(e,(r,n)=>0===n?dU:{ruleName:this.shortRuleNameToFullName(r),idxInCallingRule:t[n],inRule:this.shortRuleNameToFullName(e[n-1])})}flattenFollowSet(){return lA(cE(this.buildFullFollowKeyStack(),e=>this.getFollowSetFromFollowKey(e)))}getFollowSetFromFollowKey(e){if(e===dU)return[fG];let t=e.ruleName+e.idxInCallingRule+pv+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,fG)||t.push(e),t}reSyncTo(e){let t=[],r=this.LA(1);for(;!1===this.tokenMatcher(r,e);)r=this.SKIP_TOKEN(),this.addToResyncTokens(r,t);return cl(t)}attemptInRepetitionRecovery(e,t,r,n,i,a,s){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:uR(this.RULE_OCCURRENCE_STACK),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){return cE(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};function dH(e,t,r,n,i,a,s){let o=this.getKeyForAutomaticLookahead(n,i),l=this.firstAfterRepMap[o];if(void 0===l){let e=this.getCurrRuleFullName();l=new a(this.getGAstProductions()[e],i).startWalking(),this.firstAfterRepMap[o]=l}let u=l.token,c=l.occurrence,p=l.isEndOfRule;1===this.RULE_STACK.length&&p&&void 0===u&&(u=fG,c=1),void 0!==u&&void 0!==c&&this.shouldInRepetitionRecoveryBeTried(u,c,s)&&this.tryInRepetitionRecovery(e,t,r,u)}tO(dH,"attemptInRepetitionRecovery");function dY(e,t,r){return r|t|e}tO(dY,"getKeyForAutomaticLookahead");var dZ=class{static{tO(this,"LLkLookaheadStrategy")}constructor(e){var t;this.maxLookahead=null!=(t=null==e?void 0:e.maxLookahead)?t:mT.maxLookahead}validate(e){let t=this.validateNoLeftRecursion(e.rules);return cM(t)?[...t,...this.validateEmptyOrAlternatives(e.rules),...this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),...this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead)]:t}validateNoLeftRecursion(e){return cA(e,e=>dv(e,e,fB))}validateEmptyOrAlternatives(e){return cA(e,e=>dA(e,fB))}validateAmbiguousAlternationAlternatives(e,t){return cA(e,e=>db(e,t,fB))}validateSomeNonEmptyLookaheadPath(e,t){return dk(e,t,fB)}buildLookaheadForAlternation(e){return f5(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,f8)}buildLookaheadForOptional(e){return f7(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,f9(e.prodType),f6)}},dX=class{static{tO(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=cx(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:mT.dynamicTokensEnabled,this.maxLookahead=cx(e,"maxLookahead")?e.maxLookahead:mT.maxLookahead,this.lookaheadStrategy=cx(e,"lookaheadStrategy")?e.lookaheadStrategy:new dZ({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){cc(e,e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{let{alternation:t,repetition:r,option:n,repetitionMandatory:i,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:s}=dQ(e);cc(t,t=>{let r=0===t.idx?"":t.idx;this.TRACE_INIT(`${pd(t)}${r}`,()=>{let r=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),n=dY(this.fullRuleNameToShort[e.name],256,t.idx);this.setLaFuncCache(n,r)})}),cc(r,t=>{this.computeLookaheadFunc(e,t.idx,768,"Repetition",t.maxLookahead,pd(t))}),cc(n,t=>{this.computeLookaheadFunc(e,t.idx,512,"Option",t.maxLookahead,pd(t))}),cc(i,t=>{this.computeLookaheadFunc(e,t.idx,1024,"RepetitionMandatory",t.maxLookahead,pd(t))}),cc(a,t=>{this.computeLookaheadFunc(e,t.idx,1536,"RepetitionMandatoryWithSeparator",t.maxLookahead,pd(t))}),cc(s,t=>{this.computeLookaheadFunc(e,t.idx,1280,"RepetitionWithSeparator",t.maxLookahead,pd(t))})})})}computeLookaheadFunc(e,t,r,n,i,a){this.TRACE_INIT(`${a}${0===t?"":t}`,()=>{let a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:n}),s=dY(this.fullRuleNameToShort[e.name],r,t);this.setLaFuncCache(s,a)})}getKeyForAutomaticLookahead(e,t){return dY(this.getLastExplicitRuleShortName(),e,t)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,t){this.lookAheadFuncsCache.set(e,t)}},dJ=new class extends pu{static{tO(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}};function dQ(e){dJ.reset(),e.accept(dJ);let t=dJ.dslMethods;return dJ.reset(),t}function d0(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset)}function d1(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.startColumn=t.startColumn,e.startLine=t.startLine,e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}function d2(e,t,r){void 0===e.children[r]?e.children[r]=[t]:e.children[r].push(t)}function d3(e,t,r){void 0===e.children[t]?e.children[t]=[r]:e.children[t].push(r)}function d9(e,t){Object.defineProperty(e,"name",{enumerable:!1,configurable:!0,writable:!1,value:t})}function d4(e,t){let r=oL(e),n=r.length;for(let i=0;i<n;i++){let n=e[r[i]],a=n.length;for(let e=0;e<a;e++){let r=n[e];void 0===r.tokenTypeIdx&&this[r.name](r.children,t)}}}function d5(e,t){let r=tO(function(){},"derivedConstructor");return d9(r,e+"BaseSemantics"),r.prototype={visit:tO(function(e,t){if(sm(e)&&(e=e[0]),!cz(e))return this[e.name](e.children,t)},"visit"),validateVisitor:tO(function(){let e=d8(this,t);if(!cM(e)){let t=cE(e,e=>e.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
72
+ ${t.join("\n\n").replace(/\n/g,"\n ")}`)}},"validateVisitor")},r.prototype.constructor=r,r._RULE_NAMES=t,r}function d7(e,t,r){let n=tO(function(){},"derivedConstructor");d9(n,e+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return cc(t,e=>{i[e]=d4}),n.prototype=i,n.prototype.constructor=n,n}function d8(e,t){return d6(e,t)}function d6(e,t){return uE(cE(ch(t,t=>!1===sO(e[t])),t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:eY.MISSING_METHOD,methodName:t})))}tO(dQ,"collectMethods"),tO(d0,"setNodeLocationOnlyOffset"),tO(d1,"setNodeLocationFull"),tO(d2,"addTerminalToCst"),tO(d3,"addNoneTerminalToCst"),tO(d9,"defineNameProp"),tO(d4,"defaultVisit"),tO(d5,"createBaseSemanticVisitorConstructor"),tO(d7,"createBaseVisitorConstructorWithDefaults"),(o=eY||(eY={}))[o.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",o[o.MISSING_METHOD=1]="MISSING_METHOD",tO(d8,"validateVisitor"),tO(d6,"validateMissingCstMethods");var me=class{static{tO(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=cx(e,"nodeLocationTracking")?e.nodeLocationTracking:mT.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=d1,this.setNodeLocationFromNode=d1,this.cstPostRule=sJ,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=sJ,this.setNodeLocationFromNode=sJ,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=d0,this.setNodeLocationFromNode=d0,this.cstPostRule=sJ,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=sJ,this.setNodeLocationFromNode=sJ,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=sJ,this.setNodeLocationFromNode=sJ,this.cstPostRule=sJ,this.setInitialNodeLocation=sJ;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`);else this.cstInvocationStateUpdate=sJ,this.cstFinallyStateUpdate=sJ,this.cstPostTerminal=sJ,this.cstPostNonTerminal=sJ,this.cstPostRule=sJ}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let t=this.LA(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let t=this.LA(0),r=e.location;r.startOffset<=t.startOffset==!0?(r.endOffset=t.endOffset,r.endLine=t.endLine,r.endColumn=t.endColumn):(r.startOffset=NaN,r.startLine=NaN,r.startColumn=NaN)}cstPostRuleOnlyOffset(e){let t=this.LA(0),r=e.location;r.startOffset<=t.startOffset==!0?r.endOffset=t.endOffset:r.startOffset=NaN}cstPostTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];d2(r,t,e),this.setNodeLocationFromToken(r.location,t)}cstPostNonTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];d3(r,t,e),this.setNodeLocationFromNode(r.location,e.location)}getBaseCstVisitorConstructor(){if(cz(this.baseCstVisitorConstructor)){let e=d5(this.className,oL(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(cz(this.baseCstVisitorWithDefaultsConstructor)){let e=d7(this.className,oL(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},mt=class{static{tO(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(!0!==this.selfAnalysisDone)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):mg}LA(e){let t=this.currIdx+e;return t<0||this.tokVectorLength<=t?mg:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},mr=class{static{tO(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,t,r){return this.consumeInternal(t,e,r)}subrule(e,t,r){return this.subruleInternal(t,e,r)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,r=m$){if(cP(this.definedRulesNames,e)){let t={message:fB.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:eZ.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);let n=this.defineRule(e,t,r);return this[e]=n,n}OVERRIDE_RULE(e,t,r=m$){let n=d$(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(n);let i=this.defineRule(e,t,r);return this[e]=i,i}BACKTRACK(e,t){return function(){this.isBackTrackingStack.push(1);let r=this.saveRecogState();try{return e.apply(this,t),!0}catch(e){if(dj(e))return!1;throw e}finally{this.reloadRecogState(r),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return po(c_(this.gastProductionsCache))}},mn=class{static{tO(this,"RecognizerEngine")}initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=fp,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},cx(t,"serializedGrammar"))throw Error("The Parser's configuration can no longer contain a <serializedGrammar> property.\n See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n For Further details.");if(sm(e)){if(cM(e))throw Error("A Token Vocabulary cannot be empty.\n Note that the first argument for the parser constructor\n is no longer a Token vector (since v4.0).");if("number"==typeof e[0].startOffset)throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n For Further details.")}if(sm(e))this.tokensMap=cV(e,(e,t)=>(e[t.name]=t,e),{});else if(cx(e,"modes")&&cd(lA(c_(e.modes)),fb)){let t=cQ(lA(c_(e.modes)));this.tokensMap=cV(t,(e,t)=>(e[t.name]=t,e),{})}else if(sA(e))this.tokensMap=uR(e);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=fG;let r=cd(cx(e,"modes")?lA(c_(e.modes)):c_(e),e=>cM(e.categoryMatches));this.tokenMatcher=r?fp:fc,fm(c_(this.tokensMap))}defineRule(e,t,r){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
73
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let n=cx(r,"resyncEnabled")?r.resyncEnabled:m$.resyncEnabled,i=cx(r,"recoveryValueFunc")?r.recoveryValueFunc:m$.recoveryValueFunc,a=this.ruleShortNameIdx<<12;return this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a,Object.assign(!0===this.outputCst?tO(function(...r){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r);let n=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(n),n}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):tO(function(...r){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r)}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),{ruleName:e,originalGrammarAction:t})}invokeRuleCatch(e,t,r){let n=1===this.RULE_STACK.length,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(dj(e)){if(i){let t=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(t)){if(e.resyncedTokens=this.reSyncTo(t),!this.outputCst)return r(e);{let e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}}if(this.outputCst){let t=this.CST_STACK[this.CST_STACK.length-1];t.recoveredNode=!0,e.partialCstResult=t}throw e}if(n)return this.moveToTerminatedState(),r(e)}throw e}optionInternal(e,t){let r=this.getKeyForAutomaticLookahead(512,t);return this.optionInternalLogic(e,t,r)}optionInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof e){n=e.DEF;let t=e.GATE;if(void 0!==t){let e=i;i=tO(()=>t.call(this)&&e.call(this),"lookAheadFunc")}}else n=e;if(!0===i.call(this))return n.call(this)}atLeastOneInternal(e,t){let r=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,t,r)}atLeastOneInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof t){n=t.DEF;let e=t.GATE;if(void 0!==e){let t=i;i=tO(()=>e.call(this)&&t.call(this),"lookAheadFunc")}}else n=t;if(!0===i.call(this)){let e=this.doSingleRepetition(n);for(;!0===i.call(this)&&!0===e;)e=this.doSingleRepetition(n)}else throw this.raiseEarlyExitException(e,eH.REPETITION_MANDATORY,t.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],i,1024,e,fQ)}atLeastOneSepFirstInternal(e,t){let r=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,t,r)}atLeastOneSepFirstInternalLogic(e,t,r){let n=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(r).call(this)){n.call(this);let t=tO(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,f0],t,1536,e,f0)}else throw this.raiseEarlyExitException(e,eH.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG)}manyInternal(e,t){let r=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,t,r)}manyInternalLogic(e,t,r){let n,i=this.getLaFuncFromCache(r);if("function"!=typeof t){n=t.DEF;let e=t.GATE;if(void 0!==e){let t=i;i=tO(()=>e.call(this)&&t.call(this),"lookaheadFunction")}}else n=t;let a=!0;for(;!0===i.call(this)&&!0===a;)a=this.doSingleRepetition(n);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],i,768,e,fX,a)}manySepFirstInternal(e,t){let r=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,t,r)}manySepFirstInternalLogic(e,t,r){let n=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(r).call(this)){n.call(this);let t=tO(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,fJ],t,1280,e,fJ)}}repetitionSepSecondInternal(e,t,r,n,i){for(;r();)this.CONSUME(t),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,r,n,i],r,1536,e,i)}doSingleRepetition(e){let t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){let r=this.getKeyForAutomaticLookahead(256,t),n=sm(e)?e:e.DEF,i=this.getLaFuncFromCache(r).call(this,n);if(void 0!==i)return n[i].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),0===this.RULE_STACK.length&&!1===this.isAtEndOfInput()){let e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new dK(t,e))}}subruleInternal(e,t,r){let n;try{let i=void 0!==r?r.ARGS:void 0;return this.subruleIdx=t,n=e.apply(this,i),this.cstPostNonTerminal(n,void 0!==r&&void 0!==r.LABEL?r.LABEL:e.ruleName),n}catch(t){throw this.subruleInternalError(t,r,e.ruleName)}}subruleInternalError(e,t,r){throw dj(e)&&void 0!==e.partialCstResult&&(this.cstPostNonTerminal(e.partialCstResult,void 0!==t&&void 0!==t.LABEL?t.LABEL:r),delete e.partialCstResult),e}consumeInternal(e,t,r){let n;try{let t=this.LA(1);!0===this.tokenMatcher(t,e)?(this.consumeToken(),n=t):this.consumeInternalError(e,t,r)}catch(r){n=this.consumeInternalRecovery(e,t,r)}return this.cstPostTerminal(void 0!==r&&void 0!==r.LABEL?r.LABEL:e.name,n),n}consumeInternalError(e,t,r){let n,i=this.LA(0);throw n=void 0!==r&&r.ERR_MSG?r.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new dG(n,t,i))}consumeInternalRecovery(e,t,r){if(this.recoveryEnabled&&"MismatchedTokenException"===r.name&&!this.isBackTracking()){let n=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,n)}catch(e){if(e.name===dB)throw r;throw e}}throw r}saveRecogState(){let e=this.errors,t=uR(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,t,r){this.RULE_OCCURRENCE_STACK.push(r),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(t)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),fG)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},mi=class{static{tO(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=cx(e,"errorMessageProvider")?e.errorMessageProvider:mT.errorMessageProvider}SAVE_ERROR(e){if(dj(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:uR(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return uR(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,t,r){let n=this.getCurrRuleFullName(),i=dl(e,this.getGAstProductions()[n],t,this.maxLookahead)[0],a=[];for(let e=1;e<=this.maxLookahead;e++)a.push(this.LA(e));let s=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:i,actual:a,previous:this.LA(0),customUserDescription:r,ruleName:n});throw this.SAVE_ERROR(new dq(s,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){let r=this.getCurrRuleFullName(),n=ds(e,this.getGAstProductions()[r],this.maxLookahead),i=[];for(let e=1;e<=this.maxLookahead;e++)i.push(this.LA(e));let a=this.LA(0),s=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:n,actual:i,previous:a,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new dz(s,this.LA(1),a))}},ma=class{static{tO(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,t){let r=this.gastProductionsCache[e];if(cz(r))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return f2([r],t,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let t=cv(e.ruleStack);return new fY(this.getGAstProductions()[t],e).startWalking()}},ms={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(ms);var mo=fj({name:"RECORDING_PHASE_TOKEN",pattern:fk.NA});fm([mo]);var ml=fz(mo,"This IToken indicates the Parser is in Recording Phase\n See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",-1,-1,-1,-1,-1,-1);Object.freeze(ml);var mu={name:"This CSTNode indicates the Parser is in Recording Phase\n See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",children:{}},mc=class{static{tO(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let t=e>0?e:"";this[`CONSUME${t}`]=function(t,r){return this.consumeInternalRecord(t,e,r)},this[`SUBRULE${t}`]=function(t,r){return this.subruleInternalRecord(t,e,r)},this[`OPTION${t}`]=function(t){return this.optionInternalRecord(t,e)},this[`OR${t}`]=function(t){return this.orInternalRecord(t,e)},this[`MANY${t}`]=function(t){this.manyInternalRecord(e,t)},this[`MANY_SEP${t}`]=function(t){this.manySepFirstInternalRecord(e,t)},this[`AT_LEAST_ONE${t}`]=function(t){this.atLeastOneInternalRecord(e,t)},this[`AT_LEAST_ONE_SEP${t}`]=function(t){this.atLeastOneSepFirstInternalRecord(e,t)}}this.consume=function(e,t,r){return this.consumeInternalRecord(t,e,r)},this.subrule=function(e,t,r){return this.subruleInternalRecord(t,e,r)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{for(let e=0;e<10;e++){let t=e>0?e:"";delete this[`CONSUME${t}`],delete this[`SUBRULE${t}`],delete this[`OPTION${t}`],delete this[`OR${t}`],delete this[`MANY${t}`],delete this[`MANY_SEP${t}`],delete this[`AT_LEAST_ONE${t}`],delete this[`AT_LEAST_ONE_SEP${t}`]}delete this.consume,delete this.subrule,delete this.option,delete this.or,delete this.many,delete this.atLeastOne,delete this.ACTION,delete this.BACKTRACK,delete this.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return mg}topLevelRuleRecord(e,t){try{let r=new c8({definition:[],name:e});return r.name=e,this.recordingProdStack.push(r),t.call(this),this.recordingProdStack.pop(),r}catch(e){if(!0!==e.KNOWN_RECORDER_ERROR)try{e.message=e.message+'\n This error was thrown during the "grammar recording phase" For more info see:\n https://chevrotain.io/docs/guide/internals.html#grammar-recording'}catch(e){}throw e}}optionInternalRecord(e,t){return mp.call(this,pe,e,t)}atLeastOneInternalRecord(e,t){mp.call(this,pt,t,e)}atLeastOneSepFirstInternalRecord(e,t){mp.call(this,pr,t,e,!0)}manyInternalRecord(e,t){mp.call(this,pn,t,e)}manySepFirstInternalRecord(e,t){mp.call(this,pi,t,e,!0)}orInternalRecord(e,t){return mf.call(this,e,t)}subruleInternalRecord(e,t,r){if(mm(t),!e||!1===cx(e,"ruleName")){let r=Error(`<SUBRULE${md(t)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
74
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=cs(this.recordingProdStack),i=new c7({idx:t,nonTerminalName:e.ruleName,label:null==r?void 0:r.LABEL,referencedRule:void 0});return n.definition.push(i),this.outputCst?mu:ms}consumeInternalRecord(e,t,r){if(mm(t),!fv(e)){let r=Error(`<CONSUME${md(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
75
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}let n=cs(this.recordingProdStack),i=new ps({idx:t,terminalType:e,label:null==r?void 0:r.LABEL});return n.definition.push(i),ml}};function mp(e,t,r,n=!1){mm(r);let i=cs(this.recordingProdStack),a=sO(t)?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),cx(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),ms}function mf(e,t){mm(t);let r=cs(this.recordingProdStack),n=!1===sm(e),i=!1===n?e:e.DEF,a=new pa({definition:[],idx:t,ignoreAmbiguities:n&&!0===e.IGNORE_AMBIGUITIES});return cx(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),a.hasPredicates=cZ(i,e=>sO(e.GATE)),r.definition.push(a),cc(i,e=>{let t=new c6({definition:[]});a.definition.push(t),cx(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:cx(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()}),ms}function md(e){return 0===e?"":`${e}`}function mm(e){if(e<0||e>255){let t=Error(`Invalid DSL Method idx value: <${e}>
76
+ Idx value must be a none negative value smaller than ${256}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}tO(mp,"recordProd"),tO(mf,"recordOrProd"),tO(md,"getIdxSuffix"),tO(mm,"assertMethodIdxIsValid");var mh=class{static{tO(this,"PerformanceTracer")}initPerformanceTracer(e){if(cx(e,"traceInitPerf")){let t=e.traceInitPerf,r="number"==typeof t;this.traceInitMaxIdent=r?t:1/0,this.traceInitPerf=r?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=mT.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0!==this.traceInitPerf)return t();{this.traceInitIndent++;let r=Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:i}=c2(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}}};function my(e,t){t.forEach(t=>{let r=t.prototype;Object.getOwnPropertyNames(r).forEach(n=>{if("constructor"===n)return;let i=Object.getOwnPropertyDescriptor(r,n);i&&(i.get||i.set)?Object.defineProperty(e.prototype,n,i):e.prototype[n]=t.prototype[n]})})}tO(my,"applyMixins");var mg=fz(fG,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(mg);var mT=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:fq,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),m$=Object.freeze({recoveryValueFunc:tO(()=>void 0,"recoveryValueFunc"),resyncEnabled:!0});function mv(e){return function(){return e}}(l=eZ||(eZ={}))[l.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",l[l.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",l[l.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",l[l.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",l[l.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",l[l.LEFT_RECURSION=5]="LEFT_RECURSION",l[l.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",l[l.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",l[l.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",l[l.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",l[l.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",l[l.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",l[l.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",l[l.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",tO(mv,"EMPTY_ALT");var mR=class e{static{tO(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{c3(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),cc(this.definedRulesNames,e=>{let t,r=this[e].originalGrammarAction;this.TRACE_INIT(`${e} Rule`,()=>{t=this.topLevelRuleRecord(e,r)}),this.gastProductionsCache[e]=t})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=d_({rules:c_(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cM(n)&&!1===this.skipValidations){let e=dw({rules:c_(this.gastProductionsCache),tokenTypes:c_(this.tokensMap),errMsgProvider:fB,grammarName:r}),t=df({lookaheadStrategy:this.lookaheadStrategy,rules:c_(this.gastProductionsCache),tokenTypes:c_(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(e,t)}}),cM(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let e=pE(c_(this.gastProductionsCache));this.resyncFollows=e}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var e,t;null==(t=(e=this.lookaheadStrategy).initialize)||t.call(e,{rules:c_(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(c_(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!cM(this.definitionErrors))throw t=cE(this.definitionErrors,e=>e.message),Error(`Parser Definition Errors detected:
77
+ ${t.join("\n-------------------------------\n")}`)})}constructor(e,t){if(this.definitionErrors=[],this.selfAnalysisDone=!1,this.initErrorHandler(t),this.initLexerAdapter(),this.initLooksAhead(t),this.initRecognizerEngine(e,t),this.initRecoverable(t),this.initTreeBuilder(t),this.initContentAssist(),this.initGastRecorder(t),this.initPerformanceTracer(t),cx(t,"ignoredIssues"))throw Error("The <ignoredIssues> IParserConfig property has been deprecated.\n Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n For further details.");this.skipValidations=cx(t,"skipValidations")?t.skipValidations:mT.skipValidations}};mR.DEFER_DEFINITION_ERRORS_HANDLING=!1,my(mR,[dV,dX,me,mt,mn,mr,mi,ma,mc,mh]);var mE=class extends mR{static{tO(this,"EmbeddedActionsParser")}constructor(e,t=mT){const r=uR(t);r.outputCst=!1,super(e,r)}};function mA(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function mb(){this.__data__=[],this.size=0}function mC(e,t){return e===t||e!=e&&t!=t}function mS(e,t){for(var r=e.length;r--;)if(mC(e[r][0],t))return r;return -1}tO(mA,"arrayMap"),tO(mb,"listCacheClear"),tO(mC,"eq"),tO(mS,"assocIndexOf");var mk=Array.prototype.splice;function mx(e){var t=this.__data__,r=mS(t,e);return!(r<0)&&(r==t.length-1?t.pop():mk.call(t,r,1),--this.size,!0)}function mN(e){var t=this.__data__,r=mS(t,e);return r<0?void 0:t[r][1]}function mI(e){return mS(this.__data__,e)>-1}function m_(e,t){var r=this.__data__,n=mS(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function mw(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function mP(){this.__data__=new mw,this.size=0}function mO(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function mD(e){return this.__data__.get(e)}function mL(e){return this.__data__.has(e)}tO(mx,"listCacheDelete"),tO(mN,"listCacheGet"),tO(mI,"listCacheHas"),tO(m_,"listCacheSet"),tO(mw,"ListCache"),mw.prototype.clear=mb,mw.prototype.delete=mx,mw.prototype.get=mN,mw.prototype.has=mI,mw.prototype.set=m_,tO(mP,"stackClear"),tO(mO,"stackDelete"),tO(mD,"stackGet"),tO(mL,"stackHas");var mM=e.g&&e.g.Object===Object&&e.g,mj="object"==typeof self&&self&&self.Object===Object&&self,mF=mM||mj||Function("return this")(),mG=mF.Symbol,mz=Object.prototype,mK=mz.hasOwnProperty,mq=mz.toString,mU=mG?mG.toStringTag:void 0;function mB(e){var t=mK.call(e,mU),r=e[mU];try{e[mU]=void 0;var n=!0}catch(e){}var i=mq.call(e);return n&&(t?e[mU]=r:delete e[mU]),i}tO(mB,"getRawTag");var mW=Object.prototype.toString;function mV(e){return mW.call(e)}tO(mV,"objectToString");var mH=mG?mG.toStringTag:void 0;function mY(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":mH&&mH in Object(e)?mB(e):mV(e)}function mZ(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function mX(e){if(!mZ(e))return!1;var t=mY(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}tO(mY,"baseGetTag"),tO(mZ,"isObject"),tO(mX,"isFunction");var mJ=mF["__core-js_shared__"],mQ=(u=/[^.]+$/.exec(mJ&&mJ.keys&&mJ.keys.IE_PROTO||""))?"Symbol(src)_1."+u:"";function m0(e){return!!mQ&&mQ in e}tO(m0,"isMasked");var m1=Function.prototype.toString;function m2(e){if(null!=e){try{return m1.call(e)}catch(e){}try{return e+""}catch(e){}}return""}tO(m2,"toSource");var m3=/^\[object .+?Constructor\]$/,m9=Object.prototype,m4=Function.prototype.toString,m5=m9.hasOwnProperty,m7=RegExp("^"+m4.call(m5).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function m8(e){return!(!mZ(e)||m0(e))&&(mX(e)?m7:m3).test(m2(e))}function m6(e,t){return null==e?void 0:e[t]}function he(e,t){var r=m6(e,t);return m8(r)?r:void 0}tO(m8,"baseIsNative"),tO(m6,"getValue"),tO(he,"getNative");var ht=he(mF,"Map"),hr=he(Object,"create");function hn(){this.__data__=hr?hr(null):{},this.size=0}function hi(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=!!t,t}tO(hn,"hashClear"),tO(hi,"hashDelete");var ha=Object.prototype.hasOwnProperty;function hs(e){var t=this.__data__;if(hr){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return ha.call(t,e)?t[e]:void 0}tO(hs,"hashGet");var ho=Object.prototype.hasOwnProperty;function hl(e){var t=this.__data__;return hr?void 0!==t[e]:ho.call(t,e)}function hu(e,t){var r=this.__data__;return this.size+=+!this.has(e),r[e]=hr&&void 0===t?"__lodash_hash_undefined__":t,this}function hc(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function hp(){this.size=0,this.__data__={hash:new hc,map:new(ht||mw),string:new hc}}function hf(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function hd(e,t){var r=e.__data__;return hf(t)?r["string"==typeof t?"string":"hash"]:r.map}function hm(e){var t=hd(this,e).delete(e);return this.size-=!!t,t}function hh(e){return hd(this,e).get(e)}function hy(e){return hd(this,e).has(e)}function hg(e,t){var r=hd(this,e),n=r.size;return r.set(e,t),this.size+=+(r.size!=n),this}function hT(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function h$(e,t){var r=this.__data__;if(r instanceof mw){var n=r.__data__;if(!ht||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new hT(n)}return r.set(e,t),this.size=r.size,this}function hv(e){var t=this.__data__=new mw(e);this.size=t.size}function hR(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}function hE(e){return this.__data__.has(e)}function hA(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new hT;++t<r;)this.add(e[t])}function hb(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function hC(e,t){return e.has(t)}function hS(e,t,r,n,i,a){var s=1&r,o=e.length,l=t.length;if(o!=l&&!(s&&l>o))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var p=-1,f=!0,d=2&r?new hA:void 0;for(a.set(e,t),a.set(t,e);++p<o;){var m=e[p],h=t[p];if(n)var y=s?n(h,m,p,t,e,a):n(m,h,p,e,t,a);if(void 0!==y){if(y)continue;f=!1;break}if(d){if(!hb(t,function(e,t){if(!hC(d,t)&&(m===e||i(m,e,r,n,a)))return d.push(t)})){f=!1;break}}else if(!(m===h||i(m,h,r,n,a))){f=!1;break}}return a.delete(e),a.delete(t),f}tO(hl,"hashHas"),tO(hu,"hashSet"),tO(hc,"Hash"),hc.prototype.clear=hn,hc.prototype.delete=hi,hc.prototype.get=hs,hc.prototype.has=hl,hc.prototype.set=hu,tO(hp,"mapCacheClear"),tO(hf,"isKeyable"),tO(hd,"getMapData"),tO(hm,"mapCacheDelete"),tO(hh,"mapCacheGet"),tO(hy,"mapCacheHas"),tO(hg,"mapCacheSet"),tO(hT,"MapCache"),hT.prototype.clear=hp,hT.prototype.delete=hm,hT.prototype.get=hh,hT.prototype.has=hy,hT.prototype.set=hg,tO(h$,"stackSet"),tO(hv,"Stack"),hv.prototype.clear=mP,hv.prototype.delete=mO,hv.prototype.get=mD,hv.prototype.has=mL,hv.prototype.set=h$,tO(hR,"setCacheAdd"),tO(hE,"setCacheHas"),tO(hA,"SetCache"),hA.prototype.add=hA.prototype.push=hR,hA.prototype.has=hE,tO(hb,"arraySome"),tO(hC,"cacheHas"),tO(hS,"equalArrays");var hk=mF.Uint8Array;function hx(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r}function hN(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}tO(hx,"mapToArray"),tO(hN,"setToArray");var hI=mG?mG.prototype:void 0,h_=hI?hI.valueOf:void 0;function hw(e,t,r,n,i,a,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":if(e.byteLength!=t.byteLength||!a(new hk(e),new hk(t)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return mC(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var o=hx;case"[object Set]":var l=1&n;if(o||(o=hN),e.size!=t.size&&!l)break;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=hS(o(e),o(t),n,i,a,s);return s.delete(e),c;case"[object Symbol]":if(h_)return h_.call(e)==h_.call(t)}return!1}function hP(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}tO(hw,"equalByTag"),tO(hP,"arrayPush");var hO=Array.isArray;function hD(e,t,r){var n=t(e);return hO(e)?n:hP(n,r(e))}function hL(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[i++]=s)}return a}function hM(){return[]}tO(hD,"baseGetAllKeys"),tO(hL,"arrayFilter"),tO(hM,"stubArray");var hj=Object.prototype.propertyIsEnumerable,hF=Object.getOwnPropertySymbols,hG=hF?function(e){return null==e?[]:hL(hF(e=Object(e)),function(t){return hj.call(e,t)})}:hM;function hz(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function hK(e){return null!=e&&"object"==typeof e}function hq(e){return hK(e)&&"[object Arguments]"==mY(e)}tO(hz,"baseTimes"),tO(hK,"isObjectLike"),tO(hq,"baseIsArguments");var hU=Object.prototype,hB=hU.hasOwnProperty,hW=hU.propertyIsEnumerable,hV=hq(function(){return arguments}())?hq:function(e){return hK(e)&&hB.call(e,"callee")&&!hW.call(e,"callee")};function hH(){return!1}tO(hH,"stubFalse");var hY=/^(?:0|[1-9]\d*)$/;function hZ(e,t){var r=typeof e;return!!(t=null==t?0x1fffffffffffff:t)&&("number"==r||"symbol"!=r&&hY.test(e))&&e>-1&&e%1==0&&e<t}function hX(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}tO(hZ,"isIndex"),tO(hX,"isLength");var hJ={};function hQ(e){return hK(e)&&hX(e.length)&&!!hJ[mY(e)]}function h0(e){return function(t){return e(t)}}hJ["[object Float32Array]"]=hJ["[object Float64Array]"]=hJ["[object Int8Array]"]=hJ["[object Int16Array]"]=hJ["[object Int32Array]"]=hJ["[object Uint8Array]"]=hJ["[object Uint8ClampedArray]"]=hJ["[object Uint16Array]"]=hJ["[object Uint32Array]"]=!0,hJ["[object Arguments]"]=hJ["[object Array]"]=hJ["[object ArrayBuffer]"]=hJ["[object Boolean]"]=hJ["[object DataView]"]=hJ["[object Date]"]=hJ["[object Error]"]=hJ["[object Function]"]=hJ["[object Map]"]=hJ["[object Number]"]=hJ["[object Object]"]=hJ["[object RegExp]"]=hJ["[object Set]"]=hJ["[object String]"]=hJ["[object WeakMap]"]=!1,tO(hQ,"baseIsTypedArray"),tO(h0,"baseUnary");var h1=function(){try{return!1}catch(e){}}(),h2=h1&&h1.isTypedArray,h3=h2?h0(h2):hQ,h9=Object.prototype.hasOwnProperty;function h4(e,t){var r=hO(e),n=!r&&hV(e),i=!r&&!n&&hH(),a=!r&&!n&&!i&&h3(e),s=r||n||i||a,o=s?hz(e.length,String):[],l=o.length;for(var u in e)(t||h9.call(e,u))&&!(s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||hZ(u,l)))&&o.push(u);return o}tO(h4,"arrayLikeKeys");var h5=Object.prototype;function h7(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||h5)}function h8(e,t){return function(r){return e(t(r))}}tO(h7,"isPrototype"),tO(h8,"overArg");var h6=h8(Object.keys,Object),ye=Object.prototype.hasOwnProperty;function yt(e){if(!h7(e))return h6(e);var t=[];for(var r in Object(e))ye.call(e,r)&&"constructor"!=r&&t.push(r);return t}function yr(e){return null!=e&&hX(e.length)&&!mX(e)}function yn(e){return yr(e)?h4(e):yt(e)}function yi(e){return hD(e,yn,hG)}tO(yt,"baseKeys"),tO(yr,"isArrayLike"),tO(yn,"keys"),tO(yi,"getAllKeys");var ya=Object.prototype.hasOwnProperty;function ys(e,t,r,n,i,a){var s=1&r,o=yi(e),l=o.length;if(l!=yi(t).length&&!s)return!1;for(var u=l;u--;){var c=o[u];if(!(s?c in t:ya.call(t,c)))return!1}var p=a.get(e),f=a.get(t);if(p&&f)return p==t&&f==e;var d=!0;a.set(e,t),a.set(t,e);for(var m=s;++u<l;){var h=e[c=o[u]],y=t[c];if(n)var g=s?n(y,h,c,t,e,a):n(h,y,c,e,t,a);if(!(void 0===g?h===y||i(h,y,r,n,a):g)){d=!1;break}m||(m="constructor"==c)}if(d&&!m){var T=e.constructor,$=t.constructor;T!=$&&"constructor"in e&&"constructor"in t&&!("function"==typeof T&&T instanceof T&&"function"==typeof $&&$ instanceof $)&&(d=!1)}return a.delete(e),a.delete(t),d}tO(ys,"equalObjects");var yo=he(mF,"DataView"),yl=he(mF,"Promise"),yu=he(mF,"Set"),yc=he(mF,"WeakMap"),yp="[object Map]",yf="[object Promise]",yd="[object Set]",ym="[object WeakMap]",yh="[object DataView]",yy=m2(yo),yg=m2(ht),yT=m2(yl),y$=m2(yu),yv=m2(yc),yR=mY;(yo&&yR(new yo(new ArrayBuffer(1)))!=yh||ht&&yR(new ht)!=yp||yl&&yR(yl.resolve())!=yf||yu&&yR(new yu)!=yd||yc&&yR(new yc)!=ym)&&(yR=tO(function(e){var t=mY(e),r="[object Object]"==t?e.constructor:void 0,n=r?m2(r):"";if(n)switch(n){case yy:return yh;case yg:return yp;case yT:return yf;case y$:return yd;case yv:return ym}return t},"getTag"));var yE=yR,yA="[object Arguments]",yb="[object Array]",yC="[object Object]",yS=Object.prototype.hasOwnProperty;function yk(e,t,r,n,i,a){var s=hO(e),o=hO(t),l=s?yb:yE(e),u=o?yb:yE(t);l=l==yA?yC:l,u=u==yA?yC:u;var c=l==yC,p=u==yC,f=l==u;if(f&&hH(),f&&!c)return a||(a=new hv),s||h3(e)?hS(e,t,r,n,i,a):hw(e,t,l,r,n,i,a);if(!(1&r)){var d=c&&yS.call(e,"__wrapped__"),m=p&&yS.call(t,"__wrapped__");if(d||m){var h=d?e.value():e,y=m?t.value():t;return a||(a=new hv),i(h,y,r,n,a)}}return!!f&&(a||(a=new hv),ys(e,t,r,n,i,a))}function yx(e,t,r,n,i){return e===t||(null!=e&&null!=t&&(hK(e)||hK(t))?yk(e,t,r,n,yx,i):e!=e&&t!=t)}function yN(e,t,r,n){var i=r.length,a=i,s=!n;if(null==e)return!a;for(e=Object(e);i--;){var o=r[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var l=(o=r[i])[0],u=e[l],c=o[1];if(s&&o[2]){if(void 0===u&&!(l in e))return!1}else{var p=new hv;if(n)var f=n(u,c,l,e,t,p);if(!(void 0===f?yx(c,u,3,n,p):f))return!1}}return!0}function yI(e){return e==e&&!mZ(e)}function y_(e){for(var t=yn(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,yI(i)]}return t}function yw(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}}function yP(e){var t=y_(e);return 1==t.length&&t[0][2]?yw(t[0][0],t[0][1]):function(r){return r===e||yN(r,e,t)}}function yO(e){return"symbol"==typeof e||hK(e)&&"[object Symbol]"==mY(e)}tO(yk,"baseIsEqualDeep"),tO(yx,"baseIsEqual"),tO(yN,"baseIsMatch"),tO(yI,"isStrictComparable"),tO(y_,"getMatchData"),tO(yw,"matchesStrictComparable"),tO(yP,"baseMatches"),tO(yO,"isSymbol");var yD=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,yL=/^\w*$/;function yM(e,t){if(hO(e))return!1;var r=typeof e;return!!("number"==r||"symbol"==r||"boolean"==r||null==e||yO(e))||yL.test(e)||!yD.test(e)||null!=t&&e in Object(t)}function yj(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var r=tO(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(yj.Cache||hT),r}function yF(e){var t=yj(e,function(e){return 500===r.size&&r.clear(),e}),r=t.cache;return t}tO(yM,"isKey"),tO(yj,"memoize"),yj.Cache=hT,tO(yF,"memoizeCapped");var yG=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,yz=/\\(\\)?/g,yK=yF(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(yG,function(e,r,n,i){t.push(n?i.replace(yz,"$1"):r||e)}),t}),yq=1/0,yU=mG?mG.prototype:void 0,yB=yU?yU.toString:void 0;function yW(e){if("string"==typeof e)return e;if(hO(e))return mA(e,yW)+"";if(yO(e))return yB?yB.call(e):"";var t=e+"";return"0"==t&&1/e==-yq?"-0":t}function yV(e){return null==e?"":yW(e)}function yH(e,t){return hO(e)?e:yM(e,t)?[e]:yK(yV(e))}tO(yW,"baseToString"),tO(yV,"toString"),tO(yH,"castPath");var yY=1/0;function yZ(e){if("string"==typeof e||yO(e))return e;var t=e+"";return"0"==t&&1/e==-yY?"-0":t}function yX(e,t){t=yH(t,e);for(var r=0,n=t.length;null!=e&&r<n;)e=e[yZ(t[r++])];return r&&r==n?e:void 0}function yJ(e,t,r){var n=null==e?void 0:yX(e,t);return void 0===n?r:n}function yQ(e,t){return null!=e&&t in Object(e)}function y0(e,t,r){t=yH(t,e);for(var n=-1,i=t.length,a=!1;++n<i;){var s=yZ(t[n]);if(!(a=null!=e&&r(e,s)))break;e=e[s]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&hX(i)&&hZ(s,i)&&(hO(e)||hV(e))}function y1(e,t){return null!=e&&y0(e,t,yQ)}function y2(e,t){return yM(e)&&yI(t)?yw(yZ(e),t):function(r){var n=yJ(r,e);return void 0===n&&n===t?y1(r,e):yx(t,n,3)}}function y3(e){return e}function y9(e){return function(t){return null==t?void 0:t[e]}}function y4(e){return function(t){return yX(t,e)}}function y5(e){return yM(e)?y9(yZ(e)):y4(e)}function y7(e){return"function"==typeof e?e:null==e?y3:"object"==typeof e?hO(e)?y2(e[0],e[1]):yP(e):y5(e)}function y8(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===r(a[l],l,a))break}return t}}tO(yZ,"toKey"),tO(yX,"baseGet"),tO(yJ,"get"),tO(yQ,"baseHasIn"),tO(y0,"hasPath"),tO(y1,"hasIn"),tO(y2,"baseMatchesProperty"),tO(y3,"identity"),tO(y9,"baseProperty"),tO(y4,"basePropertyDeep"),tO(y5,"property"),tO(y7,"baseIteratee"),tO(y8,"createBaseFor");var y6=y8();function ge(e,t){return e&&y6(e,t,yn)}function gt(e,t){return function(r,n){if(null==r)return r;if(!yr(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a<i)&&!1!==n(s[a],a,s););return r}}tO(ge,"baseForOwn"),tO(gt,"createBaseEach");var gr=gt(ge);function gn(e,t){var r=-1,n=yr(e)?Array(e.length):[];return gr(e,function(e,i,a){n[++r]=t(e,i,a)}),n}function gi(e,t){return(hO(e)?mA:gn)(e,y7(t))}function ga(e,t){var r=[];return gr(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}function gs(e,t){return(hO(e)?hL:ga)(e,y7(t))}function go(e,t,r){return`${e.name}_${t}_${r}`}tO(gn,"baseMap"),tO(gi,"map"),tO(ga,"baseFilter"),tO(gs,"filter"),tO(go,"buildATNKey");var gl=class{static{tO(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},gu=class extends gl{static{tO(this,"AtomTransition")}constructor(e,t){super(e),this.tokenType=t}},gc=class extends gl{static{tO(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},gp=class extends gl{static{tO(this,"RuleTransition")}constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}};function gf(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};gd(t,e);let r=e.length;for(let n=0;n<r;n++){let r=e[n],i=gR(t,r,r);void 0!==i&&g_(t,r,i)}return t}function gd(e,t){let r=t.length;for(let n=0;n<r;n++){let r=t[n],i=gP(e,r,void 0,{type:2}),a=gP(e,r,void 0,{type:7});i.stop=a,e.ruleToStartState.set(r,i),e.ruleToStopState.set(r,a)}}function gm(e,t,r){if(r instanceof ps)return gN(e,t,r.terminalType,r);if(r instanceof c7)return gI(e,t,r);if(r instanceof pa)return g$(e,t,r);if(r instanceof pe)return gv(e,t,r);if(r instanceof pn)return gh(e,t,r);else if(r instanceof pi)return gy(e,t,r);else if(r instanceof pt)return gg(e,t,r);else if(r instanceof pr)return gT(e,t,r);else return gR(e,t,r)}function gh(e,t,r){let n=gP(e,t,r,{type:5});gC(e,n);let i=gS(e,t,n,r,gR(e,t,r));return gA(e,t,r,i)}function gy(e,t,r){let n=gP(e,t,r,{type:5});gC(e,n);let i=gS(e,t,n,r,gR(e,t,r)),a=gN(e,t,r.separator,r);return gA(e,t,r,i,a)}function gg(e,t,r){let n=gP(e,t,r,{type:4});gC(e,n);let i=gS(e,t,n,r,gR(e,t,r));return gE(e,t,r,i)}function gT(e,t,r){let n=gP(e,t,r,{type:4});gC(e,n);let i=gS(e,t,n,r,gR(e,t,r)),a=gN(e,t,r.separator,r);return gE(e,t,r,i,a)}function g$(e,t,r){let n=gP(e,t,r,{type:1});gC(e,n);let i=gi(r.definition,r=>gm(e,t,r));return gS(e,t,n,r,...i)}function gv(e,t,r){let n=gP(e,t,r,{type:1});gC(e,n);let i=gS(e,t,n,r,gR(e,t,r));return gb(e,t,r,i)}function gR(e,t,r){let n=gs(gi(r.definition,r=>gm(e,t,r)),e=>void 0!==e);return 1===n.length?n[0]:0===n.length?void 0:gx(e,n)}function gE(e,t,r,n,i){let a=n.left,s=n.right,o=gP(e,t,r,{type:11});gC(e,o);let l=gP(e,t,r,{type:12});return a.loopback=o,l.loopback=o,e.decisionMap[go(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,gw(s,o),void 0===i?(gw(o,a),gw(o,l)):(gw(o,l),gw(o,i.left),gw(i.right,a)),{left:a,right:l}}function gA(e,t,r,n,i){let a=n.left,s=n.right,o=gP(e,t,r,{type:10});gC(e,o);let l=gP(e,t,r,{type:12}),u=gP(e,t,r,{type:9});return o.loopback=u,l.loopback=u,gw(o,a),gw(o,l),gw(s,u),void 0!==i?(gw(u,l),gw(u,i.left),gw(i.right,a)):gw(u,o),e.decisionMap[go(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function gb(e,t,r,n){let i=n.left;return gw(i,n.right),e.decisionMap[go(t,"Option",r.idx)]=i,n}function gC(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function gS(e,t,r,n,...i){let a=gP(e,t,n,{type:8,start:r});for(let e of(r.end=a,i))void 0!==e?(gw(r,e.left),gw(e.right,a)):gw(r,a);return e.decisionMap[go(t,gk(n),n.idx)]=r,{left:r,right:a}}function gk(e){if(e instanceof pa)return"Alternation";if(e instanceof pe)return"Option";if(e instanceof pn)return"Repetition";if(e instanceof pi)return"RepetitionWithSeparator";if(e instanceof pt)return"RepetitionMandatory";else if(e instanceof pr)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function gx(e,t){let r=t.length;for(let n=0;n<r-1;n++){let r,i=t[n];1===i.left.transitions.length&&(r=i.left.transitions[0]);let a=r instanceof gp,s=r,o=t[n+1].left;1===i.left.type&&1===i.right.type&&void 0!==r&&(a&&s.followState===i.right||r.target===i.right)?(a?s.followState=o:r.target=o,gD(e,i.right)):gw(i.right,o)}let n=t[0],i=t[r-1];return{left:n.left,right:i.right}}function gN(e,t,r,n){let i=gP(e,t,n,{type:1}),a=gP(e,t,n,{type:1});return gO(i,new gu(a,r)),{left:i,right:a}}function gI(e,t,r){let n=r.referencedRule,i=e.ruleToStartState.get(n),a=gP(e,t,r,{type:1}),s=gP(e,t,r,{type:1});return gO(a,new gp(i,n,s)),{left:a,right:s}}function g_(e,t,r){let n=e.ruleToStartState.get(t);gw(n,r.left);let i=e.ruleToStopState.get(t);return gw(r.right,i),{left:n,right:i}}function gw(e,t){gO(e,new gc(t))}function gP(e,t,r,n){let i=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(i),i}function gO(e,t){0===e.transitions.length&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}function gD(e,t){e.states.splice(e.states.indexOf(t),1)}tO(gf,"createATN"),tO(gd,"createRuleStartAndStopATNStates"),tO(gm,"atom"),tO(gh,"repetition"),tO(gy,"repetitionSep"),tO(gg,"repetitionMandatory"),tO(gT,"repetitionMandatorySep"),tO(g$,"alternation"),tO(gv,"option"),tO(gR,"block"),tO(gE,"plus"),tO(gA,"star"),tO(gb,"optional"),tO(gC,"defineDecisionState"),tO(gS,"makeAlts"),tO(gk,"getProdType"),tO(gx,"makeBlock"),tO(gN,"tokenRef"),tO(gI,"ruleRef"),tO(g_,"buildRuleHandle"),tO(gw,"epsilon"),tO(gP,"newState"),tO(gO,"addTransition"),tO(gD,"removeState");var gL={},gM=class{static{tO(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=gj(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return gi(this.configs,e=>e.alt)}get key(){let e="";for(let t in this.map)e+=t+":";return e}};function gj(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join("_")}`}function gF(e,t,r){for(var n=-1,i=e.length;++n<i;){var a=e[n],s=t(a);if(null!=s&&(void 0===o?s==s&&!yO(s):r(s,o)))var o=s,l=a}return l}function gG(e,t){return e<t}function gz(e){return e&&e.length?gF(e,y3,gG):void 0}tO(gj,"getATNConfigKey"),tO(gF,"baseExtremum"),tO(gG,"baseLt"),tO(gz,"min");var gK=mG?mG.isConcatSpreadable:void 0;function gq(e){return hO(e)||hV(e)||!!(gK&&e&&e[gK])}function gU(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=gq),i||(i=[]);++a<s;){var o=e[a];t>0&&r(o)?t>1?gU(o,t-1,r,n,i):hP(i,o):n||(i[i.length]=o)}return i}function gB(e,t){return gU(gi(e,t),1)}function gW(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return -1}function gV(e){return e!=e}function gH(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return -1}function gY(e,t,r){return t==t?gH(e,t,r):gW(e,gV,r)}function gZ(e,t){return!!(null==e?0:e.length)&&gY(e,t,0)>-1}function gX(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function gJ(){}tO(gq,"isFlattenable"),tO(gU,"baseFlatten"),tO(gB,"flatMap"),tO(gW,"baseFindIndex"),tO(gV,"baseIsNaN"),tO(gH,"strictIndexOf"),tO(gY,"baseIndexOf"),tO(gZ,"arrayIncludes"),tO(gX,"arrayIncludesWith"),tO(gJ,"noop");var gQ=yu&&1/hN(new yu([,-0]))[1]==1/0?function(e){return new yu(e)}:gJ;function g0(e,t,r){var n=-1,i=gZ,a=e.length,s=!0,o=[],l=o;if(r)s=!1,i=gX;else if(a>=200){var u=t?null:gQ(e);if(u)return hN(u);s=!1,i=hC,l=new hA}else l=t?[]:o;t:for(;++n<a;){var c=e[n],p=t?t(c):c;if(c=r||0!==c?c:0,s&&p==p){for(var f=l.length;f--;)if(l[f]===p)continue t;t&&l.push(p),o.push(c)}else i(l,p,r)||(l!==o&&l.push(p),o.push(c))}return o}function g1(e,t){return e&&e.length?g0(e,y7(t)):[]}function g2(e){return(null==e?0:e.length)?gU(e,1):[]}function g3(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function g9(e){return"function"==typeof e?e:y3}function g4(e,t){return(hO(e)?g3:gr)(e,g9(t))}tO(g0,"baseUniq"),tO(g1,"uniqBy"),tO(g2,"flatten"),tO(g3,"arrayEach"),tO(g9,"castFunction"),tO(g4,"forEach");var g5=Object.prototype.hasOwnProperty;function g7(e){if(null==e)return!0;if(yr(e)&&(hO(e)||"string"==typeof e||"function"==typeof e.splice||hH()||h3(e)||hV(e)))return!e.length;var t=yE(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(h7(e))return!yt(e).length;for(var r in e)if(g5.call(e,r))return!1;return!0}function g8(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function g6(e,t,r,n,i){return i(e,function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)}),r}function Te(e,t,r){var n=hO(e)?g8:g6,i=arguments.length<3;return n(e,y7(t),r,i,gr)}function Tt(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return void 0!==a||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}tO(g7,"isEmpty"),tO(g8,"arrayReduce"),tO(g6,"baseReduce"),tO(Te,"reduce"),tO(Tt,"createDFACache");var Tr=class{static{tO(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="",t=this.predicates.length;for(let r=0;r<t;r++)e+=!0===this.predicates[r]?"1":"0";return e}},Tn=new Tr,Ti=class extends dZ{static{tO(this,"LLStarLookaheadStrategy")}constructor(e){var t;super(),this.logging=null!=(t=null==e?void 0:e.logging)?t:e=>console.log(e)}initialize(e){this.atn=gf(e.rules),this.dfas=Ts(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=go(r,"Alternation",t),l=this.atn.decisionMap[o].decision,u=gi(f4({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),e=>gi(e,e=>e[0]));if(Ta(u,!1)&&!i){let e=Te(u,(e,t,r)=>(g4(t,t=>{t&&(e[t.tokenTypeIdx]=r,g4(t.categoryMatches,t=>{e[t]=r}))}),e),{});return n?function(t){var r;let n=e[this.LA(1).tokenTypeIdx];if(void 0!==t&&void 0!==n){let e=null==(r=t[n])?void 0:r.GATE;if(void 0!==e&&!1===e.call(this))return}return n}:function(){return e[this.LA(1).tokenTypeIdx]}}return n?function(e){let t=new Tr,r=void 0===e?0:e.length;for(let n=0;n<r;n++){let r=null==e?void 0:e[n].GATE;t.set(n,void 0===r||r.call(this))}let n=To.call(this,a,l,t,s);return"number"==typeof n?n:void 0}:function(){let e=To.call(this,a,l,Tn,s);return"number"==typeof e?e:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=go(r,n,t),l=this.atn.decisionMap[o].decision,u=gi(f4({maxLookahead:1,occurrence:t,prodType:n,rule:r}),e=>gi(e,e=>e[0]));if(Ta(u)&&u[0][0]&&!i){let e=g2(u[0]);if(1===e.length&&g7(e[0].categoryMatches)){let t=e[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===t}}{let t=Te(e,(e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,g4(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){return!0===t[this.LA(1).tokenTypeIdx]}}}return function(){let e=To.call(this,a,l,Tn,s);return"object"!=typeof e&&0===e}}};function Ta(e,t=!0){let r=new Set;for(let n of e){let e=new Set;for(let i of n){if(void 0===i)if(!t)return!1;else break;for(let t of[i.tokenTypeIdx].concat(i.categoryMatches))if(r.has(t)){if(!e.has(t))return!1}else r.add(t),e.add(t)}}return!0}function Ts(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=Tt(e.decisionStates[n],n);return r}function To(e,t,r,n){let i=e[t](r),a=i.start;if(void 0===a){let e=TR(i.atnStartState);a=Tv(i,TT(e)),i.start=a}return Tl.apply(this,[i,a,r,n])}function Tl(e,t,r,n){let i=t,a=1,s=[],o=this.LA(a++);for(;;){let t=Tm(i,o);if(void 0===t&&(t=Tu.apply(this,[e,i,o,a,r,n])),t===gL)return Td(s,i,o);if(!0===t.isAcceptState)return t.prediction;i=t,s.push(o),o=this.LA(a++)}}function Tu(e,t,r,n,i,a){let s=Th(t.configs,r,i);if(0===s.size)return T$(e,t,r,gL),gL;let o=TT(s),l=Tg(s,i);if(void 0!==l)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(TS(s)){let t=gz(s.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,Tc.apply(this,[e,n,s.alts,a])}return T$(e,t,r,o)}function Tc(e,t,r,n){let i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);let a=e.atnStartState;n(Tp({topLevelRule:a.rule,ambiguityIndices:r,production:a.production,prefixPath:i}))}function Tp(e){let t=gi(e.prefixPath,e=>fx(e)).join(", "),r=0===e.production.idx?"":e.production.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${Tf(e.production)}${r}> inside <${e.topLevelRule.name}> Rule,
78
+ <${t}> may appears as a prefix path in all these alternatives.
79
+ `;return n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
80
+ For Further details.`}function Tf(e){if(e instanceof c7)return"SUBRULE";if(e instanceof pe)return"OPTION";if(e instanceof pa)return"OR";if(e instanceof pt)return"AT_LEAST_ONE";if(e instanceof pr)return"AT_LEAST_ONE_SEP";else if(e instanceof pi)return"MANY_SEP";else if(e instanceof pn)return"MANY";else if(e instanceof ps)return"CONSUME";else throw Error("non exhaustive match")}function Td(e,t,r){return{actualToken:r,possibleTokenTypes:g1(gB(t.configs.elements,e=>e.state.transitions).filter(e=>e instanceof gu).map(e=>e.tokenType),e=>e.tokenTypeIdx),tokenPath:e}}function Tm(e,t){return e.edges[t.tokenTypeIdx]}function Th(e,t,r){let n,i=new gM,a=[];for(let n of e.elements){if(!1===r.is(n.alt))continue;if(7===n.state.type){a.push(n);continue}let e=n.state.transitions.length;for(let r=0;r<e;r++){let e=Ty(n.state.transitions[r],t);void 0!==e&&i.add({state:e,alt:n.alt,stack:n.stack})}}if(0===a.length&&1===i.size&&(n=i),void 0===n)for(let e of(n=new gM,i.elements))TE(e,n);if(a.length>0&&!Tb(n))for(let e of a)n.add(e);return n}function Ty(e,t){if(e instanceof gu&&fK(t,e.tokenType))return e.target}function Tg(e,t){let r;for(let n of e.elements)if(!0===t.is(n.alt)){if(void 0===r)r=n.alt;else if(r!==n.alt)return}return r}function TT(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function T$(e,t,r,n){return n=Tv(e,n),t.edges[r.tokenTypeIdx]=n,n}function Tv(e,t){if(t===gL)return t;let r=t.configs.key,n=e.states[r];return void 0!==n?n:(t.configs.finalize(),e.states[r]=t,t)}function TR(e){let t=new gM,r=e.transitions.length;for(let n=0;n<r;n++)TE({state:e.transitions[n].target,alt:n,stack:[]},t);return t}function TE(e,t){let r=e.state;if(7===r.type){if(e.stack.length>0){let r=[...e.stack];TE({state:r.pop(),alt:e.alt,stack:r},t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i<n;i++){let n=TA(e,r.transitions[i]);void 0!==n&&TE(n,t)}}function TA(e,t){if(t instanceof gc)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof gp){let r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}function Tb(e){for(let t of e.elements)if(7===t.state.type)return!0;return!1}function TC(e){for(let t of e.elements)if(7!==t.state.type)return!1;return!0}function TS(e){if(TC(e))return!0;let t=Tk(e.elements);return Tx(t)&&!TN(t)}function Tk(e){let t=new Map;for(let r of e){let e=gj(r,!1),n=t.get(e);void 0===n&&(n={},t.set(e,n)),n[r.alt]=!0}return t}function Tx(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}function TN(e){for(let t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}tO(Ta,"isLL1Sequence"),tO(Ts,"initATNSimulator"),tO(To,"adaptivePredict"),tO(Tl,"performLookahead"),tO(Tu,"computeLookaheadTarget"),tO(Tc,"reportLookaheadAmbiguity"),tO(Tp,"buildAmbiguityError"),tO(Tf,"getProductionDslName"),tO(Td,"buildAdaptivePredictError"),tO(Tm,"getExistingTargetState"),tO(Th,"computeReachSet"),tO(Ty,"getReachableTarget"),tO(Tg,"getUniqueAlt"),tO(TT,"newDFAState"),tO(T$,"addDFAEdge"),tO(Tv,"addDFAState"),tO(TR,"computeStartState"),tO(TE,"closure"),tO(TA,"getEpsilonTarget"),tO(Tb,"hasConfigInRuleStopState"),tO(TC,"allConfigsInRuleStopStates"),tO(TS,"hasConflictTerminatingPrediction"),tO(Tk,"getConflictingAltSets"),tO(Tx,"hasConflictingAltSet"),tO(TN,"hasStateAssociatedWithOneAlt"),tK();var TI=class{static{tO(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new TD(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new TP;return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),this.nodeStack.push(t),t}buildLeafNode(e,t){let r=new Tw(e.startOffset,e.image.length,iG(e),e.tokenType,!t);return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),r}removeNode(e){let t=e.container;if(t){let r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){let t=[];for(let r of e){let e=new Tw(r.startOffset,r.image.length,iG(r),r.tokenType,!0);e.root=this.rootNode,t.push(e)}let r=this.current,n=!1;if(r.content.length>0)return void r.content.push(...t);for(;r.container;){let e=r.container.content.indexOf(r);if(e>0){r.container.content.splice(e,0,...t),n=!0;break}r=r.container}n||this.rootNode.content.unshift(...t)}construct(e){let t=this.current;"string"!=typeof e.$type||e.$infixName||(this.current.astNode=e),e.$cstNode=t;let r=this.nodeStack.pop();r?.content.length===0&&this.removeNode(r)}},T_=class{static{tO(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let e="string"==typeof this._astNode?.$type?this._astNode:this.container?.astNode;if(!e)throw Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},Tw=class extends T_{static{tO(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,t,r,n,i=!1){super(),this._hidden=i,this._offset=e,this._tokenType=n,this._length=t,this._range=r}},TP=class extends T_{static{tO(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new TO(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this.firstNonHiddenNode,t=this.lastNonHiddenNode;if(!e||!t)return{start:T.create(0,0),end:T.create(0,0)};if(void 0===this._rangeCache){let{range:r}=e,{range:n}=t;this._rangeCache={start:r.start,end:n.end.line<r.start.line?r.start:n.end}}return this._rangeCache}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}},TO=class e extends Array{static{tO(this,"CstNodeContainer")}constructor(t){super(),this.parent=t,Object.setPrototypeOf(this,e.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}},TD=class extends TP{static{tO(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},TL=Symbol("Datatype");function TM(e){return e.$type===TL}tO(TM,"isDataTypeNode");var Tj=tO(e=>e.endsWith("​")?e:e+"​","withRuleSuffix"),TF=class{static{tO(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition,r="production"===e.LanguageMetaData.mode;e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new TW(t,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new TB(t,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider})}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},TG=class extends TF{static{tO(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new TI,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){let r,n=this.computeRuleType(e);nD(e)&&(r=e.name,this.registerPrecedenceMap(e));let i=this.wrapper.DEFINE_RULE(Tj(e.name),this.startImplementation(n,r,t).bind(this));return this.allRules.set(e.name,i),n3(e)&&e.entry&&(this.mainRule=i),i}registerPrecedenceMap(e){let t=e.name,r=new Map;for(let t=0;t<e.operators.precedences.length;t++){let n=e.operators.precedences[t];for(let e of n.operators)r.set(e.value,{precedence:t,rightAssoc:"right"===n.associativity})}this.operatorPrecedence.set(t,r)}computeRuleType(e){if(nD(e))return aV(e);if(!e.fragment)if(aK(e))return TL;else return aV(e)}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");let i=this.doParse(n);return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,rK(i,{deep:!0}),{value:i,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}doParse(e){let t=this.wrapper.rule(e);if(this.stack.length>0&&(t=this.construct()),void 0===t)throw Error("No result from parser");if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return t}startImplementation(e,t,r){return n=>{let i=!this.isRecording()&&void 0!==e;if(i){let r={$type:e};this.stack.push(r),e===TL?r.value="":void 0!==t&&(r.$infixName=t)}return r(n),i?this.construct():void 0}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let r=e.startOffset;for(let e=0;e<t.length;e++)if(t[e].startOffset>r)return t.splice(0,e);return t.splice(0,t.length)}consume(e,t,r){let n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){let e=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(e);let t=this.nodeBuilder.buildLeafNode(n,r),{assignment:i,crossRef:a}=this.getAssignment(r),s=this.current;if(i){let e=nq(r)?n.image:this.converter.convert(n.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(TM(s)){let e=n.image;nq(r)||(e=this.converter.convert(e,t).toString()),s.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,r,n,i){let a,s;this.isRecording()||r||(a=this.nodeBuilder.buildCompositeNode(n));try{s=this.wrapper.wrapSubrule(e,t,i)}finally{!this.isRecording()&&(void 0!==s||r||(s=this.construct()),void 0!==s&&a&&a.length>0&&this.performSubruleAssignment(s,n,a))}}performSubruleAssignment(e,t,r){let{assignment:n,crossRef:i}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,i);else if(!n){let t=this.current;if(TM(t))t.value+=e.toString();else if("object"==typeof e&&e){let r=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(r)}}}action(e,t){if(!this.isRecording()){let r=this.current;t.feature&&t.operator?(r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode),this.nodeBuilder.buildCompositeNode(t).content.push(r.$cstNode),this.stack.push({$type:e}),this.assign(t.operator,t.feature,r,r.$cstNode)):r.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return(this.nodeBuilder.construct(e),"$infixName"in e)?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):TM(e)?this.converter.convert(e.value,e.$cstNode):(rQ(this.astReflection,e),e)}constructInfix(e,t){let r=e.parts;if(!Array.isArray(r)||0===r.length)return;let n=e.operators;if(!Array.isArray(n)||r.length<2)return r[0];let i=0,a=-1;for(let e=0;e<n.length;e++){let r=n[e],s=t.get(r)??{precedence:1/0,rightAssoc:!1};s.precedence>a?(a=s.precedence,i=e):s.precedence!==a||s.rightAssoc||(i=e)}let s=n.slice(0,i),o=n.slice(i+1),l=r.slice(0,i+1),u=r.slice(i+1),c={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:s},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:u,operators:o},f=this.constructInfix(c,t),d=this.constructInfix(p,t);return{$type:e.$type,$cstNode:e.$cstNode,left:f,operator:n[i],right:d}}getAssignment(e){if(!this.assignmentMap.has(e)){let t=rq(e,np);this.assignmentMap.set(e,{assignment:t,crossRef:t&&nR(t.terminal)?t.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,t,r,n,i){let a,s=this.current;switch(a="single"===i&&"string"==typeof r?this.linker.buildReference(s,t,n,r):"multi"===i&&"string"==typeof r?this.linker.buildMultiReference(s,t,n,r):r,e){case"=":s[t]=a;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(a)}}assignWithoutOverride(e,t){for(let[r,n]of Object.entries(t)){let t=e[r];void 0===t?e[r]=n:Array.isArray(t)&&Array.isArray(n)&&(n.push(...t),e[r]=n)}let r=e.$cstNode;return r&&(r.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},Tz=class{static{tO(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return fq.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return fq.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return fq.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return fq.buildEarlyExitMessage(e)}},TK=class extends Tz{static{tO(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:t}){let r=e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`;return`Expecting ${r} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Tq=class extends TF{static{tO(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){let r=this.wrapper.DEFINE_RULE(Tj(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,t,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}},TU={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new TK},TB=class extends mE{static{tO(this,"ChevrotainWrapper")}constructor(e,t){const r=t&&"maxLookahead"in t;super(e,{...TU,lookaheadStrategy:r?new dZ({maxLookahead:t.maxLookahead}):new Ti({logging:t.skipValidations?()=>{}:void 0}),...t})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t,r){return this.RULE(e,t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t,void 0)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}rule(e){return e.call(this,{})}},TW=class extends TB{static{tO(this,"ProfilerWrapper")}constructor(e,t,r){super(e,t),this.task=r}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,t,r){this.task.startSubTask(this.ruleName(t));try{return super.subrule(e,t,r)}finally{this.task.stopSubTask(this.ruleName(t))}}};function TV(e,t,r){return TH({parser:t,tokens:r,ruleNames:new Map},e),t}function TH(e,t){let r=ab(t,!1);for(let n of rF(t.rules).filter(n3).filter(e=>r.has(e))){let t={...e,consume:1,optional:1,subrule:1,many:1,or:1};e.parser.rule(n,TZ(t,n.definition))}for(let n of rF(t.rules).filter(nD).filter(e=>r.has(e)))e.parser.rule(n,TY(e,n))}function TY(e,t){let r,n=t.call.rule.ref;if(!n)throw Error("Could not resolve reference to infix operator rule: "+t.call.rule.$refText);if(ih(n))throw Error("Cannot use terminal rule in infix expression");let i=t.operators.precedences.flatMap(e=>e.operators),a={$type:"Group",elements:[]},s={$container:a,$type:"Assignment",feature:"parts",operator:"+=",terminal:t.call},o={$container:a,$type:"Group",elements:[],cardinality:"*"};a.elements.push(s,o);let l={$container:o,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:i}},u={...s,$container:o};o.elements.push(l,u);let c=i.map(t=>e.tokens[t.value]).map((t,r)=>({ALT:tO(()=>e.parser.consume(r,t,l),"ALT")}));return t=>{r??(r=T8(e,n)),e.parser.subrule(0,r,!1,s,t),e.parser.many(0,{DEF:tO(()=>{e.parser.alternatives(0,c),e.parser.subrule(1,r,!1,u,t)},"DEF")})}}function TZ(e,t,r=!1){let n;if(nq(t))n=T5(e,t);else if(nn(t))n=TX(e,t);else if(np(t))n=TZ(e,t.terminal);else if(nR(t))n=T4(e,t);else if(it(t))n=TJ(e,t);else if(na(t))n=T1(e,t);else if(ik(t))n=T2(e,t);else if(n_(t))n=T3(e,t);else if(nC(t)){let r=e.consume++;n=tO(()=>e.parser.consume(r,fG,t),"method")}else throw new i9(t.$cstNode,`Unexpected element type: ${t.$type}`);return T7(e,r?void 0:T9(t),n,t.cardinality)}function TX(e,t){let r=aV(t);return()=>e.parser.action(r,t)}function TJ(e,t){let r=t.rule.ref;if(r7(r)){let n,i=e.subrule++,a=n3(r)&&r.fragment,s=t.arguments.length>0?TQ(r,t.arguments):()=>({});return o=>{n??(n=T8(e,r)),e.parser.subrule(i,n,a,t,s(o))}}if(ih(r)){let n=e.consume++,i=$e(e,r.name);return()=>e.parser.consume(n,i,t)}if(r)i4(r);else throw new i9(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}function TQ(e,t){if(t.some(e=>e.calledByName)){let e=t.map(e=>({parameterName:e.parameter?.ref?.name,predicate:T0(e.value)}));return t=>{let r={};for(let{parameterName:n,predicate:i}of e)n&&(r[n]=i(t));return r}}{let r=t.map(e=>T0(e.value));return t=>{let n={};for(let i=0;i<r.length;i++)if(i<e.parameters.length){let a=e.parameters[i].name,s=r[i];n[a]=s(t)}return n}}}function T0(e){if(nA(e)){let t=T0(e.left),r=T0(e.right);return e=>t(e)||r(e)}if(n$(e)){let t=T0(e.left),r=T0(e.right);return e=>t(e)&&r(e)}if(nY(e)){let t=T0(e.value);return e=>!t(e)}if(n1(e)){let t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if(nd(e)){let t=!!e.true;return()=>t}i4(e)}function T1(e,t){if(1===t.elements.length)return TZ(e,t.elements[0]);{let r=[];for(let n of t.elements){let t={ALT:TZ(e,n,!0)},i=T9(n);i&&(t.GATE=T0(i)),r.push(t)}let n=e.or++;return t=>e.parser.alternatives(n,r.map(e=>{let r={ALT:tO(()=>e.ALT(t),"ALT")},n=e.GATE;return n&&(r.GATE=()=>n(t)),r}))}}function T2(e,t){if(1===t.elements.length)return TZ(e,t.elements[0]);let r=[];for(let n of t.elements){let t={ALT:TZ(e,n,!0)},i=T9(n);i&&(t.GATE=T0(i)),r.push(t)}let n=e.or++,i=tO((e,t)=>{let r=t.getRuleStack().join("-");return`uGroup_${e}_${r}`},"idFunc"),a=tO(t=>e.parser.alternatives(n,r.map((r,a)=>{let s={ALT:tO(()=>!0,"ALT")},o=e.parser;s.ALT=()=>{if(r.ALT(t),!o.isRecording()){let e=i(n,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);let t=o.unorderedGroups.get(e);void 0===t?.[a]&&(t[a]=!0)}};let l=r.GATE;return l?s.GATE=()=>l(t):s.GATE=()=>{let e=o.unorderedGroups.get(i(n,o));return!e?.[a]},s})),"alternatives"),s=T7(e,T9(t),a,"*");return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(n,e.parser))}}function T3(e,t){let r=t.elements.map(t=>TZ(e,t));return e=>r.forEach(t=>t(e))}function T9(e){if(n_(e))return e.guardCondition}function T4(e,t,r=t.terminal){if(r)if(it(r)&&n3(r.rule.ref)){let n,i=r.rule.ref,a=e.subrule++;return r=>{n??(n=T8(e,i)),e.parser.subrule(a,n,!1,t,r)}}else if(it(r)&&ih(r.rule.ref)){let n=e.consume++,i=$e(e,r.rule.ref.name);return()=>e.parser.consume(n,i,t)}else if(nq(r)){let n=e.consume++,i=$e(e,r.value);return()=>e.parser.consume(n,i,t)}else throw Error("Could not build cross reference parser");{if(!t.type.ref)throw Error("Could not resolve reference to type: "+t.type.$refText);let r=aL(t.type.ref),n=r?.terminal;if(!n)throw Error("Could not find name assignment for type: "+aV(t.type.ref));return T4(e,t,n)}}function T5(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}function T7(e,t,r,n){let i=t&&T0(t);if(!n)if(!i)return r;else{let t=e.or++;return n=>e.parser.alternatives(t,[{ALT:tO(()=>r(n),"ALT"),GATE:tO(()=>i(n),"GATE")},{ALT:mv(),GATE:tO(()=>!i(n),"GATE")}])}if("*"===n){let t=e.many++;return n=>e.parser.many(t,{DEF:tO(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}if("+"===n){let t=e.many++;if(!i)return n=>e.parser.atLeastOne(t,{DEF:tO(()=>r(n),"DEF")});{let n=e.or++;return a=>e.parser.alternatives(n,[{ALT:tO(()=>e.parser.atLeastOne(t,{DEF:tO(()=>r(a),"DEF")}),"ALT"),GATE:tO(()=>i(a),"GATE")},{ALT:mv(),GATE:tO(()=>!i(a),"GATE")}])}}if("?"===n){let t=e.optional++;return n=>e.parser.optional(t,{DEF:tO(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}i4(n)}function T8(e,t){let r=T6(e,t),n=e.parser.getRule(r);if(!n)throw Error(`Rule "${r}" not found."`);return n}function T6(e,t){if(r7(t))return t.name;{if(e.ruleNames.has(t))return e.ruleNames.get(t);let r=t,n=r.$container,i=t.$type;for(;!n3(n);)(n_(n)||na(n)||ik(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}function $e(e,t){let r=e.tokens[t];if(!r)throw Error(`Token "${t}" not found."`);return r}function $t(e){let t=e.Grammar,r=e.parser.Lexer,n=new Tq(e);return TV(t,n,r.definition),n.finalize(),n}function $r(e){let t=$n(e);return t.finalize(),t}function $n(e){let t=e.Grammar,r=e.parser.Lexer;return TV(t,new TG(e),r.definition)}tO(TV,"createParser"),tO(TH,"buildRules"),tO(TY,"buildInfixRule"),tO(TZ,"buildElement"),tO(TX,"buildAction"),tO(TJ,"buildRuleCall"),tO(TQ,"buildRuleCallPredicate"),tO(T0,"buildPredicate"),tO(T1,"buildAlternatives"),tO(T2,"buildUnorderedGroup"),tO(T3,"buildGroup"),tO(T9,"getGuardCondition"),tO(T4,"buildCrossReference"),tO(T5,"buildKeyword"),tO(T7,"wrap"),tO(T8,"getRule"),tO(T6,"getRuleName"),tO($e,"getToken"),tO($t,"createCompletionParser"),tO($r,"createLangiumParser"),tO($n,"prepareLangiumParser");var $i=class{static{tO(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,t){let r=rF(ab(e,!1)),n=this.buildTerminalTokens(r),i=this.buildKeywordTokens(r,n,t);return i.push(...n),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(ih).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){let t=aX(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,n={name:e.name,PATTERN:r};return"function"==typeof r&&(n.LINE_BREAKS=!0),e.hidden&&(n.GROUP=aT(t)?fk.SKIPPED:"hidden"),n}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let t=RegExp(e,e.flags+"y");return(e,r)=>(t.lastIndex=r,t.exec(e))}buildKeywordTokens(e,t,r){return e.filter(r7).flatMap(e=>rY(e).filter(nq)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,!!r?.caseInsensitive))}buildKeywordToken(e,t,r){let n=this.buildKeywordPattern(e,r),i={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return"function"==typeof n&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?RegExp(a$(e.value),"i"):e.value}findLongerAlt(e,t){return t.reduce((t,r)=>{let n=r?.PATTERN;return n?.source&&av("^"+n.source+"$",e.value)&&t.push(r),t},[])}},$a=class{static{tO(this,"DefaultValueConverter")}convert(e,t){let r=t.grammarSource;if(nR(r)&&(r=ak(r)),it(r)){let n=r.rule.ref;if(!n)throw Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){switch(e.name.toUpperCase()){case"INT":return eX.convertInt(t);case"STRING":return eX.convertString(t);case"ID":return eX.convertID(t)}switch(aZ(e)?.toLowerCase()){case"number":return eX.convertNumber(t);case"boolean":return eX.convertBoolean(t);case"bigint":return eX.convertBigint(t);case"date":return eX.convertDate(t);default:return t}}};!function(e){function t(e){let t="";for(let n=1;n<e.length-1;n++){let i=e.charAt(n);"\\"===i?t+=r(e.charAt(++n)):t+=i}return t}function r(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return e}}function n(e){return"^"===e.charAt(0)?e.substring(1):e}function i(e){return parseInt(e)}function a(e){return BigInt(e)}function s(e){return new Date(e)}function o(e){return Number(e)}function l(e){return"true"===e.toLowerCase()}tO(t,"convertString"),e.convertString=t,tO(r,"convertEscapeCharacter"),tO(n,"convertID"),e.convertID=n,tO(i,"convertInt"),e.convertInt=i,tO(a,"convertBigint"),e.convertBigint=a,tO(s,"convertDate"),e.convertDate=s,tO(o,"convertNumber"),e.convertNumber=o,tO(l,"convertBoolean"),e.convertBoolean=l}(eX||(eX={}));var $s={};function $o(){return new Promise(e=>{"u"<typeof setImmediate?setTimeout(e,0):setImmediate(e)})}tj($s,tF(tW(),1)),tO($o,"delayNextTick");var $l=0,$u=10;function $c(){return $l=performance.now(),new $s.CancellationTokenSource}function $p(e){$u=e}tO($c,"startCancelableOperation"),tO($p,"setInterruptionPeriod");var $f=Symbol("OperationCancelled");function $d(e){return e===$f}async function $m(e){if(e===$s.CancellationToken.None)return;let t=performance.now();if(t-$l>=$u&&($l=t,await $o(),$l=performance.now()),e.isCancellationRequested)throw $f}tO($d,"isOperationCancelled"),tO($m,"interruptAndCheck");var $h=class{static{tO(this,"Deferred")}constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}},$y=class e{static{tO(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(t,r){for(let r of t)if(e.isIncremental(r)){let e=$v(r.range),t=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,t)+r.text+this._content.substring(n,this._content.length);let i=Math.max(e.start.line,0),a=Math.max(e.end.line,0),s=this._lineOffsets,o=$T(r.text,!1,t);if(a-i===o.length)for(let e=0,t=o.length;e<t;e++)s[e+i+1]=o[e];else o.length<1e4?s.splice(i+1,a-i,...o):this._lineOffsets=s=s.slice(0,i+1).concat(o,s.slice(a+1));let l=r.text.length-(n-t);if(0!==l)for(let e=i+1+o.length,t=s.length;e<t;e++)s[e]=s[e]+l}else if(e.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=r}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=$T(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return e=this.ensureBeforeEOL(e,t[i]),{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let n=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(r+e.character,n);return this.ensureBeforeEOL(i,r)}ensureBeforeEOL(e,t){for(;e>t&&$$(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}static isFull(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}};function $g(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),i=e.slice(r);$g(n,t),$g(i,t);let a=0,s=0,o=0;for(;a<n.length&&s<i.length;)0>=t(n[a],i[s])?e[o++]=n[a++]:e[o++]=i[s++];for(;a<n.length;)e[o++]=n[a++];for(;s<i.length;)e[o++]=i[s++];return e}function $T(e,t,r=0){let n=t?[r]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);$$(i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function $$(e){return 13===e||10===e}function $v(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function $R(e){let t=$v(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){function t(e,t,r,n){return new $y(e,t,r,n)}function r(e,t,r){if(e instanceof $y)return e.update(t,r),e;throw Error("TextDocument.update: document must be created by TextDocument.create")}function n(e,t){let r=e.getText(),n=$g(t.map($R),(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=0,a=[];for(let t of n){let n=e.offsetAt(t.range.start);if(n<i)throw Error("Overlapping edit");n>i&&a.push(r.substring(i,n)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(r.substr(i)),a.join("")}tO(t,"create"),e.create=t,tO(r,"update"),e.update=r,tO(n,"applyEdits"),e.applyEdits=n}(eJ||(eJ={})),tO($g,"mergeSort"),tO($T,"computeLineOffsets"),tO($$,"isEOL"),tO($v,"getWellformedRange"),tO($R,"getWellformedEdit"),(()=>{let e;var t,r,n={975:e=>{function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,a=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)r=e.charCodeAt(o);else{if(47===r)break;r=47}if(47===r){if(a===o-1||1===s);else if(a!==o-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2)){if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),a=o,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,a=o,s=0;continue}}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),i=o-a-1;a=o,s=0}else 46===r&&-1!==s?++s:s=-1}return n}tO(t,"e"),tO(r,"r");var n={resolve:tO(function(){for(var e,n,i="",a=!1,s=arguments.length-1;s>=-1&&!a;s--)s>=0?e=arguments[s]:(void 0===n&&(n=tk.default.cwd()),e=n),t(e),0!==e.length&&(i=e+"/"+i,a=47===e.charCodeAt(0));return i=r(i,!a),a?i.length>0?"/"+i:"/":i.length>0?i:"."},"resolve"),normalize:tO(function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},"normalize"),isAbsolute:tO(function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},"isAbsolute"),join:tO(function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var i=arguments[r];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":n.normalize(e)},"join"),relative:tO(function(e,r){if(t(e),t(r),e===r||(e=n.resolve(e))===(r=n.resolve(r)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var a=e.length,s=a-i,o=1;o<r.length&&47===r.charCodeAt(o);++o);for(var l=r.length-o,u=s<l?s:l,c=-1,p=0;p<=u;++p){if(p===u){if(l>u){if(47===r.charCodeAt(o+p))return r.slice(o+p+1);if(0===p)return r.slice(o+p)}else s>u&&(47===e.charCodeAt(i+p)?c=p:0===p&&(c=0));break}var f=e.charCodeAt(i+p);if(f!==r.charCodeAt(o+p))break;47===f&&(c=p)}var d="";for(p=i+c+1;p<=a;++p)p!==a&&47!==e.charCodeAt(p)||(0===d.length?d+="..":d+="/..");return d.length>0?d+r.slice(o+c):(o+=c,47===r.charCodeAt(o)&&++o,r.slice(o))},"relative"),_makeLong:tO(function(e){return e},"_makeLong"),dirname:tO(function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,a=!0,s=e.length-1;s>=1;--s)if(47===(r=e.charCodeAt(s))){if(!a){i=s;break}}else a=!1;return -1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},"dirname"),basename:tO(function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var n,i=0,a=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var o=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!s){i=n+1;break}}else -1===l&&(s=!1,l=n+1),o>=0&&(u===r.charCodeAt(o)?-1==--o&&(a=n):(o=-1,a=l))}return i===a?a=l:-1===a&&(a=e.length),e.slice(i,a)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!s){i=n+1;break}}else -1===a&&(s=!1,a=n+1);return -1===a?"":e.slice(i,a)},"basename"),extname:tO(function(e){t(e);for(var r=-1,n=0,i=-1,a=!0,s=0,o=e.length-1;o>=0;--o){var l=e.charCodeAt(o);if(47!==l)-1===i&&(a=!1,i=o+1),46===l?-1===r?r=o:1!==s&&(s=1):-1!==r&&(s=-1);else if(!a){n=o+1;break}}return -1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":e.slice(r,i)},"extname"),format:tO(function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},"format"),parse:tO(function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),a=47===i;a?(r.root="/",n=1):n=0;for(var s=-1,o=0,l=-1,u=!0,c=e.length-1,p=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===s?s=c:1!==p&&(p=1):-1!==s&&(p=-1);else if(!u){o=c+1;break}return -1===s||-1===l||0===p||1===p&&s===l-1&&s===o+1?-1!==l&&(r.base=r.name=0===o&&a?e.slice(1,l):e.slice(o,l)):(0===o&&a?(r.name=e.slice(1,s),r.base=e.slice(1,l)):(r.name=e.slice(o,s),r.base=e.slice(o,l)),r.ext=e.slice(s,l)),o>0?r.dir=e.slice(0,o-1):a&&(r.dir="/"),r},"parse"),sep:"/",delimiter:":",win32:null,posix:null};n.posix=n,e.exports=n}},i={};function a(e){var t=i[e];if(void 0!==t)return t.exports;var r=i[e]={exports:{}};return n[e](r,r.exports,a),r.exports}tO(a,"r"),a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var s={};(a.r(s),a.d(s,{URI:tO(()=>f,"URI"),Utils:tO(()=>r,"Utils")}),"object"==typeof tk.default)?e="win32"===tk.default.platform:"object"==typeof navigator&&(e=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,l=/^\//,u=/^\/\//;function c(e,t){if(!e.scheme&&t)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!o.test(e.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!l.test(e.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(u.test(e.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}tO(c,"a");let p=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class f{static{tO(this,"l")}static isUri(e){return e instanceof f||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,i,a=!1){"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",c(this,a))}get fsPath(){return T(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:a}=e;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&a===this.fragment?this:new m(t,r,n,i,a)}static parse(e,t=!1){let r=p.exec(e);return r?new m(r[2]||"",E(r[4]||""),E(r[5]||""),E(r[7]||""),E(r[9]||""),t):new m("","","","","")}static file(t){let r="";if(e&&(t=t.replace(/\\/g,"/")),"/"===t[0]&&"/"===t[1]){let e=t.indexOf("/",2);-1===e?(r=t.substring(2),t="/"):(r=t.substring(2,e),t=t.substring(e)||"/")}return new m("file",r,t,"","")}static from(e){let t=new m(e.scheme,e.authority,e.path,e.query,e.fragment);return c(t,!0),t}toString(e=!1){return $(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof f)return e;{let t=new m(e);return t._formatted=e.external,t._fsPath=e._sep===d?e.fsPath:null,t}}return e}}let d=e?1:void 0;class m extends f{static{tO(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=T(this,!1)),this._fsPath}toString(e=!1){return e?$(this,!0):(this._formatted||(this._formatted=$(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=d),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}let h={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function y(e,t,r){let n,i=-1;for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),void 0!==n&&(n+=e.charAt(a));else{void 0===n&&(n=e.substr(0,a));let t=h[s];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),n+=t):-1===i&&(i=a)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function g(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=h[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function T(t,r){let n;return n=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&90>=t.path.charCodeAt(1)||t.path.charCodeAt(1)>=97&&122>=t.path.charCodeAt(1))&&58===t.path.charCodeAt(2)?r?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(n=n.replace(/\//g,"\\")),n}function $(e,t){let r=t?g:y,n="",{scheme:i,authority:a,path:s,query:o,fragment:l}=e;if(i&&(n+=i,n+=":"),(a||"file"===i)&&(n+="/",n+="/"),a){let e=a.indexOf("@");if(-1!==e){let t=a.substr(0,e);a=a.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(a=a.toLowerCase()).lastIndexOf(":"))?n+=r(a,!1,!0):(n+=r(a.substr(0,e),!1,!0),n+=a.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){let e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){let e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return o&&(n+="?",n+=r(o,!1,!1)),l&&(n+="#",n+=t?l:y(l,!1,!1)),n}function v(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+v(e.substr(3)):e}}tO(y,"m"),tO(g,"y"),tO(T,"v"),tO($,"b"),tO(v,"C");let R=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(e){return e.match(R)?e.replace(R,e=>v(e)):e}tO(E,"w");var A=a(975);let b=A.posix||A;(t=r||(r={})).joinPath=function(e,...t){return e.with({path:b.join(e.path,...t)})},t.resolvePath=function(e,...t){let r=e.path,n=!1;"/"!==r[0]&&(r="/"+r,n=!0);let i=b.resolve(r,...t);return n&&"/"===i[0]&&!e.authority&&(i=i.substring(1)),e.with({path:i})},t.dirname=function(e){if(0===e.path.length||"/"===e.path)return e;let t=b.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},t.basename=function(e){return b.basename(e.path)},t.extname=function(e){return b.extname(e.path)},eQ=s})();var{URI:$E,Utils:$A}=eQ;!function(e){e.basename=$A.basename,e.dirname=$A.dirname,e.extname=$A.extname,e.joinPath=$A.joinPath,e.resolvePath=$A.resolvePath;let t="object"==typeof tk.default&&tk.default?.platform==="win32";function r(e,t){return e?.toString()===t?.toString()}function n(e,r){let n="string"==typeof e?$E.parse(e).path:e.path,i="string"==typeof r?$E.parse(r).path:r.path,a=n.split("/").filter(e=>e.length>0),s=i.split("/").filter(e=>e.length>0);if(t){let e=/^[A-Z]:$/;if(a[0]&&e.test(a[0])&&(a[0]=a[0].toLowerCase()),s[0]&&e.test(s[0])&&(s[0]=s[0].toLowerCase()),a[0]!==s[0])return i.substring(1)}let o=0;for(;o<a.length&&a[o]===s[o];o++);return"../".repeat(a.length-o)+s.slice(o).join("/")}function i(e){return $E.parse(e.toString()).toString()}function a(e,t){let r="string"==typeof e?e:e.path,n="string"==typeof t?t:t.path;return"/"===n.charAt(n.length-1)&&(n=n.slice(0,-1)),"/"===r.charAt(r.length-1)&&(r=r.slice(0,-1)),n===r||!(n.length<r.length)&&"/"===n.charAt(r.length)&&n.startsWith(r)}tO(r,"equals"),e.equals=r,tO(n,"relative"),e.relative=n,tO(i,"normalize"),e.normalize=i,tO(a,"contains"),e.contains=a}(e0||(e0={}));var $b=class{static{tO(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return e0.normalize(e)}clear(){this.root.children.clear()}insert(e,t){this.getNode(this.normalizeUri(e),!0).element=t}delete(e){let t=this.getNode(this.normalizeUri(e),!1);t?.parent&&t.parent.children.delete(t.name)}has(e){return this.getNode(this.normalizeUri(e),!1)?.element!==void 0}hasNode(e){return void 0!==this.getNode(this.normalizeUri(e),!1)}find(e){return this.getNode(this.normalizeUri(e),!1)?.element}findNode(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);if(r)return{name:r.name,uri:e0.joinPath($E.parse(t),r.name).toString(),element:r.element}}findChildren(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);return r?Array.from(r.children.values()).map(e=>({name:e.name,uri:e0.joinPath($E.parse(t),e.name).toString(),element:e.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let t=this.getNode(e0.normalize(e),!1);return t?this.collectValues(t):[]}getNode(e,t){let r=e.split("/");"/"===e.charAt(e.length-1)&&r.pop();let n=this.root;for(let e of r){let r=n.children.get(e);if(!r)if(!t)return;else r={name:e,children:new Map,parent:n},n.children.set(e,r);n=r}return n}collectValues(e){let t=[];for(let r of(e.element&&t.push(e.element),e.children.values()))t.push(...this.collectValues(r));return t}};(c=e1||(e1={}))[c.Changed=0]="Changed",c[c.Parsed=1]="Parsed",c[c.IndexedContent=2]="IndexedContent",c[c.ComputedScopes=3]="ComputedScopes",c[c.Linked=4]="Linked",c[c.IndexedReferences=5]="IndexedReferences",c[c.Validated=6]="Validated";var $C=class{static{tO(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=$s.CancellationToken.None){let r=await this.fileSystemProvider.readFile(e);return this.createAsync(e,r,t)}fromTextDocument(e,t,r){return(t=t??$E.parse(e.uri),$s.CancellationToken.is(r))?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return $s.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if("string"==typeof t){let n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}if("$model"in t){let r={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,e)}{let n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if("string"==typeof t){let n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}{let n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let i;if(r)i={parseResult:e,uri:t,state:e1.Parsed,references:[],textDocument:r};else{let r=this.createTextDocumentGetter(t,n);i={parseResult:e,uri:t,state:e1.Parsed,references:[],get textDocument(){return r()}}}return e.value.$document=i,i}async update(e,t){let r=e.parseResult.value.$cstNode?.root.fullText,n=this.textDocuments?.get(e.uri.toString()),i=n?n.getText():await this.fileSystemProvider.readFile(e.uri);if(n)Object.defineProperty(e,"textDocument",{value:n});else{let t=this.createTextDocumentGetter(e.uri,i);Object.defineProperty(e,"textDocument",{get:t})}return r!==i&&(e.parseResult=await this.parseAsync(e.uri,i,t),e.parseResult.value.$document=e),e.state=e1.Parsed,e}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){let r,n=this.serviceRegistry;return()=>r??(r=eJ.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,t??""))}},$S=class{static{tO(this,"DefaultLangiumDocuments")}constructor(e){this.documentTrie=new $b,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return rF(this.documentTrie.all())}addDocument(e){let t=e.uri.toString();if(this.documentTrie.has(t))throw Error(`A document with the URI '${t}' is already present.`);this.documentTrie.insert(t,e)}getDocument(e){let t=e.toString();return this.documentTrie.find(t)}getDocuments(e){let t=e.toString();return this.documentTrie.findAll(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r)),r}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(e=>(this.addDocument(e),e));{let r=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(r),r}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&this.documentBuilder().resetToState(r,e1.Changed),r}deleteDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&(r.state=e1.Changed,this.documentTrie.delete(t)),r}deleteDocuments(e){let t=e.toString(),r=this.documentTrie.findAll(t);for(let e of r)e.state=e1.Changed;return this.documentTrie.delete(t),r}},$k=Symbol("RefResolving"),$x=class{static{tO(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async link(e,t=$s.CancellationToken.None){if(this.profiler?.isActive("linking")){let r=this.profiler.createTask("linking",this.languageId);r.start();try{for(let n of rZ(e.parseResult.value))await $m(t),rJ(n).forEach(t=>{let i=`${n.$type}:${t.property}`;r.startSubTask(i);try{this.doLink(t,e)}finally{r.stopSubTask(i)}})}finally{r.stop()}}else for(let r of rZ(e.parseResult.value))await $m(t),rJ(r).forEach(t=>this.doLink(t,e))}doLink(e,t){let r=e.reference;if("_ref"in r&&void 0===r._ref){r._ref=$k;try{let t=this.getCandidate(e);rN(t)?r._ref=t:(r._nodeDescription=t,r._ref=this.loadAstNode(t)??this.createLinkingError(e,t))}catch(n){console.error(`An error occurred while resolving reference to '${r.$refText}':`,n);let t=n.message??String(n);r._ref={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${t}`}}t.references.push(r)}else if("_items"in r&&void 0===r._items){r._items=$k;try{let t=this.getCandidates(e),n=[];if(rN(t))r._linkingError=t;else for(let e of t){let t=this.loadAstNode(e);t&&n.push({ref:t,$nodeDescription:e})}r._items=n}catch(t){r._linkingError={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${t}`},r._items=[]}t.references.push(r)}}unlink(e){for(let t of e.references)"_ref"in t?(t._ref=void 0,delete t._nodeDescription):"_items"in t&&(t._items=void 0,delete t._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let t=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(e=>`${e.documentUri}#${e.path}`).toArray();return t.length>0?t:this.createLinkingError(e)}buildReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,_ref:void 0,get ref(){if(rC(this._ref))return this._ref;if(rx(this._nodeDescription)){let r=i.loadAstNode(this._nodeDescription);this._ref=r??i.createLinkingError({reference:a,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){this._ref=$k;let r=rW(e).$document,n=i.getLinkedNode({reference:a,container:e,property:t});if(n.error&&r&&r.state<e1.ComputedScopes)return this._ref=void 0;this._ref=n.node??n.error,this._nodeDescription=n.descr,r?.references.push(this)}else this._ref===$k&&i.throwCyclicReferenceError(e,t,n);return rC(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return rN(this._ref)?this._ref:void 0}};return a}buildMultiReference(e,t,r,n){let i=this,a={$refNode:r,$refText:n,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(void 0===this._items){this._items=$k;let r=rW(e).$document,n=i.getCandidates({reference:a,container:e,property:t}),s=[];if(rN(n))this._linkingError=n;else for(let e of n){let t=i.loadAstNode(e);t&&s.push({ref:t,$nodeDescription:e})}this._items=s,r?.references.push(this)}else this._items===$k&&i.throwCyclicReferenceError(e,t,n);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(this.items.length>0)return;return this._linkingError=i.createLinkingError({reference:a,container:e,property:t})}};return a}throwCyclicReferenceError(e,t,r){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${r}')`)}getLinkedNode(e){try{let t=this.getCandidate(e);if(rN(t))return{error:t};let r=this.loadAstNode(t);if(r)return{node:r,descr:t};return{descr:t,error:this.createLinkingError(e,t)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let t=r.message??String(r);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${t}`}}}}loadAstNode(e){if(e.node)return e.node;let t=this.langiumDocuments().getDocument(e.documentUri);if(t)return this.astNodeLocator.getAstNode(t.parseResult.value,e.path)}createLinkingError(e,t){let r=rW(e.container).$document;r&&r.state<e1.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);let n=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${n} named '${e.reference.$refText}'.`,targetDescription:t}}};function $N(e){return"string"==typeof e.name}tO($N,"isNamed");var $I=class{static{tO(this,"DefaultNameProvider")}getName(e){if($N(e))return e.name}getNameNode(e){return aI(e.$cstNode,"name")}},$_=class{static{tO(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=rZ(e.Grammar).some(e=>nR(e)&&e.isMulti)}findDeclarations(e){if(e){let t=aD(e),r=e.astNode;if(t&&r){let n=r[t.feature];if(rS(n)||rk(n))return rV(n);if(Array.isArray(n)){for(let t of n)if((rS(t)||rk(t))&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return rV(t)}}if(r){let t=this.nameProvider.getNameNode(r);if(t&&(t===e||iF(e,t)))return this.getSelfNodes(r)}}return[]}getSelfNodes(e){if(!this.hasMultiReference)return[e];{let t=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),r=this.getNodeFromReferenceDescription(t.head());if(r){for(let t of rJ(r))if(rk(t.reference)&&t.reference.items.some(t=>t.ref===e))return t.reference.items.map(e=>e.ref)}return[e]}}getNodeFromReferenceDescription(e){if(!e)return;let t=this.documents.getDocument(e.sourceUri);if(t)return this.nodeLocator.getAstNode(t.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let t=this.findDeclarations(e),r=[];for(let e of t){let t=this.nameProvider.getNameNode(e)??e.$cstNode;t&&r.push(t)}return r}findReferences(e,t){let r=[];t.includeDeclaration&&r.push(...this.getSelfReferences(e));let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(e=>e0.equals(e.sourceUri,t.documentUri))),r.push(...n),rF(r)}getSelfReferences(e){let t=this.getSelfNodes(e),r=[];for(let e of t){let t=this.nameProvider.getNameNode(e);if(t){let n=rB(e),i=this.nodeLocator.getAstNodePath(e);r.push({sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:iz(t),local:!0})}}return r}},$w=class{static{tO(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(const[t,r]of e)this.add(t,r)}get size(){return eB.sum(rF(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{let r=this.map.get(e);if(r){let n=r.indexOf(t);if(n>=0)return 1===r.length?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let t=this.map.get(e);return t?rF(t):rM}has(e,t){if(void 0===t)return this.map.has(e);{let r=this.map.get(e);return!!r&&r.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(t=>e(t,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return rF(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return rF(this.map.keys())}values(){return rF(this.map.values()).flat()}entriesGroupedByKey(){return rF(this.map.entries())}},$P=class{static{tO(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}},$O=class{static{tO(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,t=$s.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,t)}async collectExportedSymbolsForNode(e,t,r=rH,n=$s.CancellationToken.None){let i=[];for(let a of(this.addExportedSymbol(e,i,t),r(e)))await $m(n),this.addExportedSymbol(a,i,t);return i}addExportedSymbol(e,t,r){let n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async collectLocalSymbols(e,t=$s.CancellationToken.None){let r=e.parseResult.value,n=new $w;for(let i of rY(r))await $m(t),this.addLocalSymbol(i,e,n);return n}addLocalSymbol(e,t,r){let n=e.$container;if(n){let i=this.nameProvider.getName(e);i&&r.add(n,this.descriptions.createDescription(e,i,t))}}},$D=class{static{tO(this,"StreamScope")}constructor(e,t,r){this.elements=e,this.outerScope=t,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.find(e=>e.name.toLowerCase()===t):this.elements.find(t=>t.name===e);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.filter(e=>e.name.toLowerCase()===t):this.elements.filter(t=>t.name===e);return(this.concatOuterScope||r.isEmpty())&&this.outerScope?r.concat(this.outerScope.getElements(e)):r}},$L=class{static{tO(this,"MapScope")}constructor(e,t,r){for(const t of(this.elements=new Map,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t),n=r?[r]:[];return(this.concatOuterScope||n.length>0)&&this.outerScope?rF(n).concat(this.outerScope.getElements(e)):rF(n)}getAllElements(){let e=rF(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},$M=class{static{tO(this,"MultiMapScope")}constructor(e,t,r){for(const t of(this.elements=new $w,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0,e)){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.add(e,t)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t)[0];return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return(this.concatOuterScope||0===r.length)&&this.outerScope?rF(r).concat(this.outerScope.getElements(e)):rF(r)}getAllElements(){let e=rF(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},$j={getElement(){},getElements:()=>rM,getAllElements:()=>rM},$F=class{static{tO(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},$G=class extends $F{static{tO(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){let r=t();return this.cache.set(e,r),r}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},$z=class extends $F{static{tO(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(e=>e)}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();let n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){let e=r();return n.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){let t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){let t=this.converter(e),r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}},$K=class extends $z{static{tO(this,"DocumentCache")}constructor(e,t){super(e=>e.toString()),t?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(t,e=>{this.clear(e.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{for(let e of t)this.clear(e)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{for(let r of e.concat(t))this.clear(r)}))}},$q=class extends $G{static{tO(this,"WorkspaceCache")}constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{t.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},$U=class{static{tO(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new $q(e.shared)}getScope(e){let t=[],r=this.reflection.getReferenceType(e),n=rB(e.container).localSymbols;if(n){let i=e.container;do n.has(i)&&t.push(n.getStream(i).filter(e=>this.reflection.isSubtype(e.type,r))),i=i.$container;while(i)}let i=this.getGlobalScope(r,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,r){return new $D(rF(e),t,r)}createScopeForNodes(e,t,r){return new $D(rF(e).map(e=>{let t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable(),t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new $M(this.indexManager.allElements(e)))}};function $B(e){return"string"==typeof e.$comment}function $W(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}tO($B,"isAstNodeWithComment"),tO($W,"isIntermediateReference");var $V=class{static{tO(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){let r=t??{},n=t?.replacer,i=tO((e,t)=>this.replacer(e,t,r),"defaultReplacer"),a=n?(e,t)=>n(e,t,i):i;try{return this.currentDocument=rB(e),JSON.stringify(e,a,t?.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let r=JSON.parse(e);return this.linkNode(r,r,t??{}),r}replacer(e,t,{refText:r,sourceText:n,textRegions:i,comments:a,uriConverter:s}){if(!this.ignoreProperties.has(e)){if(rS(t)){let e=t.ref,n=r?t.$refText:void 0;if(!e)return{$error:t.error?.message??"Could not resolve reference",$refText:n};{let t=rB(e),r="";this.currentDocument&&this.currentDocument!==t&&(r=s?s(t.uri,e):t.uri.toString());let i=this.astNodeLocator.getAstNodePath(e);return{$ref:`${r}#${i}`,$refText:n}}}if(rk(t)){let e=r?t.$refText:void 0,n=[];for(let e of t.items){let t=e.ref,r=rB(e.ref),i="";this.currentDocument&&this.currentDocument!==r&&(i=s?s(r.uri,t):r.uri.toString());let a=this.astNodeLocator.getAstNodePath(t);n.push(`${i}#${a}`)}return{$refs:n,$refText:e}}{let r;if(!rC(t))return t;if(i&&(r=this.addAstNodeRegionWithAssignmentsTo({...t}),(!e||t.$document)&&r?.$textRegion&&(r.$textRegion.documentURI=this.currentDocument?.uri.toString())),n&&!e&&(r??(r={...t}),r.$sourceText=t.$cstNode?.text),a){r??(r={...t});let e=this.commentProvider.getComment(t);e&&(r.$comment=e.replace(/\r/g,""))}return r??t}}}addAstNodeRegionWithAssignmentsTo(e){let t=tO(e=>({offset:e.offset,end:e.end,length:e.length,range:e.range}),"createDocumentSegment");if(e.$cstNode){let r=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter(e=>!e.startsWith("$")).forEach(n=>{let i=aN(e.$cstNode,n).map(t);0!==i.length&&(r[n]=i)}),e}}linkNode(e,t,r,n,i,a){for(let[n,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){let s=i[a];$W(s)?i[a]=this.reviveReference(e,n,t,s,r):rC(s)&&this.linkNode(s,t,r,e,n,a)}else $W(i)?e[n]=this.reviveReference(e,n,t,i,r):rC(i)&&this.linkNode(i,t,r,e,n);e.$container=n,e.$containerProperty=i,e.$containerIndex=a}reviveReference(e,t,r,n,i){let a,s=n.$refText,o=n.$error;if(n.$ref){let e=this.getRefNode(r,n.$ref,i.uriConverter);if(rC(e))return s||(s=this.nameProvider.getName(e)),{$refText:s??"",ref:e};o=e}else if(n.$refs){let e=[];for(let t of n.$refs){let n=this.getRefNode(r,t,i.uriConverter);rC(n)&&e.push({ref:n})}if(0!==e.length)return{$refText:s??"",items:e};a={$refText:s??"",items:e},o??(o="Could not resolve multi-reference")}return o?(a??(a={$refText:s??"",ref:void 0}),a.error={info:{container:e,property:t,reference:a},message:o},a):void 0}getRefNode(e,t,r){try{let n=t.indexOf("#");if(0===n){let r=this.astNodeLocator.getAstNode(e,t.substring(1));if(!r)return"Could not resolve path: "+t;return r}if(n<0){let e=r?r(t):$E.parse(t),n=this.langiumDocuments.getDocument(e);if(!n)return"Could not find document for URI: "+t;return n.parseResult.value}let i=r?r(t.substring(0,n)):$E.parse(t.substring(0,n)),a=this.langiumDocuments.getDocument(i);if(!a)return"Could not find document for URI: "+t;if(n===t.length-1)return a.parseResult.value;let s=this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(n+1));if(!s)return"Could not resolve URI: "+t;return s}catch(e){return String(e)}}},$H=class{static{tO(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let t=e.LanguageMetaData;for(let r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);if(t.fileNames)for(let r of t.fileNames)this.fileNameMap.has(r)&&console.warn(`The file name ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileNameMap.set(r,e);this.languageIdMap.set(t.languageId,e)}getServices(e){if(0===this.languageIdMap.size)throw Error("The service registry is empty. Use `register` to register the services of a language.");let t=this.textDocuments?.get(e)?.languageId;if(void 0!==t){let e=this.languageIdMap.get(t);if(e)return e}let r=e0.extname(e),n=e0.basename(e),i=this.fileNameMap.get(n)??this.fileExtensionMap.get(r);if(!i)if(t)throw Error(`The service registry contains no services for the extension '${r}' for language '${t}'.`);else throw Error(`The service registry contains no services for the extension '${r}'.`);return i}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function $Y(e){return{code:e}}tO($Y,"diagnosticData"),(p=e2||(e2={})).defaults=["fast","slow","built-in"],p.all=p.defaults;var $Z=class{static{tO(this,"ValidationRegistry")}constructor(e){this.entries=new $w,this.knownCategories=new Set(e2.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if("built-in"===r)throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[n,i]of(this.knownCategories.add(r),Object.entries(e)))if(Array.isArray(i))for(let e of i){let i={check:this.wrapValidationException(e,t),category:r};this.addEntry(n,i)}else if("function"==typeof i){let e={check:this.wrapValidationException(i,t),category:r};this.addEntry(n,e)}else i4(i)}wrapValidationException(e,t){return async(r,n,i)=>{await this.handleException(()=>e.call(t,r,n,i),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(i){if($d(i))throw i;console.error(`${t}:`,i),i instanceof Error&&i.stack&&console.error(i.stack);let e=i instanceof Error?i.message:String(i);r("error",`${t}: ${e}`,{node:n})}}addEntry(e,t){if("AstNode"===e)return void this.entries.add("AstNode",t);for(let r of this.reflection.getAllSubTypes(e))this.entries.add(r,t)}getChecks(e,t){let r=rF(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(e=>t.includes(e.category))),r.map(e=>e.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,i,a,s)=>{await this.handleException(()=>e.call(r,n,i,a,s),t,i,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},$X=Object.freeze({validateNode:!0,validateChildren:!0}),$J=class{static{tO(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,t={},r=$s.CancellationToken.None){let n=e.parseResult,i=[];if((await $m(r),!t.categories||t.categories.includes("built-in"))&&(this.processLexingErrors(n,i,t),t.stopAfterLexingErrors&&i.some(e=>e.data?.code===e3.LexingError)||(this.processParsingErrors(n,i,t),t.stopAfterParsingErrors&&i.some(e=>e.data?.code===e3.ParsingError))||(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>e.data?.code===e3.LinkingError))))return i;try{i.push(...await this.validateAst(n.value,t,r))}catch(e){if($d(e))throw e;console.error("An error occurred during validation:",e)}return await $m(r),i}processLexingErrors(e,t,r){for(let r of[...e.lexerErrors,...e.lexerReport?.diagnostics??[]]){let e=r.severity??"error",n={severity:$0(e),range:{start:{line:r.line-1,character:r.column-1},end:{line:r.line-1,character:r.column+r.length-1}},message:r.message,data:$1(e),source:this.getSource()};t.push(n)}}processParsingErrors(e,t,r){for(let r of e.parserErrors){let e;if(isNaN(r.token.startOffset)){if("previousToken"in r){let t=r.previousToken;if(isNaN(t.startOffset)){let t={line:0,character:0};e={start:t,end:t}}else{let r={line:t.endLine-1,character:t.endColumn};e={start:r,end:r}}}}else e=iG(r.token);if(e){let n={severity:$0("error"),range:e,message:r.message,data:$Y(e3.ParsingError),source:this.getSource()};t.push(n)}}}processLinkingErrors(e,t,r){for(let r of e.references){let e=r.error;if(e){let n={node:e.info.container,range:r.$refNode?.range,property:e.info.property,index:e.info.index,data:{code:e3.LinkingError,containerType:e.info.container.$type,property:e.info.property,refText:e.info.reference.$refText}};t.push(this.toDiagnostic("error",e.message,n))}}}async validateAst(e,t,r=$s.CancellationToken.None){let n=[],i=tO((e,t,r)=>{n.push(this.toDiagnostic(e,t,r))},"acceptor");return await this.validateAstBefore(e,t,i,r),await this.validateAstNodes(e,t,i,r),await this.validateAstAfter(e,t,i,r),n}async validateAstBefore(e,t,r,n=$s.CancellationToken.None){for(let i of this.validationRegistry.checksBefore)await $m(n),await i(e,r,t.categories??[],n)}async validateAstNodes(e,t,r,n=$s.CancellationToken.None){if(this.profiler?.isActive("validating")){let i=this.profiler.createTask("validating",this.languageId);i.start();try{let a=rZ(e).iterator();for(let e of a){i.startSubTask(e.$type);let s=this.validateSingleNodeOptions(e,t);if(s.validateNode)try{for(let i of this.validationRegistry.getChecks(e.$type,t.categories))await i(e,r,n)}finally{i.stopSubTask(e.$type)}s.validateChildren||a.prune()}}finally{i.stop()}}else{let i=rZ(e).iterator();for(let e of i){await $m(n);let a=this.validateSingleNodeOptions(e,t);if(a.validateNode)for(let i of this.validationRegistry.getChecks(e.$type,t.categories))await i(e,r,n);a.validateChildren||i.prune()}}}validateSingleNodeOptions(e,t){return $X}async validateAstAfter(e,t,r,n=$s.CancellationToken.None){for(let i of this.validationRegistry.checksAfter)await $m(n),await i(e,r,t.categories??[],n)}toDiagnostic(e,t,r){return{message:t,range:$Q(r),severity:$0(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function $Q(e){let t;return e.range?e.range:("string"==typeof e.property?t=aI(e.node.$cstNode,e.property,e.index):"string"==typeof e.keyword&&(t=aP(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t)?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function $0(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+e)}}function $1(e){switch(e){case"error":return $Y(e3.LexingError);case"warning":return $Y(e3.LexingWarning);case"info":return $Y(e3.LexingInfo);case"hint":return $Y(e3.LexingHint);default:throw Error("Invalid diagnostic severity: "+e)}}tO($Q,"getDiagnosticRange"),tO($0,"toDiagnosticSeverity"),tO($1,"toDiagnosticData"),(f=e3||(e3={})).LexingError="lexing-error",f.LexingWarning="lexing-warning",f.LexingInfo="lexing-info",f.LexingHint="lexing-hint",f.ParsingError="parsing-error",f.LinkingError="linking-error";var $2=class{static{tO(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){let n,i=r??rB(e);t??(t=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!t)throw Error(`Node at path ${a} has no name.`);let s=tO(()=>n??(n=iz(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:t,get nameSegment(){return s()},selectionSegment:iz(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},$3=class{static{tO(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=$s.CancellationToken.None){let r=[];for(let n of rZ(e.parseResult.value))await $m(t),rJ(n).forEach(e=>{e.reference.error||r.push(...this.createInfoDescriptions(e))});return r}createInfoDescriptions(e){let t=e.reference;if(t.error||!t.$refNode)return[];let r=[];rS(t)&&t.$nodeDescription?r=[t.$nodeDescription]:rk(t)&&(r=t.items.map(e=>e.$nodeDescription).filter(e=>void 0!==e));let n=rB(e.container).uri,i=this.nodeLocator.getAstNodePath(e.container),a=[],s=iz(t.$refNode);for(let e of r)a.push({sourceUri:n,sourcePath:i,targetUri:e.documentUri,targetPath:e.path,segment:s,local:e0.equals(e.documentUri,n)});return a}},$9=class{static{tO(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||0===t.length)return e;let r=t.indexOf(this.indexSeparator);if(r>0){let n=t.substring(0,r),i=parseInt(t.substring(r+1)),a=e[n];return a?.[i]}return e[t]},e)}},$4={};tj($4,tF(tB(),1));var $5=class{static{tO(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new $h,this.onConfigurationSectionUpdateEmitter=new $4.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}async initialized(e){if(this.workspaceConfig){if(e.register){let t=this.serviceRegistry.all;e.register({section:t.map(e=>this.toSectionName(e.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let t=this.serviceRegistry.all.map(e=>({section:this.toSectionName(e.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,r[t])})}}this._ready.resolve()}updateConfiguration(e){"object"==typeof e.settings&&null!==e.settings&&Object.entries(e.settings).forEach(([e,t])=>{this.updateSectionConfiguration(e,t),this.onConfigurationSectionUpdateEmitter.fire({section:e,configuration:t})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;let r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},$7=tF(rE(),1),$8=e9||(e9={});function $6(e){return{dispose:tO(async()=>await e(),"dispose")}}tO($6,"create"),$8.create=$6;var ve=class{static{tO(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new $w,this.documentPhaseListeners=new $w,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=e1.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=$s.CancellationToken.None){for(let r of e){let e=r.uri.toString();if(r.state===e1.Validated){if("boolean"==typeof t.validation&&t.validation)this.resetToState(r,e1.IndexedReferences);else if("object"==typeof t.validation){let n=this.findMissingValidationCategories(r,t);n.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:{categories:n}},result:this.buildState.get(e)?.result}),r.state=e1.IndexedReferences)}}else this.buildState.delete(e)}this.currentState=e1.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=$s.CancellationToken.None){this.currentState=e1.Changed;let n=[];for(let e of t)for(let t of this.langiumDocuments.deleteDocuments(e))n.push(t.uri),this.cleanUpDeleted(t);let i=(await Promise.all(e.map(e=>this.findChangedUris(e)))).flat();for(let e of i){let t=this.langiumDocuments.getDocument(e);void 0===t&&((t=this.langiumDocumentFactory.fromModel({$type:"INVALID"},e)).state=e1.Changed,this.langiumDocuments.addDocument(t)),this.resetToState(t,e1.Changed)}let a=rF(i).concat(n).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!a.has(e.uri.toString())&&this.shouldRelink(e,a)).forEach(e=>this.resetToState(e,e1.ComputedScopes)),await this.emitUpdate(i,n),await $m(r);let s=this.sortDocuments(this.langiumDocuments.all.filter(e=>e.state<e1.Validated||!this.buildState.get(e.uri.toString())?.completed||this.resultsAreIncomplete(e,this.updateBuildOptions)).toArray());await this.buildDocuments(s,this.updateBuildOptions,r)}resultsAreIncomplete(e,t){return this.findMissingValidationCategories(e,t).length>=1}findMissingValidationCategories(e,t){let r=this.buildState.get(e.uri.toString()),n=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),i=r?.result?.validationChecks?new Set(r?.result?.validationChecks):r?.completed?n:new Set;return rF(void 0===t||!0===t.validation?n:"object"==typeof t.validation?t.validation.categories??n:[]).filter(e=>!i.has(e)).toArray()}async findChangedUris(e){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let t=await this.fileSystemProvider.stat(e);if(t.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(t))return[e]}catch{}return[]}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){return!!this.textDocuments?.get(e.uri)}shouldRelink(e,t){return!!e.references.some(e=>void 0!==e.error)||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),e9.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}resetToState(e,t){switch(t){case e1.Changed:case e1.Parsed:this.indexManager.removeContent(e.uri);case e1.IndexedContent:e.localSymbols=void 0;case e1.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case e1.Linked:this.indexManager.removeReferences(e.uri);case e1.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case e1.Validated:}e.state>t&&(e.state=t)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=e1.Changed}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,e1.Parsed,r,e=>this.langiumDocumentFactory.update(e,r)),await this.runCancelable(e,e1.IndexedContent,r,e=>this.indexManager.updateContent(e,r)),await this.runCancelable(e,e1.ComputedScopes,r,async e=>{let t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.localSymbols=await t.collectLocalSymbols(e,r)});let n=e.filter(e=>this.shouldLink(e));await this.runCancelable(n,e1.Linked,r,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,r)),await this.runCancelable(n,e1.IndexedReferences,r,e=>this.indexManager.updateReferences(e,r));let i=e.filter(e=>!!this.shouldValidate(e)||(this.markAsCompleted(e),!1));await this.runCancelable(i,e1.Validated,r,async e=>{await this.validate(e,r),this.markAsCompleted(e)})}markAsCompleted(e){let t=this.buildState.get(e.uri.toString());t&&(t.completed=!0)}prepareBuild(e,t){for(let r of e){let e=r.uri.toString(),n=this.buildState.get(e);(!n||n.completed)&&this.buildState.set(e,{completed:!1,options:t,result:n?.result})}}async runCancelable(e,t,r,n){for(let i of e)i.state<t&&(await $m(r),await n(i),i.state=t,await this.notifyDocumentPhase(i,t,r));let i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),e9.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),e9.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;return(t&&"path"in t?n=t:r=t,r??(r=$s.CancellationToken.None),n)?this.awaitDocumentState(e,n,r):this.awaitBuilderState(e,r)}awaitDocumentState(e,t,r){let n=this.langiumDocuments.getDocument(t);return n?n.state>=e?Promise.resolve(t):r.isCancellationRequested?Promise.reject($f):this.currentState>=e&&e>n.state?Promise.reject(new $7.ResponseError($7.LSPErrorCodes.RequestFailed,`Document state of ${t.toString()} is ${e1[n.state]}, requiring ${e1[e]}, but workspace state is already ${e1[this.currentState]}. Returning undefined.`)):new Promise((n,i)=>{let a=this.onDocumentPhase(e,e=>{e0.equals(e.uri,t)&&(a.dispose(),s.dispose(),n(e.uri))}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i($f)})}):Promise.reject(new $7.ResponseError($7.LSPErrorCodes.ServerCancelled,`No document found for URI: ${t.toString()}`))}awaitBuilderState(e,t){return this.currentState>=e?Promise.resolve():t.isCancellationRequested?Promise.reject($f):new Promise((r,n)=>{let i=this.onBuildPhase(e,()=>{i.dispose(),a.dispose(),r()}),a=t.onCancellationRequested(()=>{i.dispose(),a.dispose(),n($f)})})}async notifyDocumentPhase(e,t,r){for(let n of this.documentPhaseListeners.get(t).slice())try{await $m(r),await n(e,r)}catch(e){if(!$d(e))throw e}}async notifyBuildPhase(e,t,r){if(0!==e.length)for(let n of this.buildPhaseListeners.get(t).slice())await $m(r),await n(e,r)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){let r=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,n=this.getBuildOptions(e),i="object"==typeof n.validation?{...n.validation}:{};i.categories=this.findMissingValidationCategories(e,n);let a=await r.validateDocument(e,i,t);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;let s=this.buildState.get(e.uri.toString());s&&(s.result??(s.result={}),s.result.validationChecks?s.result.validationChecks=rF(s.result.validationChecks).concat(i.categories).distinct().toArray():s.result.validationChecks=[...i.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}},vt=class{static{tO(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new $z,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let r=rB(e).uri,n=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{e0.equals(e.targetUri,r)&&e.targetPath===t&&n.push(e)})}),rF(n)}allElements(e,t){let r=rF(this.symbolIndex.keys());return t&&(r=r.filter(e=>!t||t.has(e))),r.map(t=>this.getFileDescriptions(t,e)).flat()}getFileDescriptions(e,t){return t?this.symbolByTypeIndex.get(e,t,()=>(this.symbolIndex.get(e)??[]).filter(e=>this.astReflection.isSubtype(e.type,t))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t)}removeReferences(e){let t=e.toString();this.referenceIndex.delete(t)}async updateContent(e,t=$s.CancellationToken.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.references.ScopeComputation.collectExportedSymbols(e,t),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=$s.CancellationToken.None){let r=this.serviceRegistry.getServices(e.uri),n=await r.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let r=this.referenceIndex.get(e.uri.toString());return!!r&&r.some(e=>!e.local&&t.has(e.targetUri.toString()))}},vr=class{static{tO(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new $h,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(e=>this.initializeWorkspace(this.folders??[],e))}async initializeWorkspace(e,t=$s.CancellationToken.None){let r=await this.performStartup(e);await $m(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){let t=[],r=tO(e=>{t.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)},"collector");await this.loadAdditionalDocuments(e,r);let n=[];await Promise.all(e.map(e=>this.getRootFolder(e)).map(async e=>this.traverseFolder(e,n)));let i=rF(n).distinct(e=>e.toString()).filter(e=>!this.langiumDocuments.hasDocument(e));return await this.loadWorkspaceDocuments(i,r),this._ready.resolve(),t}async loadWorkspaceDocuments(e,t){await Promise.all(e.map(async e=>{t(await this.langiumDocuments.getOrCreateDocument(e))}))}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return $E.parse(e.uri)}async traverseFolder(e,t){try{let r=await this.fileSystemProvider.readDirectory(e);await Promise.all(r.map(async e=>{this.shouldIncludeEntry(e)&&(e.isDirectory?await this.traverseFolder(e.uri,t):e.isFile&&t.push(e.uri))}))}catch(t){console.error("Failure to read directory content of "+e.toString(!0),t)}}async searchFolder(e){let t=[];return await this.traverseFolder(e,t),t}shouldIncludeEntry(e){let t=e0.basename(e.uri);return!t.startsWith(".")&&(e.isDirectory?"node_modules"!==t&&"out"!==t:!!e.isFile&&this.serviceRegistry.hasServices(e.uri))}},vn=class{static{tO(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,t,r,n,i){return fC.buildUnexpectedCharactersMessage(e,t,r,n,i)}buildUnableToPopLexerModeMessage(e){return fC.buildUnableToPopLexerModeMessage(e)}},vi={mode:"full"},va=class{static{tO(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const r=vl(t)?Object.values(t):t,n="production"===e.LanguageMetaData.mode;this.chevrotainLexer=new fk(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=vi){let r=this.chevrotainLexer.tokenize(e);return{tokens:r.tokens,errors:r.errors,hidden:r.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(vl(e))return e;let t=vo(e)?Object.values(e.modes).flat():e,r={};return t.forEach(e=>r[e.name]=e),r}};function vs(e){return Array.isArray(e)&&(0===e.length||"name"in e[0])}function vo(e){return e&&"modes"in e&&"defaultMode"in e}function vl(e){return!vs(e)&&!vo(e)}function vu(e,t,r){let n,i;return"string"==typeof e?(i=t,n=r):(i=e.range.start,n=t),i||(i=T.create(0,0)),vv({index:0,tokens:vm({lines:vp(e),position:i,options:vk(n)}),position:i})}function vc(e,t){let r=vk(t),n=vp(e);if(0===n.length)return!1;let i=n[0],a=n[n.length-1],s=r.start,o=r.end;return!!s?.exec(i)&&!!o?.exec(a)}function vp(e){return("string"==typeof e?e:e.text).split(af)}tO(vs,"isTokenTypeArray"),tO(vo,"isIMultiModeLexerDefinition"),tO(vl,"isTokenTypeDictionary"),tK(),tO(vu,"parseJSDoc"),tO(vc,"isJSDoc"),tO(vp,"getLines");var vf=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,vd=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function vm(e){let t=[],r=e.position.line,n=e.position.character;for(let i=0;i<e.lines.length;i++){let a=0===i,s=i===e.lines.length-1,o=e.lines[i],l=0;if(a&&e.options.start){let t=e.options.start?.exec(o);t&&(l=t.index+t[0].length)}else{let t=e.options.line?.exec(o);t&&(l=t.index+t[0].length)}if(s){let t=e.options.end?.exec(o);t&&(o=o.substring(0,t.index))}if(vT(o=o.substring(0,v$(o)),l)>=o.length){if(t.length>0){let e=T.create(r,n);t.push({type:"break",content:"",range:$.create(e,e)})}}else{vf.lastIndex=l;let e=vf.exec(o);if(e){let i=e[0],a=e[1],s=T.create(r,n+l),u=T.create(r,n+l+i.length);t.push({type:"tag",content:a,range:$.create(s,u)}),l+=i.length,l=vT(o,l)}if(l<o.length){let e=o.substring(l),i=Array.from(e.matchAll(vd));t.push(...vh(i,e,r,n+l))}}r++,n=0}return t.length>0&&"break"===t[t.length-1].type?t.slice(0,-1):t}function vh(e,t,r,n){let i=[];if(0===e.length){let e=T.create(r,n),a=T.create(r,n+t.length);i.push({type:"text",content:t,range:$.create(e,a)})}else{let a=0;for(let s of e){let e=s.index,o=t.substring(a,e);o.length>0&&i.push({type:"text",content:t.substring(a,e),range:$.create(T.create(r,a+n),T.create(r,e+n))});let l=o.length+1,u=s[1];if(i.push({type:"inline-tag",content:u,range:$.create(T.create(r,a+l+n),T.create(r,a+l+u.length+n))}),l+=u.length,4===s.length){l+=s[2].length;let e=s[3];i.push({type:"text",content:e,range:$.create(T.create(r,a+l+n),T.create(r,a+l+e.length+n))})}else i.push({type:"text",content:"",range:$.create(T.create(r,a+l+n),T.create(r,a+l+n))});a=e+s[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:$.create(T.create(r,a+n),T.create(r,a+n+s.length))})}return i}tO(vm,"tokenize"),tO(vh,"buildInlineTokens");var vy=/\S/,vg=/\s*$/;function vT(e,t){let r=e.substring(t).match(vy);return r?t+r.index:e.length}function v$(e){let t=e.match(vg);if(t&&"number"==typeof t.index)return t.index}function vv(e){let t=T.create(e.position.line,e.position.character);if(0===e.tokens.length)return new vN([],$.create(t,t));let r=[];for(;e.index<e.tokens.length;){let t=vR(e,r[r.length-1]);t&&r.push(t)}let n=r[0]?.range.start??t,i=r[r.length-1]?.range.end??t;return new vN(r,$.create(n,i))}function vR(e,t){let r=e.tokens[e.index];return"tag"===r.type?vC(e,!1):"text"===r.type||"inline-tag"===r.type?vA(e):(vE(r,t),void e.index++)}function vE(e,t){if(t){let r=new vO("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}function vA(e){let t=e.tokens[e.index],r=t,n=t,i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;)i.push(vb(e)),n=t,t=e.tokens[e.index];return new vP(i,$.create(r.range.start,n.range.end))}function vb(e){return"inline-tag"===e.tokens[e.index].type?vC(e,!0):vS(e)}function vC(e,t){let r=e.tokens[e.index++],n=r.content.substring(1),i=e.tokens[e.index];if(i?.type==="text")if(t){let i=vS(e);return new vI(n,new vP([i],i.range),t,$.create(r.range.start,i.range.end))}else{let i=vA(e);return new vI(n,i,t,$.create(r.range.start,i.range.end))}{let e=r.range;return new vI(n,new vP([],e),t,e)}}function vS(e){let t=e.tokens[e.index++];return new vO(t.content,t.range)}function vk(e){if(!e)return vk({start:"/**",end:"*/",line:"*"});let{start:t,end:r,line:n}=e;return{start:vx(t,!0),end:vx(r,!1),line:vx(n,!0)}}function vx(e,t){if("string"!=typeof e&&"object"!=typeof e)return e;{let r="string"==typeof e?a$(e):e.source;return t?RegExp(`^\\s*${r}`):RegExp(`\\s*${r}\\s*$`)}}tO(vT,"skipWhitespace"),tO(v$,"lastCharacter"),tO(vv,"parseJSDocComment"),tO(vR,"parseJSDocElement"),tO(vE,"appendEmptyLine"),tO(vA,"parseJSDocText"),tO(vb,"parseJSDocInline"),tO(vC,"parseJSDocTag"),tO(vS,"parseJSDocLine"),tO(vk,"normalizeOptions"),tO(vx,"normalizeOption");var vN=class{static{tO(this,"JSDocCommentImpl")}constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let t of this.elements)if(0===e.length)e=t.toString();else{let r=t.toString();e+=vD(e)+r}return e.trim()}toMarkdown(e){let t="";for(let r of this.elements)if(0===t.length)t=r.toMarkdown(e);else{let n=r.toMarkdown(e);t+=vD(t)+n}return t.trim()}},vI=class{static{tO(this,"JSDocTagImpl")}constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`,t=this.content.toString();return(1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
81
+ ${t}`),this.inline)?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let t=this.content.toMarkdown(e);if(this.inline){let r=v_(this.name,t,e??{});if("string"==typeof r)return r}let r="";e?.tag==="italic"||e?.tag===void 0?r="*":e?.tag==="bold"?r="**":e?.tag==="bold-italic"&&(r="***");let n=`${r}@${this.name}${r}`;return(1===this.content.inlines.length?n=`${n} \u2014 ${t}`:this.content.inlines.length>1&&(n=`${n}
82
+ ${t}`),this.inline)?`{${n}}`:n}};function v_(e,t,r){if("linkplain"===e||"linkcode"===e||"link"===e){let n=t.indexOf(" "),i=t;if(n>0){let e=vT(t,n);i=t.substring(e),t=t.substring(0,n)}return("linkcode"===e||"link"===e&&"code"===r.link)&&(i=`\`${i}\``),r.renderLink?.(t,i)??vw(t,i)}}function vw(e,t){try{return $E.parse(e,!0),`[${t}](${e})`}catch{return e}}tO(v_,"renderInlineTag"),tO(vw,"renderLinkDefault");var vP=class{static{tO(this,"JSDocTextImpl")}constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];t+=n.toMarkdown(e),i&&i.range.start.line>n.range.start.line&&(t+="\n")}return t}},vO=class{static{tO(this,"JSDocLineImpl")}constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}};function vD(e){return e.endsWith("\n")?"\n":"\n\n"}tO(vD,"fillNewlines");var vL=class{static{tO(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let t=this.commentProvider.getComment(e);if(t&&vc(t))return vu(t).toMarkdown({renderLink:tO((t,r)=>this.documentationLinkRenderer(e,t,r),"renderLink"),renderTag:tO(t=>this.documentationTagRenderer(e,t),"renderTag")})}documentationLinkRenderer(e,t,r){let n=this.findNameInLocalSymbols(e,t)??this.findNameInGlobalScope(e,t);if(n&&n.nameSegment){let e=n.nameSegment.range.start.line+1,t=n.nameSegment.range.start.character+1,i=n.documentUri.with({fragment:`L${e},${t}`});return`[${r}](${i.toString()})`}}documentationTagRenderer(e,t){}findNameInLocalSymbols(e,t){let r=rB(e).localSymbols;if(!r)return;let n=e;do{let e=r.getStream(n).find(e=>e.name===t);if(e)return e;n=n.$container}while(n)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}},vM=class{static{tO(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return $B(e)?e.$comment:iW(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},vj=class{static{tO(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}},vF=class{static{tO(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let e=this.createWorker();e.onReady(()=>{if(this.queue.length>0){let t=this.queue.shift();t&&(e.lock(),t.resolve(e))}}),this.workerPool.push(e)}}async parse(e,t){let r,n=await this.acquireParserWorker(t),i=new $h,a=t.onCancellationRequested(()=>{r=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(e=>{let t=this.hydrator.hydrate(e);i.resolve(t)}).catch(e=>{i.reject(e)}).finally(()=>{a.dispose(),clearTimeout(r)}),i.promise}terminateWorker(e){e.terminate();let t=this.workerPool.indexOf(e);t>=0&&this.workerPool.splice(t,1)}async acquireParserWorker(e){for(let e of(this.initializeWorkers(),this.workerPool))if(e.ready)return e.lock(),e;let t=new $h;return e.onCancellationRequested(()=>{let e=this.queue.indexOf(t);e>=0&&this.queue.splice(e,1),t.reject($f)}),this.queue.push(t),t.promise}},vG=class{static{tO(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,t,r,n){this.onReadyEmitter=new $4.Emitter,this.deferred=new $h,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=n,t(e=>{this.deferred.resolve(e),this.unlock()}),r(e=>{this.deferred.reject(e),this.unlock()})}terminate(){this.deferred.reject($f),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new $h,this.sendMessage(e),this.deferred.promise}},vz=class{static{tO(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new $s.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let t=$c();return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,r=$s.CancellationToken.None){let n=new $h;return e.push({action:t,deferred:n,cancellationToken:r}),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let n=await Promise.resolve().then(()=>e(r));t.resolve(n)}catch(e){$d(e)?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},vK=class{static{tO(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new $P,this.tokenTypeIdMap=new $P,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(e=>({...e,message:e.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let t=new Map,r=new Map;for(let r of rZ(e))t.set(r,{});if(e.$cstNode)for(let t of iM(e.$cstNode))r.set(t,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))rC(a)?e.push(this.dehydrateAstNode(a,t)):rS(a)?e.push(this.dehydrateReference(a,t)):e.push(a)}else rC(i)?r[n]=this.dehydrateAstNode(i,t):rS(i)?r[n]=this.dehydrateReference(i,t):void 0!==i&&(r[n]=i);return r}dehydrateReference(e,t){let r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){let r=t.cstNodes.get(e);return rP(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,r.astNode=t.astNodes.get(e.astNode),r_(e)?r.content=e.content.map(e=>this.dehydrateCstNode(e,t)):rw(e)&&(r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length,r.startLine=e.range.start.line,r.startColumn=e.range.start.character,r.endLine=e.range.end.line,r.endColumn=e.range.end.character),r}hydrate(e){let t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){let t,r=new Map,n=new Map;for(let t of rZ(e))r.set(t,{});if(e.$cstNode)for(let r of iM(e.$cstNode)){let e;"fullText"in r?t=e=new TD(r.fullText):"content"in r?e=new TP:"tokenType"in r&&(e=this.hydrateCstLeafNode(r)),e&&(n.set(r,e),e.root=t)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,t){let r=t.astNodes.get(e);for(let[n,i]of(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode&&(r.$cstNode=t.cstNodes.get(e.$cstNode)),Object.entries(e)))if(!n.startsWith("$"))if(Array.isArray(i)){let e=[];for(let a of(r[n]=e,i))rC(a)?e.push(this.setParent(this.hydrateAstNode(a,t),r)):rS(a)?e.push(this.hydrateReference(a,r,n,t)):e.push(a)}else rC(i)?r[n]=this.setParent(this.hydrateAstNode(i,t),r):rS(i)?r[n]=this.hydrateReference(i,r,n,t):void 0!==i&&(r[n]=i);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){let n=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),n.astNode=t.astNodes.get(e.astNode),r_(n))for(let i of e.content){let e=this.hydrateCstNode(i,t,r++);n.content.push(e)}return n}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new Tw(e.offset,e.length,{start:{line:e.startLine,character:e.startColumn},end:{line:e.endLine,character:e.endColumn}},t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of rZ(this.grammar))r4(t)&&this.grammarElementIdMap.set(t,e++)}};function vq(e){return{documentation:{CommentProvider:tO(e=>new vM(e),"CommentProvider"),DocumentationProvider:tO(e=>new vL(e),"DocumentationProvider")},parser:{AsyncParser:tO(e=>new vj(e),"AsyncParser"),GrammarConfig:tO(e=>a7(e),"GrammarConfig"),LangiumParser:tO(e=>$r(e),"LangiumParser"),CompletionParser:tO(e=>$t(e),"CompletionParser"),ValueConverter:tO(()=>new $a,"ValueConverter"),TokenBuilder:tO(()=>new $i,"TokenBuilder"),Lexer:tO(e=>new va(e),"Lexer"),ParserErrorMessageProvider:tO(()=>new TK,"ParserErrorMessageProvider"),LexerErrorMessageProvider:tO(()=>new vn,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:tO(()=>new $9,"AstNodeLocator"),AstNodeDescriptionProvider:tO(e=>new $2(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:tO(e=>new $3(e),"ReferenceDescriptionProvider")},references:{Linker:tO(e=>new $x(e),"Linker"),NameProvider:tO(()=>new $I,"NameProvider"),ScopeProvider:tO(e=>new $U(e),"ScopeProvider"),ScopeComputation:tO(e=>new $O(e),"ScopeComputation"),References:tO(e=>new $_(e),"References")},serializer:{Hydrator:tO(e=>new vK(e),"Hydrator"),JsonSerializer:tO(e=>new $V(e),"JsonSerializer")},validation:{DocumentValidator:tO(e=>new $J(e),"DocumentValidator"),ValidationRegistry:tO(e=>new $Z(e),"ValidationRegistry")},shared:tO(()=>e.shared,"shared")}}function vU(e){return{ServiceRegistry:tO(e=>new $H(e),"ServiceRegistry"),workspace:{LangiumDocuments:tO(e=>new $S(e),"LangiumDocuments"),LangiumDocumentFactory:tO(e=>new $C(e),"LangiumDocumentFactory"),DocumentBuilder:tO(e=>new ve(e),"DocumentBuilder"),IndexManager:tO(e=>new vt(e),"IndexManager"),WorkspaceManager:tO(e=>new vr(e),"WorkspaceManager"),FileSystemProvider:tO(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:tO(()=>new vz,"WorkspaceLock"),ConfigurationProvider:tO(e=>new $5(e),"ConfigurationProvider")},profilers:{}}}function vB(e,t,r,n,i,a,s,o,l){return vH([e,t,r,n,i,a,s,o,l].reduce(vX,{}))}tO(vq,"createDefaultCoreModule"),tO(vU,"createDefaultSharedCoreModule"),(e4||(e4={})).merge=(e,t)=>vX(vX({},e),t),tO(vB,"inject");var vW=Symbol("isProxy");function vV(e){if(e&&e[vW])for(let t of Object.values(e))vV(t);return e}function vH(e,t){let r=new Proxy({},{deleteProperty:tO(()=>!1,"deleteProperty"),set:tO(()=>{throw Error("Cannot set property on injected service container")},"set"),get:tO((n,i)=>i===vW||vZ(n,i,e,t||r),"get"),getOwnPropertyDescriptor:tO((n,i)=>(vZ(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:tO((t,r)=>r in e,"has"),ownKeys:tO(()=>[...Object.getOwnPropertyNames(e)],"ownKeys")});return r}tO(vV,"eagerLoad"),tO(vH,"_inject");var vY=Symbol();function vZ(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+e[t]);if(e[t]===vY)throw Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in r){let i=r[t];e[t]=vY;try{e[t]="function"==typeof i?i(n):vH(i,n)}catch(r){throw e[t]=r instanceof Error?r:void 0,r}return e[t]}}function vX(e,t){if(t){for(let[r,n]of Object.entries(t))if(null!=n)if("object"==typeof n){let t=e[r];"object"==typeof t&&null!==t?e[r]=vX(t,n):e[r]=vX({},n)}else e[r]=n}return e}tO(vZ,"_resolve"),tO(vX,"_merge");var vJ={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(d=e5||(e5={})).REGULAR="indentation-sensitive",d.IGNORE_INDENTATION="ignore-indentation";var vQ=class extends $i{static{tO(this,"IndentationAwareTokenBuilder")}constructor(e=vJ){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...vJ,...e},this.indentTokenType=fj({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=fj({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,t){let r,n,i,a=super.buildTokens(e,t);if(!vs(a))throw Error("Invalid tokens built by default builder");let{indentTokenName:s,dedentTokenName:o,whitespaceTokenName:l,ignoreIndentationDelimiters:u}=this.options,c=[];for(let e of a){for(let[t,r]of u)e.name===t?e.PUSH_MODE=e5.IGNORE_INDENTATION:e.name===r&&(e.POP_MODE=!0);e.name===o?r=e:e.name===s?n=e:e.name===l?i=e:c.push(e)}if(!r||!n||!i)throw Error("Some indentation/whitespace tokens not found!");return u.length>0?{modes:{[e5.REGULAR]:[r,n,...c,i],[e5.IGNORE_INDENTATION]:[...c,i]},defaultMode:e5.REGULAR}:[r,n,i,...c]}flushLexingReport(e){return{...super.flushLexingReport(e),remainingDedents:this.flushRemainingDedents(e)}}isStartOfLine(e,t){return 0===t||"\r\n".includes(e[t-1])}matchWhitespace(e,t,r,n){this.whitespaceRegExp.lastIndex=t;let i=this.whitespaceRegExp.exec(e);return{currIndentLevel:i?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:i}}createIndentationTokenInstance(e,t,r,n){let i=this.getLineNumber(t,n);return fz(e,r,n,n+r.length,i,i,1,r.length)}getLineNumber(e,t){return e.substring(0,t).split(/\r\n|\r|\n/).length}indentMatcher(e,t,r,n){if(!this.isStartOfLine(e,t))return null;let{currIndentLevel:i,prevIndentLevel:a,match:s}=this.matchWhitespace(e,t,r,n);return i<=a?null:(this.indentationStack.push(i),s)}dedentMatcher(e,t,r,n){if(!this.isStartOfLine(e,t))return null;let{currIndentLevel:i,prevIndentLevel:a,match:s}=this.matchWhitespace(e,t,r,n);if(i>=a)return null;let o=this.indentationStack.lastIndexOf(i);if(-1===o)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${i} at offset: ${t}. Current indentation stack: ${this.indentationStack}`,offset:t,length:s?.[0]?.length??0,line:this.getLineNumber(e,t),column:1}),null;let l=this.indentationStack.length-o-1,u=e.substring(0,t).match(/[\r\n]+$/)?.[0].length??1;for(let n=0;n<l;n++){let n=this.createIndentationTokenInstance(this.dedentTokenType,e,"",t-(u-1));r.push(n),this.indentationStack.pop()}return null}buildTerminalToken(e){let t=super.buildTerminalToken(e),{indentTokenName:r,dedentTokenName:n,whitespaceTokenName:i}=this.options;return t.name===r?this.indentTokenType:t.name===n?this.dedentTokenType:t.name===i?fj({name:i,pattern:this.whitespaceRegExp,group:fk.SKIPPED}):t}flushRemainingDedents(e){let t=[];for(;this.indentationStack.length>1;)t.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],t}},v0=class extends va{static{tO(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof vQ)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,t=vi){let r=super.tokenize(e),n=r.report;t?.mode==="full"&&r.tokens.push(...n.remainingDedents),n.remainingDedents=[];let{indentTokenType:i,dedentTokenType:a}=this.indentationTokenBuilder,s=i.tokenTypeIdx,o=a.tokenTypeIdx,l=[],u=r.tokens.length-1;for(let e=0;e<u;e++){let t=r.tokens[e],n=r.tokens[e+1];if(t.tokenTypeIdx===s&&n.tokenTypeIdx===o){e++;continue}l.push(t)}return u>=0&&l.push(r.tokens[u]),r.tokens=l,r}},v1={};tL(v1,{AstUtils:()=>rz,BiMap:()=>$P,Cancellation:()=>$s,ContextCache:()=>$z,CstUtils:()=>rb,DONE_RESULT:()=>rj,Deferred:()=>$h,Disposable:()=>e9,DisposableCache:()=>$F,DocumentCache:()=>$K,EMPTY_STREAM:()=>rM,ErrorWithLocation:()=>i9,GrammarUtils:()=>i3,MultiMap:()=>$w,OperationCancelled:()=>$f,Reduction:()=>eB,RegExpUtils:()=>i7,SimpleCache:()=>$G,StreamImpl:()=>rO,TreeStreamImpl:()=>rG,URI:()=>$E,UriTrie:()=>$b,UriUtils:()=>e0,WorkspaceCache:()=>$q,assertCondition:()=>i5,assertUnreachable:()=>i4,delayNextTick:()=>$o,interruptAndCheck:()=>$m,isOperationCancelled:()=>$d,loadGrammarFromJson:()=>v7,setInterruptionPeriod:()=>$p,startCancelableOperation:()=>$c,stream:()=>rF}),tj(v1,$4);var v2=class{static{tO(this,"EmptyFileSystemProvider")}stat(e){throw Error("No file system is available.")}statSync(e){throw Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw Error("No file system is available.")}readBinarySync(){throw Error("No file system is available.")}readFile(){throw Error("No file system is available.")}readFileSync(){throw Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},v3={fileSystemProvider:tO(()=>new v2,"fileSystemProvider")},v9={Grammar:tO(()=>void 0,"Grammar"),LanguageMetaData:tO(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},v4={AstReflection:tO(()=>new iO,"AstReflection")};function v5(){let e=vB(vU(v3),v4),t=vB(vq({shared:e}),v9);return e.ServiceRegistry.register(t),t}function v7(e){let t=v5(),r=t.serializer.JsonSerializer.deserialize(e);return t.shared.workspace.LangiumDocumentFactory.fromModel(r,$E.parse(`memory:/${r.name??"grammar"}.langium`)),r}tO(v5,"createMinimalGrammarServices"),tO(v7,"loadGrammarFromJson"),tj(rA,v1);var v8=class{static{tO(this,"DefaultLangiumProfiler")}constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new $w}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(e=>this.activeCategories.add(e)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(e=>this.activeCategories.delete(e)):this.activeCategories.clear()}createTask(e,t){if(!this.isActive(e))throw Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${t}'.`),new v6(t=>this.records.add(e,this.dumpRecord(e,t)),t)}dumpRecord(e,t){console.info(`Task ${e}.${t.identifier} executed in ${t.duration.toFixed(2)}ms and ended at ${t.date.toISOString()}`);let r=[];for(let e of t.entries.keys()){let n=t.entries.get(e),i=n.reduce((e,t)=>e+t);r.push({name:`${t.identifier}.${e}`,count:n.length,duration:i})}let n=t.duration-r.map(e=>e.duration).reduce((e,t)=>e+t,0);function i(e){return Math.round(100*e)/100}return r.push({name:t.identifier,count:1,duration:n}),r.sort((e,t)=>t.duration-e.duration),tO(i,"Round"),console.table(r.map(e=>({Element:e.name,Count:e.count,"Self %":i(100*e.duration/t.duration),"Time (ms)":i(e.duration)}))),t}getRecords(...e){return 0===e.length?this.records.values():this.records.entries().filter(t=>e.some(e=>e===t[0])).flatMap(e=>e[1])}},v6=class{static{tO(this,"ProfilingTask")}constructor(e,t){this.stack=[],this.entries=new $w,this.addRecord=e,this.identifier=t}start(){if(void 0!==this.startTime)throw Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(void 0===this.startTime)throw Error(`Task "${this.identifier}" was not started.`);if(0!==this.stack.length)throw Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(e=>e.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let t=this.stack.pop();if(!t)throw Error(`Task "${this.identifier}.${e}" was not started.`);if(t.id!==e)throw Error(`Sub-Task "${t.id}" is not already stopped.`);let r=performance.now()-t.start;void 0!==this.stack.at(-1)&&(this.stack[this.stack.length-1].content+=r);let n=r-t.content;this.entries.add(e,n)}};(e7||(e7={})).Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[^\[\]\r\n]+)\]/},(e8||(e8={})).Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(e6||(e6={})).Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/},(te||(te={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/},(tt||(tt={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(tr||(tr={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(tn||(tn={})).Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(ti||(ti={})).Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(ta||(ta={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/},(ts||(ts={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/},(to||(to={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//},(tl||(tl={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/},(tu||(tu={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/},(tc||(tc={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/},(tp||(tp={})).Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},e7.Terminals,e8.Terminals,e6.Terminals,te.Terminals,tt.Terminals,tr.Terminals,tn.Terminals,ti.Terminals,ta.Terminals,ts.Terminals,to.Terminals,tl.Terminals,tc.Terminals,tu.Terminals,tp.Terminals;var Re={$type:"AbnfAlternation",alternatives:"alternatives"},Rt={$type:"AbnfConcatenation",elements:"elements"},Rr={$type:"AbnfElement",primary:"primary",repeat:"repeat"},Rn={$type:"AbnfGroup",element:"element"},Ri={$type:"AbnfNumVal",value:"value"},Ra={$type:"AbnfOptionalGroup",element:"element"},Rs={$type:"AbnfPrimary"},Ro={$type:"AbnfRule",definition:"definition",name:"name"},Rl={$type:"AbnfRuleName",name:"name"},Ru={$type:"AbnfStringLiteral",value:"value"},Rc={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function Rp(e){return EL.isInstance(e,Rc.$type)}tO(Rp,"isArchitecture");var Rf="Axis",Rd={$type:"Branch",name:"name",order:"order"};function Rm(e){return EL.isInstance(e,Rd.$type)}tO(Rm,"isBranch");var Rh={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function Ry(e){return EL.isInstance(e,Rh.$type)}tO(Ry,"isCommit");var Rg={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};function RT(e){return EL.isInstance(e,Rg.$type)}tO(RT,"isCynefin");var R$={$type:"DomainBlock",domain:"domain",items:"items"};function Rv(e){return EL.isInstance(e,R$.$type)}tO(Rv,"isDomainBlock");var RR={$type:"DomainItem",label:"label"};function RE(e){return EL.isInstance(e,RR.$type)}tO(RE,"isDomainItem");var RA={$type:"EbnfChoice",alternatives:"alternatives"},Rb={$type:"EbnfExceptionPostfix",except:"except"},RC={$type:"EbnfGroup",element:"element"},RS={$type:"EbnfNonTerminal",name:"name"},Rk={$type:"EbnfOneOrMorePostfix",operator:"operator"},Rx={$type:"EbnfOptional",element:"element"},RN={$type:"EbnfOptionalPostfix",operator:"operator"},RI={$type:"EbnfPostfix"},R_={$type:"EbnfPrimary"},Rw={$type:"EbnfRepetition",element:"element"},RP={$type:"EbnfRule",definition:"definition",name:"name"},RO={$type:"EbnfSequence",elements:"elements"},RD={$type:"EbnfSpecial",text:"text"},RL={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},RM={$type:"EbnfTerminal",value:"value"},Rj={$type:"EbnfZeroOrMorePostfix",operator:"operator"},RF={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},RG={$type:"EmFrame"},Rz="EmModelEntity";function RK(e){return"rmo"===e||"readmodel"===e||"ui"===e||"cmd"===e||"command"===e||"evt"===e||"event"===e||"pcr"===e||"processor"===e}tO(RK,"isEmModelEntityType");var Rq="EmResetFrame";function RU(e){return EL.isInstance(e,Rq)}tO(RU,"isEmResetFrame");var RB={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},RW={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function RV(e){return EL.isInstance(e,RW.$type)}tO(RV,"isGitGraph");var RH={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function RY(e){return EL.isInstance(e,RH.$type)}tO(RY,"isInfo");var RZ="Item",RX={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function RJ(e){return EL.isInstance(e,RX.$type)}tO(RJ,"isMerge");var RQ={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function R0(e){return EL.isInstance(e,RQ.$type)}tO(R0,"isPacket");var R1={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function R2(e){return EL.isInstance(e,R1.$type)}tO(R2,"isPacketBlock");var R3={$type:"PegAny",dot:"dot"},R9={$type:"PegGroup",element:"element"},R4={$type:"PegIdentifier",name:"name"},R5={$type:"PegLiteral",value:"value"},R7={$type:"PegOrderedChoice",alternatives:"alternatives"},R8={$type:"PegPrefix",operator:"operator",suffix:"suffix"},R6={$type:"PegPrimary"},Ee={$type:"PegRule",definition:"definition",name:"name"},Et={$type:"PegSequence",elements:"elements"},Er={$type:"PegSuffix",operator:"operator",primary:"primary"},En={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function Ei(e){return EL.isInstance(e,En.$type)}tO(Ei,"isPie");var Ea={$type:"PieSection",label:"label",value:"value"};function Es(e){return EL.isInstance(e,Ea.$type)}tO(Es,"isPieSection");var Eo={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},El={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function Eu(e){return EL.isInstance(e,El.$type)}tO(Eu,"isRailroad");var Ec={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function Ep(e){return EL.isInstance(e,Ec.$type)}tO(Ep,"isRailroadAbnf");var Ef={$type:"RailroadChoiceExpr",alternatives:"alternatives"},Ed={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function Em(e){return EL.isInstance(e,Ed.$type)}tO(Em,"isRailroadEbnf");var Eh={$type:"RailroadExpression"},Ey={$type:"RailroadNonTerminalExpr",name:"name"},Eg={$type:"RailroadOneOrMoreExpr",element:"element"},ET={$type:"RailroadOptionalExpr",element:"element"},E$={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function Ev(e){return EL.isInstance(e,E$.$type)}tO(Ev,"isRailroadPeg");var ER={$type:"RailroadRule",definition:"definition",name:"name"},EE={$type:"RailroadSequenceExpr",elements:"elements"},EA={$type:"RailroadSpecialExpr",text:"text"},Eb={$type:"RailroadTerminalExpr",value:"value"},EC={$type:"RailroadZeroOrMoreExpr",element:"element"},ES={$type:"Statement"},Ek={$type:"Transition",from:"from",label:"label",to:"to"};function Ex(e){return EL.isInstance(e,Ek.$type)}tO(Ex,"isTransition");var EN={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function EI(e){return EL.isInstance(e,EN.$type)}tO(EI,"isTreemap");var E_={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},Ew={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},EP={$type:"Wardley",accDescr:"accDescr",accelerators:"accelerators",accTitle:"accTitle",anchors:"anchors",annotation:"annotation",annotations:"annotations",components:"components",deaccelerators:"deaccelerators",evolution:"evolution",evolves:"evolves",links:"links",notes:"notes",pipelines:"pipelines",size:"size",title:"title"};function EO(e){return EL.isInstance(e,EP.$type)}tO(EO,"isWardley");var ED=class extends rI{constructor(){super(...arguments),this.types={AbnfAlternation:{name:Re.$type,properties:{alternatives:{name:Re.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:Rt.$type,properties:{elements:{name:Rt.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:Rr.$type,properties:{primary:{name:Rr.primary},repeat:{name:Rr.repeat}},superTypes:[]},AbnfGroup:{name:Rn.$type,properties:{element:{name:Rn.element}},superTypes:[Rs.$type]},AbnfNumVal:{name:Ri.$type,properties:{value:{name:Ri.value}},superTypes:[Rs.$type]},AbnfOptionalGroup:{name:Ra.$type,properties:{element:{name:Ra.element}},superTypes:[Rs.$type]},AbnfPrimary:{name:Rs.$type,properties:{},superTypes:[]},AbnfRule:{name:Ro.$type,properties:{definition:{name:Ro.definition},name:{name:Ro.name}},superTypes:[]},AbnfRuleName:{name:Rl.$type,properties:{name:{name:Rl.name}},superTypes:[Rs.$type]},AbnfStringLiteral:{name:Ru.$type,properties:{value:{name:Ru.value}},superTypes:[Rs.$type]},Accelerator:{name:"Accelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Alignment:{name:"Alignment",properties:{direction:{name:"direction"},members:{name:"members",defaultValue:[]}},superTypes:[]},Anchor:{name:"Anchor",properties:{evolution:{name:"evolution"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Annotation:{name:"Annotation",properties:{number:{name:"number"},text:{name:"text"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Annotations:{name:"Annotations",properties:{x:{name:"x"},y:{name:"y"}},superTypes:[]},Architecture:{name:Rc.$type,properties:{accDescr:{name:Rc.accDescr},accTitle:{name:Rc.accTitle},alignments:{name:Rc.alignments,defaultValue:[]},edges:{name:Rc.edges,defaultValue:[]},groups:{name:Rc.groups,defaultValue:[]},junctions:{name:Rc.junctions,defaultValue:[]},services:{name:Rc.services,defaultValue:[]},title:{name:Rc.title}},superTypes:[]},Axis:{name:Rf,properties:{label:{name:"label"},name:{name:"name"}},superTypes:[]},Branch:{name:Rd.$type,properties:{name:{name:Rd.name},order:{name:Rd.order}},superTypes:[ES.$type]},Checkout:{name:"Checkout",properties:{branch:{name:"branch"}},superTypes:[ES.$type]},CherryPicking:{name:"CherryPicking",properties:{id:{name:"id"},parent:{name:"parent"},tags:{name:"tags",defaultValue:[]}},superTypes:[ES.$type]},ClassDefStatement:{name:"ClassDefStatement",properties:{className:{name:"className"},styleText:{name:"styleText"}},superTypes:[]},Commit:{name:Rh.$type,properties:{id:{name:Rh.id},message:{name:Rh.message},tags:{name:Rh.tags,defaultValue:[]},type:{name:Rh.type}},superTypes:[ES.$type]},Common:{name:"Common",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},title:{name:"title"}},superTypes:[]},Component:{name:"Component",properties:{decorator:{name:"decorator"},evolution:{name:"evolution"},inertia:{name:"inertia",defaultValue:!1},label:{name:"label"},name:{name:"name"},visibility:{name:"visibility"}},superTypes:[]},Curve:{name:"Curve",properties:{entries:{name:"entries",defaultValue:[]},label:{name:"label"},name:{name:"name"}},superTypes:[]},Cynefin:{name:Rg.$type,properties:{accDescr:{name:Rg.accDescr},accTitle:{name:Rg.accTitle},domains:{name:Rg.domains,defaultValue:[]},title:{name:Rg.title},transitions:{name:Rg.transitions,defaultValue:[]}},superTypes:[]},Deaccelerator:{name:"Deaccelerator",properties:{name:{name:"name"},x:{name:"x"},y:{name:"y"}},superTypes:[]},Decorator:{name:"Decorator",properties:{strategy:{name:"strategy"}},superTypes:[]},Direction:{name:"Direction",properties:{accDescr:{name:"accDescr"},accTitle:{name:"accTitle"},dir:{name:"dir"},statements:{name:"statements",defaultValue:[]},title:{name:"title"}},superTypes:[RW.$type]},DomainBlock:{name:R$.$type,properties:{domain:{name:R$.domain},items:{name:R$.items,defaultValue:[]}},superTypes:[]},DomainItem:{name:RR.$type,properties:{label:{name:RR.label}},superTypes:[]},EbnfChoice:{name:RA.$type,properties:{alternatives:{name:RA.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:Rb.$type,properties:{except:{name:Rb.except}},superTypes:[RI.$type]},EbnfGroup:{name:RC.$type,properties:{element:{name:RC.element}},superTypes:[R_.$type]},EbnfNonTerminal:{name:RS.$type,properties:{name:{name:RS.name}},superTypes:[R_.$type]},EbnfOneOrMorePostfix:{name:Rk.$type,properties:{operator:{name:Rk.operator}},superTypes:[RI.$type]},EbnfOptional:{name:Rx.$type,properties:{element:{name:Rx.element}},superTypes:[R_.$type]},EbnfOptionalPostfix:{name:RN.$type,properties:{operator:{name:RN.operator}},superTypes:[RI.$type]},EbnfPostfix:{name:RI.$type,properties:{},superTypes:[]},EbnfPrimary:{name:R_.$type,properties:{},superTypes:[]},EbnfRepetition:{name:Rw.$type,properties:{element:{name:Rw.element}},superTypes:[R_.$type]},EbnfRule:{name:RP.$type,properties:{definition:{name:RP.definition},name:{name:RP.name}},superTypes:[]},EbnfSequence:{name:RO.$type,properties:{elements:{name:RO.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:RD.$type,properties:{text:{name:RD.text}},superTypes:[R_.$type]},EbnfTerm:{name:RL.$type,properties:{base:{name:RL.base},postfixes:{name:RL.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:RM.$type,properties:{value:{name:RM.value}},superTypes:[R_.$type]},EbnfZeroOrMorePostfix:{name:Rj.$type,properties:{operator:{name:Rj.operator}},superTypes:[RI.$type]},Edge:{name:"Edge",properties:{lhsDir:{name:"lhsDir"},lhsGroup:{name:"lhsGroup",defaultValue:!1},lhsId:{name:"lhsId"},lhsInto:{name:"lhsInto",defaultValue:!1},rhsDir:{name:"rhsDir"},rhsGroup:{name:"rhsGroup",defaultValue:!1},rhsId:{name:"rhsId"},rhsInto:{name:"rhsInto",defaultValue:!1},title:{name:"title"}},superTypes:[]},EmDataEntity:{name:RF.$type,properties:{dataBlockValue:{name:RF.dataBlockValue},dataType:{name:RF.dataType},name:{name:RF.name}},superTypes:[]},EmFrame:{name:RG.$type,properties:{},superTypes:[]},EmGwt:{name:"EmGwt",properties:{givenStatements:{name:"givenStatements",defaultValue:[]},sourceFrame:{name:"sourceFrame",referenceType:RG.$type},thenStatements:{name:"thenStatements",defaultValue:[]},whenStatements:{name:"whenStatements",defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:"EmGwtStatement",properties:{entityIdentifier:{name:"entityIdentifier",referenceType:Rz}},superTypes:[]},EmModelEntity:{name:Rz,properties:{name:{name:"name"}},superTypes:[]},EmNoteEntity:{name:"EmNoteEntity",properties:{dataBlockValue:{name:"dataBlockValue"},dataType:{name:"dataType"},sourceFrame:{name:"sourceFrame",referenceType:RG.$type}},superTypes:[]},EmResetFrame:{name:Rq,properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:RF.$type},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:RG.$type}},superTypes:[RG.$type]},EmTimeFrame:{name:"EmTimeFrame",properties:{dataInlineValue:{name:"dataInlineValue"},dataReference:{name:"dataReference",referenceType:RF.$type},dataType:{name:"dataType"},entityIdentifier:{name:"entityIdentifier"},modelEntityType:{name:"modelEntityType"},name:{name:"name"},sourceFrames:{name:"sourceFrames",defaultValue:[],referenceType:RG.$type}},superTypes:[RG.$type]},Entry:{name:"Entry",properties:{axis:{name:"axis",referenceType:Rf},value:{name:"value"}},superTypes:[]},EventModel:{name:RB.$type,properties:{accDescr:{name:RB.accDescr},accTitle:{name:RB.accTitle},dataEntities:{name:RB.dataEntities,defaultValue:[]},frames:{name:RB.frames,defaultValue:[]},gwtEntities:{name:RB.gwtEntities,defaultValue:[]},modelEntities:{name:RB.modelEntities,defaultValue:[]},noteEntities:{name:RB.noteEntities,defaultValue:[]},title:{name:RB.title}},superTypes:[]},Evolution:{name:"Evolution",properties:{stages:{name:"stages",defaultValue:[]}},superTypes:[]},EvolutionStage:{name:"EvolutionStage",properties:{boundary:{name:"boundary"},name:{name:"name"},secondName:{name:"secondName"}},superTypes:[]},Evolve:{name:"Evolve",properties:{component:{name:"component"},target:{name:"target"}},superTypes:[]},GitGraph:{name:RW.$type,properties:{accDescr:{name:RW.accDescr},accTitle:{name:RW.accTitle},statements:{name:RW.statements,defaultValue:[]},title:{name:RW.title}},superTypes:[]},Group:{name:"Group",properties:{icon:{name:"icon"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Info:{name:RH.$type,properties:{accDescr:{name:RH.accDescr},accTitle:{name:RH.accTitle},title:{name:RH.title}},superTypes:[]},Item:{name:RZ,properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[]},Junction:{name:"Junction",properties:{id:{name:"id"},in:{name:"in"}},superTypes:[]},Label:{name:"Label",properties:{negX:{name:"negX",defaultValue:!1},negY:{name:"negY",defaultValue:!1},offsetX:{name:"offsetX"},offsetY:{name:"offsetY"}},superTypes:[]},Leaf:{name:"Leaf",properties:{classSelector:{name:"classSelector"},name:{name:"name"},value:{name:"value"}},superTypes:[RZ]},Link:{name:"Link",properties:{arrow:{name:"arrow"},from:{name:"from"},fromPort:{name:"fromPort"},linkLabel:{name:"linkLabel"},to:{name:"to"},toPort:{name:"toPort"}},superTypes:[]},Merge:{name:RX.$type,properties:{branch:{name:RX.branch},id:{name:RX.id},tags:{name:RX.tags,defaultValue:[]},type:{name:RX.type}},superTypes:[ES.$type]},Note:{name:"Note",properties:{evolution:{name:"evolution"},text:{name:"text"},visibility:{name:"visibility"}},superTypes:[]},Option:{name:"Option",properties:{name:{name:"name"},value:{name:"value",defaultValue:!1}},superTypes:[]},Packet:{name:RQ.$type,properties:{accDescr:{name:RQ.accDescr},accTitle:{name:RQ.accTitle},blocks:{name:RQ.blocks,defaultValue:[]},title:{name:RQ.title}},superTypes:[]},PacketBlock:{name:R1.$type,properties:{bits:{name:R1.bits},end:{name:R1.end},label:{name:R1.label},start:{name:R1.start}},superTypes:[]},PegAny:{name:R3.$type,properties:{dot:{name:R3.dot}},superTypes:[R6.$type]},PegGroup:{name:R9.$type,properties:{element:{name:R9.element}},superTypes:[R6.$type]},PegIdentifier:{name:R4.$type,properties:{name:{name:R4.name}},superTypes:[R6.$type]},PegLiteral:{name:R5.$type,properties:{value:{name:R5.value}},superTypes:[R6.$type]},PegOrderedChoice:{name:R7.$type,properties:{alternatives:{name:R7.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:R8.$type,properties:{operator:{name:R8.operator},suffix:{name:R8.suffix}},superTypes:[]},PegPrimary:{name:R6.$type,properties:{},superTypes:[]},PegRule:{name:Ee.$type,properties:{definition:{name:Ee.definition},name:{name:Ee.name}},superTypes:[]},PegSequence:{name:Et.$type,properties:{elements:{name:Et.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:Er.$type,properties:{operator:{name:Er.operator},primary:{name:Er.primary}},superTypes:[]},Pie:{name:En.$type,properties:{accDescr:{name:En.accDescr},accTitle:{name:En.accTitle},sections:{name:En.sections,defaultValue:[]},showData:{name:En.showData,defaultValue:!1},title:{name:En.title}},superTypes:[]},PieSection:{name:Ea.$type,properties:{label:{name:Ea.label},value:{name:Ea.value}},superTypes:[]},Pipeline:{name:"Pipeline",properties:{components:{name:"components",defaultValue:[]},parent:{name:"parent"}},superTypes:[]},PipelineComponent:{name:"PipelineComponent",properties:{evolution:{name:"evolution"},label:{name:"label"},name:{name:"name"}},superTypes:[]},Radar:{name:Eo.$type,properties:{accDescr:{name:Eo.accDescr},accTitle:{name:Eo.accTitle},axes:{name:Eo.axes,defaultValue:[]},curves:{name:Eo.curves,defaultValue:[]},options:{name:Eo.options,defaultValue:[]},title:{name:Eo.title}},superTypes:[]},Railroad:{name:El.$type,properties:{accDescr:{name:El.accDescr},accTitle:{name:El.accTitle},rules:{name:El.rules,defaultValue:[]},title:{name:El.title}},superTypes:[]},RailroadAbnf:{name:Ec.$type,properties:{accDescr:{name:Ec.accDescr},accTitle:{name:Ec.accTitle},rules:{name:Ec.rules,defaultValue:[]},title:{name:Ec.title}},superTypes:[]},RailroadChoiceExpr:{name:Ef.$type,properties:{alternatives:{name:Ef.alternatives,defaultValue:[]}},superTypes:[Eh.$type]},RailroadEbnf:{name:Ed.$type,properties:{accDescr:{name:Ed.accDescr},accTitle:{name:Ed.accTitle},rules:{name:Ed.rules,defaultValue:[]},title:{name:Ed.title}},superTypes:[]},RailroadExpression:{name:Eh.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:Ey.$type,properties:{name:{name:Ey.name}},superTypes:[Eh.$type]},RailroadOneOrMoreExpr:{name:Eg.$type,properties:{element:{name:Eg.element}},superTypes:[Eh.$type]},RailroadOptionalExpr:{name:ET.$type,properties:{element:{name:ET.element}},superTypes:[Eh.$type]},RailroadPeg:{name:E$.$type,properties:{accDescr:{name:E$.accDescr},accTitle:{name:E$.accTitle},rules:{name:E$.rules,defaultValue:[]},title:{name:E$.title}},superTypes:[]},RailroadRule:{name:ER.$type,properties:{definition:{name:ER.definition},name:{name:ER.name}},superTypes:[]},RailroadSequenceExpr:{name:EE.$type,properties:{elements:{name:EE.elements,defaultValue:[]}},superTypes:[Eh.$type]},RailroadSpecialExpr:{name:EA.$type,properties:{text:{name:EA.text}},superTypes:[Eh.$type]},RailroadTerminalExpr:{name:Eb.$type,properties:{value:{name:Eb.value}},superTypes:[Eh.$type]},RailroadZeroOrMoreExpr:{name:EC.$type,properties:{element:{name:EC.element}},superTypes:[Eh.$type]},Section:{name:"Section",properties:{classSelector:{name:"classSelector"},name:{name:"name"}},superTypes:[RZ]},Service:{name:"Service",properties:{icon:{name:"icon"},iconText:{name:"iconText"},id:{name:"id"},in:{name:"in"},title:{name:"title"}},superTypes:[]},Size:{name:"Size",properties:{height:{name:"height"},width:{name:"width"}},superTypes:[]},Statement:{name:ES.$type,properties:{},superTypes:[]},Transition:{name:Ek.$type,properties:{from:{name:Ek.from},label:{name:Ek.label},to:{name:Ek.to}},superTypes:[]},TreeNode:{name:E_.$type,properties:{classAnnotation:{name:E_.classAnnotation},descAnnotation:{name:E_.descAnnotation},iconAnnotation:{name:E_.iconAnnotation},indent:{name:E_.indent},name:{name:E_.name}},superTypes:[]},TreeView:{name:Ew.$type,properties:{accDescr:{name:Ew.accDescr},accTitle:{name:Ew.accTitle},nodes:{name:Ew.nodes,defaultValue:[]},title:{name:Ew.title}},superTypes:[]},Treemap:{name:EN.$type,properties:{accDescr:{name:EN.accDescr},accTitle:{name:EN.accTitle},title:{name:EN.title},TreemapRows:{name:EN.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:"TreemapRow",properties:{indent:{name:"indent"},item:{name:"item"}},superTypes:[]},Wardley:{name:EP.$type,properties:{accDescr:{name:EP.accDescr},accelerators:{name:EP.accelerators,defaultValue:[]},accTitle:{name:EP.accTitle},anchors:{name:EP.anchors,defaultValue:[]},annotation:{name:EP.annotation,defaultValue:[]},annotations:{name:EP.annotations,defaultValue:[]},components:{name:EP.components,defaultValue:[]},deaccelerators:{name:EP.deaccelerators,defaultValue:[]},evolution:{name:EP.evolution},evolves:{name:EP.evolves,defaultValue:[]},links:{name:EP.links,defaultValue:[]},notes:{name:EP.notes,defaultValue:[]},pipelines:{name:EP.pipelines,defaultValue:[]},size:{name:EP.size},title:{name:EP.title}},superTypes:[]}}}static{tO(this,"MermaidAstReflection")}},EL=new ED,EM=tO(()=>tf??(tf=v7('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[^\\\\[\\\\]\\\\r\\\\n]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),Ej=tO(()=>td??(td=v7('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"-->"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),EF=tO(()=>tm??(tm=v7('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),EG=tO(()=>th??(th=v7('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),Ez=tO(()=>ty??(ty=v7('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),EK=tO(()=>tg??(tg=v7('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),Eq=tO(()=>tT??(tT=v7('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),EU=tO(()=>t$??(t$=v7('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),EB=tO(()=>tv??(tv=v7('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),EW=tO(()=>tR??(tR=v7('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),EV=tO(()=>tE??(tE=v7('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),EH=tO(()=>tA??(tA=v7('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),EY=tO(()=>tb??(tb=v7('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}')),"TreemapGrammarGrammar"),EZ=tO(()=>tC??(tC=v7('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),EX=tO(()=>tS??(tS=v7('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-->"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),EJ={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},EQ={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E0={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E1={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E2={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E3={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E9={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E4={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E5={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E7={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E8={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},E6={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Ae={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},At={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Ar={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},An={AstReflection:tO(()=>new ED,"AstReflection")},Ai={Grammar:tO(()=>EM(),"Grammar"),LanguageMetaData:tO(()=>EJ,"LanguageMetaData"),parser:{}},Aa={Grammar:tO(()=>Ej(),"Grammar"),LanguageMetaData:tO(()=>EQ,"LanguageMetaData"),parser:{}},As={Grammar:tO(()=>EF(),"Grammar"),LanguageMetaData:tO(()=>E0,"LanguageMetaData"),parser:{}},Ao={Grammar:tO(()=>EG(),"Grammar"),LanguageMetaData:tO(()=>E1,"LanguageMetaData"),parser:{}},Al={Grammar:tO(()=>Ez(),"Grammar"),LanguageMetaData:tO(()=>E2,"LanguageMetaData"),parser:{}},Au={Grammar:tO(()=>EK(),"Grammar"),LanguageMetaData:tO(()=>E3,"LanguageMetaData"),parser:{}},Ac={Grammar:tO(()=>Eq(),"Grammar"),LanguageMetaData:tO(()=>E9,"LanguageMetaData"),parser:{}},Ap={Grammar:tO(()=>EU(),"Grammar"),LanguageMetaData:tO(()=>E4,"LanguageMetaData"),parser:{}},Af={Grammar:tO(()=>EB(),"Grammar"),LanguageMetaData:tO(()=>E5,"LanguageMetaData"),parser:{}},Ad={Grammar:tO(()=>EW(),"Grammar"),LanguageMetaData:tO(()=>E7,"LanguageMetaData"),parser:{}},Am={Grammar:tO(()=>EV(),"Grammar"),LanguageMetaData:tO(()=>E8,"LanguageMetaData"),parser:{}},Ah={Grammar:tO(()=>EH(),"Grammar"),LanguageMetaData:tO(()=>E6,"LanguageMetaData"),parser:{}},Ay={Grammar:tO(()=>EY(),"Grammar"),LanguageMetaData:tO(()=>Ae,"LanguageMetaData"),parser:{}},Ag={Grammar:tO(()=>EZ(),"Grammar"),LanguageMetaData:tO(()=>At,"LanguageMetaData"),parser:{}},AT={Grammar:tO(()=>EX(),"Grammar"),LanguageMetaData:tO(()=>Ar,"LanguageMetaData"),parser:{}},A$={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},Av=class extends $a{static{tO(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return(void 0===n&&(n=this.runCustomConverter(e,t,r)),void 0===n)?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=A$[e.name];if(void 0===n)return;let i=n.exec(t);if(null!==i){if(void 0!==i[1])return i[1].trim().replace(/[\t ]{2,}/gm," ");if(void 0!==i[2])return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n")}}},AR=class extends Av{static{tO(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},AE=class extends $i{static{tO(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},AA=class extends AE{static{tO(this,"CommonTokenBuilder")}};e.s(["AbnfAlternation",0,Re,"AbnfConcatenation",0,Rt,"AbnfElement",0,Rr,"AbnfGroup",0,Rn,"AbnfNumVal",0,Ri,"AbnfOptionalGroup",0,Ra,"AbnfPrimary",0,Rs,"AbnfRule",0,Ro,"AbnfRuleName",0,Rl,"AbnfStringLiteral",0,Ru,"AbstractMermaidTokenBuilder",0,AE,"AbstractMermaidValueConverter",0,Av,"Architecture",0,Rc,"ArchitectureGrammarGeneratedModule",0,Ai,"Branch",0,Rd,"Commit",0,Rh,"CommonTokenBuilder",0,AA,"CommonValueConverter",0,AR,"Cynefin",0,Rg,"CynefinGrammarGeneratedModule",0,Aa,"DomainBlock",0,R$,"DomainItem",0,RR,"EbnfChoice",0,RA,"EbnfExceptionPostfix",0,Rb,"EbnfGroup",0,RC,"EbnfNonTerminal",0,RS,"EbnfOneOrMorePostfix",0,Rk,"EbnfOptional",0,Rx,"EbnfOptionalPostfix",0,RN,"EbnfPostfix",0,RI,"EbnfPrimary",0,R_,"EbnfRepetition",0,Rw,"EbnfRule",0,RP,"EbnfSequence",0,RO,"EbnfSpecial",0,RD,"EbnfTerm",0,RL,"EbnfTerminal",0,RM,"EbnfZeroOrMorePostfix",0,Rj,"EmDataEntity",0,RF,"EmFrame",0,RG,"EmptyFileSystem",0,v3,"EventModel",0,RB,"EventModelingGeneratedModule",0,As,"GitGraph",0,RW,"GitGraphGrammarGeneratedModule",0,Ao,"Info",0,RH,"InfoGrammarGeneratedModule",0,Al,"Merge",0,RX,"MermaidGeneratedSharedModule",0,An,"Packet",0,RQ,"PacketBlock",0,R1,"PacketGrammarGeneratedModule",0,Au,"PegAny",0,R3,"PegGroup",0,R9,"PegIdentifier",0,R4,"PegLiteral",0,R5,"PegOrderedChoice",0,R7,"PegPrefix",0,R8,"PegPrimary",0,R6,"PegRule",0,Ee,"PegSequence",0,Et,"PegSuffix",0,Er,"Pie",0,En,"PieGrammarGeneratedModule",0,Ac,"PieSection",0,Ea,"Radar",0,Eo,"RadarGrammarGeneratedModule",0,Ap,"Railroad",0,El,"RailroadAbnf",0,Ec,"RailroadAbnfGrammarGeneratedModule",0,Af,"RailroadChoiceExpr",0,Ef,"RailroadEbnf",0,Ed,"RailroadEbnfGrammarGeneratedModule",0,Ad,"RailroadExpression",0,Eh,"RailroadGrammarGeneratedModule",0,Am,"RailroadNonTerminalExpr",0,Ey,"RailroadOneOrMoreExpr",0,Eg,"RailroadOptionalExpr",0,ET,"RailroadPeg",0,E$,"RailroadPegGrammarGeneratedModule",0,Ah,"RailroadRule",0,ER,"RailroadSequenceExpr",0,EE,"RailroadSpecialExpr",0,EA,"RailroadTerminalExpr",0,Eb,"RailroadZeroOrMoreExpr",0,EC,"Statement",0,ES,"Transition",0,Ek,"TreeNode",0,E_,"TreeView",0,Ew,"TreeViewGrammarGeneratedModule",0,Ag,"Treemap",0,EN,"TreemapGrammarGeneratedModule",0,Ay,"Wardley",0,EP,"WardleyGrammarGeneratedModule",0,AT,"__name",0,tO,"createDefaultCoreModule",0,vq,"createDefaultSharedCoreModule",0,vU,"inject",0,vB,"isArchitecture",0,Rp,"isBranch",0,Rm,"isCommit",0,Ry,"isCynefin",0,RT,"isDomainBlock",0,Rv,"isDomainItem",0,RE,"isEmModelEntityType",0,RK,"isEmResetFrame",0,RU,"isGitGraph",0,RV,"isInfo",0,RY,"isMerge",0,RJ,"isPacket",0,R0,"isPacketBlock",0,R2,"isPie",0,Ei,"isPieSection",0,Es,"isRailroad",0,Eu,"isRailroadAbnf",0,Ep,"isRailroadEbnf",0,Em,"isRailroadPeg",0,Ev,"isTransition",0,Ex,"isTreemap",0,EI,"isWardley",0,EO])}]);