pi-outpost 0.32.4 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/dist/contract/README.md +120 -1
  2. package/dist/contract/conformance/README.md +29 -5
  3. package/dist/contract/conformance/index.json +115 -0
  4. package/dist/contract/conformance/invalid/unknown-version.json +1 -1
  5. package/dist/contract/conformance/invalid/v3-timeline-comparison-without-reference.json +123 -0
  6. package/dist/contract/conformance/invalid/v3-timeline-contradictory-change.json +128 -0
  7. package/dist/contract/conformance/invalid/v3-timeline-dependency-cycle.json +124 -0
  8. package/dist/contract/conformance/invalid/v3-timeline-dependency-on-removed.json +125 -0
  9. package/dist/contract/conformance/invalid/v3-timeline-duplicate-dependency.json +125 -0
  10. package/dist/contract/conformance/invalid/v3-timeline-duplicate-identifier.json +120 -0
  11. package/dist/contract/conformance/invalid/v3-timeline-empty-task-endpoint.json +124 -0
  12. package/dist/contract/conformance/invalid/v3-timeline-impossible-date.json +101 -0
  13. package/dist/contract/conformance/invalid/v3-timeline-inverted-activity.json +120 -0
  14. package/dist/contract/conformance/invalid/v3-timeline-inverted-range.json +120 -0
  15. package/dist/contract/conformance/invalid/v3-timeline-milestone-outside-range.json +120 -0
  16. package/dist/contract/conformance/invalid/v3-timeline-period-outside-range.json +139 -0
  17. package/dist/contract/conformance/invalid/v3-timeline-presentation-property.json +121 -0
  18. package/dist/contract/conformance/invalid/v3-timeline-previous-outside-range.json +128 -0
  19. package/dist/contract/conformance/invalid/v3-timeline-previous-wrong-shape.json +128 -0
  20. package/dist/contract/conformance/invalid/v3-timeline-reference-outside-range.json +140 -0
  21. package/dist/contract/conformance/invalid/v3-timeline-self-dependency.json +124 -0
  22. package/dist/contract/conformance/invalid/v3-timeline-under-version-2.json +120 -0
  23. package/dist/contract/conformance/invalid/v3-timeline-unknown-dependency-type.json +121 -0
  24. package/dist/contract/conformance/invalid/v3-timeline-unresolved-dependency-endpoint.json +120 -0
  25. package/dist/contract/conformance/invalid/v3-timeline-unsupported-scale.json +120 -0
  26. package/dist/contract/conformance/invalid/v3-timeline-with-target.json +123 -0
  27. package/dist/contract/conformance/valid/v3-timeline-calendar.json +140 -0
  28. package/dist/contract/conformance/valid/v3-timeline-compared.json +142 -0
  29. package/dist/contract/conformance/valid/v3-timeline-empty-task-and-anonymous-separator.json +35 -0
  30. package/dist/contract/conformance/valid/v3-timeline-four-dependency-types.json +61 -0
  31. package/dist/contract/conformance/valid/v3-timeline-programme.json +44 -0
  32. package/dist/contract/conformance/valid/v3-timeline-quarter-scale.json +42 -0
  33. package/dist/contract/conformance/valid/v3-timeline-single-day-activity.json +27 -0
  34. package/dist/contract/conformance/valid/v3-timeline-unsatisfied-dependency.json +45 -0
  35. package/dist/contract/conformance/valid/v3-timeline-week-scale.json +35 -0
  36. package/dist/contract/conformance/version-1.lock.json +2 -2
  37. package/dist/contract/schemas/structured-exchange-3.json +1263 -0
  38. package/dist/contract/schemas/structured-exchange-profile-registry-2.json +94 -0
  39. package/dist/contract/structured-exchange-project-setup.md +36 -0
  40. package/dist/contract/validate-structured-exchange.mjs +1981 -174
  41. package/dist/pi-outpost-tools.mjs +4556 -1130
  42. package/dist/pi-outpost.mjs +5733 -1898
  43. package/dist/pi-outpost.sea.mjs +2 -2
  44. package/dist/sea-prep.blob +2 -2
  45. package/dist/skills/structured-exchange/SKILL.md +90 -378
  46. package/dist/skills/structured-exchange/references/enriched-contract.md +158 -0
  47. package/dist/skills/structured-exchange/references/figures.md +52 -0
  48. package/dist/skills/structured-exchange/references/graphs-and-tables.md +115 -0
  49. package/dist/skills/structured-exchange/references/proposals.md +86 -0
  50. package/dist/skills/structured-exchange/references/timelines.md +87 -0
  51. package/dist/skills/structured-exchange/structured-exchange-3.json +1263 -0
  52. package/dist/skills/structured-exchange/structured-exchange-profile-registry-2.json +94 -0
  53. package/dist/skills/structured-exchange-project/SKILL.md +22 -0
  54. package/dist/web/assets/{PdfViewer-DHIy06i5.js → PdfViewer-9kadnb9W.js} +2 -2
  55. package/dist/web/assets/{abnfDiagram-VCTEODGH-0IqI620v.js → abnfDiagram-YUKMZFIV-BUZ7jF1I.js} +1 -1
  56. package/dist/web/assets/architecture-WOLXFQ4H-CxBmyj2Z.js +1 -0
  57. package/dist/web/assets/architectureDiagram-47P4ROYG-BAvert-J.js +36 -0
  58. package/dist/web/assets/{blockDiagram-OSKFZWR5-sw0nzjYC.js → blockDiagram-E7TT5TSB-CXQT_J2x.js} +16 -5
  59. package/dist/web/assets/c4Diagram-CRA5TL53-Byqo5aDs.js +38 -0
  60. package/dist/web/assets/channel-D3nE3SyW.js +1 -0
  61. package/dist/web/assets/chunk-2BW5OAIV-D9dSVCv2.js +10 -0
  62. package/dist/web/assets/chunk-3YJQHVM4-D6IQcIQB.js +2 -0
  63. package/dist/web/assets/chunk-4EA7E6EY-BxZ_5HMn.js +1 -0
  64. package/dist/web/assets/{chunk-F27PBJKO-C6rqX2gT.js → chunk-7TKQ45FW-G9TsFldk.js} +1 -1
  65. package/dist/web/assets/{chunk-SVP7TREG-CYXVRfc0.js → chunk-AW2ZBBNX-nmg5rsd5.js} +3 -3
  66. package/dist/web/assets/{chunk-GVQU2GXP-BtSmWzHA.js → chunk-DBDB3WZW-BwVIGLtu.js} +1 -1
  67. package/dist/web/assets/chunk-DUW6YSOI-Dgx8z5s3.js +1 -0
  68. package/dist/web/assets/chunk-E2ZNV5FY-VD95O25Z.js +72 -0
  69. package/dist/web/assets/chunk-EU5HNXII-CSnybkPb.js +213 -0
  70. package/dist/web/assets/chunk-FVRAUYC3-TBqluQ8N.js +2 -0
  71. package/dist/web/assets/{chunk-PWAF6VOD-Dup_NAkl.js → chunk-HJ2JQQFS-BiLMpVsO.js} +1 -1
  72. package/dist/web/assets/chunk-HTAEGDNF-QDOAuhR5.js +1 -0
  73. package/dist/web/assets/chunk-J5ZVWO5B-oDCd-gWO.js +1 -0
  74. package/dist/web/assets/{chunk-POPQ4Y6H-BrnPOTT-.js → chunk-KQW6MTUR-_WxFaX97.js} +1 -1
  75. package/dist/web/assets/chunk-NGNAAXSQ-BW1P8EP7.js +136 -0
  76. package/dist/web/assets/chunk-NTY3LDVX-BI0Pj8F6.js +1 -0
  77. package/dist/web/assets/chunk-VPRB5NB3-BBDlNNll.js +129 -0
  78. package/dist/web/assets/chunk-XC4XBNZT-Ba1ra4Jd.js +62 -0
  79. package/dist/web/assets/classDiagram-v2-K4WV4PDN-CksBjG_q.js +217 -0
  80. package/dist/web/assets/{conversationExport-CfUybHMU.js → conversationExport-q-9NUHuj.js} +1 -1
  81. package/dist/web/assets/cynefin-EF2NZ3EQ-ucJDz_S5.js +1 -0
  82. package/dist/web/assets/{cynefinDiagram-5FMLGOSQ-BKvXEDID.js → cynefinDiagram-3GCD6N5R-qPxcNdaa.js} +1 -1
  83. package/dist/web/assets/dagre-W4DXFKR2-ChflYJGj.js +4 -0
  84. package/dist/web/assets/diagram-2UJZ2QOL-Bi9ngdu2.js +200 -0
  85. package/dist/web/assets/{diagram-VX7I27RA-D5POkb-9.js → diagram-OVF4WLC6-iSSbF5Cd.js} +10 -10
  86. package/dist/web/assets/{diagram-S7CK7UJ4-DTvEAe9r.js → diagram-PFPMY2P6-BeEOD8rR.js} +2 -2
  87. package/dist/web/assets/{diagram-Z3DM3KII-CC2Mxm4H.js → diagram-UMYRVEAY-BckO6iZI.js} +1 -1
  88. package/dist/web/assets/{diagram-UQ7AKVKN-CVGEkml-.js → diagram-YEKJPTXX-BzzDIAmO.js} +2 -2
  89. package/dist/web/assets/diagram-ZIFT7M5P-ByjWOPbN.js +3 -0
  90. package/dist/web/assets/{docxExport-ErgwApAZ.js → docxExport-BO7j3Xnv.js} +1 -1
  91. package/dist/web/assets/{ebnfDiagram-PWID7BFC-CbDy2vxX.js → ebnfDiagram-VR2GEFS7-DRp-A5JC.js} +1 -1
  92. package/dist/web/assets/elk-IJKZMXRS-QzeiQ3l1.js +27 -0
  93. package/dist/web/assets/{erDiagram-2YWLMYGG-DUdStx-7.js → erDiagram-O2IAPWRE-BewZvI56.js} +15 -15
  94. package/dist/web/assets/eventmodeling-K75KTNOO-CX7X0bsf.js +1 -0
  95. package/dist/web/assets/flowDiagram-OXPTDLAJ-CSIHFoeR.js +1 -0
  96. package/dist/web/assets/ganttDiagram-R7TSEDQI-BT8Lcdwc.js +292 -0
  97. package/dist/web/assets/gitGraph-VSP46ZUC-BxYbaxeg.js +1 -0
  98. package/dist/web/assets/gitGraphDiagram-XJZIOB7I-B0fqVCqP.js +106 -0
  99. package/dist/web/assets/index-DcqvxkHN.css +2 -0
  100. package/dist/web/assets/index-eTp_lQUc.js +350 -0
  101. package/dist/web/assets/info-OHQRW6UA-DV3PDKXA.js +1 -0
  102. package/dist/web/assets/infoDiagram-5W2HQ5XZ-DfHpZ9RG.js +2 -0
  103. package/dist/web/assets/{ishikawaDiagram-5VMMS53U-D-gYpOUM.js → ishikawaDiagram-K3B6WC7H-DuwLwL9k.js} +2 -2
  104. package/dist/web/assets/{journeyDiagram-EYS64GPL-B0WqOtZ4.js → journeyDiagram-COXZFDF6-CMOfweZO.js} +4 -4
  105. package/dist/web/assets/{kanban-definition-UXKFOSKX-DIrVFtP3.js → kanban-definition-P3RFRI5V-DjHhlDbk.js} +9 -9
  106. package/dist/web/assets/{line-CuEhAU65.js → line-CGIAMPkR.js} +1 -1
  107. package/dist/web/assets/loadReferencedImage-DZ5eApE4.js +2 -0
  108. package/dist/web/assets/{mermaid-parser.core-CzCh9EE1.js → mermaid-parser.core-C18KmsD9.js} +6 -6
  109. package/dist/web/assets/mermaid.core-C9srNL3b.js +44 -0
  110. package/dist/web/assets/{mindmap-definition-THT77NOG-CBH0Z9AJ.js → mindmap-definition-LZFPQGKD-C38HXkG2.js} +24 -24
  111. package/dist/web/assets/packet-JDAUHWVQ-Br-8ADK6.js +1 -0
  112. package/dist/web/assets/{pdf-6mG9havR.js → pdf-C3f6Vjz7.js} +1 -1
  113. package/dist/web/assets/{pegDiagram-XKGWAZYB-BNpTWHo8.js → pegDiagram-BGZESJAR-Be49dM_b.js} +1 -1
  114. package/dist/web/assets/pie-XZMESJXO-68ykK6i1.js +1 -0
  115. package/dist/web/assets/{pieDiagram-E7YTZNPT-CZ34Q1W-.js → pieDiagram-CAPJLFHJ-DVOWjXQ_.js} +2 -2
  116. package/dist/web/assets/{quadrantDiagram-AXDQQJYC-C5aFQsIe.js → quadrantDiagram-GDMTTRAM-8la_R53U.js} +3 -3
  117. package/dist/web/assets/radar-ABXABTNO-K00ZGu13.js +1 -0
  118. package/dist/web/assets/railroad-I3PHUGI6-W7QuDysT.js +1 -0
  119. package/dist/web/assets/railroad-abnf-LNEFI6M7-DR6CNkaK.js +1 -0
  120. package/dist/web/assets/railroad-ebnf-DWYD2UWJ-dAhaGv5L.js +1 -0
  121. package/dist/web/assets/railroad-peg-JR7BVNR7-DwoiiDdE.js +1 -0
  122. package/dist/web/assets/{railroadDiagram-O6MQD6OU-B0ctRtRT.js → railroadDiagram-SM67HX2B-BuSjCs02.js} +1 -1
  123. package/dist/web/assets/{requirementDiagram-IS5BZ75X-BuOtNPGm.js → requirementDiagram-X7JNWC4A-3uq8m_5E.js} +11 -11
  124. package/dist/web/assets/{sankeyDiagram-P5KCCOFB-CybICPpQ.js → sankeyDiagram-UM26HJRW-BB9_G8bN.js} +3 -3
  125. package/dist/web/assets/sequenceDiagram-ZO4K6R2Y-CGehVq9k.js +169 -0
  126. package/dist/web/assets/stateDiagram-v2-TBUQTH76-CwMywh5s.js +291 -0
  127. package/dist/web/assets/swimlanes-N4OXWK64-CqjihurI.js +1 -0
  128. package/dist/web/assets/swimlanesDiagram-K3J5GTZL-Blk5ohUI.js +8 -0
  129. package/dist/web/assets/timeline-definition-YOQAKGHF-BtKnuY5Y.js +120 -0
  130. package/dist/web/assets/treeView-D4JQ5SDB-Dy4jC4wa.js +1 -0
  131. package/dist/web/assets/treemap-SAJKECNS-CHtGJD8P.js +1 -0
  132. package/dist/web/assets/usecaseDiagram-VIAY4XPW-BjnstWbR.js +328 -0
  133. package/dist/web/assets/vennDiagram-BLWOH2XV-o_EtJWVA.js +34 -0
  134. package/dist/web/assets/wardley-7MLQ67FV-BTheL3FW.js +1 -0
  135. package/dist/web/assets/{wardleyDiagram-VM6X3IG4-CzB2tR_t.js → wardleyDiagram-YMQ3BMBF-Bp_sv2v4.js} +3 -3
  136. package/dist/web/assets/xychartDiagram-TAQBALBS-C0IpEfij.js +7 -0
  137. package/dist/web/index.html +2 -2
  138. package/package.json +3 -3
  139. package/dist/web/assets/architecture-7GRP2DOG-BqTZwqCY.js +0 -1
  140. package/dist/web/assets/architectureDiagram-5GKGNRK7-BEGSAGSn.js +0 -36
  141. package/dist/web/assets/c4Diagram-7LVT6UL2-C6wQYxBC.js +0 -38
  142. package/dist/web/assets/channel-CbMG5PZq.js +0 -1
  143. package/dist/web/assets/chunk-3NF5O7KM-Dni31-nE.js +0 -168
  144. package/dist/web/assets/chunk-4HAMMTFA-hiqoLVtf.js +0 -62
  145. package/dist/web/assets/chunk-75Z2AOVW-1k7HRGrm.js +0 -2
  146. package/dist/web/assets/chunk-DU6HZSFF-Dy05V--k.js +0 -127
  147. package/dist/web/assets/chunk-FOHPRMQF-DHwB1DNv.js +0 -161
  148. package/dist/web/assets/chunk-GMAD6QVW-Bi5Ne8OE.js +0 -72
  149. package/dist/web/assets/chunk-HLEWEB6X-yamDqy1M.js +0 -206
  150. package/dist/web/assets/chunk-L3NEJ4N5-CQSamtuJ.js +0 -1
  151. package/dist/web/assets/chunk-OSK3NFVY-S95igUko.js +0 -10
  152. package/dist/web/assets/chunk-P2QGCYS3-BPor-azX.js +0 -1
  153. package/dist/web/assets/chunk-ZLD2IHE6-D0uZMMWb.js +0 -231
  154. package/dist/web/assets/classDiagram-CYGNFDIV-2Yl201cv.js +0 -1
  155. package/dist/web/assets/classDiagram-v2-TLXNO2FR-2Yl201cv.js +0 -1
  156. package/dist/web/assets/cynefin-OW5HDTMX-ua6bZIWp.js +0 -1
  157. package/dist/web/assets/dagre-OS7QT2EB-BRxaZdm2.js +0 -4
  158. package/dist/web/assets/dagre-PrKaheQc.js +0 -1
  159. package/dist/web/assets/diagram-VSXAHHWV-Dkh-RvzE.js +0 -3
  160. package/dist/web/assets/eventmodeling-NTZA5JFV-Bw8wULv_.js +0 -1
  161. package/dist/web/assets/flowDiagram-T62WH6J4-Dp4v9IDN.js +0 -1
  162. package/dist/web/assets/ganttDiagram-EL5Y4UJY-6dI1H52q.js +0 -292
  163. package/dist/web/assets/gitGraph-4MIJSDKK-UXnB0IFr.js +0 -1
  164. package/dist/web/assets/gitGraphDiagram-WWUBYQGX-B_wXPpx0.js +0 -106
  165. package/dist/web/assets/index-9y9n2Dul.css +0 -2
  166. package/dist/web/assets/index-COu8CnNa.js +0 -350
  167. package/dist/web/assets/info-A6RAGUB7-C2WWyNzF.js +0 -1
  168. package/dist/web/assets/infoDiagram-FKFFQAWI-DY65_ndC.js +0 -2
  169. package/dist/web/assets/loadReferencedImage-DgHMXQNZ.js +0 -2
  170. package/dist/web/assets/mermaid.core-BmGW_v8T.js +0 -44
  171. package/dist/web/assets/packet-AYTQ26CC-BYG_KViO.js +0 -1
  172. package/dist/web/assets/pie-WAS4IAKB-wBoUHr8R.js +0 -1
  173. package/dist/web/assets/radar-RG4KPBEZ-D4K5XP7X.js +0 -1
  174. package/dist/web/assets/railroad-74A4TZTK-Haum25Us.js +0 -1
  175. package/dist/web/assets/railroad-abnf-HS5TGJTU-D-kbOsoZ.js +0 -1
  176. package/dist/web/assets/railroad-ebnf-LZEXJU2U-CWtixpZf.js +0 -1
  177. package/dist/web/assets/railroad-peg-WCYAUIDC-BeY7arxf.js +0 -1
  178. package/dist/web/assets/sequenceDiagram-WJ2MYXX4-Dvo8sl8e.js +0 -162
  179. package/dist/web/assets/stateDiagram-XQSTLZYL-BcM-hGJa.js +0 -1
  180. package/dist/web/assets/stateDiagram-v2-IH3M54BS-hYgwFLzv.js +0 -1
  181. package/dist/web/assets/swimlanes-V6O3JKXN-mOOjKnlm.js +0 -1
  182. package/dist/web/assets/swimlanesDiagram-JKAHXJPX-C_yinM3f.js +0 -8
  183. package/dist/web/assets/timeline-definition-24CTP7MA-DuwMztTy.js +0 -120
  184. package/dist/web/assets/treeView-Q6P3EWNA-BT4vRttT.js +0 -1
  185. package/dist/web/assets/treemap-WGGIJYW6-Df6GHCE2.js +0 -1
  186. package/dist/web/assets/vennDiagram-4TSXK5OY-BbcbGn7o.js +0 -34
  187. package/dist/web/assets/wardley-WFR3VGLG-L_G3ydHA.js +0 -1
  188. package/dist/web/assets/xychartDiagram-S5SC5T6Z-CKHwJboP.js +0 -7
@@ -0,0 +1,136 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,n)=>t(e,`name`,{value:n,configurable:!0}),s=(e,t)=>function(){return e&&(t=(0,e[r(e)[0]])(e=0)),t},c=(e,t)=>function(){return t||(0,e[r(e)[0]])((t={exports:{}}).exports,t),t.exports},l=(e,n)=>{for(var r in n)t(e,r,{get:n[r],enumerable:!0})},u=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(let c of r(i))!a.call(e,c)&&c!==o&&t(e,c,{get:()=>i[c],enumerable:!(s=n(i,c))||s.enumerable});return e},d=(n,r,a)=>(a=n==null?{}:e(i(n)),u(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),f=e=>u(t({},`__esModule`,{value:!0}),e),p=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/is.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=n,e.number=r,e.error=i,e.func=a,e.array=s,e.stringArray=c;function t(e){return e===!0||e===!1}o(t,`boolean`);function n(e){return typeof e==`string`||e instanceof String}o(n,`string`);function r(e){return typeof e==`number`||e instanceof Number}o(r,`number`);function i(e){return e instanceof Error}o(i,`error`);function a(e){return typeof e==`function`}o(a,`func`);function s(e){return Array.isArray(e)}o(s,`array`);function c(e){return s(e)&&e.every(e=>n(e))}o(c,`stringArray`)}}),m=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messages.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})();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 i=r(p()),a;(function(e){e.ParseError=-32700,e.InvalidRequest=-32600,e.MethodNotFound=-32601,e.InvalidParams=-32602,e.InternalError=-32603,e.jsonrpcReservedErrorRangeStart=-32099,e.serverErrorStart=-32099,e.MessageWriteError=-32099,e.MessageReadError=-32098,e.PendingResponseRejected=-32097,e.ConnectionInactive=-32096,e.ServerNotInitialized=-32002,e.UnknownErrorCode=-32001,e.jsonrpcReservedErrorRangeEnd=-32e3,e.serverErrorEnd=-32e3})(a||(e.ErrorCodes=a={})),e.ResponseError=class e extends Error{static{o(this,`ResponseError`)}code;data;constructor(t,n,r){super(n),this.code=i.number(t)?t:a.UnknownErrorCode,this.data=r,Object.setPrototypeOf(this,e.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};var s=class e{static{o(this,`ParameterStructures`)}kind;static auto=new e(`auto`);static byPosition=new e(`byPosition`);static byName=new e(`byName`);constructor(e){this.kind=e}static is(t){return t===e.auto||t===e.byName||t===e.byPosition}toString(){return this.kind}};e.ParameterStructures=s;var c=class{static{o(this,`AbstractMessageSignature`)}method;numberOfParams;constructor(e,t){this.method=e,this.numberOfParams=t}get parameterStructures(){return s.auto}};e.AbstractMessageSignature=c,e.RequestType0=class extends c{static{o(this,`RequestType0`)}_;constructor(e){super(e,0)}},e.RequestType=class extends c{static{o(this,`RequestType`)}_parameterStructures;_;constructor(e,t=s.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType1=class extends c{static{o(this,`RequestType1`)}_parameterStructures;_;constructor(e,t=s.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.RequestType2=class extends c{static{o(this,`RequestType2`)}_;constructor(e){super(e,2)}},e.RequestType3=class extends c{static{o(this,`RequestType3`)}_;constructor(e){super(e,3)}},e.RequestType4=class extends c{static{o(this,`RequestType4`)}_;constructor(e){super(e,4)}},e.RequestType5=class extends c{static{o(this,`RequestType5`)}_;constructor(e){super(e,5)}},e.RequestType6=class extends c{static{o(this,`RequestType6`)}_;constructor(e){super(e,6)}},e.RequestType7=class extends c{static{o(this,`RequestType7`)}_;constructor(e){super(e,7)}},e.RequestType8=class extends c{static{o(this,`RequestType8`)}_;constructor(e){super(e,8)}},e.RequestType9=class extends c{static{o(this,`RequestType9`)}_;constructor(e){super(e,9)}},e.NotificationType=class extends c{static{o(this,`NotificationType`)}_parameterStructures;_;constructor(e,t=s.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType0=class extends c{static{o(this,`NotificationType0`)}_;constructor(e){super(e,0)}},e.NotificationType1=class extends c{static{o(this,`NotificationType1`)}_parameterStructures;_;constructor(e,t=s.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}},e.NotificationType2=class extends c{static{o(this,`NotificationType2`)}_;constructor(e){super(e,2)}},e.NotificationType3=class extends c{static{o(this,`NotificationType3`)}_;constructor(e){super(e,3)}},e.NotificationType4=class extends c{static{o(this,`NotificationType4`)}_;constructor(e){super(e,4)}},e.NotificationType5=class extends c{static{o(this,`NotificationType5`)}_;constructor(e){super(e,5)}},e.NotificationType6=class extends c{static{o(this,`NotificationType6`)}_;constructor(e){super(e,6)}},e.NotificationType7=class extends c{static{o(this,`NotificationType7`)}_;constructor(e){super(e,7)}},e.NotificationType8=class extends c{static{o(this,`NotificationType8`)}_;constructor(e){super(e,8)}},e.NotificationType9=class extends c{static{o(this,`NotificationType9`)}_;constructor(e){super(e,9)}};var l;(function(e){function t(e){let t=e;return t&&i.string(t.method)&&(i.string(t.id)||i.number(t.id))}o(t,`isRequest`),e.isRequest=t;function n(e){let t=e;return t&&i.string(t.method)&&e.id===void 0}o(n,`isNotification`),e.isNotification=n;function r(e){let t=e;return t&&(t.result!==void 0||!!t.error)&&(i.string(t.id)||i.number(t.id)||t.id===null)}o(r,`isResponse`),e.isResponse=r})(l||(e.Message=l={}))}}),h=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LRUCache=e.LinkedMap=e.Touch=void 0;var t;(function(e){e.None=0,e.First=1,e.AsOld=e.First,e.Last=2,e.AsNew=e.Last})(t||(e.Touch=t={}));var n=class{static{o(this,`LinkedMap`)}[Symbol.toStringTag]=`LinkedMap`;_map;_head;_tail;_size;_state;constructor(){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}before(e){let t=this._map.get(e);return t?t.previous?.value:void 0}after(e){let t=this._map.get(e);return t?t.next?.value:void 0}has(e){return this._map.has(e)}get(e,n=t.None){let r=this._map.get(e);if(r)return n!==t.None&&this.touch(r,n),r.value}set(e,n,r=t.None){let i=this._map.get(e);if(i)i.value=n,r!==t.None&&this.touch(i,r);else{switch(i={key:e,value:n,next:void 0,previous:void 0},r){case t.None:this.addItemLast(i);break;case t.First:this.addItemFirst(i);break;case t.Last:this.addItemLast(i);break;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 n=this._state,r=this._head;for(;r;){if(t?e.bind(t)(r.value,r.key,this):e(r.value,r.key,this),this._state!==n)throw Error(`LinkedMap got modified during iteration.`);r=r.next}}keys(){let e=this._state,t=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw Error(`LinkedMap got modified during iteration.`);if(t){let e={value:t.key,done:!1};return t=t.next,e}return{value:void 0,done:!0}},`next`)};return n}values(){let e=this._state,t=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw Error(`LinkedMap got modified during iteration.`);if(t){let e={value:t.value,done:!1};return t=t.next,e}return{value:void 0,done:!0}},`next`)};return n}entries(){let e=this._state,t=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw Error(`LinkedMap got modified during iteration.`);if(t){let e={value:[t.key,t.value],done:!1};return t=t.next,e}return{value:void 0,done:!0}},`next`)};return n}[Symbol.iterator](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,n=this.size;for(;t&&n>e;)this._map.delete(t.key),t=t.next,n--;this._head=t,this._size=n,t&&(t.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw Error(`Invalid list`);this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw Error(`Invalid list`);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,n=e.previous;if(!t||!n)throw Error(`Invalid list`);t.previous=n,n.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,n){if(!this._head||!this._tail)throw Error(`Invalid list`);if(n===t.First||n===t.Last){if(n===t.First){if(e===this._head)return;let t=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(t.previous=n,n.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===t.Last){if(e===this._tail)return;let t=e.next,n=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=n,n.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,n)=>{e.push([n,t])}),e}fromJSON(e){this.clear();for(let[t,n]of e)this.set(t,n)}};e.LinkedMap=n,e.LRUCache=class extends n{static{o(this,`LRUCache`)}_limit;_ratio;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,n=t.AsNew){return super.get(e,n)}peek(e){return super.get(e,t.None)}set(e,n){return super.set(e,n,t.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}}}),g=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/disposable.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Disposable=void 0;var t;(function(e){function t(e){return{dispose:e}}o(t,`create`),e.create=t})(t||(e.Disposable=t={}))}}),_=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/ral.js"(e){Object.defineProperty(e,"__esModule",{value:!0});var t;function n(){if(t===void 0)throw Error(`No runtime abstraction layer installed`);return t}o(n,`RAL`),(function(e){function n(e){if(e===void 0)throw Error(`No runtime abstraction layer provided`);t=e}o(n,`install`),e.install=n})(n||={}),e.default=n}}),v=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/events.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.Emitter=e.Event=void 0;var n=t(_()),r;(function(e){let t={dispose(){}};e.None=function(){return t}})(r||(e.Event=r={}));var i=class{static{o(this,`CallbackList`)}_callbacks;_contexts;add(e,t=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,t),`dispose`)})}remove(e,t=null){if(!this._callbacks)return;let n=!1;for(let r=0,i=this._callbacks.length;r<i;r++)if(this._callbacks[r]===e){if(this._contexts[r]===t){this._callbacks.splice(r,1),this._contexts.splice(r,1);return}n=!0}if(n)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),i=this._contexts.slice(0);for(let a=0,o=r.length;a<o;a++)try{t.push(r[a].apply(i[a],e))}catch(e){(0,n.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}};e.Emitter=class e{static{o(this,`Emitter`)}_options;static _noop=o(function(){},`_noop`);_event;_callbacks;constructor(e){this._options=e}get event(){return this._event||=(t,n,r)=>{this._callbacks||=new i,this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,n);let a={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(t,n),a.dispose=e._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},`dispose`)};return Array.isArray(r)&&r.push(a),a},this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&=(this._callbacks.dispose(),void 0)}}}}),y=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.CancellationTokenSource=e.CancellationToken=void 0;var a=i(_()),s=r(p()),c=v(),l;(function(e){e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:c.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:c.Event.None});function t(t){let n=t;return n&&(n===e.None||n===e.Cancelled||s.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(t,`is`),e.is=t})(l||(e.CancellationToken=l={}));var u=Object.freeze(function(e,t){let n=(0,a.default)().timer.setTimeout(e.bind(t),0);return{dispose(){n.dispose()}}}),d=class{static{o(this,`MutableToken`)}_isCancelled=!1;_emitter;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?u:(this._emitter||=new c.Emitter,this._emitter.event)}dispose(){this._emitter&&=(this._emitter.dispose(),void 0)}};e.CancellationTokenSource=class{static{o(this,`CancellationTokenSource`)}_token;get token(){return this._token||=new d,this._token}cancel(){this._token?this._token.cancel():this._token=l.Cancelled}dispose(){this._token?this._token instanceof d&&this._token.dispose():this._token=l.None}}}}),b=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=void 0;var t=y(),n;(function(e){e.Continue=0,e.Cancelled=1})(n||={}),e.SharedArraySenderStrategy=class{static{o(this,`SharedArraySenderStrategy`)}buffers;constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let t=new SharedArrayBuffer(4),r=new Int32Array(t,0,1);r[0]=n.Continue,this.buffers.set(e.id,t),e.$cancellationData=t}async sendCancellation(e,t){let r=this.buffers.get(t);if(r===void 0)return;let i=new Int32Array(r,0,1);Atomics.store(i,0,n.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};var r=class{static{o(this,`SharedArrayBufferCancellationToken`)}data;constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===n.Cancelled}get onCancellationRequested(){throw Error(`Cancellation over SharedArrayBuffer doesn't support cancellation events`)}},i=class{static{o(this,`SharedArrayBufferCancellationTokenSource`)}token;constructor(e){this.token=new r(e)}cancel(){}dispose(){}};e.SharedArrayReceiverStrategy=class{static{o(this,`SharedArrayReceiverStrategy`)}kind=`request`;createCancellationTokenSource(e){let n=e.$cancellationData;return n===void 0?new t.CancellationTokenSource:new i(n)}}}}),ee=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.Semaphore=void 0;var n=t(_());e.Semaphore=class{static{o(this,`Semaphore`)}_capacity;_active;_waiting;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,n)=>{this._waiting.push({thunk:e,resolve:t,reject:n}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length!==0&&this._active!==this._capacity&&(0,n.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error(`Too 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()}}}}}),x=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=void 0;var a=i(_()),s=r(p()),c=v(),l=ee(),u;(function(e){function t(e){let t=e;return t&&s.func(t.listen)&&s.func(t.dispose)&&s.func(t.onError)&&s.func(t.onClose)&&s.func(t.onPartialMessage)}o(t,`is`),e.is=t})(u||(e.MessageReader=u={}));var d=class{static{o(this,`AbstractMessageReader`)}errorEmitter;closeEmitter;partialMessageEmitter;constructor(){this.errorEmitter=new c.Emitter,this.closeEmitter=new c.Emitter,this.partialMessageEmitter=new c.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose(),this.partialMessageEmitter.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: ${s.string(e.message)?e.message:`unknown`}`)}};e.AbstractMessageReader=d;var f;(function(e){function t(e){let t,n,r=new Map,i,o=new Map;if(e===void 0||typeof e==`string`)t=e??`utf-8`;else{if(t=e.charset??`utf-8`,e.contentDecoder!==void 0&&(n=e.contentDecoder,r.set(n.name,n)),e.contentDecoders!==void 0)for(let t of e.contentDecoders)r.set(t.name,t);if(e.contentTypeDecoder!==void 0&&(i=e.contentTypeDecoder,o.set(i.name,i)),e.contentTypeDecoders!==void 0)for(let t of e.contentTypeDecoders)o.set(t.name,t)}return i===void 0&&(i=(0,a.default)().applicationJson.decoder,o.set(i.name,i)),{charset:t,contentDecoder:n,contentDecoders:r,contentTypeDecoder:i,contentTypeDecoders:o}}o(t,`fromOptions`),e.fromOptions=t})(f||={}),e.ReadableStreamMessageReader=class extends d{static{o(this,`ReadableStreamMessageReader`)}readable;options;callback;nextMessageLength;messageToken;buffer;partialMessageTimer;_partialMessageTimeout;readSemaphore;constructor(e,t){super(),this.readable=e,this.options=f.fromOptions(t),this.buffer=(0,a.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new l.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(this.nextMessageLength===-1){let e=this.buffer.tryReadHeaders(!0);if(!e)return;let t=e.get(`content-length`);if(!t){this.fireError(Error(`Header must provide a Content-Length property.
2
+ ${JSON.stringify(Object.fromEntries(e))}`));return}let n=parseInt(t);if(isNaN(n)){this.fireError(Error(`Content-Length value must be a number. Got ${t}`));return}this.nextMessageLength=n}let e=this.buffer.tryReadBody(this.nextMessageLength);if(e===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let t=this.options.contentDecoder===void 0?e:await this.options.contentDecoder.decode(e),n=await this.options.contentTypeDecoder.decode(t,this.options);this.callback(n)}).catch(e=>{this.fireError(e)})}}catch(e){this.fireError(e)}}clearPartialMessageTimer(){this.partialMessageTimer&&=(this.partialMessageTimer.dispose(),void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,a.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))}}}}),S=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=void 0;var a=i(_()),s=r(p()),c=ee(),l=v(),u=`Content-Length: `,d=`\r
3
+ `,f;(function(e){function t(e){let t=e;return t&&s.func(t.dispose)&&s.func(t.onClose)&&s.func(t.onError)&&s.func(t.write)}o(t,`is`),e.is=t})(f||(e.MessageWriter=f={}));var m=class{static{o(this,`AbstractMessageWriter`)}errorEmitter;closeEmitter;constructor(){this.errorEmitter=new l.Emitter,this.closeEmitter=new l.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,t,n){this.errorEmitter.fire([this.asError(e),t,n])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:Error(`Writer received error. Reason: ${s.string(e.message)?e.message:`unknown`}`)}};e.AbstractMessageWriter=m;var h;(function(e){function t(e){return e===void 0||typeof e==`string`?{charset:e??`utf-8`,contentTypeEncoder:(0,a.default)().applicationJson.encoder}:{charset:e.charset??`utf-8`,contentEncoder:e.contentEncoder,contentTypeEncoder:e.contentTypeEncoder??(0,a.default)().applicationJson.encoder}}o(t,`fromOptions`),e.fromOptions=t})(h||={}),e.WriteableStreamMessageWriter=class extends m{static{o(this,`WriteableStreamMessageWriter`)}writable;options;errorCount;writeSemaphore;constructor(e,t){super(),this.writable=e,this.options=h.fromOptions(t),this.errorCount=0,this.writeSemaphore=new c.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=>this.options.contentEncoder===void 0?e:this.options.contentEncoder.encode(e)).then(t=>{let n=[];return n.push(u,t.byteLength.toString(),d),n.push(d),this.doWrite(e,n,t)},e=>{throw this.fireError(e),e}))}async doWrite(e,t,n){try{return await this.writable.write(t.join(``),`ascii`),this.writable.write(n)}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()}}}}),C=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMessageBuffer=void 0;var t=13,n=10,r=`\r
4
+ `;e.AbstractMessageBuffer=class{static{o(this,`AbstractMessageBuffer`)}_encoding;_chunks;_totalLength;constructor(e=`utf-8`){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let t=typeof e==`string`?this.fromString(e,this._encoding):e;this._chunks.push(t),this._totalLength+=t.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let i=0,a=0,o=0,s=0;row:for(;a<this._chunks.length;){let e=this._chunks[a];for(o=0;o<e.length;){switch(e[o]){case t:switch(i){case 0:i=1;break;case 2:i=3;break;default:i=0}break;case n:switch(i){case 1:i=2;break;case 3:i=4,o++;break row;default:i=0}break;default:i=0}o++}s+=e.byteLength,a++}if(i!==4)return;let c=this._read(s+o),l=new Map,u=this.toString(c,`ascii`).split(r);if(u.length<2)return l;for(let t=0;t<u.length-2;t++){let n=u[t],r=n.indexOf(`:`);if(r===-1)throw Error(`Message header must separate key and value using ':'
5
+ ${n}`);let i=n.substr(0,r),a=n.substr(r+1).trim();l.set(e?i.toLowerCase():i,a)}return l}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)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],n=this.asNative(t,e);return this._chunks[0]=t.slice(e),this._totalLength-=e,n}let t=this.allocNative(e),n=0;for(;e>0;){let r=this._chunks[0];if(r.byteLength>e){let i=r.slice(0,e);t.set(i,n),n+=e,this._chunks[0]=r.slice(e),this._totalLength-=e,e-=e}else t.set(r,n),n+=r.byteLength,this._chunks.shift(),this._totalLength-=r.byteLength,e-=r.byteLength}return t}}}}),te=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/connection.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),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.TraceValue=e.Trace=e.NullLogger=e.ProgressType=e.ProgressToken=void 0,e.createMessageConnection=A;var a=i(_()),s=r(p()),c=m(),l=h(),u=v(),d=y(),f;(function(e){e.type=new c.NotificationType(`$/cancelRequest`)})(f||={});var g;(function(e){function t(e){return typeof e==`string`||typeof e==`number`}o(t,`is`),e.is=t})(g||(e.ProgressToken=g={}));var b;(function(e){e.type=new c.NotificationType(`$/progress`)})(b||={}),e.ProgressType=class{static{o(this,`ProgressType`)}__;_pr;constructor(){}};var ee;(function(e){function t(e){return s.func(e)}o(t,`is`),e.is=t})(ee||={}),e.NullLogger=Object.freeze({error:o(()=>{},`error`),warn:o(()=>{},`warn`),info:o(()=>{},`info`),log:o(()=>{},`log`)});var x;(function(e){e[e.Off=0]=`Off`,e[e.Messages=1]=`Messages`,e[e.Compact=2]=`Compact`,e[e.Verbose=3]=`Verbose`})(x||(e.Trace=x={}));var S;(function(e){e.Off=`off`,e.Messages=`messages`,e.Compact=`compact`,e.Verbose=`verbose`})(S||(e.TraceValue=S={})),e.TraceValues=S,(function(e){function t(t){if(!s.string(t))return e.Off;switch(t=t.toLowerCase(),t){case`off`:return e.Off;case`messages`:return e.Messages;case`compact`:return e.Compact;case`verbose`:return e.Verbose;default:return e.Off}}o(t,`fromString`),e.fromString=t;function n(t){switch(t){case e.Off:return`off`;case e.Messages:return`messages`;case e.Compact:return`compact`;case e.Verbose:return`verbose`;default:return`off`}}o(n,`toString`),e.toString=n})(x||(e.Trace=x={}));var C;(function(e){e.Text=`text`,e.JSON=`json`})(C||(e.TraceFormat=C={})),(function(e){function t(t){return s.string(t)?(t=t.toLowerCase(),t===`json`?e.JSON:e.Text):e.Text}o(t,`fromString`),e.fromString=t})(C||(e.TraceFormat=C={}));var te;(function(e){e.type=new c.NotificationType(`$/setTrace`)})(te||(e.SetTraceNotification=te={}));var w;(function(e){e.type=new c.NotificationType(`$/logTrace`)})(w||(e.LogTraceNotification=w={}));var ne;(function(e){e[e.Closed=1]=`Closed`,e[e.Disposed=2]=`Disposed`,e[e.AlreadyListening=3]=`AlreadyListening`})(ne||(e.ConnectionErrors=ne={}));var re=class e extends Error{static{o(this,`ConnectionError`)}code;constructor(t,n){super(n),this.code=t,Object.setPrototypeOf(this,e.prototype)}};e.ConnectionError=re;var T;(function(e){function t(e){let t=e;return t&&s.func(t.cancelUndispatched)}o(t,`is`),e.is=t})(T||(e.ConnectionStrategy=T={}));var ie;(function(e){function t(e){let t=e;return t&&(t.kind===void 0||t.kind===`id`)&&s.func(t.createCancellationTokenSource)&&(t.dispose===void 0||s.func(t.dispose))}o(t,`is`),e.is=t})(ie||(e.IdCancellationReceiverStrategy=ie={}));var E;(function(e){function t(e){let t=e;return t&&t.kind===`request`&&s.func(t.createCancellationTokenSource)&&(t.dispose===void 0||s.func(t.dispose))}o(t,`is`),e.is=t})(E||(e.RequestCancellationReceiverStrategy=E={}));var D;(function(e){e.Message=Object.freeze({createCancellationTokenSource(e){return new d.CancellationTokenSource}});function t(e){return ie.is(e)||E.is(e)}o(t,`is`),e.is=t})(D||(e.CancellationReceiverStrategy=D={}));var O;(function(e){e.Message=Object.freeze({sendCancellation(e,t){return e.sendNotification(f.type,{id:t})},cleanup(e){}});function t(e){let t=e;return t&&s.func(t.sendCancellation)&&s.func(t.cleanup)}o(t,`is`),e.is=t})(O||(e.CancellationSenderStrategy=O={}));var ae;(function(e){e.Message=Object.freeze({receiver:D.Message,sender:O.Message});function t(e){let t=e;return t&&D.is(t.receiver)&&O.is(t.sender)}o(t,`is`),e.is=t})(ae||(e.CancellationStrategy=ae={}));var oe;(function(e){function t(e){let t=e;return t&&s.func(t.handleMessage)}o(t,`is`),e.is=t})(oe||(e.MessageStrategy=oe={}));var se;(function(e){function t(e){let t=e;return t&&(ae.is(t.cancellationStrategy)||T.is(t.connectionStrategy)||oe.is(t.messageStrategy)||s.number(t.maxParallelism))}o(t,`is`),e.is=t})(se||(e.ConnectionOptions=se={}));var k;(function(e){e[e.New=1]=`New`,e[e.Listening=2]=`Listening`,e[e.Closed=3]=`Closed`,e[e.Disposed=4]=`Disposed`})(k||={});function A(t,n,r,i){let p=r===void 0?e.NullLogger:r,m=0,h=0,_=0,v=i?.maxParallelism??-1,y=0,S,T=new Map,E,D=new Map,O=new Map,se,A=new l.LinkedMap,ce=new Map,le=new Set,ue=new Map,j=x.Off,de=C.Text,M,fe=k.New,pe=new u.Emitter,me=new u.Emitter,he=new u.Emitter,N=new u.Emitter,ge=new u.Emitter,_e=i&&i.cancellationStrategy?i.cancellationStrategy:ae.Message;function ve(e){}o(ve,`cancelUndispatched`);function ye(){return fe===k.Listening}o(ye,`isListening`);function be(){return fe===k.Closed}o(be,`isClosed`);function xe(){return fe===k.Disposed}o(xe,`isDisposed`);function Se(){(fe===k.New||fe===k.Listening)&&(fe=k.Closed,me.fire(void 0))}o(Se,`closeHandler`);function Ce(e){pe.fire([e,void 0,void 0])}o(Ce,`readErrorHandler`);function we(e){pe.fire(e)}o(we,`writeErrorHandler`),t.onClose(Se),t.onError(Ce),n.onClose(Se),n.onError(we);function Te(e){if(e===null)throw Error(`Can't send requests with id null since the response can't be correlated.`);return`req-`+e.toString()}o(Te,`createRequestQueueKey`);function Ee(e){return e===null?`res-unknown-`+(++_).toString():`res-`+e.toString()}o(Ee,`createResponseQueueKey`);function De(){return`not-`+(++h).toString()}o(De,`createNotificationQueueKey`);function Oe(e,t){c.Message.isRequest(t)?e.set(Te(t.id),t):c.Message.isResponse(t)?v===-1?e.set(Ee(t.id),t):Ne(t):e.set(De(),t)}o(Oe,`addMessageToQueue`);function ke(){se||A.size===0||v!==-1&&y>=v||(se=(0,a.default)().timer.setImmediate(async()=>{if(se=void 0,A.size===0||v!==-1&&y>=v)return;let e=A.shift(),t;try{y++;let n=i?.messageStrategy;t=oe.is(n)?n.handleMessage(e,Ae):Ae(e)}catch(e){p.error(`Processing message queue failed: ${e.toString()}`)}finally{t instanceof Promise?t.then(()=>{y--,ke()}).catch(e=>{p.error(`Processing message queue failed: ${e.toString()}`)}):y--,ke()}}))}o(ke,`triggerMessageQueue`);async function Ae(e){return c.Message.isRequest(e)?Me(e):c.Message.isNotification(e)?Pe(e):c.Message.isResponse(e)?Ne(e):Fe(e)}o(Ae,`handleMessage`);let je=o(e=>{try{if(c.Message.isNotification(e)&&e.method===f.type.method){let t=e.params.id,r=Te(t),a=A.get(r);if(c.Message.isRequest(a)){let o=i?.connectionStrategy,s=o&&o.cancelUndispatched?o.cancelUndispatched(a,ve):void 0;if(s&&(s.error!==void 0||s.result!==void 0)){A.delete(r),ue.delete(t),s.id=a.id,ze(s,e.method,Date.now()),n.write(s).catch(()=>p.error(`Sending response for canceled message failed.`));return}}let o=ue.get(t);if(o!==void 0){o.cancel(),Ve(e);return}le.add(t)}Oe(A,e)}finally{ke()}},`callback`);async function Me(e){if(xe())return Promise.resolve();function t(t,r,i){let a={jsonrpc:`2.0`,id:e.id};return t instanceof c.ResponseError?a.error=t.toJson():a.result=t===void 0?null:t,ze(a,r,i),n.write(a)}o(t,`reply`);function r(t,r,i){let a={jsonrpc:`2.0`,id:e.id,error:t.toJson()};return ze(a,r,i),n.write(a)}o(r,`replyError`),Be(e);let i=T.get(e.method),a,l;i&&(a=i.type,l=i.handler);let u=Date.now();if(l||S){let n=e.id??String(Date.now()),i=ie.is(_e.receiver)?_e.receiver.createCancellationTokenSource(n):_e.receiver.createCancellationTokenSource(e);e.id!==null&&le.has(e.id)&&i.cancel(),e.id!==null&&ue.set(n,i);try{let n;if(l){if(e.params===void 0){if(a!==void 0&&a.numberOfParams!==0)return r(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines ${a.numberOfParams} params but received none.`),e.method,u);n=l(i.token)}else if(Array.isArray(e.params)){if(a!==void 0&&a.parameterStructures===c.ParameterStructures.byName)return r(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by name but received parameters by position`),e.method,u);n=l(...e.params,i.token)}else{if(a!==void 0&&a.parameterStructures===c.ParameterStructures.byPosition)return r(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by position but received parameters by name`),e.method,u);n=l(e.params,i.token)}}else S&&(n=S(e.method,e.params,i.token));await t(await n,e.method,u)}catch(n){n instanceof c.ResponseError?await t(n,e.method,u):n&&s.string(n.message)?await r(new c.ResponseError(c.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${n.message}`),e.method,u):await r(new c.ResponseError(c.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,u)}finally{ue.delete(n)}}else await r(new c.ResponseError(c.ErrorCodes.MethodNotFound,`Unhandled method ${e.method}`),e.method,u)}o(Me,`handleRequest`);function Ne(e){if(!xe()){if(e.id===null)e.error?p.error(`Received response message without id: Error is:
6
+ ${JSON.stringify(e.error,void 0,4)}`):p.error(`Received response message without id. No further error information provided.`);else{let t=e.id,n=ce.get(t);if(He(e,n),n!==void 0){ce.delete(t);try{if(e.error){let t=e.error;n.reject(new c.ResponseError(t.code,t.message,t.data))}else if(e.result!==void 0)n.resolve(e.result);else throw Error(`Should never happen.`)}catch(e){e.message?p.error(`Response handler '${n.method}' failed with message: ${e.message}`):p.error(`Response handler '${n.method}' failed unexpectedly.`)}}}}}o(Ne,`handleResponse`);async function Pe(e){if(xe())return;let t,n;if(e.method===f.type.method){let t=e.params.id;le.delete(t),Ve(e);return}{let r=D.get(e.method);r&&(n=r.handler,t=r.type)}if(n||E)try{if(Ve(e),n){if(e.params===void 0)t!==void 0&&t.numberOfParams!==0&&t.parameterStructures!==c.ParameterStructures.byName&&p.error(`Notification ${e.method} defines ${t.numberOfParams} params but received none.`),await n();else if(Array.isArray(e.params)){let r=e.params;e.method===b.type.method&&r.length===2&&g.is(r[0])?await n({token:r[0],value:r[1]}):(t!==void 0&&(t.parameterStructures===c.ParameterStructures.byName&&p.error(`Notification ${e.method} defines parameters by name but received parameters by position`),t.numberOfParams!==e.params.length&&p.error(`Notification ${e.method} defines ${t.numberOfParams} params but received ${r.length} arguments`)),await n(...r))}else t!==void 0&&t.parameterStructures===c.ParameterStructures.byPosition&&p.error(`Notification ${e.method} defines parameters by position but received parameters by name`),await n(e.params)}else E&&await E(e.method,e.params)}catch(t){t.message?p.error(`Notification handler '${e.method}' failed with message: ${t.message}`):p.error(`Notification handler '${e.method}' failed unexpectedly.`)}else he.fire(e)}o(Pe,`handleNotification`);function Fe(e){if(!e){p.error(`Received empty message.`);return}p.error(`Received message which is neither a response nor a notification message:
7
+ ${JSON.stringify(e,null,4)}`);let t=e;if(s.string(t.id)||s.number(t.id)){let e=t.id,n=ce.get(e);n&&n.reject(Error(`The received response has neither a result nor an error property.`))}}o(Fe,`handleInvalidMessage`);function Ie(e){if(e!=null)switch(j){case x.Verbose:return JSON.stringify(e,null,4);case x.Compact:return JSON.stringify(e);default:return}}o(Ie,`stringifyTrace`);function Le(e){if(!(j===x.Off||!M)){if(de===C.Text){let t;(j===x.Verbose||j===x.Compact)&&e.params&&(t=`Params: ${Ie(e.params)}`),M.log(`Sending request '${e.method} - (${e.id})'.`,t)}else Ue(`send-request`,e)}}o(Le,`traceSendingRequest`);function Re(e){if(!(j===x.Off||!M)){if(de===C.Text){let t;(j===x.Verbose||j===x.Compact)&&(t=e.params?`Params: ${Ie(e.params)}`:`No parameters provided.`),M.log(`Sending notification '${e.method}'.`,t)}else Ue(`send-notification`,e)}}o(Re,`traceSendingNotification`);function ze(e,t,n){if(!(j===x.Off||!M)){if(de===C.Text){let r;(j===x.Verbose||j===x.Compact)&&(e.error&&e.error.data?r=`Error data: ${Ie(e.error.data)}`:e.result?r=`Result: ${Ie(e.result)}`:e.error===void 0&&(r=`No result returned.`));let i=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:``;M.log(`Sending response '${t} - (${e.id})'. Processing request took ${Date.now()-n}ms.${i}`,r)}else Ue(`send-response`,e)}}o(ze,`traceSendingResponse`);function Be(e){if(!(j===x.Off||!M)){if(de===C.Text){let t;(j===x.Verbose||j===x.Compact)&&e.params&&(t=`Params: ${Ie(e.params)}`),M.log(`Received request '${e.method} - (${e.id})'.`,t)}else Ue(`receive-request`,e)}}o(Be,`traceReceivedRequest`);function Ve(e){if(!(j===x.Off||!M||e.method===w.type.method)){if(de===C.Text){let t;(j===x.Verbose||j===x.Compact)&&(t=e.params?`Params: ${Ie(e.params)}`:`No parameters provided.`),M.log(`Received notification '${e.method}'.`,t)}else Ue(`receive-notification`,e)}}o(Ve,`traceReceivedNotification`);function He(e,t){if(!(j===x.Off||!M)){if(de===C.Text){let n;if((j===x.Verbose||j===x.Compact)&&(e.error&&e.error.data?n=`Error data: ${Ie(e.error.data)}`:e.result?n=`Result: ${Ie(e.result)}`:e.error===void 0&&(n=`No result returned.`)),t){let r=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:``;M.log(`Received response '${t.method} - (${e.id})' in ${Date.now()-t.timerStart}ms.${r}`,n)}else M.log(`Received response ${e.id} without active response promise.`,n)}else Ue(`receive-response`,e)}}o(He,`traceReceivedResponse`);function Ue(e,t){if(!M||j===x.Off)return;let n={isLSPMessage:!0,type:e,message:t,timestamp:Date.now()};M.log(n)}o(Ue,`logLSPMessage`);function We(){if(be())throw new re(ne.Closed,`Connection is closed.`);if(xe())throw new re(ne.Disposed,`Connection is disposed.`)}o(We,`throwIfClosedOrDisposed`);function Ge(){if(ye())throw new re(ne.AlreadyListening,`Connection is already listening`)}o(Ge,`throwIfListening`);function Ke(){if(!ye())throw Error(`Call listen() first.`)}o(Ke,`throwIfNotListening`);function qe(e){return e===void 0?null:e}o(qe,`undefinedToNull`);function Je(e){if(e!==null)return e}o(Je,`nullToUndefined`);function Ye(e){return e!=null&&!Array.isArray(e)&&typeof e==`object`}o(Ye,`isNamedParam`);function Xe(e,t){switch(e){case c.ParameterStructures.auto:return Ye(t)?Je(t):[qe(t)];case c.ParameterStructures.byName:if(!Ye(t))throw Error(`Received parameters by name but param is not an object literal.`);return Je(t);case c.ParameterStructures.byPosition:return[qe(t)];default:throw Error(`Unknown parameter structure ${e.toString()}`)}}o(Xe,`computeSingleParam`);function Ze(e,t){let n,r=e.numberOfParams;switch(r){case 0:n=void 0;break;case 1:n=Xe(e.parameterStructures,t[0]);break;default:n=[];for(let e=0;e<t.length&&e<r;e++)n.push(qe(t[e]));if(t.length<r)for(let e=t.length;e<r;e++)n.push(null)}return n}o(Ze,`computeMessageParams`);let Qe={sendNotification:o((e,...t)=>{We();let r,i;if(s.string(e)){r=e;let n=t[0],a=0,o=c.ParameterStructures.auto;c.ParameterStructures.is(n)&&(a=1,o=n);let s=t.length,l=s-a;switch(l){case 0:i=void 0;break;case 1:i=Xe(o,t[a]);break;default:if(o===c.ParameterStructures.byName)throw Error(`Received ${l} parameters for 'by Name' notification parameter structure.`);i=t.slice(a,s).map(e=>qe(e))}}else{let n=t;r=e.method,i=Ze(e,n)}let a={jsonrpc:`2.0`,method:r,params:i};return Re(a),n.write(a).catch(e=>{throw p.error(`Sending notification failed.`),e})},`sendNotification`),onNotification:o((e,t)=>{We();let n;return s.func(e)?E=e:t&&(s.string(e)?(n=e,D.set(e,{type:void 0,handler:t})):(n=e.method,D.set(e.method,{type:e,handler:t}))),{dispose:o(()=>{n===void 0?E===e&&(E=void 0):D.get(n)?.handler===t&&D.delete(n)},`dispose`)}},`onNotification`),onProgress:o((e,t,n)=>{if(O.has(t))throw Error(`Progress handler for token ${t} already registered`);return O.set(t,n),{dispose:o(()=>{O.get(t)===n&&O.delete(t)},`dispose`)}},`onProgress`),sendProgress:o((e,t,n)=>Qe.sendNotification(b.type,{token:t,value:n}),`sendProgress`),onUnhandledProgress:N.event,sendRequest:o((e,...t)=>{We(),Ke();function r(e,t){let n=_e.sender.sendCancellation(e,t);n===void 0?p.log(`Received no promise from cancellation strategy when cancelling id ${t}`):n.catch(()=>{p.log(`Sending cancellation messages for id ${t} failed.`)})}o(r,`sendCancellation`);let i,a,l;if(s.string(e)){i=e;let n=t[0],r=t[t.length-1],o=0,s=c.ParameterStructures.auto;c.ParameterStructures.is(n)&&(o=1,s=n);let u=t.length;d.CancellationToken.is(r)&&(--u,l=r);let f=u-o;switch(f){case 0:a=void 0;break;case 1:a=Xe(s,t[o]);break;default:if(s===c.ParameterStructures.byName)throw Error(`Received ${f} parameters for 'by Name' request parameter structure.`);a=t.slice(o,u).map(e=>qe(e))}}else{let n=t;i=e.method,a=Ze(e,n);let r=e.numberOfParams;l=d.CancellationToken.is(n[r])?n[r]:void 0}let u=m++,f,h=!1;l!==void 0&&(l.isCancellationRequested?h=!0:f=l.onCancellationRequested(()=>{r(Qe,u)}));let g={jsonrpc:`2.0`,id:u,method:i,params:a};return Le(g),typeof _e.sender.enableCancellation==`function`&&_e.sender.enableCancellation(g),new Promise(async(e,t)=>{let a=o(t=>{e(t),_e.sender.cleanup(u),f?.dispose()},`resolveWithCleanup`),s=o(e=>{t(e),_e.sender.cleanup(u),f?.dispose()},`rejectWithCleanup`),l={method:i,timerStart:Date.now(),resolve:a,reject:s};try{ce.set(u,l),await n.write(g),h&&r(Qe,u)}catch(e){ce.delete(u),l.reject(new c.ResponseError(c.ErrorCodes.MessageWriteError,e.message?e.message:`Unknown reason`)),p.error(`Sending request failed.`)}})},`sendRequest`),onRequest:o((e,t)=>{We();let n=null;return ee.is(e)?(n=void 0,S=e):s.string(e)?(n=null,t!==void 0&&(n=e,T.set(e,{handler:t,type:void 0}))):t!==void 0&&(n=e.method,T.set(e.method,{type:e,handler:t})),{dispose:o(()=>{n!==null&&(n===void 0?S===e&&(S=void 0):T.get(n)?.handler===t&&T.delete(n))},`dispose`)}},`onRequest`),hasPendingResponse:o(()=>ce.size>0,`hasPendingResponse`),trace:o(async(e,t,n)=>{let r=!1,i=C.Text;n!==void 0&&(s.boolean(n)?r=n:(r=n.sendNotification||!1,i=n.traceFormat||C.Text)),j=e,de=i,M=j===x.Off?void 0:t,r&&!be()&&!xe()&&await Qe.sendNotification(te.type,{value:x.toString(e)})},`trace`),onError:pe.event,onClose:me.event,onUnhandledNotification:he.event,onDispose:ge.event,end:o(()=>{n.end()},`end`),dispose:o(()=>{if(xe())return;fe=k.Disposed,ge.fire(void 0);let e=new c.ResponseError(c.ErrorCodes.PendingResponseRejected,`Pending response rejected since connection got disposed`);for(let t of ce.values())t.reject(e);ce=new Map,ue=new Map,le=new Set,A=new l.LinkedMap,s.func(n.dispose)&&n.dispose(),s.func(t.dispose)&&t.dispose()},`dispose`),listen:o(()=>{We(),Ge(),fe=k.Listening,t.listen(je)},`listen`),inspect:o(()=>{(0,a.default)().console.log(`inspect`)},`inspect`)};return Qe.onNotification(w.type,e=>{if(j===x.Off||!M)return;let t=j===x.Verbose||j===x.Compact;M.log(e.message,t?e.verbose:void 0)}),Qe.onNotification(b.type,async e=>{let t=O.get(e.token);t?await t(e.value):N.fire(e)}),Qe}o(A,`createMessageConnection`)}}),w=c({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/api.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default: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.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.CancellationReceiverStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.TraceValue=e.Trace=void 0;var n=m();Object.defineProperty(e,"Message",{enumerable:!0,get:o(function(){return n.Message},`get`)}),Object.defineProperty(e,"RequestType",{enumerable:!0,get:o(function(){return n.RequestType},`get`)}),Object.defineProperty(e,"RequestType0",{enumerable:!0,get:o(function(){return n.RequestType0},`get`)}),Object.defineProperty(e,"RequestType1",{enumerable:!0,get:o(function(){return n.RequestType1},`get`)}),Object.defineProperty(e,"RequestType2",{enumerable:!0,get:o(function(){return n.RequestType2},`get`)}),Object.defineProperty(e,"RequestType3",{enumerable:!0,get:o(function(){return n.RequestType3},`get`)}),Object.defineProperty(e,"RequestType4",{enumerable:!0,get:o(function(){return n.RequestType4},`get`)}),Object.defineProperty(e,"RequestType5",{enumerable:!0,get:o(function(){return n.RequestType5},`get`)}),Object.defineProperty(e,"RequestType6",{enumerable:!0,get:o(function(){return n.RequestType6},`get`)}),Object.defineProperty(e,"RequestType7",{enumerable:!0,get:o(function(){return n.RequestType7},`get`)}),Object.defineProperty(e,"RequestType8",{enumerable:!0,get:o(function(){return n.RequestType8},`get`)}),Object.defineProperty(e,"RequestType9",{enumerable:!0,get:o(function(){return n.RequestType9},`get`)}),Object.defineProperty(e,"ResponseError",{enumerable:!0,get:o(function(){return n.ResponseError},`get`)}),Object.defineProperty(e,"ErrorCodes",{enumerable:!0,get:o(function(){return n.ErrorCodes},`get`)}),Object.defineProperty(e,"NotificationType",{enumerable:!0,get:o(function(){return n.NotificationType},`get`)}),Object.defineProperty(e,"NotificationType0",{enumerable:!0,get:o(function(){return n.NotificationType0},`get`)}),Object.defineProperty(e,"NotificationType1",{enumerable:!0,get:o(function(){return n.NotificationType1},`get`)}),Object.defineProperty(e,"NotificationType2",{enumerable:!0,get:o(function(){return n.NotificationType2},`get`)}),Object.defineProperty(e,"NotificationType3",{enumerable:!0,get:o(function(){return n.NotificationType3},`get`)}),Object.defineProperty(e,"NotificationType4",{enumerable:!0,get:o(function(){return n.NotificationType4},`get`)}),Object.defineProperty(e,"NotificationType5",{enumerable:!0,get:o(function(){return n.NotificationType5},`get`)}),Object.defineProperty(e,"NotificationType6",{enumerable:!0,get:o(function(){return n.NotificationType6},`get`)}),Object.defineProperty(e,"NotificationType7",{enumerable:!0,get:o(function(){return n.NotificationType7},`get`)}),Object.defineProperty(e,"NotificationType8",{enumerable:!0,get:o(function(){return n.NotificationType8},`get`)}),Object.defineProperty(e,"NotificationType9",{enumerable:!0,get:o(function(){return n.NotificationType9},`get`)}),Object.defineProperty(e,"ParameterStructures",{enumerable:!0,get:o(function(){return n.ParameterStructures},`get`)});var r=h();Object.defineProperty(e,"LinkedMap",{enumerable:!0,get:o(function(){return r.LinkedMap},`get`)}),Object.defineProperty(e,"LRUCache",{enumerable:!0,get:o(function(){return r.LRUCache},`get`)}),Object.defineProperty(e,"Touch",{enumerable:!0,get:o(function(){return r.Touch},`get`)});var i=g();Object.defineProperty(e,"Disposable",{enumerable:!0,get:o(function(){return i.Disposable},`get`)});var a=v();Object.defineProperty(e,"Event",{enumerable:!0,get:o(function(){return a.Event},`get`)}),Object.defineProperty(e,"Emitter",{enumerable:!0,get:o(function(){return a.Emitter},`get`)});var s=y();Object.defineProperty(e,"CancellationTokenSource",{enumerable:!0,get:o(function(){return s.CancellationTokenSource},`get`)}),Object.defineProperty(e,"CancellationToken",{enumerable:!0,get:o(function(){return s.CancellationToken},`get`)});var c=b();Object.defineProperty(e,"SharedArraySenderStrategy",{enumerable:!0,get:o(function(){return c.SharedArraySenderStrategy},`get`)}),Object.defineProperty(e,"SharedArrayReceiverStrategy",{enumerable:!0,get:o(function(){return c.SharedArrayReceiverStrategy},`get`)});var l=x();Object.defineProperty(e,"MessageReader",{enumerable:!0,get:o(function(){return l.MessageReader},`get`)}),Object.defineProperty(e,"AbstractMessageReader",{enumerable:!0,get:o(function(){return l.AbstractMessageReader},`get`)}),Object.defineProperty(e,"ReadableStreamMessageReader",{enumerable:!0,get:o(function(){return l.ReadableStreamMessageReader},`get`)});var u=S();Object.defineProperty(e,"MessageWriter",{enumerable:!0,get:o(function(){return u.MessageWriter},`get`)}),Object.defineProperty(e,"AbstractMessageWriter",{enumerable:!0,get:o(function(){return u.AbstractMessageWriter},`get`)}),Object.defineProperty(e,"WriteableStreamMessageWriter",{enumerable:!0,get:o(function(){return u.WriteableStreamMessageWriter},`get`)});var d=C();Object.defineProperty(e,"AbstractMessageBuffer",{enumerable:!0,get:o(function(){return d.AbstractMessageBuffer},`get`)});var f=te();Object.defineProperty(e,"ConnectionStrategy",{enumerable:!0,get:o(function(){return f.ConnectionStrategy},`get`)}),Object.defineProperty(e,"ConnectionOptions",{enumerable:!0,get:o(function(){return f.ConnectionOptions},`get`)}),Object.defineProperty(e,"NullLogger",{enumerable:!0,get:o(function(){return f.NullLogger},`get`)}),Object.defineProperty(e,"createMessageConnection",{enumerable:!0,get:o(function(){return f.createMessageConnection},`get`)}),Object.defineProperty(e,"ProgressToken",{enumerable:!0,get:o(function(){return f.ProgressToken},`get`)}),Object.defineProperty(e,"ProgressType",{enumerable:!0,get:o(function(){return f.ProgressType},`get`)}),Object.defineProperty(e,"Trace",{enumerable:!0,get:o(function(){return f.Trace},`get`)}),Object.defineProperty(e,"TraceValue",{enumerable:!0,get:o(function(){return f.TraceValue},`get`)}),Object.defineProperty(e,"TraceFormat",{enumerable:!0,get:o(function(){return f.TraceFormat},`get`)}),Object.defineProperty(e,"SetTraceNotification",{enumerable:!0,get:o(function(){return f.SetTraceNotification},`get`)}),Object.defineProperty(e,"LogTraceNotification",{enumerable:!0,get:o(function(){return f.LogTraceNotification},`get`)}),Object.defineProperty(e,"ConnectionErrors",{enumerable:!0,get:o(function(){return f.ConnectionErrors},`get`)}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:o(function(){return f.ConnectionError},`get`)}),Object.defineProperty(e,"CancellationReceiverStrategy",{enumerable:!0,get:o(function(){return f.CancellationReceiverStrategy},`get`)}),Object.defineProperty(e,"IdCancellationReceiverStrategy",{enumerable:!0,get:o(function(){return f.IdCancellationReceiverStrategy},`get`)}),Object.defineProperty(e,"RequestCancellationReceiverStrategy",{enumerable:!0,get:o(function(){return f.RequestCancellationReceiverStrategy},`get`)}),Object.defineProperty(e,"CancellationSenderStrategy",{enumerable:!0,get:o(function(){return f.CancellationSenderStrategy},`get`)}),Object.defineProperty(e,"CancellationStrategy",{enumerable:!0,get:o(function(){return f.CancellationStrategy},`get`)}),Object.defineProperty(e,"MessageStrategy",{enumerable:!0,get:o(function(){return f.MessageStrategy},`get`)}),Object.defineProperty(e,"TraceValues",{enumerable:!0,get:o(function(){return f.TraceValues},`get`)}),e.RAL=t(_()).default}}),ne={};l(ne,{AnnotatedTextEdit:()=>ge,ApplyKind:()=>Re,ChangeAnnotation:()=>he,ChangeAnnotationIdentifier:()=>N,CodeAction:()=>rt,CodeActionContext:()=>tt,CodeActionKind:()=>$e,CodeActionTag:()=>nt,CodeActionTriggerKind:()=>et,CodeDescription:()=>M,CodeLens:()=>it,Color:()=>se,ColorInformation:()=>k,ColorPresentation:()=>A,Command:()=>pe,CompletionItem:()=>Be,CompletionItemKind:()=>Ne,CompletionItemLabelDetails:()=>ze,CompletionItemTag:()=>Fe,CompletionList:()=>Ve,CreateFile:()=>ve,DeleteFile:()=>be,Diagnostic:()=>fe,DiagnosticRelatedInformation:()=>ue,DiagnosticSeverity:()=>j,DiagnosticTag:()=>de,DocumentHighlight:()=>qe,DocumentHighlightKind:()=>Ke,DocumentLink:()=>ot,DocumentSymbol:()=>Qe,DocumentUri:()=>re,EOL:()=>Tt,FoldingRange:()=>le,FoldingRangeKind:()=>ce,FormattingOptions:()=>at,Hover:()=>Ue,InlayHint:()=>_t,InlayHintKind:()=>ht,InlayHintLabelPart:()=>gt,InlineCompletionContext:()=>Ct,InlineCompletionItem:()=>yt,InlineCompletionList:()=>bt,InlineCompletionTriggerKind:()=>xt,InlineValueContext:()=>mt,InlineValueEvaluatableExpression:()=>pt,InlineValueText:()=>dt,InlineValueVariableLookup:()=>ft,InsertReplaceEdit:()=>Ie,InsertTextFormat:()=>Pe,InsertTextMode:()=>Le,LanguageKind:()=>ke,Location:()=>ae,LocationLink:()=>oe,MarkedString:()=>He,MarkupContent:()=>Me,MarkupKind:()=>je,OptionalVersionedTextDocumentIdentifier:()=>Oe,ParameterInformation:()=>We,Position:()=>D,Range:()=>O,RenameFile:()=>ye,SelectedCompletionInfo:()=>St,SelectionRange:()=>st,SemanticTokenModifiers:()=>lt,SemanticTokenTypes:()=>ct,SemanticTokens:()=>ut,SignatureInformation:()=>Ge,SnippetTextEdit:()=>Ce,StringValue:()=>vt,SymbolInformation:()=>Xe,SymbolKind:()=>Je,SymbolTag:()=>Ye,TextDocument:()=>Et,TextDocumentEdit:()=>_e,TextDocumentIdentifier:()=>Ee,TextDocumentItem:()=>Ae,TextEdit:()=>me,URI:()=>T,VersionedTextDocumentIdentifier:()=>De,WorkspaceChange:()=>Te,WorkspaceEdit:()=>xe,WorkspaceFolder:()=>wt,WorkspaceSymbol:()=>Ze,integer:()=>ie,uinteger:()=>E});var re,T,ie,E,D,O,ae,oe,se,k,A,ce,le,ue,j,de,M,fe,pe,me,he,N,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,De,Oe,ke,Ae,je,Me,Ne,Pe,Fe,Ie,Le,Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,at,ot,st,ct,lt,ut,dt,ft,pt,mt,ht,gt,_t,vt,yt,bt,xt,St,Ct,wt,Tt,Et,Dt,P,Ot=s({"../../node_modules/.pnpm/vscode-languageserver-types@3.18.4/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(e){function t(e){return typeof e==`string`}o(t,`is`),e.is=t})(re||={}),(function(e){function t(e){return typeof e==`string`}o(t,`is`),e.is=t})(T||={}),(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}o(t,`is`),e.is=t})(ie||={}),(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}o(t,`is`),e.is=t})(E||={}),(function(e){function t(e,t){return e===Number.MAX_VALUE&&(e=E.MAX_VALUE),t===Number.MAX_VALUE&&(t=E.MAX_VALUE),{line:e,character:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&P.uinteger(t.line)&&P.uinteger(t.character)}o(n,`is`),e.is=n})(D||={}),(function(e){function t(e,t,n,r){if(P.uinteger(e)&&P.uinteger(t)&&P.uinteger(n)&&P.uinteger(r))return{start:D.create(e,t),end:D.create(n,r)};if(D.is(e)&&D.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${n}, ${r}]`)}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&D.is(t.start)&&D.is(t.end)}o(n,`is`),e.is=n})(O||={}),(function(e){function t(e,t){return{uri:e,range:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&O.is(t.range)&&(P.string(t.uri)||P.undefined(t.uri))}o(n,`is`),e.is=n})(ae||={}),(function(e){function t(e,t,n,r){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:r}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&O.is(t.targetRange)&&P.string(t.targetUri)&&O.is(t.targetSelectionRange)&&(O.is(t.originSelectionRange)||P.undefined(t.originSelectionRange))}o(n,`is`),e.is=n})(oe||={}),(function(e){function t(e,t,n,r){return{red:e,green:t,blue:n,alpha:r}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&P.numberRange(t.red,0,1)&&P.numberRange(t.green,0,1)&&P.numberRange(t.blue,0,1)&&P.numberRange(t.alpha,0,1)}o(n,`is`),e.is=n})(se||={}),(function(e){function t(e,t){return{range:e,color:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&O.is(t.range)&&se.is(t.color)}o(n,`is`),e.is=n})(k||={}),(function(e){function t(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&P.string(t.label)&&(P.undefined(t.textEdit)||me.is(t))&&(P.undefined(t.additionalTextEdits)||P.typedArray(t.additionalTextEdits,me.is))}o(n,`is`),e.is=n})(A||={}),(function(e){e.Comment=`comment`,e.Imports=`imports`,e.Region=`region`})(ce||={}),(function(e){function t(e,t,n,r,i,a){let o={startLine:e,endLine:t};return P.defined(n)&&(o.startCharacter=n),P.defined(r)&&(o.endCharacter=r),P.defined(i)&&(o.kind=i),P.defined(a)&&(o.collapsedText=a),o}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&P.uinteger(t.startLine)&&P.uinteger(t.startLine)&&(P.undefined(t.startCharacter)||P.uinteger(t.startCharacter))&&(P.undefined(t.endCharacter)||P.uinteger(t.endCharacter))&&(P.undefined(t.kind)||P.string(t.kind))}o(n,`is`),e.is=n})(le||={}),(function(e){function t(e,t){return{location:e,message:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&ae.is(t.location)&&P.string(t.message)}o(n,`is`),e.is=n})(ue||={}),(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(j||={}),(function(e){e.Unnecessary=1,e.Deprecated=2})(de||={}),(function(e){function t(e){let t=e;return P.objectLiteral(t)&&P.string(t.href)}o(t,`is`),e.is=t})(M||={}),(function(e){function t(e,t,n,r,i,a){let o={range:e,message:t};return P.defined(n)&&(o.severity=n),P.defined(r)&&(o.code=r),P.defined(i)&&(o.source=i),P.defined(a)&&(o.relatedInformation=a),o}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&O.is(t.range)&&(P.string(t.message)||Me.is(t.message))&&(P.number(t.severity)||P.undefined(t.severity))&&(P.integer(t.code)||P.string(t.code)||P.undefined(t.code))&&(P.undefined(t.codeDescription)||P.string(t.codeDescription?.href))&&(P.string(t.source)||P.undefined(t.source))&&(P.undefined(t.relatedInformation)||P.typedArray(t.relatedInformation,ue.is))}o(n,`is`),e.is=n;function r(e){return P.string(e.message)}o(r,`is3_17`),e.is3_17=r;function i(e){if(P.string(e.message))return e.message;if(Me.is(e.message))return e.message.value;throw Error(`Unknown message type ${typeof e.message}`)}o(i,`getMessageString`),e.getMessageString=i})(fe||={}),(function(e){function t(e,t,...n){let r={title:e,command:t};return P.defined(n)&&n.length>0&&(r.arguments=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.string(t.title)&&(t.tooltip===void 0||P.string(t.tooltip))&&P.string(t.command)}o(n,`is`),e.is=n})(pe||={}),(function(e){function t(e,t){return{range:e,newText:t}}o(t,`replace`),e.replace=t;function n(e,t){return{range:{start:e,end:e},newText:t}}o(n,`insert`),e.insert=n;function r(e){return{range:e,newText:``}}o(r,`del`),e.del=r;function i(e){let t=e;return P.objectLiteral(t)&&P.string(t.newText)&&O.is(t.range)}o(i,`is`),e.is=i})(me||={}),(function(e){function t(e,t,n){let r={label:e};return t!==void 0&&(r.needsConfirmation=t),n!==void 0&&(r.description=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&P.string(t.label)&&(P.boolean(t.needsConfirmation)||t.needsConfirmation===void 0)&&(P.string(t.description)||t.description===void 0)}o(n,`is`),e.is=n})(he||={}),(function(e){function t(e){let t=e;return P.string(t)}o(t,`is`),e.is=t})(N||={}),(function(e){function t(e,t,n){return{range:e,newText:t,annotationId:n}}o(t,`replace`),e.replace=t;function n(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}}o(n,`insert`),e.insert=n;function r(e,t){return{range:e,newText:``,annotationId:t}}o(r,`del`),e.del=r;function i(e){let t=e;return me.is(t)&&(he.is(t.annotationId)||N.is(t.annotationId))}o(i,`is`),e.is=i})(ge||={}),(function(e){function t(e,t){return{textDocument:e,edits:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&Oe.is(t.textDocument)&&Array.isArray(t.edits)}o(n,`is`),e.is=n})(_e||={}),(function(e){function t(e,t,n){let r={kind:`create`,uri:e};return t!==void 0&&(t.overwrite!==void 0||t.ignoreIfExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return t&&t.kind===`create`&&P.string(t.uri)&&(t.options===void 0||(t.options.overwrite===void 0||P.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||P.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||N.is(t.annotationId))}o(n,`is`),e.is=n})(ve||={}),(function(e){function t(e,t,n,r){let i={kind:`rename`,oldUri:e,newUri:t};return n!==void 0&&(n.overwrite!==void 0||n.ignoreIfExists!==void 0)&&(i.options=n),r!==void 0&&(i.annotationId=r),i}o(t,`create`),e.create=t;function n(e){let t=e;return t&&t.kind===`rename`&&P.string(t.oldUri)&&P.string(t.newUri)&&(t.options===void 0||(t.options.overwrite===void 0||P.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||P.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||N.is(t.annotationId))}o(n,`is`),e.is=n})(ye||={}),(function(e){function t(e,t,n){let r={kind:`delete`,uri:e};return t!==void 0&&(t.recursive!==void 0||t.ignoreIfNotExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return t&&t.kind===`delete`&&P.string(t.uri)&&(t.options===void 0||(t.options.recursive===void 0||P.boolean(t.options.recursive))&&(t.options.ignoreIfNotExists===void 0||P.boolean(t.options.ignoreIfNotExists)))&&(t.annotationId===void 0||N.is(t.annotationId))}o(n,`is`),e.is=n})(be||={}),(function(e){function t(e){let t=e;return t&&(t.changes!==void 0||t.documentChanges!==void 0)&&(t.documentChanges===void 0||t.documentChanges.every(e=>P.string(e.kind)?ve.is(e)||ye.is(e)||be.is(e):_e.is(e)))}o(t,`is`),e.is=t})(xe||={}),Se=class{static{o(this,`TextEditChangeImpl`)}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,n){let r,i;if(n===void 0?r=me.insert(e,t):N.is(n)?(i=n,r=ge.insert(e,t,n)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(n),r=ge.insert(e,t,i)),this.edits.push(r),i!==void 0)return i}replace(e,t,n){let r,i;if(n===void 0?r=me.replace(e,t):N.is(n)?(i=n,r=ge.replace(e,t,n)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(n),r=ge.replace(e,t,i)),this.edits.push(r),i!==void 0)return i}delete(e,t){let n,r;if(t===void 0?n=me.del(e):N.is(t)?(r=t,n=ge.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),r=this.changeAnnotations.manage(t),n=ge.del(e,r)),this.edits.push(n),r!==void 0)return r}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw Error(`Text edit change is not configured to manage change annotations.`)}},(function(e){function t(e){let t=e;return P.objectLiteral(t)&&O.is(t.range)&&vt.isSnippet(t.snippet)&&(t.annotationId===void 0||he.is(t.annotationId)||N.is(t.annotationId))}o(t,`is`),e.is=t})(Ce||={}),we=class{static{o(this,`ChangeAnnotations`)}constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let n;if(N.is(e)?n=e:(n=this.nextId(),t=e),this._annotations[n]!==void 0)throw Error(`Id ${n} is already in use.`);if(t===void 0)throw Error(`No annotation provided for id ${n}`);return this._annotations[n]=t,this._size++,n}nextId(){return this._counter++,this._counter.toString()}},Te=class{static{o(this,`WorkspaceChange`)}constructor(e){this._textEditChanges=Object.create(null),e===void 0?this._workspaceEdit={}:(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new we(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(e=>{if(_e.is(e)){let t=new Se(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}})):e.changes&&Object.keys(e.changes).forEach(t=>{let n=new Se(e.changes[t]);this._textEditChanges[t]=n}))}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(Oe.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error(`Workspace edit is not configured for document changes.`);let t={uri:e.uri,version:e.version},n=this._textEditChanges[t.uri];if(!n){let e=[],r={textDocument:t,edits:e};this._workspaceEdit.documentChanges.push(r),n=new Se(e,this._changeAnnotations),this._textEditChanges[t.uri]=n}return n}{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw Error(`Workspace edit is not configured for normal text edit changes.`);let t=this._textEditChanges[e];if(!t){let n=[];this._workspaceEdit.changes[e]=n,t=new Se(n),this._textEditChanges[e]=t}return t}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new we,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error(`Workspace edit is not configured for document changes.`);let r;he.is(t)||N.is(t)?r=t:n=t;let i,a;if(r===void 0?i=ve.create(e,n):(a=N.is(r)?r:this._changeAnnotations.manage(r),i=ve.create(e,n,a)),this._workspaceEdit.documentChanges.push(i),a!==void 0)return a}renameFile(e,t,n,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error(`Workspace edit is not configured for document changes.`);let i;he.is(n)||N.is(n)?i=n:r=n;let a,o;if(i===void 0?a=ye.create(e,t,r):(o=N.is(i)?i:this._changeAnnotations.manage(i),a=ye.create(e,t,r,o)),this._workspaceEdit.documentChanges.push(a),o!==void 0)return o}deleteFile(e,t,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error(`Workspace edit is not configured for document changes.`);let r;he.is(t)||N.is(t)?r=t:n=t;let i,a;if(r===void 0?i=be.create(e,n):(a=N.is(r)?r:this._changeAnnotations.manage(r),i=be.create(e,n,a)),this._workspaceEdit.documentChanges.push(i),a!==void 0)return a}},(function(e){function t(e){return{uri:e}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.string(t.uri)}o(n,`is`),e.is=n})(Ee||={}),(function(e){function t(e,t){return{uri:e,version:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.string(t.uri)&&P.integer(t.version)}o(n,`is`),e.is=n})(De||={}),(function(e){function t(e,t){return{uri:e,version:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.string(t.uri)&&(t.version===null||P.integer(t.version))}o(n,`is`),e.is=n})(Oe||={}),(function(e){e.ABAP=`abap`,e.WindowsBat=`bat`,e.BibTeX=`bibtex`,e.Clojure=`clojure`,e.Coffeescript=`coffeescript`,e.C=`c`,e.CPP=`cpp`,e.CSharp=`csharp`,e.CSS=`css`,e.D=`d`,e.Delphi=`pascal`,e.Diff=`diff`,e.Dart=`dart`,e.Dockerfile=`dockerfile`,e.Elixir=`elixir`,e.Erlang=`erlang`,e.FSharp=`fsharp`,e.GitCommit=`git-commit`,e.GitRebase=`git-rebase`,e.Go=`go`,e.Groovy=`groovy`,e.Handlebars=`handlebars`,e.Haskell=`haskell`,e.HTML=`html`,e.Ini=`ini`,e.Java=`java`,e.JavaScript=`javascript`,e.JavaScriptReact=`javascriptreact`,e.JSON=`json`,e.LaTeX=`latex`,e.Less=`less`,e.Lua=`lua`,e.Makefile=`makefile`,e.Markdown=`markdown`,e.ObjectiveC=`objective-c`,e.ObjectiveCPP=`objective-cpp`,e.Pascal=`pascal`,e.Perl=`perl`,e.Perl6=`perl6`,e.PHP=`php`,e.Plaintext=`plaintext`,e.Powershell=`powershell`,e.Pug=`jade`,e.Python=`python`,e.R=`r`,e.Razor=`razor`,e.Ruby=`ruby`,e.Rust=`rust`,e.SCSS=`scss`,e.SASS=`sass`,e.Scala=`scala`,e.ShaderLab=`shaderlab`,e.ShellScript=`shellscript`,e.SQL=`sql`,e.Swift=`swift`,e.TypeScript=`typescript`,e.TypeScriptReact=`typescriptreact`,e.TeX=`tex`,e.VisualBasic=`vb`,e.XML=`xml`,e.XSL=`xsl`,e.YAML=`yaml`})(ke||={}),(function(e){function t(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.string(t.uri)&&P.string(t.languageId)&&P.integer(t.version)&&P.string(t.text)}o(n,`is`),e.is=n})(Ae||={}),(function(e){e.PlainText=`plaintext`,e.Markdown=`markdown`;function t(t){let n=t;return n===e.PlainText||n===e.Markdown}o(t,`is`),e.is=t})(je||={}),(function(e){function t(e){let t=e;return P.objectLiteral(e)&&je.is(t.kind)&&P.string(t.value)}o(t,`is`),e.is=t})(Me||={}),(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(Ne||={}),(function(e){e.PlainText=1,e.Snippet=2})(Pe||={}),(function(e){e.Deprecated=1})(Fe||={}),(function(e){function t(e,t,n){return{newText:e,insert:t,replace:n}}o(t,`create`),e.create=t;function n(e){let t=e;return t&&P.string(t.newText)&&O.is(t.insert)&&O.is(t.replace)}o(n,`is`),e.is=n})(Ie||={}),(function(e){e.asIs=1,e.adjustIndentation=2})(Le||={}),(function(e){e.Replace=1,e.Merge=2})(Re||={}),(function(e){function t(e){let t=e;return t&&(P.string(t.detail)||t.detail===void 0)&&(P.string(t.description)||t.description===void 0)}o(t,`is`),e.is=t})(ze||={}),(function(e){function t(e){return{label:e}}o(t,`create`),e.create=t})(Be||={}),(function(e){function t(e,t){return{items:e||[],isIncomplete:!!t}}o(t,`create`),e.create=t})(Ve||={}),(function(e){function t(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,`\\$&`)}o(t,`fromPlainText`),e.fromPlainText=t;function n(e){let t=e;return P.string(t)||P.objectLiteral(t)&&P.string(t.language)&&P.string(t.value)}o(n,`is`),e.is=n})(He||={}),(function(e){function t(e){let t=e;return!!t&&P.objectLiteral(t)&&(Me.is(t.contents)||He.is(t.contents)||P.typedArray(t.contents,He.is))&&(e.range===void 0||O.is(e.range))}o(t,`is`),e.is=t})(Ue||={}),(function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}o(t,`create`),e.create=t})(We||={}),(function(e){function t(e,t,...n){let r={label:e};return P.defined(t)&&(r.documentation=t),r.parameters=P.defined(n)?n:[],r}o(t,`create`),e.create=t})(Ge||={}),(function(e){e.Text=1,e.Read=2,e.Write=3})(Ke||={}),(function(e){function t(e,t){let n={range:e};return P.number(t)&&(n.kind=t),n}o(t,`create`),e.create=t})(qe||={}),(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(Je||={}),(function(e){e.Deprecated=1})(Ye||={}),(function(e){function t(e,t,n,r,i){let a={name:e,kind:t,location:{uri:r,range:n}};return i&&(a.containerName=i),a}o(t,`create`),e.create=t})(Xe||={}),(function(e){function t(e,t,n,r){return r===void 0?{name:e,kind:t,location:{uri:n}}:{name:e,kind:t,location:{uri:n,range:r}}}o(t,`create`),e.create=t})(Ze||={}),(function(e){function t(e,t,n,r,i,a){let o={name:e,detail:t,kind:n,range:r,selectionRange:i};return a!==void 0&&(o.children=a),o}o(t,`create`),e.create=t;function n(e){let t=e;return t&&P.string(t.name)&&P.number(t.kind)&&O.is(t.range)&&O.is(t.selectionRange)&&(t.detail===void 0||P.string(t.detail))&&(t.deprecated===void 0||P.boolean(t.deprecated))&&(t.children===void 0||Array.isArray(t.children))&&(t.tags===void 0||Array.isArray(t.tags))}o(n,`is`),e.is=n})(Qe||={}),(function(e){e.Empty=``,e.QuickFix=`quickfix`,e.Refactor=`refactor`,e.RefactorExtract=`refactor.extract`,e.RefactorInline=`refactor.inline`,e.RefactorMove=`refactor.move`,e.RefactorRewrite=`refactor.rewrite`,e.Source=`source`,e.SourceOrganizeImports=`source.organizeImports`,e.SourceFixAll=`source.fixAll`,e.Notebook=`notebook`})($e||={}),(function(e){e.Invoked=1,e.Automatic=2})(et||={}),(function(e){function t(e,t,n){let r={diagnostics:e};return t!=null&&(r.only=t),n!=null&&(r.triggerKind=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.typedArray(t.diagnostics,fe.is)&&(t.only===void 0||P.typedArray(t.only,P.string))&&(t.triggerKind===void 0||t.triggerKind===et.Invoked||t.triggerKind===et.Automatic)}o(n,`is`),e.is=n})(tt||={}),(function(e){e.LLMGenerated=1;function t(t){return P.defined(t)&&t===e.LLMGenerated}o(t,`is`),e.is=t})(nt||={}),(function(e){function t(e,t,n){let r={title:e},i=!0;return typeof t==`string`?(i=!1,r.kind=t):pe.is(t)?r.command=t:r.edit=t,i&&n!==void 0&&(r.kind=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return t&&P.string(t.title)&&(t.diagnostics===void 0||P.typedArray(t.diagnostics,fe.is))&&(t.kind===void 0||P.string(t.kind))&&(t.edit!==void 0||t.command!==void 0)&&(t.command===void 0||pe.is(t.command))&&(t.isPreferred===void 0||P.boolean(t.isPreferred))&&(t.edit===void 0||xe.is(t.edit))&&(t.tags===void 0||P.typedArray(t.tags,nt.is))}o(n,`is`),e.is=n})(rt||={}),(function(e){function t(e,t){let n={range:e};return P.defined(t)&&(n.data=t),n}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&O.is(t.range)&&(P.undefined(t.command)||pe.is(t.command))}o(n,`is`),e.is=n})(it||={}),(function(e){function t(e,t){return{tabSize:e,insertSpaces:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&P.uinteger(t.tabSize)&&P.boolean(t.insertSpaces)}o(n,`is`),e.is=n})(at||={}),(function(e){function t(e,t,n){return{range:e,target:t,data:n}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&O.is(t.range)&&(P.undefined(t.target)||P.string(t.target))}o(n,`is`),e.is=n})(ot||={}),(function(e){function t(e,t){return{range:e,parent:t}}o(t,`create`),e.create=t;function n(t){let n=t;return P.objectLiteral(n)&&O.is(n.range)&&(n.parent===void 0||e.is(n.parent))}o(n,`is`),e.is=n})(st||={}),(function(e){e.namespace=`namespace`,e.type=`type`,e.class=`class`,e.enum=`enum`,e.interface=`interface`,e.struct=`struct`,e.typeParameter=`typeParameter`,e.parameter=`parameter`,e.variable=`variable`,e.property=`property`,e.enumMember=`enumMember`,e.event=`event`,e.function=`function`,e.method=`method`,e.macro=`macro`,e.keyword=`keyword`,e.modifier=`modifier`,e.comment=`comment`,e.string=`string`,e.number=`number`,e.regexp=`regexp`,e.operator=`operator`,e.decorator=`decorator`,e.label=`label`})(ct||={}),(function(e){e.declaration=`declaration`,e.definition=`definition`,e.readonly=`readonly`,e.static=`static`,e.deprecated=`deprecated`,e.abstract=`abstract`,e.async=`async`,e.modification=`modification`,e.documentation=`documentation`,e.defaultLibrary=`defaultLibrary`})(lt||={}),(function(e){function t(e){let t=e;return P.objectLiteral(t)&&(t.resultId===void 0||typeof t.resultId==`string`)&&Array.isArray(t.data)&&(t.data.length===0||typeof t.data[0]==`number`)}o(t,`is`),e.is=t})(ut||={}),(function(e){function t(e,t){return{range:e,text:t}}o(t,`create`),e.create=t;function n(e){let t=e;return t!=null&&O.is(t.range)&&P.string(t.text)}o(n,`is`),e.is=n})(dt||={}),(function(e){function t(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}}o(t,`create`),e.create=t;function n(e){let t=e;return t!=null&&O.is(t.range)&&P.boolean(t.caseSensitiveLookup)&&(P.string(t.variableName)||t.variableName===void 0)}o(n,`is`),e.is=n})(ft||={}),(function(e){function t(e,t){return{range:e,expression:t}}o(t,`create`),e.create=t;function n(e){let t=e;return t!=null&&O.is(t.range)&&(P.string(t.expression)||t.expression===void 0)}o(n,`is`),e.is=n})(pt||={}),(function(e){function t(e,t){return{frameId:e,stoppedLocation:t}}o(t,`create`),e.create=t;function n(e){let t=e;return P.defined(t)&&O.is(e.stoppedLocation)}o(n,`is`),e.is=n})(mt||={}),(function(e){e.Type=1,e.Parameter=2;function t(e){return e===1||e===2}o(t,`is`),e.is=t})(ht||={}),(function(e){function t(e){return{value:e}}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&(t.tooltip===void 0||P.string(t.tooltip)||Me.is(t.tooltip))&&(t.location===void 0||ae.is(t.location))&&(t.command===void 0||pe.is(t.command))}o(n,`is`),e.is=n})(gt||={}),(function(e){function t(e,t,n){let r={position:e,label:t};return n!==void 0&&(r.kind=n),r}o(t,`create`),e.create=t;function n(e){let t=e;return P.objectLiteral(t)&&D.is(t.position)&&(P.string(t.label)||P.typedArray(t.label,gt.is))&&(t.kind===void 0||ht.is(t.kind))&&t.textEdits===void 0||P.typedArray(t.textEdits,me.is)&&(t.tooltip===void 0||P.string(t.tooltip)||Me.is(t.tooltip))&&(t.paddingLeft===void 0||P.boolean(t.paddingLeft))&&(t.paddingRight===void 0||P.boolean(t.paddingRight))}o(n,`is`),e.is=n})(_t||={}),(function(e){function t(e){return{kind:`snippet`,value:e}}o(t,`createSnippet`),e.createSnippet=t;function n(e){let t=e;return P.objectLiteral(t)&&t.kind===`snippet`&&P.string(t.value)}o(n,`isSnippet`),e.isSnippet=n})(vt||={}),(function(e){function t(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}}o(t,`create`),e.create=t})(yt||={}),(function(e){function t(e){return{items:e}}o(t,`create`),e.create=t})(bt||={}),(function(e){e.Invoked=1,e.Automatic=2})(xt||={}),(function(e){function t(e,t){return{range:e,text:t}}o(t,`create`),e.create=t})(St||={}),(function(e){function t(e,t){return{triggerKind:e,selectedCompletionInfo:t}}o(t,`create`),e.create=t})(Ct||={}),(function(e){function t(e){let t=e;return P.objectLiteral(t)&&T.is(t.uri)&&P.string(t.name)}o(t,`is`),e.is=t})(wt||={}),Tt=[`
8
+ `,`\r
9
+ `,`\r`],(function(e){function t(e,t,n,r){return new Dt(e,t,n,r)}o(t,`create`),e.create=t;function n(e){let t=e;return!!(P.defined(t)&&P.string(t.uri)&&(P.undefined(t.languageId)||P.string(t.languageId))&&P.uinteger(t.lineCount)&&P.func(t.getText)&&P.func(t.positionAt)&&P.func(t.offsetAt))}o(n,`is`),e.is=n;function r(e,t){let n=e.getText(),r=i(t,(e,t)=>{let n=e.range.start.line-t.range.start.line;return n===0?e.range.start.character-t.range.start.character:n}),a=n.length;for(let t=r.length-1;t>=0;t--){let i=r[t],o=e.offsetAt(i.range.start),s=e.offsetAt(i.range.end);if(s<=a)n=n.substring(0,o)+i.newText+n.substring(s,n.length);else throw Error(`Overlapping edit`);a=o}return n}o(r,`applyEdits`),e.applyEdits=r;function i(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),a=e.slice(n);i(r,t),i(a,t);let o=0,s=0,c=0;for(;o<r.length&&s<a.length;)t(r[o],a[s])<=0?e[c++]=r[o++]:e[c++]=a[s++];for(;o<r.length;)e[c++]=r[o++];for(;s<a.length;)e[c++]=a[s++];return e}o(i,`mergeSort`)})(Et||={}),Dt=class{static{o(this,`FullTextDocument`)}constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,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),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],t=this._content,n=!0;for(let r=0;r<t.length;r++){n&&=(e.push(r),!1);let i=t.charAt(r);n=i===`\r`||i===`
10
+ `,i===`\r`&&r+1<t.length&&t.charAt(r+1)===`
11
+ `&&r++}n&&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(),n=0,r=t.length;if(r===0)return D.create(0,e);for(;n<r;){let i=Math.floor((n+r)/2);t[i]>e?r=i:n=i+1}let i=n-1;return D.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 n=t[e.line],r=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,r),n)}get lineCount(){return this.getLineOffsets().length}},(function(e){let t=Object.prototype.toString;function n(e){return e!==void 0}o(n,`defined`),e.defined=n;function r(e){return e===void 0}o(r,`undefined`),e.undefined=r;function i(e){return e===!0||e===!1}o(i,`boolean`),e.boolean=i;function a(e){return t.call(e)===`[object String]`}o(a,`string`),e.string=a;function s(e){return t.call(e)===`[object Number]`}o(s,`number`),e.number=s;function c(e,n,r){return t.call(e)===`[object Number]`&&n<=e&&e<=r}o(c,`numberRange`),e.numberRange=c;function l(e){return t.call(e)===`[object Number]`&&-2147483648<=e&&e<=2147483647}o(l,`integer`),e.integer=l;function u(e){return t.call(e)===`[object Number]`&&0<=e&&e<=2147483647}o(u,`uinteger`),e.uinteger=u;function d(e){return t.call(e)===`[object Function]`}o(d,`func`),e.func=d;function f(e){return typeof e==`object`&&!!e}o(f,`objectLiteral`),e.objectLiteral=f;function p(e,t){return Array.isArray(e)&&e.every(t)}o(p,`typedArray`),e.typedArray=p})(P||={})}}),F=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CM=e.ProtocolNotificationType=e.ProtocolNotificationType0=e.ProtocolRequestType=e.ProtocolRequestType0=e.RegistrationType=e.MessageDirection=void 0;var t=w(),n;(function(e){e.clientToServer=`clientToServer`,e.serverToClient=`serverToClient`,e.both=`both`})(n||(e.MessageDirection=n={})),e.RegistrationType=class{static{o(this,`RegistrationType`)}____;method;constructor(e){this.method=e}},e.ProtocolRequestType0=class extends t.RequestType0{static{o(this,`ProtocolRequestType0`)}__;___;____;_pr;constructor(e){super(e)}},e.ProtocolRequestType=class extends t.RequestType{static{o(this,`ProtocolRequestType`)}__;___;____;_pr;constructor(e){super(e,t.ParameterStructures.byName)}},e.ProtocolNotificationType0=class extends t.NotificationType0{static{o(this,`ProtocolNotificationType0`)}___;____;constructor(e){super(e)}},e.ProtocolNotificationType=class extends t.NotificationType{static{o(this,`ProtocolNotificationType`)}___;____;constructor(e){super(e,t.ParameterStructures.byName)}};var r;(function(e){function t(e,t){return{client:e,server:t}}o(t,`create`),e.create=t})(r||(e.CM=r={}))}}),kt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=n,e.number=r,e.error=i,e.func=a,e.array=s,e.stringArray=c,e.typedArray=l,e.objectLiteral=u;function t(e){return e===!0||e===!1}o(t,`boolean`);function n(e){return typeof e==`string`||e instanceof String}o(n,`string`);function r(e){return typeof e==`number`||e instanceof Number}o(r,`number`);function i(e){return e instanceof Error}o(i,`error`);function a(e){return typeof e==`function`}o(a,`func`);function s(e){return Array.isArray(e)}o(s,`array`);function c(e){return s(e)&&e.every(e=>n(e))}o(c,`stringArray`);function l(e,t){return Array.isArray(e)&&e.every(t)}o(l,`typedArray`);function u(e){return typeof e==`object`&&!!e}o(u,`objectLiteral`)}}),At=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ImplementationRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/implementation`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.implementation`,`implementationProvider`)})(n||(e.ImplementationRequest=n={}))}}),jt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeDefinitionRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/typeDefinition`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.typeDefinition`,`typeDefinitionProvider`)})(n||(e.TypeDefinitionRequest=n={}))}}),Mt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`workspace/workspaceFolders`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType0(e.method),e.capabilities=t.CM.create(`workspace.workspaceFolders`,`workspace.workspaceFolders`)})(n||(e.WorkspaceFoldersRequest=n={}));var r;(function(e){e.method=`workspace/didChangeWorkspaceFolders`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolNotificationType(e.method),e.capabilities=t.CM.create(void 0,`workspace.workspaceFolders.changeNotifications`)})(r||(e.DidChangeWorkspaceFoldersNotification=r={}))}}),Nt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigurationRequest=void 0;var t=F(),n;(function(e){e.method=`workspace/configuration`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`workspace.configuration`,void 0)})(n||(e.ConfigurationRequest=n={}))}}),Pt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/documentColor`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.colorProvider`,`colorProvider`)})(n||(e.DocumentColorRequest=n={}));var r;(function(e){e.method=`textDocument/colorPresentation`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.colorProvider`,`colorProvider`)})(r||(e.ColorPresentationRequest=r={}))}}),Ft=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/foldingRange`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.foldingRange`,`foldingRangeProvider`)})(n||(e.FoldingRangeRequest=n={}));var r;(function(e){e.method=`workspace/foldingRange/refresh`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType0(e.method),e.capabilities=t.CM.create(`workspace.foldingRange.refreshSupport`,void 0)})(r||(e.FoldingRangeRefreshRequest=r={}))}}),It=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DeclarationRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/declaration`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.declaration`,`declarationProvider`)})(n||(e.DeclarationRequest=n={}))}}),Lt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionRangeRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/selectionRange`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.selectionRange`,`selectionRangeProvider`)})(n||(e.SelectionRangeRequest=n={}))}}),Rt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=w(),n=F(),r;(function(e){e.type=new t.ProgressType;function n(t){return t===e.type}o(n,`is`),e.is=n})(r||(e.WorkDoneProgress=r={}));var i;(function(e){e.method=`window/workDoneProgress/create`,e.messageDirection=n.MessageDirection.serverToClient,e.type=new n.ProtocolRequestType(e.method),e.capabilities=n.CM.create(`window.workDoneProgress`,void 0)})(i||(e.WorkDoneProgressCreateRequest=i={}));var a;(function(e){e.method=`window/workDoneProgress/cancel`,e.messageDirection=n.MessageDirection.clientToServer,e.type=new n.ProtocolNotificationType(e.method)})(a||(e.WorkDoneProgressCancelNotification=a={}))}}),zt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/prepareCallHierarchy`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.callHierarchy`,`callHierarchyProvider`)})(n||(e.CallHierarchyPrepareRequest=n={}));var r;(function(e){e.method=`callHierarchy/incomingCalls`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.callHierarchy`,`callHierarchyProvider`)})(r||(e.CallHierarchyIncomingCallsRequest=r={}));var i;(function(e){e.method=`callHierarchy/outgoingCalls`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.callHierarchy`,`callHierarchyProvider`)})(i||(e.CallHierarchyOutgoingCallsRequest=i={}))}}),Bt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.Relative=`relative`})(n||(e.TokenFormat=n={}));var r;(function(e){e.method=`textDocument/semanticTokens`,e.type=new t.RegistrationType(e.method)})(r||(e.SemanticTokensRegistrationType=r={}));var i;(function(e){e.method=`textDocument/semanticTokens/full`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.registrationMethod=r.method,e.capabilities=t.CM.create(`textDocument.semanticTokens`,`semanticTokensProvider`)})(i||(e.SemanticTokensRequest=i={}));var a;(function(e){e.method=`textDocument/semanticTokens/full/delta`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.registrationMethod=r.method,e.capabilities=t.CM.create(`textDocument.semanticTokens.requests.full.delta`,`semanticTokensProvider.full.delta`)})(a||(e.SemanticTokensDeltaRequest=a={}));var o;(function(e){e.method=`textDocument/semanticTokens/range`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.registrationMethod=r.method,e.capabilities=t.CM.create(`textDocument.semanticTokens.requests.range`,`semanticTokensProvider.range`)})(o||(e.SemanticTokensRangeRequest=o={}));var s;(function(e){e.method=`workspace/semanticTokens/refresh`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType0(e.method),e.capabilities=t.CM.create(`workspace.semanticTokens.refreshSupport`,void 0)})(s||(e.SemanticTokensRefreshRequest=s={}))}}),Vt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ShowDocumentRequest=void 0;var t=F(),n;(function(e){e.method=`window/showDocument`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`window.showDocument.support`,void 0)})(n||(e.ShowDocumentRequest=n={}))}}),Ht=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedEditingRangeRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/linkedEditingRange`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.linkedEditingRange`,`linkedEditingRangeProvider`)})(n||(e.LinkedEditingRangeRequest=n={}))}}),Ut=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.file=`file`,e.folder=`folder`})(n||(e.FileOperationPatternKind=n={}));var r;(function(e){e.method=`workspace/willCreateFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.willCreate`,`workspace.fileOperations.willCreate`)})(r||(e.WillCreateFilesRequest=r={}));var i;(function(e){e.method=`workspace/didCreateFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolNotificationType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.didCreate`,`workspace.fileOperations.didCreate`)})(i||(e.DidCreateFilesNotification=i={}));var a;(function(e){e.method=`workspace/willRenameFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.willRename`,`workspace.fileOperations.willRename`)})(a||(e.WillRenameFilesRequest=a={}));var o;(function(e){e.method=`workspace/didRenameFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolNotificationType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.didRename`,`workspace.fileOperations.didRename`)})(o||(e.DidRenameFilesNotification=o={}));var s;(function(e){e.method=`workspace/didDeleteFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolNotificationType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.didDelete`,`workspace.fileOperations.didDelete`)})(s||(e.DidDeleteFilesNotification=s={}));var c;(function(e){e.method=`workspace/willDeleteFiles`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`workspace.fileOperations.willDelete`,`workspace.fileOperations.willDelete`)})(c||(e.WillDeleteFilesRequest=c={}))}}),Wt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.document=`document`,e.project=`project`,e.group=`group`,e.scheme=`scheme`,e.global=`global`})(n||(e.UniquenessLevel=n={}));var r;(function(e){e.$import=`import`,e.$export=`export`,e.local=`local`})(r||(e.MonikerKind=r={}));var i;(function(e){e.method=`textDocument/moniker`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.moniker`,`monikerProvider`)})(i||(e.MonikerRequest=i={}))}}),Gt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/prepareTypeHierarchy`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.typeHierarchy`,`typeHierarchyProvider`)})(n||(e.TypeHierarchyPrepareRequest=n={}));var r;(function(e){e.method=`typeHierarchy/supertypes`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method)})(r||(e.TypeHierarchySupertypesRequest=r={}));var i;(function(e){e.method=`typeHierarchy/subtypes`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method)})(i||(e.TypeHierarchySubtypesRequest=i={}))}}),Kt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/inlineValue`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.inlineValue`,`inlineValueProvider`)})(n||(e.InlineValueRequest=n={}));var r;(function(e){e.method=`workspace/inlineValue/refresh`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType0(e.method),e.capabilities=t.CM.create(`workspace.inlineValue.refreshSupport`,void 0)})(r||(e.InlineValueRefreshRequest=r={}))}}),qt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/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=F(),n;(function(e){e.method=`textDocument/inlayHint`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.inlayHint`,`inlayHintProvider`)})(n||(e.InlayHintRequest=n={}));var r;(function(e){e.method=`inlayHint/resolve`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.inlayHint.resolveSupport`,`inlayHintProvider.resolveProvider`)})(r||(e.InlayHintResolveRequest=r={}));var i;(function(e){e.method=`workspace/inlayHint/refresh`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType0(e.method),e.capabilities=t.CM.create(`workspace.inlayHint.refreshSupport`,void 0)})(i||(e.InlayHintRefreshRequest=i={}))}}),Jt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})();Object.defineProperty(e,"__esModule",{value:!0}),e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=void 0;var i=w(),a=r(kt()),s=F(),c;(function(e){function t(e){let t=e;return t&&a.boolean(t.retriggerRequest)}o(t,`is`),e.is=t})(c||(e.DiagnosticServerCancellationData=c={}));var l;(function(e){e.Full=`full`,e.Unchanged=`unchanged`})(l||(e.DocumentDiagnosticReportKind=l={}));var u;(function(e){e.method=`textDocument/diagnostic`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolRequestType(e.method),e.partialResult=new i.ProgressType,e.capabilities=s.CM.create(`textDocument.diagnostic`,`diagnosticProvider`)})(u||(e.DocumentDiagnosticRequest=u={}));var d;(function(e){e.method=`workspace/diagnostic`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolRequestType(e.method),e.partialResult=new i.ProgressType,e.capabilities=s.CM.create(`workspace.diagnostics`,`diagnosticProvider.workspaceDiagnostics`)})(d||(e.WorkspaceDiagnosticRequest=d={}));var f;(function(e){e.method=`workspace/diagnostic/refresh`,e.messageDirection=s.MessageDirection.serverToClient,e.type=new s.ProtocolRequestType0(e.method),e.capabilities=s.CM.create(`workspace.diagnostics.refreshSupport`,void 0)})(f||(e.DiagnosticRefreshRequest=f={}))}}),Yt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})();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 i=(Ot(),f(ne)),a=r(kt()),s=F(),c;(function(e){e.Markup=1,e.Code=2;function t(e){return e===1||e===2}o(t,`is`),e.is=t})(c||(e.NotebookCellKind=c={}));var l;(function(e){function t(e,t){let n={executionOrder:e};return(t===!0||t===!1)&&(n.success=t),n}o(t,`create`),e.create=t;function n(e){let t=e;return a.objectLiteral(t)&&i.uinteger.is(t.executionOrder)&&(t.success===void 0||a.boolean(t.success))}o(n,`is`),e.is=n;function r(e,t){return e===t?!0:e==null||t==null?!1:e.executionOrder===t.executionOrder&&e.success===t.success}o(r,`equals`),e.equals=r})(l||(e.ExecutionSummary=l={}));var u;(function(e){function t(e,t){return{kind:e,document:t}}o(t,`create`),e.create=t;function n(e){let t=e;return a.objectLiteral(t)&&c.is(t.kind)&&i.DocumentUri.is(t.document)&&(t.metadata===void 0||a.objectLiteral(t.metadata))}o(n,`is`),e.is=n;function r(e,t){let n=new Set;return e.document!==t.document&&n.add(`document`),e.kind!==t.kind&&n.add(`kind`),e.executionSummary!==t.executionSummary&&n.add(`executionSummary`),(e.metadata!==void 0||t.metadata!==void 0)&&!s(e.metadata,t.metadata)&&n.add(`metadata`),(e.executionSummary!==void 0||t.executionSummary!==void 0)&&!l.equals(e.executionSummary,t.executionSummary)&&n.add(`executionSummary`),n}o(r,`diff`),e.diff=r;function s(e,t){if(e===t)return!0;if(e==null||t==null||typeof e!=typeof t||typeof e!=`object`)return!1;let n=Array.isArray(e),r=Array.isArray(t);if(n!==r)return!1;if(n&&r){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!s(e[n],t[n]))return!1}if(a.objectLiteral(e)&&a.objectLiteral(t)){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length||(n.sort(),r.sort(),!s(n,r)))return!1;for(let r=0;r<n.length;r++){let i=n[r];if(!s(e[i],t[i]))return!1}}return!0}o(s,`equalsMetadata`)})(u||(e.NotebookCell=u={}));var d;(function(e){function t(e,t,n,r){return{uri:e,notebookType:t,version:n,cells:r}}o(t,`create`),e.create=t;function n(e){let t=e;return a.objectLiteral(t)&&a.string(t.uri)&&i.integer.is(t.version)&&a.typedArray(t.cells,u.is)}o(n,`is`),e.is=n})(d||(e.NotebookDocument=d={}));var p;(function(e){e.method=`notebookDocument/sync`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.RegistrationType(e.method)})(p||(e.NotebookDocumentSyncRegistrationType=p={}));var m;(function(e){e.method=`notebookDocument/didOpen`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolNotificationType(e.method),e.registrationMethod=p.method})(m||(e.DidOpenNotebookDocumentNotification=m={}));var h;(function(e){function t(e){let t=e;return a.objectLiteral(t)&&i.uinteger.is(t.start)&&i.uinteger.is(t.deleteCount)&&(t.cells===void 0||a.typedArray(t.cells,u.is))}o(t,`is`),e.is=t;function n(e,t,n){let r={start:e,deleteCount:t};return n!==void 0&&(r.cells=n),r}o(n,`create`),e.create=n})(h||(e.NotebookCellArrayChange=h={}));var g;(function(e){e.method=`notebookDocument/didChange`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolNotificationType(e.method),e.registrationMethod=p.method})(g||(e.DidChangeNotebookDocumentNotification=g={}));var _;(function(e){e.method=`notebookDocument/didSave`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolNotificationType(e.method),e.registrationMethod=p.method})(_||(e.DidSaveNotebookDocumentNotification=_={}));var v;(function(e){e.method=`notebookDocument/didClose`,e.messageDirection=s.MessageDirection.clientToServer,e.type=new s.ProtocolNotificationType(e.method),e.registrationMethod=p.method})(v||(e.DidCloseNotebookDocumentNotification=v={}))}}),Xt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineCompletionRequest=void 0;var t=F(),n;(function(e){e.method=`textDocument/inlineCompletion`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`textDocument.inlineCompletion`,`inlineCompletionProvider`)})(n||(e.InlineCompletionRequest=n={}))}}),Zt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.textDocumentContent.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=void 0;var t=F(),n;(function(e){e.method=`workspace/textDocumentContent`,e.messageDirection=t.MessageDirection.clientToServer,e.type=new t.ProtocolRequestType(e.method),e.capabilities=t.CM.create(`workspace.textDocumentContent`,`workspace.textDocumentContent`)})(n||(e.TextDocumentContentRequest=n={}));var r;(function(e){e.method=`workspace/textDocumentContent/refresh`,e.messageDirection=t.MessageDirection.serverToClient,e.type=new t.ProtocolRequestType(e.method)})(r||(e.TextDocumentContentRefreshRequest=r={}))}}),Qt=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||(function(){var e=o(function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)},`ownKeys`);return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!=="default"&&t(i,r,a[o]);return n(i,r),i}})();Object.defineProperty(e,"__esModule",{value:!0}),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.GlobPattern=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.RegularExpressionEngineKind=e.FailureHandlingKind=e.ResourceOperationKind=e.UnregistrationRequest=e.RegistrationRequest=e.DocumentSelector=e.NotebookCellTextDocumentFilter=e.NotebookDocumentFilter=e.TextDocumentFilter=void 0,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=e.WorkspaceSymbolRequest=e.CodeActionResolveRequest=void 0,e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=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=e.MonikerRequest=e.MonikerKind=void 0;var i=F(),a=(Ot(),f(ne)),s=r(kt()),c=At();Object.defineProperty(e,"ImplementationRequest",{enumerable:!0,get:o(function(){return c.ImplementationRequest},`get`)});var l=jt();Object.defineProperty(e,"TypeDefinitionRequest",{enumerable:!0,get:o(function(){return l.TypeDefinitionRequest},`get`)});var u=Mt();Object.defineProperty(e,"WorkspaceFoldersRequest",{enumerable:!0,get:o(function(){return u.WorkspaceFoldersRequest},`get`)}),Object.defineProperty(e,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:o(function(){return u.DidChangeWorkspaceFoldersNotification},`get`)});var d=Nt();Object.defineProperty(e,"ConfigurationRequest",{enumerable:!0,get:o(function(){return d.ConfigurationRequest},`get`)});var p=Pt();Object.defineProperty(e,"DocumentColorRequest",{enumerable:!0,get:o(function(){return p.DocumentColorRequest},`get`)}),Object.defineProperty(e,"ColorPresentationRequest",{enumerable:!0,get:o(function(){return p.ColorPresentationRequest},`get`)});var m=Ft();Object.defineProperty(e,"FoldingRangeRequest",{enumerable:!0,get:o(function(){return m.FoldingRangeRequest},`get`)}),Object.defineProperty(e,"FoldingRangeRefreshRequest",{enumerable:!0,get:o(function(){return m.FoldingRangeRefreshRequest},`get`)});var h=It();Object.defineProperty(e,"DeclarationRequest",{enumerable:!0,get:o(function(){return h.DeclarationRequest},`get`)});var g=Lt();Object.defineProperty(e,"SelectionRangeRequest",{enumerable:!0,get:o(function(){return g.SelectionRangeRequest},`get`)});var _=Rt();Object.defineProperty(e,"WorkDoneProgress",{enumerable:!0,get:o(function(){return _.WorkDoneProgress},`get`)}),Object.defineProperty(e,"WorkDoneProgressCreateRequest",{enumerable:!0,get:o(function(){return _.WorkDoneProgressCreateRequest},`get`)}),Object.defineProperty(e,"WorkDoneProgressCancelNotification",{enumerable:!0,get:o(function(){return _.WorkDoneProgressCancelNotification},`get`)});var v=zt();Object.defineProperty(e,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:o(function(){return v.CallHierarchyIncomingCallsRequest},`get`)}),Object.defineProperty(e,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:o(function(){return v.CallHierarchyOutgoingCallsRequest},`get`)}),Object.defineProperty(e,"CallHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return v.CallHierarchyPrepareRequest},`get`)});var y=Bt();Object.defineProperty(e,"TokenFormat",{enumerable:!0,get:o(function(){return y.TokenFormat},`get`)}),Object.defineProperty(e,"SemanticTokensRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRequest},`get`)}),Object.defineProperty(e,"SemanticTokensDeltaRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensDeltaRequest},`get`)}),Object.defineProperty(e,"SemanticTokensRangeRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRangeRequest},`get`)}),Object.defineProperty(e,"SemanticTokensRefreshRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRefreshRequest},`get`)}),Object.defineProperty(e,"SemanticTokensRegistrationType",{enumerable:!0,get:o(function(){return y.SemanticTokensRegistrationType},`get`)});var b=Vt();Object.defineProperty(e,"ShowDocumentRequest",{enumerable:!0,get:o(function(){return b.ShowDocumentRequest},`get`)});var ee=Ht();Object.defineProperty(e,"LinkedEditingRangeRequest",{enumerable:!0,get:o(function(){return ee.LinkedEditingRangeRequest},`get`)});var x=Ut();Object.defineProperty(e,"FileOperationPatternKind",{enumerable:!0,get:o(function(){return x.FileOperationPatternKind},`get`)}),Object.defineProperty(e,"DidCreateFilesNotification",{enumerable:!0,get:o(function(){return x.DidCreateFilesNotification},`get`)}),Object.defineProperty(e,"WillCreateFilesRequest",{enumerable:!0,get:o(function(){return x.WillCreateFilesRequest},`get`)}),Object.defineProperty(e,"DidRenameFilesNotification",{enumerable:!0,get:o(function(){return x.DidRenameFilesNotification},`get`)}),Object.defineProperty(e,"WillRenameFilesRequest",{enumerable:!0,get:o(function(){return x.WillRenameFilesRequest},`get`)}),Object.defineProperty(e,"DidDeleteFilesNotification",{enumerable:!0,get:o(function(){return x.DidDeleteFilesNotification},`get`)}),Object.defineProperty(e,"WillDeleteFilesRequest",{enumerable:!0,get:o(function(){return x.WillDeleteFilesRequest},`get`)});var S=Wt();Object.defineProperty(e,"UniquenessLevel",{enumerable:!0,get:o(function(){return S.UniquenessLevel},`get`)}),Object.defineProperty(e,"MonikerKind",{enumerable:!0,get:o(function(){return S.MonikerKind},`get`)}),Object.defineProperty(e,"MonikerRequest",{enumerable:!0,get:o(function(){return S.MonikerRequest},`get`)});var C=Gt();Object.defineProperty(e,"TypeHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return C.TypeHierarchyPrepareRequest},`get`)}),Object.defineProperty(e,"TypeHierarchySubtypesRequest",{enumerable:!0,get:o(function(){return C.TypeHierarchySubtypesRequest},`get`)}),Object.defineProperty(e,"TypeHierarchySupertypesRequest",{enumerable:!0,get:o(function(){return C.TypeHierarchySupertypesRequest},`get`)});var te=Kt();Object.defineProperty(e,"InlineValueRequest",{enumerable:!0,get:o(function(){return te.InlineValueRequest},`get`)}),Object.defineProperty(e,"InlineValueRefreshRequest",{enumerable:!0,get:o(function(){return te.InlineValueRefreshRequest},`get`)});var w=qt();Object.defineProperty(e,"InlayHintRequest",{enumerable:!0,get:o(function(){return w.InlayHintRequest},`get`)}),Object.defineProperty(e,"InlayHintResolveRequest",{enumerable:!0,get:o(function(){return w.InlayHintResolveRequest},`get`)}),Object.defineProperty(e,"InlayHintRefreshRequest",{enumerable:!0,get:o(function(){return w.InlayHintRefreshRequest},`get`)});var re=Jt();Object.defineProperty(e,"DiagnosticServerCancellationData",{enumerable:!0,get:o(function(){return re.DiagnosticServerCancellationData},`get`)}),Object.defineProperty(e,"DocumentDiagnosticReportKind",{enumerable:!0,get:o(function(){return re.DocumentDiagnosticReportKind},`get`)}),Object.defineProperty(e,"DocumentDiagnosticRequest",{enumerable:!0,get:o(function(){return re.DocumentDiagnosticRequest},`get`)}),Object.defineProperty(e,"WorkspaceDiagnosticRequest",{enumerable:!0,get:o(function(){return re.WorkspaceDiagnosticRequest},`get`)}),Object.defineProperty(e,"DiagnosticRefreshRequest",{enumerable:!0,get:o(function(){return re.DiagnosticRefreshRequest},`get`)});var T=Yt();Object.defineProperty(e,"NotebookCellKind",{enumerable:!0,get:o(function(){return T.NotebookCellKind},`get`)}),Object.defineProperty(e,"ExecutionSummary",{enumerable:!0,get:o(function(){return T.ExecutionSummary},`get`)}),Object.defineProperty(e,"NotebookCell",{enumerable:!0,get:o(function(){return T.NotebookCell},`get`)}),Object.defineProperty(e,"NotebookDocument",{enumerable:!0,get:o(function(){return T.NotebookDocument},`get`)}),Object.defineProperty(e,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:o(function(){return T.NotebookDocumentSyncRegistrationType},`get`)}),Object.defineProperty(e,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:o(function(){return T.DidOpenNotebookDocumentNotification},`get`)}),Object.defineProperty(e,"NotebookCellArrayChange",{enumerable:!0,get:o(function(){return T.NotebookCellArrayChange},`get`)}),Object.defineProperty(e,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:o(function(){return T.DidChangeNotebookDocumentNotification},`get`)}),Object.defineProperty(e,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:o(function(){return T.DidSaveNotebookDocumentNotification},`get`)}),Object.defineProperty(e,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:o(function(){return T.DidCloseNotebookDocumentNotification},`get`)});var ie=Xt();Object.defineProperty(e,"InlineCompletionRequest",{enumerable:!0,get:o(function(){return ie.InlineCompletionRequest},`get`)});var E=Zt();Object.defineProperty(e,"TextDocumentContentRequest",{enumerable:!0,get:o(function(){return E.TextDocumentContentRequest},`get`)}),Object.defineProperty(e,"TextDocumentContentRefreshRequest",{enumerable:!0,get:o(function(){return E.TextDocumentContentRefreshRequest},`get`)});var D;(function(e){function t(e){let t=e;return s.string(t)||s.string(t.language)||s.string(t.scheme)||Pe.is(t.pattern)}o(t,`is`),e.is=t})(D||(e.TextDocumentFilter=D={}));var O;(function(e){function t(e){let t=e;return s.objectLiteral(t)&&(s.string(t.notebookType)||s.string(t.scheme)||s.string(t.pattern))}o(t,`is`),e.is=t})(O||(e.NotebookDocumentFilter=O={}));var ae;(function(e){function t(e){let t=e;return s.objectLiteral(t)&&(s.string(t.notebook)||O.is(t.notebook))&&(t.language===void 0||s.string(t.language))}o(t,`is`),e.is=t})(ae||(e.NotebookCellTextDocumentFilter=ae={}));var oe;(function(e){function t(e){if(!Array.isArray(e))return!1;for(let t of e)if(!s.string(t)&&!D.is(t)&&!ae.is(t))return!1;return!0}o(t,`is`),e.is=t})(oe||(e.DocumentSelector=oe={}));var se;(function(e){e.method=`client/registerCapability`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolRequestType(e.method)})(se||(e.RegistrationRequest=se={}));var k;(function(e){e.method=`client/unregisterCapability`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolRequestType(e.method)})(k||(e.UnregistrationRequest=k={}));var A;(function(e){e.Create=`create`,e.Rename=`rename`,e.Delete=`delete`})(A||(e.ResourceOperationKind=A={}));var ce;(function(e){e.Abort=`abort`,e.Transactional=`transactional`,e.TextOnlyTransactional=`textOnlyTransactional`,e.Undo=`undo`})(ce||(e.FailureHandlingKind=ce={}));var le;(function(e){e.ES2020=`ES2020`})(le||(e.RegularExpressionEngineKind=le={}));var ue;(function(e){e.UTF8=`utf-8`,e.UTF16=`utf-16`,e.UTF32=`utf-32`})(ue||(e.PositionEncodingKind=ue={}));var j;(function(e){function t(e){let t=e;return t&&s.string(t.id)&&t.id.length>0}o(t,`hasId`),e.hasId=t})(j||(e.StaticRegistrationOptions=j={}));var de;(function(e){function t(e){let t=e;return t&&(t.documentSelector===null||oe.is(t.documentSelector))}o(t,`is`),e.is=t})(de||(e.TextDocumentRegistrationOptions=de={}));var M;(function(e){function t(e){let t=e;return s.objectLiteral(t)&&(t.workDoneProgress===void 0||s.boolean(t.workDoneProgress))}o(t,`is`),e.is=t;function n(e){let t=e;return t&&s.boolean(t.workDoneProgress)}o(n,`hasWorkDoneProgress`),e.hasWorkDoneProgress=n})(M||(e.WorkDoneProgressOptions=M={}));var fe;(function(e){e.method=`initialize`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method)})(fe||(e.InitializeRequest=fe={}));var pe;(function(e){e.unknownProtocolVersion=1})(pe||(e.InitializeErrorCodes=pe={}));var me;(function(e){e.method=`initialized`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method)})(me||(e.InitializedNotification=me={}));var he;(function(e){e.method=`shutdown`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType0(e.method)})(he||(e.ShutdownRequest=he={}));var N;(function(e){e.method=`exit`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType0(e.method)})(N||(e.ExitNotification=N={}));var ge;(function(e){e.method=`workspace/didChangeConfiguration`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`workspace.didChangeConfiguration`,void 0)})(ge||(e.DidChangeConfigurationNotification=ge={}));var _e;(function(e){e.Error=1,e.Warning=2,e.Info=3,e.Log=4,e.Debug=5})(_e||(e.MessageType=_e={}));var ve;(function(e){e.method=`window/showMessage`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`window.showMessage`,void 0)})(ve||(e.ShowMessageNotification=ve={}));var ye;(function(e){e.method=`window/showMessageRequest`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`window.showMessage`,void 0)})(ye||(e.ShowMessageRequest=ye={}));var be;(function(e){e.method=`window/logMessage`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolNotificationType(e.method)})(be||(e.LogMessageNotification=be={}));var xe;(function(e){e.method=`telemetry/event`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolNotificationType(e.method)})(xe||(e.TelemetryEventNotification=xe={}));var Se;(function(e){e.None=0,e.Full=1,e.Incremental=2})(Se||(e.TextDocumentSyncKind=Se={}));var Ce;(function(e){e.method=`textDocument/didOpen`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization`,`textDocumentSync.openClose`)})(Ce||(e.DidOpenTextDocumentNotification=Ce={}));var we;(function(e){function t(e){let t=e;return t!=null&&typeof t.text==`string`&&t.range!==void 0&&(t.rangeLength===void 0||typeof t.rangeLength==`number`)}o(t,`isIncremental`),e.isIncremental=t;function n(e){let t=e;return t!=null&&typeof t.text==`string`&&t.range===void 0&&t.rangeLength===void 0}o(n,`isFull`),e.isFull=n})(we||(e.TextDocumentContentChangeEvent=we={}));var Te;(function(e){e.method=`textDocument/didChange`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization`,`textDocumentSync`)})(Te||(e.DidChangeTextDocumentNotification=Te={}));var Ee;(function(e){e.method=`textDocument/didClose`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization`,`textDocumentSync.openClose`)})(Ee||(e.DidCloseTextDocumentNotification=Ee={}));var De;(function(e){e.method=`textDocument/didSave`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization.didSave`,`textDocumentSync.save`)})(De||(e.DidSaveTextDocumentNotification=De={}));var Oe;(function(e){e.Manual=1,e.AfterDelay=2,e.FocusOut=3})(Oe||(e.TextDocumentSaveReason=Oe={}));var ke;(function(e){e.method=`textDocument/willSave`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization.willSave`,`textDocumentSync.willSave`)})(ke||(e.WillSaveTextDocumentNotification=ke={}));var Ae;(function(e){e.method=`textDocument/willSaveWaitUntil`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.synchronization.willSaveWaitUntil`,`textDocumentSync.willSaveWaitUntil`)})(Ae||(e.WillSaveTextDocumentWaitUntilRequest=Ae={}));var je;(function(e){e.method=`workspace/didChangeWatchedFiles`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`workspace.didChangeWatchedFiles`,void 0)})(je||(e.DidChangeWatchedFilesNotification=je={}));var Me;(function(e){e.Created=1,e.Changed=2,e.Deleted=3})(Me||(e.FileChangeType=Me={}));var Ne;(function(e){function t(e){let t=e;return s.objectLiteral(t)&&(a.URI.is(t.baseUri)||a.WorkspaceFolder.is(t.baseUri))&&s.string(t.pattern)}o(t,`is`),e.is=t})(Ne||(e.RelativePattern=Ne={}));var Pe;(function(e){function t(e){let t=e;return s.string(t)||Ne.is(t)}o(t,`is`),e.is=t})(Pe||(e.GlobPattern=Pe={}));var Fe;(function(e){e.Create=1,e.Change=2,e.Delete=4})(Fe||(e.WatchKind=Fe={}));var Ie;(function(e){e.method=`textDocument/publishDiagnostics`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolNotificationType(e.method),e.capabilities=i.CM.create(`textDocument.publishDiagnostics`,void 0)})(Ie||(e.PublishDiagnosticsNotification=Ie={}));var Le;(function(e){e.Invoked=1,e.TriggerCharacter=2,e.TriggerForIncompleteCompletions=3})(Le||(e.CompletionTriggerKind=Le={}));var Re;(function(e){e.method=`textDocument/completion`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.completion`,`completionProvider`)})(Re||(e.CompletionRequest=Re={}));var ze;(function(e){e.method=`completionItem/resolve`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.completion.completionItem.resolveSupport`,`completionProvider.resolveProvider`)})(ze||(e.CompletionResolveRequest=ze={}));var Be;(function(e){e.method=`textDocument/hover`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.hover`,`hoverProvider`)})(Be||(e.HoverRequest=Be={}));var Ve;(function(e){e.Invoked=1,e.TriggerCharacter=2,e.ContentChange=3})(Ve||(e.SignatureHelpTriggerKind=Ve={}));var He;(function(e){e.method=`textDocument/signatureHelp`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.signatureHelp`,`signatureHelpProvider`)})(He||(e.SignatureHelpRequest=He={}));var Ue;(function(e){e.method=`textDocument/definition`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.definition`,`definitionProvider`)})(Ue||(e.DefinitionRequest=Ue={}));var We;(function(e){e.method=`textDocument/references`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.references`,`referencesProvider`)})(We||(e.ReferencesRequest=We={}));var Ge;(function(e){e.method=`textDocument/documentHighlight`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.documentHighlight`,`documentHighlightProvider`)})(Ge||(e.DocumentHighlightRequest=Ge={}));var Ke;(function(e){e.method=`textDocument/documentSymbol`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.documentSymbol`,`documentSymbolProvider`)})(Ke||(e.DocumentSymbolRequest=Ke={}));var qe;(function(e){e.method=`textDocument/codeAction`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.codeAction`,`codeActionProvider`)})(qe||(e.CodeActionRequest=qe={}));var Je;(function(e){e.method=`codeAction/resolve`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.codeAction.resolveSupport`,`codeActionProvider.resolveProvider`)})(Je||(e.CodeActionResolveRequest=Je={}));var Ye;(function(e){e.method=`workspace/symbol`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`workspace.symbol`,`workspaceSymbolProvider`)})(Ye||(e.WorkspaceSymbolRequest=Ye={}));var Xe;(function(e){e.method=`workspaceSymbol/resolve`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`workspace.symbol.resolveSupport`,`workspaceSymbolProvider.resolveProvider`)})(Xe||(e.WorkspaceSymbolResolveRequest=Xe={}));var Ze;(function(e){e.method=`textDocument/codeLens`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.codeLens`,`codeLensProvider`)})(Ze||(e.CodeLensRequest=Ze={}));var Qe;(function(e){e.method=`codeLens/resolve`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.codeLens.resolveSupport`,`codeLensProvider.resolveProvider`)})(Qe||(e.CodeLensResolveRequest=Qe={}));var $e;(function(e){e.method=`workspace/codeLens/refresh`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolRequestType0(e.method),e.capabilities=i.CM.create(`workspace.codeLens`,void 0)})($e||(e.CodeLensRefreshRequest=$e={}));var et;(function(e){e.method=`textDocument/documentLink`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.documentLink`,`documentLinkProvider`)})(et||(e.DocumentLinkRequest=et={}));var tt;(function(e){e.method=`documentLink/resolve`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.documentLink`,`documentLinkProvider.resolveProvider`)})(tt||(e.DocumentLinkResolveRequest=tt={}));var nt;(function(e){e.method=`textDocument/formatting`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.formatting`,`documentFormattingProvider`)})(nt||(e.DocumentFormattingRequest=nt={}));var rt;(function(e){e.method=`textDocument/rangeFormatting`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.rangeFormatting`,`documentRangeFormattingProvider`)})(rt||(e.DocumentRangeFormattingRequest=rt={}));var it;(function(e){e.method=`textDocument/rangesFormatting`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.rangeFormatting.rangesSupport`,`documentRangeFormattingProvider.rangesSupport`)})(it||(e.DocumentRangesFormattingRequest=it={}));var at;(function(e){e.method=`textDocument/onTypeFormatting`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.onTypeFormatting`,`documentOnTypeFormattingProvider`)})(at||(e.DocumentOnTypeFormattingRequest=at={}));var ot;(function(e){e.Identifier=1})(ot||(e.PrepareSupportDefaultBehavior=ot={}));var st;(function(e){e.method=`textDocument/rename`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.rename`,`renameProvider`)})(st||(e.RenameRequest=st={}));var ct;(function(e){e.method=`textDocument/prepareRename`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`textDocument.rename.prepareSupport`,`renameProvider.prepareProvider`)})(ct||(e.PrepareRenameRequest=ct={}));var lt;(function(e){e.method=`workspace/executeCommand`,e.messageDirection=i.MessageDirection.clientToServer,e.type=new i.ProtocolRequestType(e.method),e.capabilities=i.CM.create(`workspace.executeCommand`,`executeCommandProvider`)})(lt||(e.ExecuteCommandRequest=lt={}));var ut;(function(e){e.method=`workspace/applyEdit`,e.messageDirection=i.MessageDirection.serverToClient,e.type=new i.ProtocolRequestType(`workspace/applyEdit`),e.capabilities=i.CM.create(`workspace.applyEdit`,void 0)})(ut||(e.ApplyWorkspaceEditRequest=ut={}))}}),$t=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=n;var t=w();function n(e,n,r,i){return t.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,t.createMessageConnection)(e,n,r,i)}o(n,`createProtocolConnection`)}}),en=c({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/api.js"(e){var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return t[n]},`get`)}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__exportStar||function(e,n){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.LSPErrorCodes=e.createProtocolConnection=void 0,n(w(),e),n((Ot(),f(ne)),e),n(F(),e),n(Qt(),e);var r=$t();Object.defineProperty(e,"createProtocolConnection",{enumerable:!0,get:o(function(){return r.createProtocolConnection},`get`)});var i;(function(e){e.lspReservedErrorRangeStart=-32899,e.RequestFailed=-32803,e.ServerCancelled=-32802,e.ContentModified=-32801,e.RequestCancelled=-32800,e.lspReservedErrorRangeEnd=-32800})(i||(e.LSPErrorCodes=i={}))}});function I(e){return typeof e==`object`&&!!e&&typeof e.$type==`string`}o(I,`isAstNode`);function tn(e){return typeof e==`object`&&!!e&&typeof e.$refText==`string`&&`ref`in e}o(tn,`isReference`);function nn(e){return typeof e==`object`&&!!e&&typeof e.$refText==`string`&&`items`in e}o(nn,`isMultiReference`);function rn(e){return typeof e==`object`&&!!e&&typeof e.name==`string`&&typeof e.type==`string`&&typeof e.path==`string`}o(rn,`isAstNodeDescription`);function an(e){return typeof e==`object`&&!!e&&typeof e.info==`object`&&typeof e.message==`string`}o(an,`isLinkingError`);var on=class{static{o(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 n=t.properties[e.property]?.referenceType;if(!n)throw Error(`Property ${e.property||`undefined`} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){return this.types[e]||{name:e,properties:{},superTypes:[]}}isInstance(e,t){return I(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let n=this.subtypes[e];n||=this.subtypes[e]={};let r=n[t];if(r!==void 0)return r;{let r=this.types[e],i=r?r.superTypes.some(e=>this.isSubtype(e,t)):!1;return n[t]=i,i}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let t=this.getAllTypes(),n=[];for(let r of t)this.isSubtype(r,e)&&n.push(r);return this.allSubtypes[e]=n,n}}isComplete(e){let t=this.getTypeMetaData(e.$type);for(let n of Object.keys(t.properties)){let r=t.properties[n];if(!r.optional&&e[r.name]==null)return!1}return!0}};function sn(e){return typeof e==`object`&&!!e&&Array.isArray(e.content)}o(sn,`isCompositeCstNode`);function cn(e){return typeof e==`object`&&!!e&&typeof e.tokenType==`object`}o(cn,`isLeafCstNode`);function ln(e){return sn(e)&&typeof e.fullText==`string`}o(ln,`isRootCstNode`);var un=class e{static{o(this,`StreamImpl`)}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:o(()=>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,n=e.next();for(;!n.done;)t++,n=e.next();return t}toArray(){let e=[],t=this.iterator(),n;do n=t.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,t){let n=this.map(n=>[e?e(n):n,t?t(n):n]);return new Map(n)}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),!t.done)return t;while(!t.done);e.firstDone=!0}do if(t=e.iterator.next(),!t.done)return t;while(!t.done);return mn})}join(e=`,`){let t=this.iterator(),n=``,r,i=!1;do r=t.next(),r.done||(i&&(n+=e),n+=dn(r.value)),i=!0;while(!r.done);return n}indexOf(e,t=0){let n=this.iterator(),r=0,i=n.next();for(;!i.done;){if(r>=t&&i.value===e)return r;i=n.next(),r++}return-1}every(e){let t=this.iterator(),n=t.next();for(;!n.done;){if(!e(n.value))return!1;n=t.next()}return!0}some(e){let t=this.iterator(),n=t.next();for(;!n.done;){if(e(n.value))return!0;n=t.next()}return!1}forEach(e){let t=this.iterator(),n=0,r=t.next();for(;!r.done;)e(r.value,n),r=t.next(),n++}map(t){return new e(this.startFn,e=>{let{done:n,value:r}=this.nextFn(e);return n?mn:{done:!1,value:t(r)}})}filter(t){return new e(this.startFn,e=>{let n;do if(n=this.nextFn(e),!n.done&&t(n.value))return n;while(!n.done);return mn})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,t){let n=this.iterator(),r=t,i=n.next();for(;!i.done;)r=r===void 0?i.value:e(r,i.value),i=n.next();return r}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,n){let r=e.next();if(r.done)return n;let i=this.recursiveReduce(e,t,n);return i===void 0?r.value:t(i,r.value)}find(e){let t=this.iterator(),n=t.next();for(;!n.done;){if(e(n.value))return n.value;n=t.next()}}findIndex(e){let t=this.iterator(),n=0,r=t.next();for(;!r.done;){if(e(r.value))return n;r=t.next(),n++}return-1}includes(e){let t=this.iterator(),n=t.next();for(;!n.done;){if(n.value===e)return!0;n=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)e.iterator=void 0;else return t}let{done:n,value:r}=this.nextFn(e.this);if(!n){let n=t(r);if(fn(n))e.iterator=n[Symbol.iterator]();else return{done:!1,value:n}}}while(e.iterator);return mn})}flat(t){if(t===void 0&&(t=1),t<=0)return this;let n=t>1?this.flat(t-1):this;return new e(()=>({this:n.startFn()}),e=>{do{if(e.iterator){let t=e.iterator.next();if(t.done)e.iterator=void 0;else return t}let{done:t,value:r}=n.nextFn(e.this);if(!t){if(fn(r))e.iterator=r[Symbol.iterator]();else return{done:!1,value:r}}}while(e.iterator);return mn})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(t=1){return new e(()=>{let e=this.startFn();for(let n=0;n<t;n++)if(this.nextFn(e).done)return e;return e},this.nextFn)}limit(t){return new e(()=>({size:0,state:this.startFn()}),e=>(e.size++,e.size>t?mn:this.nextFn(e.state)))}distinct(t){return new e(()=>({set:new Set,internalState:this.startFn()}),e=>{let n;do if(n=this.nextFn(e.internalState),!n.done){let r=t?t(n.value):n.value;if(!e.set.has(r))return e.set.add(r),n}while(!n.done);return mn})}exclude(e,t){let n=new Set;for(let r of e){let e=t?t(r):r;n.add(e)}return this.filter(e=>{let r=t?t(e):e;return!n.has(r)})}};function dn(e){return typeof e==`string`?e:e===void 0?`undefined`:typeof e.toString==`function`?e.toString():Object.prototype.toString.call(e)}o(dn,`toString`);function fn(e){return!!e&&typeof e[Symbol.iterator]==`function`}o(fn,`isIterable`);var pn=new un(()=>void 0,()=>mn),mn=Object.freeze({done:!0,value:void 0});function L(...e){if(e.length===1){let t=e[0];if(t instanceof un)return t;if(fn(t))return new un(()=>t[Symbol.iterator](),e=>e.next());if(typeof t.length==`number`)return new un(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:mn)}return e.length>1?new un(()=>({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 n=e[t.collIndex++];fn(n)?t.iterator=n[Symbol.iterator]():n&&typeof n.length==`number`&&(t.array=n)}}while(t.iterator||t.array||t.collIndex<e.length);return mn}):pn}o(L,`stream`);var hn=class extends un{static{o(this,`TreeStreamImpl`)}constructor(e,t,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&=(e.iterators.pop(),!1);e.iterators.length>0;){let n=e.iterators[e.iterators.length-1].next();if(n.done)e.iterators.pop();else return e.iterators.push(t(n.value)[Symbol.iterator]()),n}return mn})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),`next`),prune:o(()=>{e.state.pruned=!0},`prune`),[Symbol.iterator]:()=>e};return e}},gn;(function(e){function t(e){return e.reduce((e,t)=>e+t,0)}o(t,`sum`),e.sum=t;function n(e){return e.reduce((e,t)=>e*t,0)}o(n,`product`),e.product=n;function r(e){return e.reduce((e,t)=>Math.min(e,t))}o(r,`min`),e.min=r;function i(e){return e.reduce((e,t)=>Math.max(e,t))}o(i,`max`),e.max=i})(gn||={});function _n(e,t={}){for(let[n,r]of Object.entries(e))n.startsWith(`$`)||(Array.isArray(r)?r.forEach((r,i)=>{I(r)&&(r.$container=e,r.$containerProperty=n,r.$containerIndex=i,t.deep&&_n(r,t))}):I(r)&&(r.$container=e,r.$containerProperty=n,t.deep&&_n(r,t)))}o(_n,`linkContentToContainer`);function vn(e,t){let n=e;for(;n;){if(t(n))return n;n=n.$container}}o(vn,`getContainerOfType`);function yn(e){let t=bn(e).$document;if(!t)throw Error(`AST node has no document.`);return t}o(yn,`getDocument`);function bn(e){for(;e.$container;)e=e.$container;return e}o(bn,`findRootNode`);function xn(e){return tn(e)?e.ref?[e.ref]:[]:nn(e)?e.items.map(e=>e.ref):[]}o(xn,`getReferenceNodes`);function Sn(e,t){if(!e)throw Error(`Node must be an AstNode.`);let n=t?.range;return new un(()=>({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 i=e[r];if(I(i)){if(t.keyIndex++,Tn(i,n))return{done:!1,value:i}}else if(Array.isArray(i)){for(;t.arrayIndex<i.length;){let e=i[t.arrayIndex++];if(I(e)&&Tn(e,n))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return mn})}o(Sn,`streamContents`);function Cn(e,t){if(!e)throw Error(`Root node must be an AstNode.`);return new hn(e,e=>Sn(e,t))}o(Cn,`streamAllContents`);function wn(e,t){if(!e)throw Error(`Root node must be an AstNode.`);return t?.range&&!Tn(e,t.range)?new hn(e,()=>[]):new hn(e,e=>Sn(e,t),{includeRoot:!0})}o(wn,`streamAst`);function Tn(e,t){if(!t)return!0;let n=e.$cstNode?.range;return n?fi(n,t):!1}o(Tn,`isAstNodeInRange`);function En(e){return new un(()=>({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 r=e[n];if(tn(r)||nn(r))return t.keyIndex++,{done:!1,value:{reference:r,container:e,property:n}};if(Array.isArray(r)){for(;t.arrayIndex<r.length;){let i=t.arrayIndex++,a=r[i];if(tn(a)||nn(a))return{done:!1,value:{reference:a,container:e,property:n,index:i}}}t.arrayIndex=0}}t.keyIndex++}return mn})}o(En,`streamReferences`);function Dn(e,t){let n=e.getTypeMetaData(t.$type),r=t;for(let e of Object.values(n.properties))e.defaultValue!==void 0&&r[e.name]===void 0&&(r[e.name]=On(e.defaultValue))}o(Dn,`assignMandatoryProperties`);function On(e){return Array.isArray(e)?[...e.map(On)]:e}o(On,`copyDefaultValue`);var kn={$type:`AbstractElement`,cardinality:`cardinality`};function An(e){return R.isInstance(e,kn.$type)}o(An,`isAbstractElement`);var jn={$type:`AbstractParserRule`};function Mn(e){return R.isInstance(e,jn.$type)}o(Mn,`isAbstractParserRule`);var Nn={$type:`AbstractRule`},Pn={$type:`AbstractType`},Fn={$type:`Action`,cardinality:`cardinality`,feature:`feature`,inferredType:`inferredType`,operator:`operator`,type:`type`};function In(e){return R.isInstance(e,Fn.$type)}o(In,`isAction`);var Ln={$type:`Alternatives`,cardinality:`cardinality`,elements:`elements`};function Rn(e){return R.isInstance(e,Ln.$type)}o(Rn,`isAlternatives`);var zn={$type:`ArrayLiteral`,elements:`elements`},Bn={$type:`ArrayType`,elementType:`elementType`},Vn={$type:`Assignment`,cardinality:`cardinality`,feature:`feature`,operator:`operator`,predicate:`predicate`,terminal:`terminal`};function Hn(e){return R.isInstance(e,Vn.$type)}o(Hn,`isAssignment`);var Un={$type:`BooleanLiteral`,true:`true`};function Wn(e){return R.isInstance(e,Un.$type)}o(Wn,`isBooleanLiteral`);var Gn={$type:`CharacterRange`,cardinality:`cardinality`,left:`left`,lookahead:`lookahead`,parenthesized:`parenthesized`,right:`right`};function Kn(e){return R.isInstance(e,Gn.$type)}o(Kn,`isCharacterRange`);var qn={$type:`Condition`},Jn={$type:`Conjunction`,left:`left`,right:`right`};function Yn(e){return R.isInstance(e,Jn.$type)}o(Yn,`isConjunction`);var Xn={$type:`CrossReference`,cardinality:`cardinality`,deprecatedSyntax:`deprecatedSyntax`,isMulti:`isMulti`,terminal:`terminal`,type:`type`};function Zn(e){return R.isInstance(e,Xn.$type)}o(Zn,`isCrossReference`);var Qn={$type:`Disjunction`,left:`left`,right:`right`};function $n(e){return R.isInstance(e,Qn.$type)}o($n,`isDisjunction`);var er={$type:`EndOfFile`,cardinality:`cardinality`};function tr(e){return R.isInstance(e,er.$type)}o(tr,`isEndOfFile`);var nr={$type:`Grammar`,imports:`imports`,interfaces:`interfaces`,isDeclared:`isDeclared`,name:`name`,rules:`rules`,types:`types`},rr={$type:`GrammarImport`,path:`path`},ir={$type:`Group`,cardinality:`cardinality`,elements:`elements`,guardCondition:`guardCondition`,predicate:`predicate`};function ar(e){return R.isInstance(e,ir.$type)}o(ar,`isGroup`);var or={$type:`InferredType`,name:`name`};function sr(e){return R.isInstance(e,or.$type)}o(sr,`isInferredType`);var cr={$type:`InfixRule`,call:`call`,dataType:`dataType`,inferredType:`inferredType`,name:`name`,operators:`operators`,parameters:`parameters`,returnType:`returnType`};function lr(e){return R.isInstance(e,cr.$type)}o(lr,`isInfixRule`);var ur={$type:`InfixRuleOperatorList`,associativity:`associativity`,operators:`operators`},dr={$type:`InfixRuleOperators`,precedences:`precedences`},fr={$type:`Interface`,attributes:`attributes`,name:`name`,superTypes:`superTypes`};function pr(e){return R.isInstance(e,fr.$type)}o(pr,`isInterface`);var mr={$type:`Keyword`,cardinality:`cardinality`,predicate:`predicate`,value:`value`};function hr(e){return R.isInstance(e,mr.$type)}o(hr,`isKeyword`);var gr={$type:`NamedArgument`,calledByName:`calledByName`,parameter:`parameter`,value:`value`},_r={$type:`NegatedToken`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`,terminal:`terminal`};function vr(e){return R.isInstance(e,_r.$type)}o(vr,`isNegatedToken`);var yr={$type:`Negation`,value:`value`};function br(e){return R.isInstance(e,yr.$type)}o(br,`isNegation`);var xr={$type:`NumberLiteral`,value:`value`},Sr={$type:`Parameter`,name:`name`},Cr={$type:`ParameterReference`,parameter:`parameter`};function wr(e){return R.isInstance(e,Cr.$type)}o(wr,`isParameterReference`);var Tr={$type:`ParserRule`,dataType:`dataType`,definition:`definition`,entry:`entry`,fragment:`fragment`,inferredType:`inferredType`,name:`name`,parameters:`parameters`,returnType:`returnType`};function Er(e){return R.isInstance(e,Tr.$type)}o(Er,`isParserRule`);var Dr={$type:`ReferenceType`,isMulti:`isMulti`,referenceType:`referenceType`},Or={$type:`RegexToken`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`,regex:`regex`};function kr(e){return R.isInstance(e,Or.$type)}o(kr,`isRegexToken`);var Ar={$type:`ReturnType`,name:`name`};function jr(e){return R.isInstance(e,Ar.$type)}o(jr,`isReturnType`);var Mr={$type:`RuleCall`,arguments:`arguments`,cardinality:`cardinality`,predicate:`predicate`,rule:`rule`};function Nr(e){return R.isInstance(e,Mr.$type)}o(Nr,`isRuleCall`);var Pr={$type:`SimpleType`,primitiveType:`primitiveType`,stringType:`stringType`,typeRef:`typeRef`};function Fr(e){return R.isInstance(e,Pr.$type)}o(Fr,`isSimpleType`);var Ir={$type:`StringLiteral`,value:`value`},Lr={$type:`TerminalAlternatives`,cardinality:`cardinality`,elements:`elements`,lookahead:`lookahead`,parenthesized:`parenthesized`};function Rr(e){return R.isInstance(e,Lr.$type)}o(Rr,`isTerminalAlternatives`);var zr={$type:`TerminalElement`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`},Br={$type:`TerminalGroup`,cardinality:`cardinality`,elements:`elements`,lookahead:`lookahead`,parenthesized:`parenthesized`};function Vr(e){return R.isInstance(e,Br.$type)}o(Vr,`isTerminalGroup`);var Hr={$type:`TerminalRule`,definition:`definition`,fragment:`fragment`,hidden:`hidden`,name:`name`,type:`type`};function Ur(e){return R.isInstance(e,Hr.$type)}o(Ur,`isTerminalRule`);var Wr={$type:`TerminalRuleCall`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`,rule:`rule`};function Gr(e){return R.isInstance(e,Wr.$type)}o(Gr,`isTerminalRuleCall`);var Kr={$type:`Type`,name:`name`,type:`type`};function qr(e){return R.isInstance(e,Kr.$type)}o(qr,`isType`);var Jr={$type:`TypeAttribute`,defaultValue:`defaultValue`,isOptional:`isOptional`,name:`name`,type:`type`},Yr={$type:`TypeDefinition`},Xr={$type:`UnionType`,types:`types`},Zr={$type:`UnorderedGroup`,cardinality:`cardinality`,elements:`elements`};function Qr(e){return R.isInstance(e,Zr.$type)}o(Qr,`isUnorderedGroup`);var $r={$type:`UntilToken`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`,terminal:`terminal`};function ei(e){return R.isInstance(e,$r.$type)}o(ei,`isUntilToken`);var ti={$type:`ValueLiteral`},ni={$type:`Wildcard`,cardinality:`cardinality`,lookahead:`lookahead`,parenthesized:`parenthesized`};function ri(e){return R.isInstance(e,ni.$type)}o(ri,`isWildcard`);var ii=class extends on{static{o(this,`LangiumGrammarAstReflection`)}constructor(){super(...arguments),this.types={AbstractElement:{name:kn.$type,properties:{cardinality:{name:kn.cardinality,optional:!0}},superTypes:[]},AbstractParserRule:{name:jn.$type,properties:{},superTypes:[Nn.$type,Pn.$type]},AbstractRule:{name:Nn.$type,properties:{},superTypes:[]},AbstractType:{name:Pn.$type,properties:{},superTypes:[]},Action:{name:Fn.$type,properties:{cardinality:{name:Fn.cardinality,optional:!0},feature:{name:Fn.feature,optional:!0},inferredType:{name:Fn.inferredType,optional:!0},operator:{name:Fn.operator,optional:!0},type:{name:Fn.type,referenceType:Pn.$type,optional:!0}},superTypes:[kn.$type]},Alternatives:{name:Ln.$type,properties:{cardinality:{name:Ln.cardinality,optional:!0},elements:{name:Ln.elements,defaultValue:[]}},superTypes:[kn.$type]},ArrayLiteral:{name:zn.$type,properties:{elements:{name:zn.elements,defaultValue:[]}},superTypes:[ti.$type]},ArrayType:{name:Bn.$type,properties:{elementType:{name:Bn.elementType}},superTypes:[Yr.$type]},Assignment:{name:Vn.$type,properties:{cardinality:{name:Vn.cardinality,optional:!0},feature:{name:Vn.feature},operator:{name:Vn.operator},predicate:{name:Vn.predicate,optional:!0},terminal:{name:Vn.terminal}},superTypes:[kn.$type]},BooleanLiteral:{name:Un.$type,properties:{true:{name:Un.true,defaultValue:!1}},superTypes:[qn.$type,ti.$type]},CharacterRange:{name:Gn.$type,properties:{cardinality:{name:Gn.cardinality,optional:!0},left:{name:Gn.left},lookahead:{name:Gn.lookahead,optional:!0},parenthesized:{name:Gn.parenthesized,defaultValue:!1,optional:!0},right:{name:Gn.right,optional:!0}},superTypes:[zr.$type]},Condition:{name:qn.$type,properties:{},superTypes:[]},Conjunction:{name:Jn.$type,properties:{left:{name:Jn.left},right:{name:Jn.right}},superTypes:[qn.$type]},CrossReference:{name:Xn.$type,properties:{cardinality:{name:Xn.cardinality,optional:!0},deprecatedSyntax:{name:Xn.deprecatedSyntax,defaultValue:!1},isMulti:{name:Xn.isMulti,defaultValue:!1},terminal:{name:Xn.terminal,optional:!0},type:{name:Xn.type,referenceType:Pn.$type}},superTypes:[kn.$type]},Disjunction:{name:Qn.$type,properties:{left:{name:Qn.left},right:{name:Qn.right}},superTypes:[qn.$type]},EndOfFile:{name:er.$type,properties:{cardinality:{name:er.cardinality,optional:!0}},superTypes:[kn.$type]},Grammar:{name:nr.$type,properties:{imports:{name:nr.imports,defaultValue:[]},interfaces:{name:nr.interfaces,defaultValue:[]},isDeclared:{name:nr.isDeclared,defaultValue:!1},name:{name:nr.name,optional:!0},rules:{name:nr.rules,defaultValue:[]},types:{name:nr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:rr.$type,properties:{path:{name:rr.path}},superTypes:[]},Group:{name:ir.$type,properties:{cardinality:{name:ir.cardinality,optional:!0},elements:{name:ir.elements,defaultValue:[]},guardCondition:{name:ir.guardCondition,optional:!0},predicate:{name:ir.predicate,optional:!0}},superTypes:[kn.$type]},InferredType:{name:or.$type,properties:{name:{name:or.name}},superTypes:[Pn.$type]},InfixRule:{name:cr.$type,properties:{call:{name:cr.call},dataType:{name:cr.dataType,optional:!0},inferredType:{name:cr.inferredType,optional:!0},name:{name:cr.name},operators:{name:cr.operators},parameters:{name:cr.parameters,defaultValue:[]},returnType:{name:cr.returnType,referenceType:Pn.$type,optional:!0}},superTypes:[jn.$type]},InfixRuleOperatorList:{name:ur.$type,properties:{associativity:{name:ur.associativity,optional:!0},operators:{name:ur.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:dr.$type,properties:{precedences:{name:dr.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:fr.$type,properties:{attributes:{name:fr.attributes,defaultValue:[]},name:{name:fr.name},superTypes:{name:fr.superTypes,defaultValue:[],referenceType:Pn.$type}},superTypes:[Pn.$type]},Keyword:{name:mr.$type,properties:{cardinality:{name:mr.cardinality,optional:!0},predicate:{name:mr.predicate,optional:!0},value:{name:mr.value}},superTypes:[kn.$type]},NamedArgument:{name:gr.$type,properties:{calledByName:{name:gr.calledByName,defaultValue:!1},parameter:{name:gr.parameter,referenceType:Sr.$type,optional:!0},value:{name:gr.value}},superTypes:[]},NegatedToken:{name:_r.$type,properties:{cardinality:{name:_r.cardinality,optional:!0},lookahead:{name:_r.lookahead,optional:!0},parenthesized:{name:_r.parenthesized,defaultValue:!1,optional:!0},terminal:{name:_r.terminal}},superTypes:[zr.$type]},Negation:{name:yr.$type,properties:{value:{name:yr.value}},superTypes:[qn.$type]},NumberLiteral:{name:xr.$type,properties:{value:{name:xr.value}},superTypes:[ti.$type]},Parameter:{name:Sr.$type,properties:{name:{name:Sr.name}},superTypes:[]},ParameterReference:{name:Cr.$type,properties:{parameter:{name:Cr.parameter,referenceType:Sr.$type}},superTypes:[qn.$type]},ParserRule:{name:Tr.$type,properties:{dataType:{name:Tr.dataType,optional:!0},definition:{name:Tr.definition},entry:{name:Tr.entry,defaultValue:!1},fragment:{name:Tr.fragment,defaultValue:!1},inferredType:{name:Tr.inferredType,optional:!0},name:{name:Tr.name},parameters:{name:Tr.parameters,defaultValue:[]},returnType:{name:Tr.returnType,referenceType:Pn.$type,optional:!0}},superTypes:[jn.$type]},ReferenceType:{name:Dr.$type,properties:{isMulti:{name:Dr.isMulti,defaultValue:!1},referenceType:{name:Dr.referenceType}},superTypes:[Yr.$type]},RegexToken:{name:Or.$type,properties:{cardinality:{name:Or.cardinality,optional:!0},lookahead:{name:Or.lookahead,optional:!0},parenthesized:{name:Or.parenthesized,defaultValue:!1,optional:!0},regex:{name:Or.regex}},superTypes:[zr.$type]},ReturnType:{name:Ar.$type,properties:{name:{name:Ar.name}},superTypes:[]},RuleCall:{name:Mr.$type,properties:{arguments:{name:Mr.arguments,defaultValue:[]},cardinality:{name:Mr.cardinality,optional:!0},predicate:{name:Mr.predicate,optional:!0},rule:{name:Mr.rule,referenceType:Nn.$type}},superTypes:[kn.$type]},SimpleType:{name:Pr.$type,properties:{primitiveType:{name:Pr.primitiveType,optional:!0},stringType:{name:Pr.stringType,optional:!0},typeRef:{name:Pr.typeRef,referenceType:Pn.$type,optional:!0}},superTypes:[Yr.$type]},StringLiteral:{name:Ir.$type,properties:{value:{name:Ir.value}},superTypes:[ti.$type]},TerminalAlternatives:{name:Lr.$type,properties:{cardinality:{name:Lr.cardinality,optional:!0},elements:{name:Lr.elements,defaultValue:[]},lookahead:{name:Lr.lookahead,optional:!0},parenthesized:{name:Lr.parenthesized,defaultValue:!1,optional:!0}},superTypes:[zr.$type]},TerminalElement:{name:zr.$type,properties:{cardinality:{name:zr.cardinality,optional:!0},lookahead:{name:zr.lookahead,optional:!0},parenthesized:{name:zr.parenthesized,defaultValue:!1,optional:!0}},superTypes:[kn.$type]},TerminalGroup:{name:Br.$type,properties:{cardinality:{name:Br.cardinality,optional:!0},elements:{name:Br.elements,defaultValue:[]},lookahead:{name:Br.lookahead,optional:!0},parenthesized:{name:Br.parenthesized,defaultValue:!1,optional:!0}},superTypes:[zr.$type]},TerminalRule:{name:Hr.$type,properties:{definition:{name:Hr.definition},fragment:{name:Hr.fragment,defaultValue:!1},hidden:{name:Hr.hidden,defaultValue:!1},name:{name:Hr.name},type:{name:Hr.type,optional:!0}},superTypes:[Nn.$type]},TerminalRuleCall:{name:Wr.$type,properties:{cardinality:{name:Wr.cardinality,optional:!0},lookahead:{name:Wr.lookahead,optional:!0},parenthesized:{name:Wr.parenthesized,defaultValue:!1,optional:!0},rule:{name:Wr.rule,referenceType:Hr.$type}},superTypes:[zr.$type]},Type:{name:Kr.$type,properties:{name:{name:Kr.name},type:{name:Kr.type}},superTypes:[Pn.$type]},TypeAttribute:{name:Jr.$type,properties:{defaultValue:{name:Jr.defaultValue,optional:!0},isOptional:{name:Jr.isOptional,defaultValue:!1},name:{name:Jr.name},type:{name:Jr.type}},superTypes:[]},TypeDefinition:{name:Yr.$type,properties:{},superTypes:[]},UnionType:{name:Xr.$type,properties:{types:{name:Xr.types,defaultValue:[]}},superTypes:[Yr.$type]},UnorderedGroup:{name:Zr.$type,properties:{cardinality:{name:Zr.cardinality,optional:!0},elements:{name:Zr.elements,defaultValue:[]}},superTypes:[kn.$type]},UntilToken:{name:$r.$type,properties:{cardinality:{name:$r.cardinality,optional:!0},lookahead:{name:$r.lookahead,optional:!0},parenthesized:{name:$r.parenthesized,defaultValue:!1,optional:!0},terminal:{name:$r.terminal}},superTypes:[zr.$type]},ValueLiteral:{name:ti.$type,properties:{},superTypes:[]},Wildcard:{name:ni.$type,properties:{cardinality:{name:ni.cardinality,optional:!0},lookahead:{name:ni.lookahead,optional:!0},parenthesized:{name:ni.parenthesized,defaultValue:!1,optional:!0}},superTypes:[zr.$type]}}}},R=new ii;function ai(e){return new hn(e,e=>sn(e)?e.content:[],{includeRoot:!0})}o(ai,`streamCst`);function oi(e,t){for(;e.container;)if(e=e.container,e===t)return!0;return!1}o(oi,`isChildNode`);function si(e){return{start:{line:e.startLine-1,character:e.startColumn-1},end:{line:e.endLine-1,character:e.endColumn}}}o(si,`tokenToRange`);function ci(e){let{startOffset:t,endOffset:n}=e;return typeof t==`number`&&Number.isFinite(t)&&t>=0&&typeof n==`number`&&Number.isFinite(n)&&n>=t}o(ci,`isValidTokenRange`);function li(e){if(!e)return;let{offset:t,end:n,range:r}=e;return{range:r,offset:t,end:n,length:n-t}}o(li,`toDocumentSegment`);var ui;(function(e){e[e.Before=0]=`Before`,e[e.After=1]=`After`,e[e.OverlapFront=2]=`OverlapFront`,e[e.OverlapBack=3]=`OverlapBack`,e[e.Inside=4]=`Inside`,e[e.Outside=5]=`Outside`})(ui||={});function di(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return ui.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return ui.After;let n=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,r=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return n&&r?ui.Inside:n?ui.OverlapBack:r?ui.OverlapFront:ui.Outside}o(di,`compareRange`);function fi(e,t){return di(e,t)>ui.After}o(fi,`inRange`);var pi=/^[\w\p{L}]$/u;function mi(e,t){if(e){let n=gi(e,!0);if(n&&hi(n,t))return n;if(ln(e)){let n=e.content.findIndex(e=>!e.hidden);for(let r=n-1;r>=0;r--){let n=e.content[r];if(hi(n,t))return n}}}}o(mi,`findCommentNode`);function hi(e,t){return cn(e)&&t.includes(e.tokenType.name)}o(hi,`isCommentNode`);function gi(e,t=!0){for(;e.container;){let n=e.container,r=n.content.indexOf(e);for(;r>0;){r--;let e=n.content[r];if(t||!e.hidden)return e}e=n}}o(gi,`getPreviousNode`);var _i=class extends Error{static{o(this,`ErrorWithLocation`)}constructor(e,t){let n=typeof t==`string`?t:t();super(e?`${n} at ${e.range.start.line}:${e.range.start.character}`:n)}};function vi(e,t=`Error: Got unexpected value.`){throw Error(typeof t==`string`?t:t())}o(vi,`assertUnreachable`);function z(e){return e.charCodeAt(0)}o(z,`cc`);function yi(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}o(yi,`insertToSet`);function bi(e,t){if(e[t]===!0)throw`duplicate flag `+t;e[t],e[t]=!0}o(bi,`addFlag`);function xi(e){if(e===void 0)throw Error(`Internal Error - Should never get here!`);return!0}o(xi,`ASSERT_EXISTS`);function Si(){throw Error(`Internal Error - Should never get here!`)}o(Si,`ASSERT_NEVER_REACH_HERE`);function Ci(e){return e.type===`Character`}o(Ci,`isCharacter`);var wi=[];for(let e=z(`0`);e<=z(`9`);e++)wi.push(e);var Ti=[z(`_`)].concat(wi);for(let e=z(`a`);e<=z(`z`);e++)Ti.push(e);for(let e=z(`A`);e<=z(`Z`);e++)Ti.push(e);var Ei=[z(` `),z(`\f`),z(`
12
+ `),z(`\r`),z(` `),z(`\v`),z(` `),z(`\xA0`),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(` `),z(`\u2028`),z(`\u2029`),z(` `),z(` `),z(` `),z(``)],Di=/[0-9a-fA-F]/,Oi=/[0-9]/,ki=/[1-9]/,Ai=class{static{o(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 n={type:`Flags`,loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case`g`:bi(n,`global`);break;case`i`:bi(n,`ignoreCase`);break;case`m`:bi(n,`multiLine`);break;case`u`:bi(n,`unicode`);break;case`y`:bi(n,`sticky`)}if(this.idx!==this.input.length)throw Error(`Redundant input: `+this.input.substring(this.idx));return{type:`Pattern`,flags:n,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`(`:this.consumeChar(`?`);let t;switch(this.popChar()){case`=`:t=`Lookahead`;break;case`!`:t=`NegativeLookahead`;break;case`<`:switch(this.popChar()){case`=`:t=`Lookbehind`;break;case`!`:t=`NegativeLookbehind`}}xi(t);let n=this.disjunction();return this.consumeChar(`)`),{type:t,value:n,loc:this.loc(e)}}return Si()}quantifier(e=!1){let t,n=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`,`:let e;this.isDigit()?(e=this.integerIncludingZero(),t={atLeast:n,atMost:e}):t={atLeast:n,atMost:1/0},this.consumeChar(`}`)}if(e===!0&&t===void 0)return;xi(t)}if((e!==!0||t!==void 0)&&xi(t))return this.peekChar(0)===`?`?(this.consumeChar(`?`),t.greedy=!1):t.greedy=!0,t.type=`Quantifier`,t.loc=this.loc(n),t}atom(){let e,t=this.idx;switch(this.peekChar()){case`.`:e=this.dotAll();break;case`\\`:e=this.atomEscape();break;case`[`:e=this.characterClass();break;case`(`:e=this.group()}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),xi(e)?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Si()}dotAll(){return this.consumeChar(`.`),{type:`Set`,complement:!0,value:[z(`
13
+ `),z(`\r`),z(`\u2028`),z(`\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=wi;break;case`D`:e=wi,t=!0;break;case`s`:e=Ei;break;case`S`:e=Ei,t=!0;break;case`w`:e=Ti;break;case`W`:e=Ti,t=!0}return xi(e)?{type:`Set`,value:e,complement:t}:Si()}controlEscapeAtom(){let e;switch(this.popChar()){case`f`:e=z(`\f`);break;case`n`:e=z(`
14
+ `);break;case`r`:e=z(`\r`);break;case`t`:e=z(` `);break;case`v`:e=z(`\v`)}return xi(e)?{type:`Character`,value:e}:Si()}controlLetterEscapeAtom(){this.consumeChar(`c`);let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error(`Invalid `);return{type:`Character`,value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar(`0`),{type:`Character`,value:z(`\0`)}}hexEscapeSequenceAtom(){return this.consumeChar(`x`),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar(`u`),this.parseHexDigits(4)}identityEscapeAtom(){return{type:`Character`,value:z(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case`
15
+ `:case`\r`:case`\u2028`:case`\u2029`:case`\\`:case`]`:throw Error(`TBD`);default:return{type:`Character`,value:z(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,Ci(t)&&this.isRangeDash()){this.consumeChar(`-`);let n=this.classAtom();if(n.type,Ci(n)){if(n.value<t.value)throw Error(`Range out of order in character class`);e.push({from:t.value,to:n.value})}else yi(t.value,e),e.push(z(`-`)),yi(n.value,e)}else yi(t.value,e)}return this.consumeChar(`]`),{type:`Set`,complement:t,value:e}}classAtom(){switch(this.peekChar()){case`]`:case`
16
+ `: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:z(`\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;switch(this.consumeChar(`(`),this.peekChar(0)){case`?`:this.consumeChar(`?`),this.consumeChar(`:`),e=!1;break;default:this.groupIdx++}let t=this.disjunction();this.consumeChar(`)`);let n={type:`Group`,capturing:e,value:t};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();if(ki.test(e)===!1)throw Error(`Expecting a positive integer`);for(;Oi.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(Oi.test(e)===!1)throw Error(`Expecting an integer`);for(;Oi.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case`
17
+ `: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:z(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 Oi.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case`]`:case`
18
+ `: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 this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case`^`:case`$`:case`\\`:case`.`:case`*`:case`+`:case`?`:case`(`:case`)`:case`[`:case`|`:case`/`:case`
19
+ `:case`\r`:case`\u2028`:case`\u2029`:return!1;default:return!0}}parseHexDigits(e){let t=``;for(let n=0;n<e;n++){let e=this.popChar();if(Di.test(e)===!1)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(e!==void 0&&this.input[this.idx]!==e)throw Error(`Expected: '`+e+`' but found: '`+this.input[this.idx]+`' at offset: `+this.idx);if(this.idx>=this.input.length)throw Error(`Unexpected end of input`);this.idx++}loc(e){return{begin:e,end:this.idx}}},ji=class{static{o(this,`BaseRegExpVisitor`)}visitChildren(e){for(let t in e){let n=e[t];e.hasOwnProperty(t)&&(n.type===void 0?Array.isArray(n)&&n.forEach(e=>{this.visit(e)},this):this.visit(n))}}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){}},Mi=/\r?\n/gm,Ni=new Ai,Pi=new class extends ji{static{o(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&&t===`
20
+ `&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=Ri(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){let t=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(t);this.multiline=!!`
21
+ `.match(n)}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){e.type===`Group`&&e.quantifier||super.visitChildren(e)}};function Fi(e){try{return typeof e==`string`&&(e=new RegExp(e)),e=e.toString(),Pi.reset(e),Pi.visit(Ni.pattern(e)),Pi.multiline}catch{return!1}}o(Fi,`isMultilineComment`);var Ii=`\f
22
+ \r \v \xA0            \u2028\u2029   `.split(``);function Li(e){let t=typeof e==`string`?new RegExp(e):e;return Ii.some(e=>t.test(e))}o(Li,`isWhitespace`);function Ri(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}o(Ri,`escapeRegExp`);function zi(e,t){let n=Bi(e),r=t.match(n);return!!r&&r[0].length>0}o(zi,`partialMatches`);function Bi(e){typeof e==`string`&&(e=new RegExp(e));let t=e,n=e.source,r=0;function i(){let e=``,a;function s(t){e+=n.substr(r,t),r+=t}o(s,`appendRaw`);function c(t){e+=`(?:`+n.substr(r,t)+`|$)`,r+=t}for(o(c,`appendOptional`);r<n.length;)switch(n[r]){case`\\`:switch(n[r+1]){case`c`:c(3);break;case`x`:c(4);break;case`u`:t.unicode?n[r+2]===`{`?c(n.indexOf(`}`,r)-r+1):c(6):c(2);break;case`p`:case`P`:t.unicode?c(n.indexOf(`}`,r)-r+1):c(2);break;case`k`:c(n.indexOf(`>`,r)-r+1);break;default:c(2)}break;case`[`:a=/\[(?:\\.|.)*?\]/g,a.lastIndex=r,a=a.exec(n)||[],c(a[0].length);break;case`|`:case`^`:case`$`:case`*`:case`+`:case`?`:s(1);break;case`{`:a=/\{\d+,?\d*\}/g,a.lastIndex=r,a=a.exec(n),a?s(a[0].length):c(1);break;case`(`:if(n[r+1]===`?`)switch(n[r+2]){case`:`:e+=`(?:`,r+=3,e+=i()+`|$)`;break;case`=`:e+=`(?=`,r+=3,e+=i()+`)`;break;case`!`:a=r,r+=3,i(),e+=n.substr(a,r-a);break;case`<`:switch(n[r+3]){case`=`:case`!`:a=r,r+=4,i(),e+=n.substr(a,r-a);break;default:s(n.indexOf(`>`,r)-r+1),e+=i()+`|$)`}}else s(1),e+=i()+`|$)`;break;case`)`:return++r,e;default:c(1)}return e}return o(i,`process`),new RegExp(i(),e.flags)}o(Bi,`partialRegExp`);function Vi(e){return e.rules.find(e=>Er(e)&&e.entry)}o(Vi,`getEntryRule`);function Hi(e){return e.rules.filter(e=>Ur(e)&&e.hidden)}o(Hi,`getHiddenRules`);function Ui(e,t){let n=new Set,r=Vi(e);if(!r)return new Set(e.rules);let i=[r].concat(Hi(e));for(let e of i)Wi(e,n,t);let a=new Set;for(let t of e.rules)(n.has(t.name)||Ur(t)&&t.hidden)&&a.add(t);return a}o(Ui,`getAllReachableRules`);function Wi(e,t,n){t.add(e.name),Cn(e).forEach(e=>{if(Nr(e)||n&&Gr(e)){let r=e.rule.ref;r&&!t.has(r.name)&&Wi(r,t,n)}})}o(Wi,`ruleDfs`);function Gi(e){if(e.terminal)return e.terminal;if(e.type.ref)return $i(e.type.ref)?.terminal}o(Gi,`getCrossReferenceTerminal`);function Ki(e){return e.hidden&&!Li(sa(e))}o(Ki,`isCommentTerminal`);function qi(e,t){return!e||!t?[]:Yi(e,t,e.astNode,!0)}o(qi,`findNodesForProperty`);function Ji(e,t,n){if(!e||!t)return;let r=Yi(e,t,e.astNode,!0);if(r.length!==0)return n=n===void 0?0:Math.max(0,Math.min(n,r.length-1)),r[n]}o(Ji,`findNodeForProperty`);function Yi(e,t,n,r){if(!r){let n=vn(e.grammarSource,Hn);if(n&&n.feature===t)return[e]}return sn(e)&&e.astNode===n?e.content.flatMap(e=>Yi(e,t,n,!1)):[]}o(Yi,`findNodesForPropertyInternal`);function Xi(e,t,n){if(!e)return;let r=Zi(e,t,e?.astNode);if(r.length!==0)return n=n===void 0?0:Math.max(0,Math.min(n,r.length-1)),r[n]}o(Xi,`findNodeForKeyword`);function Zi(e,t,n){if(e.astNode!==n)return[];if(hr(e.grammarSource)&&e.grammarSource.value===t)return[e];let r=ai(e).iterator(),i,a=[];do if(i=r.next(),!i.done){let e=i.value;e.astNode===n?hr(e.grammarSource)&&e.grammarSource.value===t&&a.push(e):r.prune()}while(!i.done);return a}o(Zi,`findNodesForKeywordInternal`);function Qi(e){let t=e.astNode;for(;t===e.container?.astNode;){let t=vn(e.grammarSource,Hn);if(t)return t;e=e.container}}o(Qi,`findAssignment`);function $i(e){let t=e;return sr(t)&&(In(t.$container)?t=t.$container.$container:Mn(t.$container)?t=t.$container:vi(t.$container)),ea(e,t,new Map)}o($i,`findNameAssignment`);function ea(e,t,n){function r(t,r){let i;return vn(t,Hn)||(i=ea(r,r,n)),n.set(e,i),i}if(o(r,`go`),n.has(e))return n.get(e);n.set(e,void 0);for(let i of Cn(t))if(Hn(i)&&i.feature.toLowerCase()===`name`)return n.set(e,i),i;else if(Nr(i)&&Er(i.rule.ref))return r(i,i.rule.ref);else if(Fr(i)&&i.typeRef?.ref)return r(i,i.typeRef.ref)}o(ea,`findNameAssignmentInternal`);function ta(e){return na(e,new Set)}o(ta,`isDataTypeRule`);function na(e,t){if(t.has(e))return!0;t.add(e);for(let n of Cn(e))if(Nr(n)){if(!n.rule.ref||Er(n.rule.ref)&&!na(n.rule.ref,t)||lr(n.rule.ref))return!1}else if(Hn(n))return!1;else if(In(n))return!1;return!!e.definition}o(na,`isDataTypeRuleInternal`);function ra(e){if(!Ur(e)){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t)return t.name}}}o(ra,`getExplicitRuleType`);function ia(e){if(Mn(e))return Er(e)&&ta(e)?e.name:ra(e)??e.name;if(pr(e)||qr(e)||jr(e))return e.name;if(In(e)){let t=aa(e);if(t)return t}else if(sr(e))return e.name;throw Error(`Cannot get name of Unknown Type`)}o(ia,`getTypeName`);function aa(e){if(e.inferredType)return e.inferredType.name;if(e.type?.ref)return ia(e.type.ref)}o(aa,`getActionType`);function oa(e){return Ur(e)?e.type?.name??`string`:ra(e)??e.name}o(oa,`getRuleType`);function sa(e){let t={s:!1,i:!1,u:!1},n=la(e.definition,t),r=Object.entries(t).filter(([,e])=>e).map(([e])=>e).join(``);return new RegExp(n,r)}o(sa,`terminalRegex`);var ca=`[\\s\\S]`;function la(e,t){if(Rr(e))return ua(e);if(Vr(e))return da(e);if(Kn(e))return ma(e);if(Gr(e)){let t=e.rule.ref;if(!t)throw Error(`Missing rule reference.`);return ga(la(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}if(vr(e))return pa(e);if(ei(e))return fa(e);if(kr(e)){let n=e.regex.lastIndexOf(`/`),r=e.regex.substring(1,n),i=e.regex.substring(n+1);return t&&(t.i=i.includes(`i`),t.s=i.includes(`s`),t.u=i.includes(`u`)),ga(r,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}if(ri(e))return ga(ca,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized});throw Error(`Invalid terminal element: ${e?.$type}, ${e?.$cstNode?.text}`)}o(la,`abstractElementToRegex`);function ua(e){return ga(e.elements.map(e=>la(e)).join(`|`),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(ua,`terminalAlternativesToRegex`);function da(e){return ga(e.elements.map(e=>la(e)).join(``),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(da,`terminalGroupToRegex`);function fa(e){return ga(`${ca}*?${la(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}o(fa,`untilTokenToRegex`);function pa(e){return ga(`(?!${la(e.terminal)})${ca}*?`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}o(pa,`negateTokenToRegex`);function ma(e){return e.right?ga(`[${ha(e.left)}-${ha(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1}):ga(ha(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(ma,`characterRangeToRegex`);function ha(e){return Ri(e.value)}o(ha,`keywordToRegex`);function ga(e,t){return(t.parenthesized||t.lookahead||t.wrap!==!1)&&(e=`(${t.lookahead??(t.parenthesized?``:`?:`)}${e})`),t.cardinality?`${e}${t.cardinality}`:e}o(ga,`withCardinality`);function _a(e){let t=[],n=e.Grammar;for(let e of n.rules)Ur(e)&&Ki(e)&&Fi(sa(e))&&t.push(e.name);return{multilineCommentRules:t,nameRegexp:pi}}o(_a,`createGrammarConfig`);function va(e){console&&console.error&&console.error(`Error: ${e}`)}o(va,`PRINT_ERROR`);function ya(e){console&&console.warn&&console.warn(`Warning: ${e}`)}o(ya,`PRINT_WARNING`);function ba(e){let t=new Date().getTime(),n=e();return{time:new Date().getTime()-t,value:n}}o(ba,`timer`);function xa(e){function t(){}o(t,`FakeConstructor`),t.prototype=e;let n=new t;function r(){return typeof n.bar}return o(r,`fakeAccess`),r(),r(),e}o(xa,`toFastProperties`);function Sa(e){return Ca(e)?e.LABEL:e.name}o(Sa,`tokenLabel`);function Ca(e){return typeof e.LABEL==`string`&&e.LABEL!==``}o(Ca,`hasTokenLabel`);var wa=class{static{o(this,`AbstractProduction`)}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(t=>{t.accept(e)})}},Ta=class extends wa{static{o(this,`NonTerminal`)}constructor(e){super([]),this.idx=1,Object.assign(this,Pa(e))}set definition(e){}get definition(){return this.referencedRule===void 0?[]:this.referencedRule.definition}accept(e){e.visit(this)}},Ea=class extends wa{static{o(this,`Rule`)}constructor(e){super(e.definition),this.orgText=``,Object.assign(this,Pa(e))}},Da=class extends wa{static{o(this,`Alternative`)}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,Pa(e))}},B=class extends wa{static{o(this,`Option`)}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Pa(e))}},Oa=class extends wa{static{o(this,`RepetitionMandatory`)}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Pa(e))}},ka=class extends wa{static{o(this,`RepetitionMandatoryWithSeparator`)}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Pa(e))}},V=class extends wa{static{o(this,`Repetition`)}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Pa(e))}},Aa=class extends wa{static{o(this,`RepetitionWithSeparator`)}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Pa(e))}},ja=class extends wa{static{o(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,Object.assign(this,Pa(e))}},H=class{static{o(this,`Terminal`)}constructor(e){this.idx=1,Object.assign(this,Pa(e))}accept(e){e.visit(this)}};function Ma(e){return e.map(Na)}o(Ma,`serializeGrammar`);function Na(e){function t(e){return e.map(Na)}if(o(t,`convertDefinition`),e instanceof Ta){let t={type:`NonTerminal`,name:e.nonTerminalName,idx:e.idx};return typeof e.label==`string`&&(t.label=e.label),t}if(e instanceof Da)return{type:`Alternative`,definition:t(e.definition)};if(e instanceof B)return{type:`Option`,idx:e.idx,definition:t(e.definition)};if(e instanceof Oa)return{type:`RepetitionMandatory`,idx:e.idx,definition:t(e.definition)};if(e instanceof ka)return{type:`RepetitionMandatoryWithSeparator`,idx:e.idx,separator:Na(new H({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Aa)return{type:`RepetitionWithSeparator`,idx:e.idx,separator:Na(new H({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof V)return{type:`Repetition`,idx:e.idx,definition:t(e.definition)};if(e instanceof ja)return{type:`Alternation`,idx:e.idx,definition:t(e.definition)};if(e instanceof H){let t={type:`Terminal`,name:e.terminalType.name,label:Sa(e.terminalType),idx:e.idx};typeof e.label==`string`&&(t.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=n instanceof RegExp?n.source:n),t}if(e instanceof Ea)return{type:`Rule`,name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error(`non exhaustive match`)}o(Na,`serializeProduction`);function Pa(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}o(Pa,`pickOnlyDefined`);var Fa=class{static{o(this,`GAstVisitor`)}visit(e){let t=e;switch(t.constructor){case Ta:return this.visitNonTerminal(t);case Da:return this.visitAlternative(t);case B:return this.visitOption(t);case Oa:return this.visitRepetitionMandatory(t);case ka:return this.visitRepetitionMandatoryWithSeparator(t);case Aa:return this.visitRepetitionWithSeparator(t);case V:return this.visitRepetition(t);case ja:return this.visitAlternation(t);case H:return this.visitTerminal(t);case Ea:return this.visitRule(t);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 Ia(e){return e instanceof Da||e instanceof B||e instanceof V||e instanceof Oa||e instanceof ka||e instanceof Aa||e instanceof H||e instanceof Ea}o(Ia,`isSequenceProd`);function La(e,t=[]){return e instanceof B||e instanceof V||e instanceof Aa?!0:e instanceof ja?e.definition.some(e=>La(e,t)):e instanceof Ta&&t.includes(e)?!1:e instanceof wa&&(e instanceof Ta&&t.push(e),e.definition.every(e=>La(e,t)))}o(La,`isOptionalProd`);function Ra(e){return e instanceof ja}o(Ra,`isBranchingProd`);function za(e){if(e instanceof Ta)return`SUBRULE`;if(e instanceof B)return`OPTION`;if(e instanceof ja)return`OR`;if(e instanceof Oa)return`AT_LEAST_ONE`;if(e instanceof ka)return`AT_LEAST_ONE_SEP`;if(e instanceof Aa)return`MANY_SEP`;if(e instanceof V)return`MANY`;if(e instanceof H)return`CONSUME`;throw Error(`non exhaustive match`)}o(za,`getProductionDslName`);var Ba=class{static{o(this,`RestWalker`)}walk(e,t=[]){e.definition.forEach((n,r)=>{let i=e.definition.slice(r+1);if(n instanceof Ta)this.walkProdRef(n,i,t);else if(n instanceof H)this.walkTerminal(n,i,t);else if(n instanceof Da)this.walkFlat(n,i,t);else if(n instanceof B)this.walkOption(n,i,t);else if(n instanceof Oa)this.walkAtLeastOne(n,i,t);else if(n instanceof ka)this.walkAtLeastOneSep(n,i,t);else if(n instanceof Aa)this.walkManySep(n,i,t);else if(n instanceof V)this.walkMany(n,i,t);else if(n instanceof ja)this.walkOr(n,i,t);else throw Error(`non exhaustive match`)})}walkTerminal(e,t,n){}walkProdRef(e,t,n){}walkFlat(e,t,n){let r=t.concat(n);this.walk(e,r)}walkOption(e,t,n){let r=t.concat(n);this.walk(e,r)}walkAtLeastOne(e,t,n){let r=[new B({definition:e.definition})].concat(t,n);this.walk(e,r)}walkAtLeastOneSep(e,t,n){let r=Va(e,t,n);this.walk(e,r)}walkMany(e,t,n){let r=[new B({definition:e.definition})].concat(t,n);this.walk(e,r)}walkManySep(e,t,n){let r=Va(e,t,n);this.walk(e,r)}walkOr(e,t,n){let r=t.concat(n);e.definition.forEach(e=>{let t=new Da({definition:[e]});this.walk(t,r)})}};function Va(e,t,n){return[new B({definition:[new H({terminalType:e.separator})].concat(e.definition)})].concat(t,n)}o(Va,`restForRepetitionWithSeparator`);function Ha(e){if(e instanceof Ta)return Ha(e.referencedRule);if(e instanceof H)return Ga(e);if(Ia(e))return Ua(e);if(Ra(e))return Wa(e);throw Error(`non exhaustive match`)}o(Ha,`first`);function Ua(e){let t=[],n=e.definition,r=0,i=n.length>r,a,o=!0;for(;i&&o;)a=n[r],o=La(a),t=t.concat(Ha(a)),r+=1,i=n.length>r;return[...new Set(t)]}o(Ua,`firstForSequence`);function Wa(e){let t=e.definition.map(e=>Ha(e));return[...new Set(t.flat())]}o(Wa,`firstForBranching`);function Ga(e){return[e.terminalType]}o(Ga,`firstForTerminal`);var Ka=`_~IN~_`,qa=class extends Ba{static{o(this,`ResyncFollowsWalker`)}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,n){}walkProdRef(e,t,n){let r=Ya(e.referencedRule,e.idx)+this.topProd.name,i=Ha(new Da({definition:t.concat(n)}));this.follows[r]=i}};function Ja(e){let t={};return e.forEach(e=>{let n=new qa(e).startWalking();Object.assign(t,n)}),t}o(Ja,`computeAllProdsFollows`);function Ya(e,t){return e.name+t+Ka}o(Ya,`buildBetweenProdsFollowPrefix`);var Xa={},Za=new Ai;function Qa(e){let t=e.toString();if(Xa.hasOwnProperty(t))return Xa[t];{let e=Za.pattern(t);return Xa[t]=e,e}}o(Qa,`getRegExpAst`);function $a(){Xa={}}o($a,`clearRegExpParserCache`);var eo=`Complement Sets are not supported for first char optimization`,to=`Unable to use "first char" lexer optimizations:
23
+ `;function no(e,t=!1){try{let t=Qa(e);return ro(t.value,{},t.flags.ignoreCase)}catch(n){if(n.message===eo)t&&ya(`${to} Unable to optimize: < ${e.toString()} >
24
+ Complement Sets cannot be automatically optimized.
25
+ This will disable the lexer's first char optimizations.
26
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n=``;t&&(n=`
27
+ This will disable the lexer's first char optimizations.
28
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),va(`${to}
29
+ Failed parsing: < ${e.toString()} >
30
+ Using the @chevrotain/regexp-to-ast library
31
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}o(no,`getOptimizedStartCodesIndices`);function ro(e,t,n){switch(e.type){case`Disjunction`:for(let r=0;r<e.value.length;r++)ro(e.value[r],t,n);break;case`Alternative`:let r=e.value;for(let e=0;e<r.length;e++){let i=r[e];switch(i.type){case`EndAnchor`:case`GroupBackReference`:case`Lookahead`:case`NegativeLookahead`:case`Lookbehind`:case`NegativeLookbehind`:case`StartAnchor`:case`WordBoundary`:case`NonWordBoundary`:continue}let a=i;switch(a.type){case`Character`:io(a.value,t,n);break;case`Set`:if(a.complement===!0)throw Error(eo);a.value.forEach(e=>{if(typeof e==`number`)io(e,t,n);else{let r=e;if(n===!0)for(let e=r.from;e<=r.to;e++)io(e,t,n);else{for(let e=r.from;e<=r.to&&e<qo;e++)io(e,t,n);if(r.to>=qo){let e=r.from>=qo?r.from:qo,n=r.to,i=Yo(e),a=Yo(n);for(let e=i;e<=a;e++)t[e]=e}}}});break;case`Group`:ro(a.value,t,n);break;default:throw Error(`Non Exhaustive Match`)}let o=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type===`Group`&&so(a)===!1||a.type!==`Group`&&o===!1)break}break;default:throw Error(`non exhaustive match!`)}return Object.values(t)}o(ro,`firstCharOptimizedIndices`);function io(e,t,n){let r=Yo(e);t[r]=r,n===!0&&ao(e,t)}o(io,`addOptimizedIdxToResult`);function ao(e,t){let n=String.fromCharCode(e),r=n.toUpperCase();if(r!==n){let e=Yo(r.charCodeAt(0));t[e]=e}else{let e=n.toLowerCase();if(e!==n){let n=Yo(e.charCodeAt(0));t[n]=n}}}o(ao,`handleIgnoreCase`);function oo(e,t){return e.value.find(e=>{if(typeof e==`number`)return t.includes(e);{let n=e;return t.find(e=>n.from<=e&&e<=n.to)!==void 0}})}o(oo,`findCode`);function so(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?Array.isArray(e.value)?e.value.every(so):so(e.value):!1}o(so,`isWholeOptional`);var co=class extends ji{static{o(this,`CharCodeFinder`)}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case`Lookahead`:this.visitLookahead(e);return;case`NegativeLookahead`:this.visitNegativeLookahead(e);return;case`Lookbehind`:this.visitLookbehind(e);return;case`NegativeLookbehind`:this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){this.targetCharCodes.includes(e.value)&&(this.found=!0)}visitSet(e){e.complement?oo(e,this.targetCharCodes)===void 0&&(this.found=!0):oo(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};function lo(e,t){if(t instanceof RegExp){let n=Qa(t),r=new co(e);return r.visit(n),r.found}for(let n of t){let t=n.charCodeAt(0);if(e.includes(t))return!0}return!1}o(lo,`canMatchCharCode`);var uo=`PATTERN`,fo=`defaultMode`,po=`modes`,mo=0,ho=1,go=2,_o=3;function vo(e,t){t=Object.assign({safeMode:!1,positionTracking:`full`,lineTerminatorCharacters:[`\r`,`
32
+ `],tracer:o((e,t)=>t(),`tracer`)},t);let n=t.tracer;n(`initCharCodeToOptimizedIndexMap`,()=>{Xo()});let r;n(`Reject Lexer.NA`,()=>{r=e.filter(e=>e[uo]!==ms.NA)});let i=!1,a;n(`Transform Patterns`,()=>{i=!1,a=r.map(e=>{let t=e[uo];if(t instanceof RegExp){let e=t.source;return e.length===1&&e!==`^`&&e!==`$`&&e!==`.`&&!t.ignoreCase?e:e.length===2&&e[0]===`\\`&&![`d`,`D`,`s`,`S`,`t`,`r`,`n`,`t`,`0`,`c`,`b`,`B`,`f`,`v`,`w`,`W`].includes(e[1])?e[1]:Lo(t)}if(typeof t==`function`)return i=!0,{exec:t};if(typeof t==`object`)return i=!0,t;if(typeof t==`string`){if(t.length===1)return t;{let e=t.replace(/[\\^$.*+?()[\]{}|]/g,`\\$&`);return Lo(new RegExp(e))}}throw Error(`non exhaustive match`)})});let s,c,l,u,d;n(`misc mapping`,()=>{s=r.map(e=>e.tokenTypeIdx),c=r.map(e=>{let t=e.GROUP;if(t!==ms.SKIPPED){if(typeof t==`string`)return t;if(t===void 0)return!1;throw Error(`non exhaustive match`)}}),l=r.map(e=>{let t=e.LONGER_ALT;if(t)return Array.isArray(t)?t.map(e=>r.indexOf(e)):[r.indexOf(t)]}),u=r.map(e=>e.PUSH_MODE),d=r.map(e=>Object.hasOwn(e,`POP_MODE`))});let f;n(`Line Terminator Handling`,()=>{let e=Go(t.lineTerminatorCharacters);f=r.map(e=>!1),t.positionTracking!==`onlyOffset`&&(f=r.map(t=>Object.hasOwn(t,`LINE_BREAKS`)?!!t.LINE_BREAKS:Uo(t,e)===!1&&lo(e,t.PATTERN)))});let p,m,h,g;n(`Misc Mapping #2`,()=>{p=r.map(Bo),m=a.map(Vo),h=r.reduce((e,t)=>{let n=t.GROUP;return typeof n==`string`&&n!==ms.SKIPPED&&(e[n]=[]),e},{}),g=a.map((e,t)=>{let n=c[t]===void 0&&l[t]===void 0?yo(r[t].PATTERN):void 0;return{pattern:a[t],asciiClass:n,longerAlt:l[t],canLineTerminator:f[t],matchType:n===void 0?m[t]===!1?p[t]?ho:go:mo:_o,short:m[t],group:c[t],push:u[t],pop:d[t],tokenTypeIdx:s[t],tokenType:r[t]}})});let _=!0,v=[];return t.safeMode||n(`First Char Optimization`,()=>{v=r.reduce((e,n,r)=>{if(typeof n.PATTERN==`string`)Ko(e,Yo(n.PATTERN.charCodeAt(0)),g[r]);else if(Array.isArray(n.START_CHARS_HINT)){let t;n.START_CHARS_HINT.forEach(n=>{let i=Yo(typeof n==`string`?n.charCodeAt(0):n);t!==i&&(t=i,Ko(e,i,g[r]))})}else if(n.PATTERN instanceof RegExp){if(n.PATTERN.unicode)_=!1,t.ensureOptimizations&&va(`${to} Unable to analyze < ${n.PATTERN.toString()} > pattern.
33
+ The regexp unicode flag is not currently supported by the regexp-to-ast library.
34
+ This will disable the lexer's first char optimizations.
35
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let i=no(n.PATTERN,t.ensureOptimizations);i.length===0&&(_=!1),i.forEach(t=>{Ko(e,t,g[r])})}}else t.ensureOptimizations&&va(`${to} TokenType: <${n.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
36
+ This will disable the lexer's first char optimizations.
37
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),_=!1;return e},[])}),{emptyGroups:h,patternIdxToConfig:g,charCodeToPatternIdxToConfig:v,hasCustom:i,canBeOptimized:_}}o(vo,`analyzeTokenTypes`);function yo(e){if(!(e instanceof RegExp)||e.flags!==``)return;let t;try{t=Qa(e)}catch{return}if(t.value.value.length!==1||t.value.value[0].value.length!==1)return;let n=t.value.value[0].value[0],r;for(;n.type===`Group`;){if(n.capturing||n.quantifier!==void 0&&r!==void 0||n.value.value.length!==1||n.value.value[0].value.length!==1)return;r=n.quantifier??r,n=n.value.value[0].value[0]}if(n.type!==`Set`||n.complement||n.quantifier!==void 0&&r!==void 0||(r=n.quantifier??r,r?.atLeast!==1||r.atMost!==1/0||!r.greedy))return;let i=new Uint8Array(128);for(let e of n.value){let t=typeof e==`number`?e:e.from,n=typeof e==`number`?e:e.to;if(t<0||n>=i.length)return;i.fill(1,t,n+1)}return i}o(yo,`getAsciiClass`);function bo(e,t){let n=[],r=So(e);n=n.concat(r.errors);let i=Co(r.valid),a=i.valid;return n=n.concat(i.errors),n=n.concat(xo(a)),n=n.concat(jo(a)),n=n.concat(Mo(a,t)),n=n.concat(No(a)),n}o(bo,`validatePatterns`);function xo(e){let t=[],n=e.filter(e=>e[uo]instanceof RegExp);return t=t.concat(To(n)),t=t.concat(Oo(n)),t=t.concat(ko(n)),t=t.concat(Ao(n)),t=t.concat(Eo(n)),t}o(xo,`validateRegExpPattern`);function So(e){let t=e.filter(e=>!Object.hasOwn(e,uo));return{errors:t.map(e=>({message:`Token Type: ->`+e.name+`<- missing static 'PATTERN' property`,type:U.MISSING_PATTERN,tokenTypes:[e]})),valid:e.filter(e=>!t.includes(e))}}o(So,`findMissingPatterns`);function Co(e){let t=e.filter(e=>{let t=e[uo];return!(t instanceof RegExp)&&typeof t!=`function`&&!Object.hasOwn(t,`exec`)&&typeof t!=`string`});return{errors:t.map(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:U.INVALID_PATTERN,tokenTypes:[e]})),valid:e.filter(e=>!t.includes(e))}}o(Co,`findInvalidPatterns`);var wo=/[^\\][$]/;function To(e){class t extends ji{static{o(this,`EndAnchorFinder`)}constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}return e.filter(e=>{let n=e.PATTERN;try{let e=Qa(n),r=new t;return r.visit(e),r.found}catch{return wo.test(n.source)}}).map(e=>({message:`Unexpected RegExp Anchor Error:
38
+ Token Type: ->`+e.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
39
+ See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:U.EOI_ANCHOR_FOUND,tokenTypes:[e]}))}o(To,`findEndOfInputAnchor`);function Eo(e){return e.filter(e=>e.PATTERN.test(``)).map(e=>({message:`Token Type: ->`+e.name+`<- static 'PATTERN' must not match an empty string`,type:U.EMPTY_MATCH_PATTERN,tokenTypes:[e]}))}o(Eo,`findEmptyMatchRegExps`);var Do=/[^\\[][\^]|^\^/;function Oo(e){class t extends ji{static{o(this,`StartAnchorFinder`)}constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}return e.filter(e=>{let n=e.PATTERN;try{let e=Qa(n),r=new t;return r.visit(e),r.found}catch{return Do.test(n.source)}}).map(e=>({message:`Unexpected RegExp Anchor Error:
40
+ Token Type: ->`+e.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
41
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:U.SOI_ANCHOR_FOUND,tokenTypes:[e]}))}o(Oo,`findStartOfInputAnchor`);function ko(e){return e.filter(e=>{let t=e[uo];return t instanceof RegExp&&(t.multiline||t.global)}).map(e=>({message:`Token Type: ->`+e.name+`<- static 'PATTERN' may NOT contain global('g') or multiline('m')`,type:U.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]}))}o(ko,`findUnsupportedFlags`);function Ao(e){let t=[],n=e.map(n=>e.reduce((e,r)=>n.PATTERN.source===r.PATTERN.source&&!t.includes(r)&&r.PATTERN!==ms.NA?(t.push(r),e.push(r),e):e,[]));return n=n.filter(Boolean),n.filter(e=>e.length>1).map(e=>{let t=e.map(e=>e.name);return{message:`The same RegExp pattern ->${e[0].PATTERN}<-has been used in all of the following Token Types: ${t.join(`, `)} <-`,type:U.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}})}o(Ao,`findDuplicatePatterns`);function jo(e){return e.filter(e=>{if(!Object.hasOwn(e,`GROUP`))return!1;let t=e.GROUP;return t!==ms.SKIPPED&&t!==ms.NA&&typeof t!=`string`}).map(e=>({message:`Token Type: ->`+e.name+`<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String`,type:U.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]}))}o(jo,`findInvalidGroupType`);function Mo(e,t){return e.filter(e=>e.PUSH_MODE!==void 0&&!t.includes(e.PUSH_MODE)).map(e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:U.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]}))}o(Mo,`findModesThatDoNotExist`);function No(e){let t=[],n=e.reduce((e,t,n)=>{let r=t.PATTERN;return r===ms.NA||(typeof r==`string`?e.push({str:r,idx:n,tokenType:t}):r instanceof RegExp&&Fo(r)&&e.push({str:r.source,idx:n,tokenType:t})),e},[]);return e.forEach((e,r)=>{n.forEach(({str:n,idx:i,tokenType:a})=>{if(r<i&&Po(n,e.PATTERN)){let n=`Token: ->${a.name}<- can never be matched.
42
+ Because it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.
43
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:n,type:U.UNREACHABLE_PATTERN,tokenTypes:[e,a]})}})}),t}o(No,`findUnreachablePatterns`);function Po(e,t){if(t instanceof RegExp){if(Io(t))return!1;let n=t.exec(e);return n!==null&&n.index===0}if(typeof t==`function`)return t(e,0,[],{});if(Object.hasOwn(t,`exec`))return t.exec(e,0,[],{});if(typeof t==`string`)return t===e;throw Error(`non exhaustive match`)}o(Po,`tryToMatchStrToPattern`);function Fo(e){return[`.`,`\\`,`[`,`]`,`|`,`^`,`$`,`(`,`)`,`?`,`*`,`+`,`{`].find(t=>e.source.indexOf(t)!==-1)===void 0}o(Fo,`noMetaChar`);function Io(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}o(Io,`usesLookAheadOrBehind`);function Lo(e){let t=e.ignoreCase?`iy`:`y`;return RegExp(`${e.source}`,t)}o(Lo,`addStickyFlag`);function Ro(e,t,n){let r=[];return Object.hasOwn(e,fo)||r.push({message:`A MultiMode Lexer cannot be initialized without a <`+fo+`> property in its definition
44
+ `,type:U.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Object.hasOwn(e,po)||r.push({message:`A MultiMode Lexer cannot be initialized without a <`+po+`> property in its definition
45
+ `,type:U.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Object.hasOwn(e,po)&&Object.hasOwn(e,fo)&&!Object.hasOwn(e.modes,e.defaultMode)&&r.push({message:`A MultiMode Lexer cannot be initialized with a ${fo}: <${e.defaultMode}>which does not exist
46
+ `,type:U.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Object.hasOwn(e,po)&&Object.keys(e.modes).forEach(t=>{let n=e.modes[t];n.forEach((e,i)=>{e===void 0?r.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${t}> at index: <${i}>
47
+ `,type:U.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):Object.hasOwn(e,`LONGER_ALT`)&&(Array.isArray(e.LONGER_ALT)?e.LONGER_ALT:[e.LONGER_ALT]).forEach(i=>{i!==void 0&&!n.includes(i)&&r.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${e.name}> outside of mode <${t}>
48
+ `,type:U.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),r}o(Ro,`performRuntimeChecks`);function zo(e,t,n){let r=[],i=!1,a=Object.values(e.modes||{}).flat().filter(Boolean).filter(e=>e[uo]!==ms.NA),o=Go(n);return t&&a.forEach(e=>{let t=Uo(e,o);if(t!==!1){let n={message:Wo(e,t),type:t.issue,tokenType:e};r.push(n)}else Object.hasOwn(e,`LINE_BREAKS`)?e.LINE_BREAKS===!0&&(i=!0):lo(o,e.PATTERN)&&(i=!0)}),t&&!i&&r.push({message:`Warning: No LINE_BREAKS Found.
49
+ This Lexer has been defined to track line and column information,
50
+ But none of the Token Types can be identified as matching a line terminator.
51
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
52
+ for details.`,type:U.NO_LINE_BREAKS_FLAGS}),r}o(zo,`performWarningRuntimeChecks`);function Bo(e){let t=e.PATTERN;if(t instanceof RegExp)return!1;if(typeof t==`function`||Object.hasOwn(t,`exec`))return!0;if(typeof t==`string`)return!1;throw Error(`non exhaustive match`)}o(Bo,`isCustomPattern`);function Vo(e){return typeof e==`string`&&e.length===1&&e.charCodeAt(0)}o(Vo,`isShortPattern`);var Ho={test:o(function(e){let t=e.length;for(let n=this.lastIndex;n<t;n++){let t=e.charCodeAt(n);if(t===10)return this.lastIndex=n+1,!0;if(t===13)return this.lastIndex=e.charCodeAt(n+1)===10?n+2:n+1,!0}return!1},`test`),lastIndex:0};function Uo(e,t){if(Object.hasOwn(e,`LINE_BREAKS`))return!1;if(e.PATTERN instanceof RegExp){try{lo(t,e.PATTERN)}catch(e){return{issue:U.IDENTIFY_TERMINATOR,errMsg:e.message}}return!1}if(typeof e.PATTERN==`string`)return!1;if(Bo(e))return{issue:U.CUSTOM_LINE_BREAK};throw Error(`non exhaustive match`)}o(Uo,`checkLineBreaksIssues`);function Wo(e,t){if(t.issue===U.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
53
+ The problem is in the <${e.name}> Token Type
54
+ Root cause: ${t.errMsg}.
55
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===U.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
56
+ The problem is in the <${e.name}> Token Type
57
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error(`non exhaustive match`)}o(Wo,`buildLineBreakIssueMessage`);function Go(e){return e.map(e=>typeof e==`string`?e.charCodeAt(0):e)}o(Go,`getCharCodes`);function Ko(e,t,n){e[t]===void 0?e[t]=[n]:e[t].push(n)}o(Ko,`addToMapOfArrays`);var qo=256,Jo=[];function Yo(e){return e<qo?e:Jo[e]}o(Yo,`charCodeToOptimizedIndex`);function Xo(){if(Jo.length===0){Jo=Array(65536);for(let e=0;e<65536;e++)Jo[e]=e>255?255+~~(e/255):e}}o(Xo,`initCharCodeToOptimizedIndexMap`);function Zo(e,t){let n=e.tokenTypeIdx;return n===t.tokenTypeIdx||t.isParent===!0&&t.categoryMatchesMap[n]===!0}o(Zo,`tokenStructuredMatcher`);function Qo(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}o(Qo,`tokenStructuredMatcherNoCategories`);var $o=1,es={};function ts(e){let t=ns(e);rs(t),as(t),is(t),t.forEach(e=>{e.isParent=e.categoryMatches.length>0})}o(ts,`augmentTokenTypes`);function ns(e){let t=[...e],n=e,r=!0;for(;r;){n=n.map(e=>e.CATEGORIES).flat().filter(Boolean);let e=n.filter(e=>!t.includes(e));t=t.concat(e),e.length===0?r=!1:n=e}return t}o(ns,`expandCategories`);function rs(e){e.forEach(e=>{ss(e)||(es[$o]=e,e.tokenTypeIdx=$o++),cs(e)&&!Array.isArray(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),cs(e)||(e.CATEGORIES=[]),ls(e)||(e.categoryMatches=[]),us(e)||(e.categoryMatchesMap={})})}o(rs,`assignTokenDefaultProps`);function is(e){e.forEach(e=>{e.categoryMatches=[],Object.keys(e.categoryMatchesMap).forEach(t=>{e.categoryMatches.push(es[t].tokenTypeIdx)})})}o(is,`assignCategoriesTokensProp`);function as(e){e.forEach(e=>{os([],e)})}o(as,`assignCategoriesMapProp`);function os(e,t){e.forEach(e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0}),t.CATEGORIES.forEach(n=>{let r=e.concat(t);r.includes(n)||os(r,n)})}o(os,`singleAssignCategoriesToksMap`);function ss(e){return Object.hasOwn(e??{},`tokenTypeIdx`)}o(ss,`hasShortKeyProperty`);function cs(e){return Object.hasOwn(e??{},`CATEGORIES`)}o(cs,`hasCategoriesProperty`);function ls(e){return Object.hasOwn(e??{},`categoryMatches`)}o(ls,`hasExtendingTokensTypesProperty`);function us(e){return Object.hasOwn(e??{},`categoryMatchesMap`)}o(us,`hasExtendingTokensTypesMapProperty`);function ds(e){return Object.hasOwn(e??{},`tokenTypeIdx`)}o(ds,`isTokenType`);var fs={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,n,r,i,a){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${n} characters.`}},U;(function(e){e[e.MISSING_PATTERN=0]=`MISSING_PATTERN`,e[e.INVALID_PATTERN=1]=`INVALID_PATTERN`,e[e.EOI_ANCHOR_FOUND=2]=`EOI_ANCHOR_FOUND`,e[e.UNSUPPORTED_FLAGS_FOUND=3]=`UNSUPPORTED_FLAGS_FOUND`,e[e.DUPLICATE_PATTERNS_FOUND=4]=`DUPLICATE_PATTERNS_FOUND`,e[e.INVALID_GROUP_TYPE_FOUND=5]=`INVALID_GROUP_TYPE_FOUND`,e[e.PUSH_MODE_DOES_NOT_EXIST=6]=`PUSH_MODE_DOES_NOT_EXIST`,e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]=`MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE`,e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]=`MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY`,e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]=`MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST`,e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]=`LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED`,e[e.SOI_ANCHOR_FOUND=11]=`SOI_ANCHOR_FOUND`,e[e.EMPTY_MATCH_PATTERN=12]=`EMPTY_MATCH_PATTERN`,e[e.NO_LINE_BREAKS_FLAGS=13]=`NO_LINE_BREAKS_FLAGS`,e[e.UNREACHABLE_PATTERN=14]=`UNREACHABLE_PATTERN`,e[e.IDENTIFY_TERMINATOR=15]=`IDENTIFY_TERMINATOR`,e[e.CUSTOM_LINE_BREAK=16]=`CUSTOM_LINE_BREAK`,e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]=`MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE`})(U||={});var ps={deferDefinitionErrorsHandling:!1,positionTracking:`full`,lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
58
+ `,`\r`],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:fs,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(ps);var ms=class{static{o(this,`Lexer`)}constructor(e,t=ps){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.cachedGroupKeys=[],this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(e,t)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let n=Array(this.traceInitIndent+1).join(` `);this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);let{time:r,value:i}=ba(t),a=r>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${n}<-- <${e}> time: ${r}ms`),this.traceInitIndent--,i}return t()},typeof t==`boolean`)throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
59
+ a boolean 2nd argument is no longer supported`);this.config=Object.assign({},ps,t);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n==`number`&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT(`Lexer Constructor`,()=>{let n,r=!0;this.TRACE_INIT(`Lexer Config handling`,()=>{if(this.config.lineTerminatorsPattern===ps.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Ho;else if(this.config.lineTerminatorCharacters===ps.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
60
+ 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),Array.isArray(e)?n={modes:{defaultMode:[...e]},defaultMode:fo}:(r=!1,n=Object.assign({},e))}),this.config.skipValidations===!1&&(this.TRACE_INIT(`performRuntimeChecks`,()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Ro(n,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT(`performWarningRuntimeChecks`,()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(zo(n,this.trackStartLines,this.config.lineTerminatorCharacters))})),n.modes=n.modes?n.modes:{},Object.entries(n.modes).forEach(([e,t])=>{n.modes[e]=t.filter(e=>e!==void 0)});let i=Object.keys(n.modes);if(Object.entries(n.modes).forEach(([e,n])=>{this.TRACE_INIT(`Mode: <${e}> processing`,()=>{if(this.modes.push(e),this.config.skipValidations===!1&&this.TRACE_INIT(`validatePatterns`,()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(bo(n,i))}),this.lexerDefinitionErrors.length===0){ts(n);let r;this.TRACE_INIT(`analyzeTokenTypes`,()=>{r=vo(n,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[e]=r.patternIdxToConfig,this.charCodeToPatternIdxToConfig[e]=r.charCodeToPatternIdxToConfig,this.emptyGroups=Object.assign({},this.emptyGroups,r.emptyGroups),this.hasCustom=r.hasCustom||this.hasCustom,this.canModeBeOptimized[e]=r.canBeOptimized}})}),this.defaultMode=n.defaultMode,this.cachedGroupKeys=Object.keys(this.emptyGroups),this.lexerDefinitionErrors.length>0&&!this.config.deferDefinitionErrorsHandling){let e=this.lexerDefinitionErrors.map(e=>e.message).join(`-----------------------
61
+ `);throw Error(`Errors detected in definition of Lexer:
62
+ `+e)}this.lexerDefinitionWarning.forEach(e=>{ya(e.message)}),this.TRACE_INIT(`Choosing sub-methods implementations`,()=>{if(r&&(this.handleModes=()=>{}),this.trackStartLines===!1&&(this.computeNewColumn=e=>e),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=()=>{}),/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=Object.entries(this.canModeBeOptimized).reduce((e,[t,n])=>(n===!1&&e.push(t),e),[]);if(t.ensureOptimizations&&e.length>0)throw Error(`Lexer Modes: < ${e.join(`, `)} > cannot be optimized.
63
+ Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
64
+ Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT(`clearRegExpParserCache`,()=>{$a()}),this.TRACE_INIT(`toFastProperties`,()=>{xa(this)})})}tokenize(e,t=this.defaultMode){if(this.lexerDefinitionErrors.length>0){let e=this.lexerDefinitionErrors.map(e=>e.message).join(`-----------------------
65
+ `);throw Error(`Unable to Tokenize because Errors detected in definition of Lexer:
66
+ `+e)}return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let n,r,i,a,s,c,l,u,d,f,p,m,h,g,_,v=e,y=v.length,b=0,ee=0,x=this.hasCustom?0:Math.floor(e.length/10),S=Array(x),C=[],te=this.trackStartLines?1:void 0,w=this.trackStartLines?1:void 0,ne={};for(let e=0;e<this.cachedGroupKeys.length;e++)ne[this.cachedGroupKeys[e]]=[];let re=this.trackStartLines,T=this.config.lineTerminatorsPattern,ie=0,E=[],D=[],O=[],ae=[];Object.freeze(ae);let oe=!1,se=o(e=>{if(O.length===1&&e.tokenType.PUSH_MODE===void 0){let t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);C.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{O.pop();let e=O.at(-1);E=this.patternIdxToConfig[e],D=this.charCodeToPatternIdxToConfig[e],ie=E.length;let t=this.canModeBeOptimized[e]&&this.config.safeMode===!1;oe=!!(D&&t)}},`pop_mode`);function k(e){O.push(e),D=this.charCodeToPatternIdxToConfig[e],E=this.patternIdxToConfig[e],ie=E.length;let t=this.canModeBeOptimized[e]&&this.config.safeMode===!1;oe=!!(D&&t)}o(k,`push_mode`),k.call(this,t);let A,ce=this.config.recoveryEnabled;for(;b<y;){c=null,d=-1;let t=v.charCodeAt(b),o;if(oe){let e=Yo(t),n=D[e];o=n===void 0?ae:n}else o=E;let x=o.length;for(n=0;n<x;n++){A=o[n];let r=A.pattern;switch(l=null,A.matchType){case mo:t===A.short&&(d=1,c=r);break;case ho:_=r.exec(v,b,S,ne),_===null?c=null:(c=_[0],d=c.length,_.payload!==void 0&&(l=_.payload));break;case _o:{let e=A.asciiClass;if(e[t]!==1){r.lastIndex=0;break}let n=b+1;for(;e[v.charCodeAt(n)]===1;)n++;d=n-b,r.lastIndex=n;break}case go:r.lastIndex=b,d=this.matchLength(r,e,b)}if(d!==-1){if(s=A.longerAlt,s!==void 0){c=e.substring(b,b+d);let t=s.length;for(i=0;i<t;i++){let t=E[s[i]],n=t.pattern;if(u=null,t.matchType===ho?(_=n.exec(v,b,S,ne),_===null?a=null:(a=_[0],_.payload!==void 0&&(u=_.payload))):(n.lastIndex=b,a=this.match(n,e,b)),a&&a.length>c.length){c=a,d=a.length,l=u,A=t;break}}}break}}if(d!==-1){if(f=A.group,f!==void 0&&(c=c===null?e.substring(b,b+d):c,p=A.tokenTypeIdx,m=this.createTokenInstance(c,b,p,A.tokenType,te,w,d),this.handlePayload(m,l),f===!1?ee=this.addToken(S,ee,m):ne[f].push(m)),re===!0&&A.canLineTerminator===!0){let t=0,n,r;T.lastIndex=0;do c=c===null?e.substring(b,b+d):c,n=T.test(c),n===!0&&(r=T.lastIndex-1,t++);while(n===!0);t===0?w=this.computeNewColumn(w,d):(te+=t,w=d-r,this.updateTokenEndLineColumnLocation(m,f,r,t,te,w,d))}else w=this.computeNewColumn(w,d);b+=d,this.handleModes(A,se,k,m)}else{let t=b,n=te,i=w,a=ce===!1;for(;a===!1&&b<y;)for(b++,r=0;r<ie;r++){let t=E[r],n=t.pattern;switch(t.matchType){case mo:v.charCodeAt(b)===t.short&&(a=!0);break;case ho:a=n.exec(v,b,S,ne)!==null;break;case _o:case go:n.lastIndex=b,a=n.exec(e)!==null}if(a===!0)break}if(h=b-t,w=this.computeNewColumn(w,h),g=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(v,t,h,n,i,O.at(-1)),C.push({offset:t,line:n,column:i,length:h,message:g}),ce===!1)break}}return this.hasCustom||(S.length=ee),{tokens:S,groups:ne,errors:C}}handleModes(e,t,n,r){if(e.pop===!0){let i=e.push;t(r),i!==void 0&&n.call(this,i)}else e.push!==void 0&&n.call(this,e.push)}updateTokenEndLineColumnLocation(e,t,n,r,i,a,o){let s,c;t!==void 0&&(s=n===o-1,c=s?-1:0,(r!==1||s!==!0)&&(e.endLine=i+c,e.endColumn=a-1+-c))}computeNewColumn(e,t){return e+t}createOffsetOnlyToken(e,t,n,r){return{image:e,startOffset:t,tokenTypeIdx:n,tokenType:r}}createStartOnlyToken(e,t,n,r,i,a){return{image:e,startOffset:t,startLine:i,startColumn:a,tokenTypeIdx:n,tokenType:r}}createFullToken(e,t,n,r,i,a,o){return{image:e,startOffset:t,endOffset:t+o-1,startLine:i,endLine:i,startColumn:a,endColumn:a+o-1,tokenTypeIdx:n,tokenType:r}}addTokenUsingPush(e,t,n){return e.push(n),t}addTokenUsingMemberAccess(e,t,n){return e[t]=n,t++,t}handlePayloadNoCustom(e,t){}handlePayloadWithCustom(e,t){t!==null&&(e.payload=t)}match(e,t,n){return e.test(t)===!0?t.substring(n,e.lastIndex):null}matchLength(e,t,n){return e.test(t)===!0?e.lastIndex-n:-1}};ms.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.`,ms.NA=/NOT_APPLICABLE/;function hs(e){return gs(e)?e.LABEL:e.name}o(hs,`tokenLabel`);function gs(e){return typeof e.LABEL==`string`&&e.LABEL!==``}o(gs,`hasTokenLabel`);var _s=`parent`,vs=`categories`,ys=`label`,bs=`group`,xs=`push_mode`,Ss=`pop_mode`,Cs=`longer_alt`,ws=`line_breaks`,Ts=`start_chars_hint`;function Es(e){return Ds(e)}o(Es,`createToken`);function Ds(e){let t=e.pattern,n={};if(n.name=e.name,t!==void 0&&(n.PATTERN=t),Object.hasOwn(e,_s))throw`The parent property is no longer supported.
67
+ See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return Object.hasOwn(e,vs)&&(n.CATEGORIES=e[vs]),ts([n]),Object.hasOwn(e,ys)&&(n.LABEL=e[ys]),Object.hasOwn(e,bs)&&(n.GROUP=e[bs]),Object.hasOwn(e,Ss)&&(n.POP_MODE=e[Ss]),Object.hasOwn(e,xs)&&(n.PUSH_MODE=e[xs]),Object.hasOwn(e,Cs)&&(n.LONGER_ALT=e[Cs]),Object.hasOwn(e,ws)&&(n.LINE_BREAKS=e[ws]),Object.hasOwn(e,Ts)&&(n.START_CHARS_HINT=e[Ts]),n}o(Ds,`createTokenInternal`);var Os=Es({name:`EOF`,pattern:ms.NA});ts([Os]);function ks(e,t,n,r,i,a,o,s){return{image:t,startOffset:n,endOffset:r,startLine:i,endLine:a,startColumn:o,endColumn:s,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}o(ks,`createTokenInstance`);function As(e,t){return Zo(e,t)}o(As,`tokenMatcher`);var js={buildMismatchTokenMessage({expected:e,actual:t,previous:n,ruleName:r}){return`Expecting ${gs(e)?`--> ${hs(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return`Redundant input, expecting EOF but found: `+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:n,customUserDescription:r,ruleName:i}){let a=`
68
+ but found: '`+t[0].image+`'`;return r?`Expecting: `+r+a:`Expecting: one of these possible Token sequences:
69
+ ${e.reduce((e,t)=>e.concat(t),[]).map(e=>`[${e.map(e=>hs(e)).join(`, `)}]`).map((e,t)=>` ${t+1}. ${e}`).join(`
70
+ `)}`+a},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:n,ruleName:r}){let i=`
71
+ but found: '`+t[0].image+`'`;return n?`Expecting: `+n+i:`Expecting: expecting at least one iteration which starts with one of these possible Token sequences::
72
+ <${e.map(e=>`[${e.map(e=>hs(e)).join(`,`)}]`).join(` ,`)}>`+i}};Object.freeze(js);var Ms={buildRuleNotFoundError(e,t){return`Invalid grammar, reference to a rule which is not defined: ->`+t.nonTerminalName+`<-
73
+ inside top level rule: ->`+e.name+`<-`}},Ns={buildDuplicateFoundError(e,t){function n(e){return e instanceof H?e.terminalType.name:e instanceof Ta?e.nonTerminalName:``}o(n,`getExtraProductionArgument`);let r=e.name,i=t[0],a=i.idx,s=za(i),c=n(i),l=`->${s}${a>0?a:``}<- ${c?`with argument: ->${c}<-`:``}
74
+ appears more than once (${t.length} times) in the top level rule: ->${r}<-.
75
+ For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
76
+ `;return l=l.replace(/[ \t]+/g,` `),l=l.replace(/\s\s+/g,`
77
+ `),l},buildNamespaceConflictError(e){return`Namespace conflict found in grammar.
78
+ The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.
79
+ To resolve this make sure each Terminal and Non-Terminal names are unique
80
+ This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
81
+ and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(e){let t=e.prefixPath.map(e=>hs(e)).join(`, `),n=e.alternation.idx===0?``:e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(` ,`)}> due to common lookahead prefix
82
+ in <OR${n}> inside <${e.topLevelRule.name}> Rule,
83
+ <${t}> may appears as a prefix path in all these alternatives.
84
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
85
+ For Further details.`},buildAlternationAmbiguityError(e){let t=e.alternation.idx===0?``:e.alternation.idx,n=e.prefixPath.length===0,r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(` ,`)}> in <OR${t}> inside <${e.topLevelRule.name}> Rule,
86
+ `;if(n)r+=`These alternatives are all empty (match no tokens), making them indistinguishable.
87
+ Only the last alternative may be empty.
88
+ `;else{let t=e.prefixPath.map(e=>hs(e)).join(`, `);r+=`<${t}> may appears as a prefix path in all these alternatives.
89
+ `}return r+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
90
+ For Further details.`,r},buildEmptyRepetitionError(e){let t=za(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
91
+ This could lead to an infinite loop.`},buildTokenNameError(e){return`deprecated`},buildEmptyAlternationError(e){return`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
92
+ Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(e){return`An Alternation cannot have more than 256 alternatives:
93
+ <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
94
+ has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name;return`Left Recursion found in grammar.
95
+ rule: <${t}> can be invoked from itself (directly or indirectly)
96
+ without consuming any Tokens. The grammar path that causes this is:
97
+ ${`${t} --> ${e.leftRecursionPath.map(e=>e.name).concat([t]).join(` --> `)}`}
98
+ To fix this refactor your grammar to remove the left recursion.
99
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(e){return`deprecated`},buildDuplicateRuleNameError(e){let t;return t=e.topLevelRule instanceof Ea?e.topLevelRule.name:e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function Ps(e,t){let n=new Fs(e,t);return n.resolveRefs(),n.errors}o(Ps,`resolveGrammar`);var Fs=class extends Fa{static{o(this,`GastRefResolverVisitor`)}constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){Object.values(this.nameToTopRule).forEach(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:Il.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},Is=class extends Ba{static{o(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=[...this.path.ruleStack].reverse(),this.occurrenceStack=[...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,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let r=t.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,r)}}updateExpectedNext(){this.ruleStack.length===0?(this.nextProductionName=``,this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Ls=class extends Is{static{o(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,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let e=new Da({definition:t.concat(n)});this.possibleTokTypes=Ha(e),this.found=!0}}},Rs=class extends Ba{static{o(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}},zs=class extends Rs{static{o(this,`NextTerminalAfterManyWalker`)}walkMany(e,t,n){if(e.idx===this.occurrence){let e=t.concat(n)[0];this.result.isEndOfRule=e===void 0,e instanceof H&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkMany(e,t,n)}},Bs=class extends Rs{static{o(this,`NextTerminalAfterManySepWalker`)}walkManySep(e,t,n){if(e.idx===this.occurrence){let e=t.concat(n)[0];this.result.isEndOfRule=e===void 0,e instanceof H&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkManySep(e,t,n)}},Vs=class extends Rs{static{o(this,`NextTerminalAfterAtLeastOneWalker`)}walkAtLeastOne(e,t,n){if(e.idx===this.occurrence){let e=t.concat(n)[0];this.result.isEndOfRule=e===void 0,e instanceof H&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOne(e,t,n)}},Hs=class extends Rs{static{o(this,`NextTerminalAfterAtLeastOneSepWalker`)}walkAtLeastOneSep(e,t,n){if(e.idx===this.occurrence){let e=t.concat(n)[0];this.result.isEndOfRule=e===void 0,e instanceof H&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOneSep(e,t,n)}};function Us(e,t,n=[]){n=[...n];let r=[],i=0;function a(t){return t.concat(e.slice(i+1))}o(a,`remainingPathWith`);function s(e){let i=Us(a(e),t,n);return r.concat(i)}for(o(s,`getAlternativesForProd`);n.length<t&&i<e.length;){let t=e[i];if(t instanceof Da||t instanceof Ta)return s(t.definition);if(t instanceof B)r=s(t.definition);else if(t instanceof Oa)return s(t.definition.concat([new V({definition:t.definition})]));else if(t instanceof ka)return s([new Da({definition:t.definition}),new V({definition:[new H({terminalType:t.separator})].concat(t.definition)})]);else if(t instanceof Aa)r=s(t.definition.concat([new V({definition:[new H({terminalType:t.separator})].concat(t.definition)})]));else if(t instanceof V)r=s(t.definition.concat([new V({definition:t.definition})]));else if(t instanceof ja)return t.definition.forEach(e=>{e.definition.length!==0&&(r=s(e.definition))}),r;else if(t instanceof H)n.push(t.terminalType);else throw Error(`non exhaustive match`);i++}return r.push({partialPath:n,suffixDef:e.slice(i)}),r}o(Us,`possiblePathsFrom`);function Ws(e,t,n,r){let i=`EXIT_NONE_TERMINAL`,a=[i],o=`EXIT_ALTERNATIVE`,s=!1,c=t.length,l=c-r-1,u=[],d=[];for(d.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});d.length!==0;){let e=d.pop();if(e===o){s&&d.at(-1).idx<=l&&d.pop();continue}let r=e.def,f=e.idx,p=e.ruleStack,m=e.occurrenceStack;if(r.length===0)continue;let h=r[0];if(h===i){let e={idx:f,def:r.slice(1),ruleStack:p.slice(0,-1),occurrenceStack:m.slice(0,-1)};d.push(e)}else if(h instanceof H){if(f<c-1){let e=f+1,i=t[e];if(n(i,h.terminalType)){let t={idx:e,def:r.slice(1),ruleStack:p,occurrenceStack:m};d.push(t)}}else if(f===c-1)u.push({nextTokenType:h.terminalType,nextTokenOccurrence:h.idx,ruleStack:p,occurrenceStack:m}),s=!0;else throw Error(`non exhaustive match`)}else if(h instanceof Ta){let e=[...p];e.push(h.nonTerminalName);let t=[...m];t.push(h.idx);let n={idx:f,def:h.definition.concat(a,r.slice(1)),ruleStack:e,occurrenceStack:t};d.push(n)}else if(h instanceof B){let e={idx:f,def:r.slice(1),ruleStack:p,occurrenceStack:m};d.push(e),d.push(o);let t={idx:f,def:h.definition.concat(r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(t)}else if(h instanceof Oa){let e=new V({definition:h.definition,idx:h.idx}),t={idx:f,def:h.definition.concat([e],r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(t)}else if(h instanceof ka){let e=new V({definition:[new H({terminalType:h.separator})].concat(h.definition),idx:h.idx}),t={idx:f,def:h.definition.concat([e],r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(t)}else if(h instanceof Aa){let e={idx:f,def:r.slice(1),ruleStack:p,occurrenceStack:m};d.push(e),d.push(o);let t=new V({definition:[new H({terminalType:h.separator})].concat(h.definition),idx:h.idx}),n={idx:f,def:h.definition.concat([t],r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(n)}else if(h instanceof V){let e={idx:f,def:r.slice(1),ruleStack:p,occurrenceStack:m};d.push(e),d.push(o);let t=new V({definition:h.definition,idx:h.idx}),n={idx:f,def:h.definition.concat([t],r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(n)}else if(h instanceof ja)for(let e=h.definition.length-1;e>=0;e--){let t={idx:f,def:h.definition[e].definition.concat(r.slice(1)),ruleStack:p,occurrenceStack:m};d.push(t),d.push(o)}else if(h instanceof Da)d.push({idx:f,def:h.definition.concat(r.slice(1)),ruleStack:p,occurrenceStack:m});else if(h instanceof Ea)d.push(Gs(h,f,p,m));else throw Error(`non exhaustive match`)}return u}o(Ws,`nextPossibleTokensAfter`);function Gs(e,t,n,r){let i=[...n];i.push(e.name);let a=[...r];return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}o(Gs,`expandTopLevelRule`);var W;(function(e){e[e.OPTION=0]=`OPTION`,e[e.REPETITION=1]=`REPETITION`,e[e.REPETITION_MANDATORY=2]=`REPETITION_MANDATORY`,e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]=`REPETITION_MANDATORY_WITH_SEPARATOR`,e[e.REPETITION_WITH_SEPARATOR=4]=`REPETITION_WITH_SEPARATOR`,e[e.ALTERNATION=5]=`ALTERNATION`})(W||={});function Ks(e){if(e instanceof B||e===`Option`)return W.OPTION;if(e instanceof V||e===`Repetition`)return W.REPETITION;if(e instanceof Oa||e===`RepetitionMandatory`)return W.REPETITION_MANDATORY;if(e instanceof ka||e===`RepetitionMandatoryWithSeparator`)return W.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof Aa||e===`RepetitionWithSeparator`)return W.REPETITION_WITH_SEPARATOR;if(e instanceof ja||e===`Alternation`)return W.ALTERNATION;throw Error(`non exhaustive match`)}o(Ks,`getProdType`);function qs(e){let{occurrence:t,rule:n,prodType:r,maxLookahead:i}=e,a=Ks(r);return a===W.ALTERNATION?ic(t,n,i):ac(t,n,a,i)}o(qs,`getLookaheadPaths`);function Js(e,t,n,r,i,a){let o=ic(e,t,n);return a(o,r,cc(o)?Qo:Zo,i)}o(Js,`buildLookaheadFuncForOr`);function Ys(e,t,n,r,i,a){let o=ac(e,t,i,n),s=cc(o)?Qo:Zo;return a(o[0],s,r)}o(Ys,`buildLookaheadFuncForOptionalProd`);function Xs(e,t,n,r){let i=e.length,a=e.every(e=>e.every(e=>e.length===1));if(t)return function(t){let r=t.map(e=>e.GATE);for(let t=0;t<i;t++){let i=e[t],a=i.length,o=r[t];if(o===void 0||o.call(this)!==!1)nextPath:for(let e=0;e<a;e++){let r=i[e],a=r.length;for(let e=0;e<a;e++)if(n(this.LA_FAST(e+1),r[e])===!1)continue nextPath;return t}}};if(a&&!r){let t=e.map(e=>e.flat()).reduce((e,t,n)=>(t.forEach(t=>{t.tokenTypeIdx in e||(e[t.tokenTypeIdx]=n),t.categoryMatches.forEach(t=>{Object.hasOwn(e,t)||(e[t]=n)})}),e),{});return function(){let e=this.LA_FAST(1);return t[e.tokenTypeIdx]}}return function(){for(let t=0;t<i;t++){let r=e[t],i=r.length;nextPath:for(let e=0;e<i;e++){let i=r[e],a=i.length;for(let e=0;e<a;e++)if(n(this.LA_FAST(e+1),i[e])===!1)continue nextPath;return t}}}}o(Xs,`buildAlternativesLookAheadFunc`);function Zs(e,t,n){let r=e.every(e=>e.length===1),i=e.length;if(r&&!n){let t=e.flat();if(t.length===1&&t[0].categoryMatches.length===0){let e=t[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===e}}{let e=t.reduce((e,t,n)=>(e[t.tokenTypeIdx]=!0,t.categoryMatches.forEach(t=>{e[t]=!0}),e),[]);return function(){let t=this.LA_FAST(1);return e[t.tokenTypeIdx]===!0}}}return function(){nextPath:for(let n=0;n<i;n++){let r=e[n],i=r.length;for(let e=0;e<i;e++)if(t(this.LA_FAST(e+1),r[e])===!1)continue nextPath;return!0}return!1}}o(Zs,`buildSingleAlternativeLookaheadFunction`);var Qs=class extends Ba{static{o(this,`RestDefinitionFinderWalker`)}constructor(e,t,n){super(),this.topProd=e,this.targetOccurrence=t,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,t,n,r){return e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.restDef=n.concat(r),!0)}walkOption(e,t,n){this.checkIsTarget(e,W.OPTION,t,n)||super.walkOption(e,t,n)}walkAtLeastOne(e,t,n){this.checkIsTarget(e,W.REPETITION_MANDATORY,t,n)||super.walkOption(e,t,n)}walkAtLeastOneSep(e,t,n){this.checkIsTarget(e,W.REPETITION_MANDATORY_WITH_SEPARATOR,t,n)||super.walkOption(e,t,n)}walkMany(e,t,n){this.checkIsTarget(e,W.REPETITION,t,n)||super.walkOption(e,t,n)}walkManySep(e,t,n){this.checkIsTarget(e,W.REPETITION_WITH_SEPARATOR,t,n)||super.walkOption(e,t,n)}},$s=class extends Fa{static{o(this,`InsideDefinitionFinderVisitor`)}constructor(e,t,n){super(),this.targetOccurrence=e,this.targetProdType=t,this.targetRef=n,this.result=[]}checkIsTarget(e,t){e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,W.OPTION)}visitRepetition(e){this.checkIsTarget(e,W.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,W.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,W.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,W.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,W.ALTERNATION)}};function ec(e){let t=Array(e);for(let n=0;n<e;n++)t[n]=[];return t}o(ec,`initializeArrayOfArrays`);function tc(e){let t=[``];for(let n=0;n<e.length;n++){let r=e[n],i=[];for(let e=0;e<t.length;e++){let n=t[e];i.push(n+`_`+r.tokenTypeIdx);for(let e=0;e<r.categoryMatches.length;e++){let t=`_`+r.categoryMatches[e];i.push(n+t)}}t=i}return t}o(tc,`pathToHashKeys`);function nc(e,t,n){for(let r=0;r<e.length;r++){if(r===n)continue;let i=e[r];for(let e=0;e<t.length;e++)if(i[t[e]]===!0)return!1}return!0}o(nc,`isUniquePrefixHash`);function rc(e,t){let n=e.map(e=>Us([e],1)),r=ec(n.length),i=n.map(e=>{let t={};return e.forEach(e=>{tc(e.partialPath).forEach(e=>{t[e]=!0})}),t}),a=n;for(let e=1;e<=t;e++){let n=a;a=ec(n.length);for(let o=0;o<n.length;o++){let s=n[o];for(let n=0;n<s.length;n++){let c=s[n].partialPath,l=s[n].suffixDef,u=tc(c);if(nc(i,u,o)||l.length===0||c.length===t){let e=r[o];if(oc(e,c)===!1){e.push(c);for(let e=0;e<u.length;e++){let t=u[e];i[o][t]=!0}}}else{let t=Us(l,e+1,c);a[o]=a[o].concat(t),t.forEach(e=>{tc(e.partialPath).forEach(e=>{i[o][e]=!0})})}}}}return r}o(rc,`lookAheadSequenceFromAlternatives`);function ic(e,t,n,r){let i=new $s(e,W.ALTERNATION,r);return t.accept(i),rc(i.result,n)}o(ic,`getLookaheadPathsForOr`);function ac(e,t,n,r){let i=new $s(e,n);t.accept(i);let a=i.result,o=new Qs(t,e,n).startWalking();return rc([new Da({definition:a}),new Da({definition:o})],r)}o(ac,`getLookaheadPathsForOptionalProd`);function oc(e,t){compareOtherPath:for(let n=0;n<e.length;n++){let r=e[n];if(r.length===t.length){for(let e=0;e<r.length;e++){let n=t[e],i=r[e];if(n!==i&&i.categoryMatchesMap[n.tokenTypeIdx]===void 0)continue compareOtherPath}return!0}}return!1}o(oc,`containsPath`);function sc(e,t){return e.length<t.length&&e.every((e,n)=>{let r=t[n];return e===r||r.categoryMatchesMap[e.tokenTypeIdx]})}o(sc,`isStrictPrefixOfPath`);function cc(e){return e.every(e=>e.every(e=>e.every(e=>e.categoryMatches.length===0)))}o(cc,`areTokenCategoriesNotUsed`);function lc(e){return e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName}).map(e=>Object.assign({type:Il.CUSTOM_LOOKAHEAD_VALIDATION},e))}o(lc,`validateLookahead`);function uc(e,t,n,r){let i=e.flatMap(e=>dc(e,n)),a=Dc(e,t,n),o=e.flatMap(e=>Cc(e,n)),s=e.flatMap(t=>hc(t,e,r,n));return i.concat(a,o,s)}o(uc,`validateGrammar`);function dc(e,t){let n=new mc;e.accept(n);let r=n.allProductions,i=Object.groupBy(r,fc),a=Object.fromEntries(Object.entries(i).filter(([e,t])=>t.length>1));return Object.values(a).map(n=>{let r=n[0],i=t.buildDuplicateFoundError(e,n),a=za(r),o={message:i,type:Il.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:a,occurrence:r.idx},s=pc(r);return s&&(o.parameter=s),o})}o(dc,`validateDuplicateProductions`);function fc(e){return`${za(e)}_#_${e.idx}_#_${pc(e)}`}o(fc,`identifyProductionForDuplicates`);function pc(e){return e instanceof H?e.terminalType.name:e instanceof Ta?e.nonTerminalName:``}o(pc,`getExtraProductionArgument`);var mc=class extends Fa{static{o(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 hc(e,t,n,r){let i=[];if(t.reduce((t,n)=>n.name===e.name?t+1:t,0)>1){let t=r.buildDuplicateRuleNameError({topLevelRule:e,grammarName:n});i.push({message:t,type:Il.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}o(hc,`validateRuleDoesNotAlreadyExist`);function gc(e,t,n){let r=[],i;return t.includes(e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `,r.push({message:i,type:Il.INVALID_RULE_OVERRIDE,ruleName:e})),r}o(gc,`validateRuleIsOverridden`);function _c(e,t,n,r=[]){let i=[],a=vc(t.definition);if(a.length===0)return[];{let t=e.name;a.includes(e)&&i.push({message:n.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:r}),type:Il.LEFT_RECURSION,ruleName:t});let o=r.concat([e]),s=a.filter(e=>!o.includes(e)).flatMap(t=>{let i=[...r];return i.push(t),_c(e,t,n,i)});return i.concat(s)}}o(_c,`validateNoLeftRecursion`);function vc(e){let t=[];if(e.length===0)return t;let n=e[0];if(n instanceof Ta)t.push(n.referencedRule);else if(n instanceof Da||n instanceof B||n instanceof Oa||n instanceof ka||n instanceof Aa||n instanceof V)t=t.concat(vc(n.definition));else if(n instanceof ja)t=n.definition.map(e=>vc(e.definition)).flat();else if(!(n instanceof H))throw Error(`non exhaustive match`);let r=La(n),i=e.length>1;if(r&&i){let n=e.slice(1);return t.concat(vc(n))}return t}o(vc,`getFirstNoneTerminal`);var yc=class extends Fa{static{o(this,`OrCollector`)}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function bc(e,t){let n=new yc;return e.accept(n),n.alternations.flatMap(n=>n.definition.slice(0,-1).flatMap((r,i)=>Ws([r],[],Zo,1).length===0?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:n,emptyChoiceIdx:i}),type:Il.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:n.idx,alternative:i+1}]:[]))}o(bc,`validateEmptyOrAlternative`);function xc(e,t,n){let r=new yc;e.accept(r);let i=r.alternations;return i=i.filter(e=>e.ignoreAmbiguities!==!0),i.flatMap(r=>{let i=r.idx,a=ic(i,e,r.maxLookahead||t,r),o=Tc(a,r,e,n),s=Ec(a,r,e,n);return o.concat(s)})}o(xc,`validateAmbiguousAlternationAlternatives`);var Sc=class extends Fa{static{o(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 Cc(e,t){let n=new yc;return e.accept(n),n.alternations.flatMap(n=>n.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:n}),type:Il.TOO_MANY_ALTS,ruleName:e.name,occurrence:n.idx}]:[])}o(Cc,`validateTooManyAlts`);function wc(e,t,n){let r=[];return e.forEach(e=>{let i=new Sc;e.accept(i),i.allProductions.forEach(i=>{let a=Ks(i),o=i.maxLookahead||t,s=i.idx;if(ac(s,e,a,o)[0].flat().length===0){let t=n.buildEmptyRepetitionError({topLevelRule:e,repetition:i});r.push({message:t,type:Il.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}})}),r}o(wc,`validateSomeNonEmptyLookaheadPath`);function Tc(e,t,n,r){let i=[];return e.reduce((n,r,a)=>(t.definition[a].ignoreAmbiguities===!0||r.forEach(r=>{let o=[a];e.forEach((e,n)=>{a!==n&&oc(e,r)&&t.definition[n].ignoreAmbiguities!==!0&&o.push(n)}),o.length>1&&!oc(i,r)&&(i.push(r),n.push({alts:o,path:r}))}),n),[]).map(e=>{let i=e.alts.map(e=>e+1);return{message:r.buildAlternationAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Il.AMBIGUOUS_ALTS,ruleName:n.name,occurrence:t.idx,alternatives:e.alts}})}o(Tc,`checkAlternativesAmbiguities`);function Ec(e,t,n,r){let i=e.reduce((e,t,n)=>{let r=t.map(e=>({idx:n,path:e}));return e.concat(r)},[]);return i.flatMap(e=>{if(t.definition[e.idx].ignoreAmbiguities===!0)return[];let a=e.idx,o=e.path;return i.filter(e=>t.definition[e.idx].ignoreAmbiguities!==!0&&e.idx<a&&sc(e.path,o)).map(e=>{let i=[e.idx+1,a+1],o=t.idx===0?``:t.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Il.AMBIGUOUS_PREFIX_ALTS,ruleName:n.name,occurrence:o,alternatives:i}})})}o(Ec,`checkPrefixAlternativesAmbiguities`);function Dc(e,t,n){let r=[],i=t.map(e=>e.name);return e.forEach(e=>{let t=e.name;if(i.includes(t)){let i=n.buildNamespaceConflictError(e);r.push({message:i,type:Il.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}}),r}o(Dc,`checkTerminalAndNoneTerminalsNameSpace`);function Oc(e){let t=Object.assign({errMsgProvider:Ms},e),n={};return e.rules.forEach(e=>{n[e.name]=e}),Ps(n,t.errMsgProvider)}o(Oc,`resolveGrammar`);function kc(e){let t=e.errMsgProvider??Ns;return uc(e.rules,e.tokenTypes,t,e.grammarName)}o(kc,`validateGrammar`);var Ac=`MismatchedTokenException`,jc=`NoViableAltException`,Mc=`EarlyExitException`,Nc=`NotAllInputParsedException`,Pc=[Ac,jc,Mc,Nc];Object.freeze(Pc);function Fc(e){return Pc.includes(e.name)}o(Fc,`isRecognitionException`);var Ic=class extends Error{static{o(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)}},Lc=class extends Ic{static{o(this,`MismatchedTokenException`)}constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Ac}},Rc=class extends Ic{static{o(this,`NoViableAltException`)}constructor(e,t,n){super(e,t),this.previousToken=n,this.name=jc}},zc=class extends Ic{static{o(this,`NotAllInputParsedException`)}constructor(e,t){super(e,t),this.name=Nc}},Bc=class extends Ic{static{o(this,`EarlyExitException`)}constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Mc}},Vc={},Hc=`InRuleRecoveryException`,Uc=class extends Error{static{o(this,`InRuleRecoveryException`)}constructor(e){super(e),this.name=Hc}},Wc=class{static{o(this,`Recoverable`)}initRecoverable(e){this.firstAfterRepMap=[],this.resyncFollows={},this.recoveryEnabled=Object.hasOwn(e,`recoveryEnabled`)?e.recoveryEnabled:Pl.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Gc)}getTokenToInsert(e){let t=ks(e,``,-1,-1,-1,-1,-1,-1);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,n,r){let i=this.findReSyncTokenType(),a=this.exportLexerState(),s=[],c=!1,l=this.LA_FAST(1),u=this.LA_FAST(1),d=o(()=>{let e=this.LA(0),t=new Lc(this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:l,previous:e,ruleName:this.getCurrRuleFullName()}),l,this.LA(0));t.resyncedTokens=s.slice(0,-1),this.SAVE_ERROR(t)},`generateErrorMessage`);for(;!c;)if(this.tokenMatcher(u,r)){d();return}else if(n.call(this)){d(),e.apply(this,t);return}else this.tokenMatcher(u,i)?c=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,s));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,t,n){return!(n===!1||this.tokenMatcher(this.LA_FAST(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t)))}getNextPossibleTokenTypes(e){let t=e.ruleStack[0],n=this.getGAstProductions()[t];return new Ls(n,e).startWalking()}getFollowsForInRuleRecovery(e,t){let n=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(n)}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 Uc(`sad sad panda`)}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e)||t.length===0)return!1;let n=this.LA_FAST(1);return t.find(e=>this.tokenMatcher(n,e))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let t=this.getCurrFollowKey();return this.getFollowSetFromFollowKey(t).includes(e)}findReSyncTokenType(){let e=this.flattenFollowSet(),t=this.LA_FAST(1),n=2;for(;;){let r=e.find(e=>As(t,e));if(r!==void 0)return r;t=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK_IDX===0)return Vc;let e=this.currRuleShortName,t=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK,n=this.RULE_STACK_IDX+1,r=Array(n);for(let i=0;i<n;i++)i===0?r[i]=Vc:r[i]={ruleName:this.shortRuleNameToFullName(e[i]),idxInCallingRule:t[i],inRule:this.shortRuleNameToFullName(e[i-1])};return r}flattenFollowSet(){return this.buildFullFollowKeyStack().map(e=>this.getFollowSetFromFollowKey(e)).flat()}getFollowSetFromFollowKey(e){if(e===Vc)return[Os];let t=e.ruleName+e.idxInCallingRule+Ka+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,Os)||t.push(e),t}reSyncTo(e){let t=[],n=this.LA_FAST(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,t);return t.slice(0,-1)}attemptInRepetitionRecovery(e,t,n,r,i,a,o){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){let e=this.RULE_STACK_IDX+1,t=Array(e);for(let n=0;n<e;n++)t[n]=this.shortRuleNameToFullName(this.RULE_STACK[n]);return t}};function Gc(e,t,n,r,i,a,o){var s,c;let l=r|i,u=(s=this.firstAfterRepMap)[c=this.currRuleShortName]??(s[c]=[]),d=u[l];if(d===void 0){let e=this.getCurrRuleFullName(),t=this.getGAstProductions()[e];d=new a(t,i).startWalking(),u[l]=d}let f=d.token,p=d.occurrence,m=d.isEndOfRule;this.RULE_STACK_IDX===0&&m&&f===void 0&&(f=Os,p=1),f!==void 0&&p!==void 0&&this.shouldInRepetitionRecoveryBeTried(f,p,o)&&this.tryInRepetitionRecovery(e,t,n,f)}o(Gc,`attemptInRepetitionRecovery`);var Kc=8,qc=1<<Kc,Jc=2<<Kc,Yc=3<<Kc,Xc=4<<Kc,Zc=5<<Kc,Qc=6<<Kc,$c=class{static{o(this,`LLkLookaheadStrategy`)}constructor(e){this.maxLookahead=e?.maxLookahead??Pl.maxLookahead}validate(e){let t=this.validateNoLeftRecursion(e.rules);if(t.length===0){let n=this.validateEmptyOrAlternatives(e.rules),r=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...t,...n,...r,...i]}return t}validateNoLeftRecursion(e){return e.flatMap(e=>_c(e,e,Ns))}validateEmptyOrAlternatives(e){return e.flatMap(e=>bc(e,Ns))}validateAmbiguousAlternationAlternatives(e,t){return e.flatMap(e=>xc(e,t,Ns))}validateSomeNonEmptyLookaheadPath(e,t){return wc(e,t,Ns)}buildLookaheadForAlternation(e){return Js(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Xs)}buildLookaheadForOptional(e){return Ys(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,Ks(e.prodType),Zs)}},el=class{static{o(this,`LooksAhead`)}initLooksAhead(e){this.dynamicTokensEnabled=Object.hasOwn(e,`dynamicTokensEnabled`)?e.dynamicTokensEnabled:Pl.dynamicTokensEnabled,this.maxLookahead=Object.hasOwn(e,`maxLookahead`)?e.maxLookahead:Pl.maxLookahead,this.lookaheadStrategy=Object.hasOwn(e,`lookaheadStrategy`)?e.lookaheadStrategy:new $c({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=[],this.currRuleLookaheadFuncs=[]}preComputeLookaheadFunctions(e){e.forEach(e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{let{alternation:t,repetition:n,option:r,repetitionMandatory:i,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:o}=nl(e);t.forEach(t=>{let n=t.idx===0?``:t.idx;this.TRACE_INIT(`${za(t)}${n}`,()=>{let n=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled});this.setLaFuncCache(this.fullRuleNameToShort[e.name],qc|t.idx,n)})}),n.forEach(t=>{this.computeLookaheadFunc(e,t.idx,Yc,`Repetition`,t.maxLookahead,za(t))}),r.forEach(t=>{this.computeLookaheadFunc(e,t.idx,Jc,`Option`,t.maxLookahead,za(t))}),i.forEach(t=>{this.computeLookaheadFunc(e,t.idx,Xc,`RepetitionMandatory`,t.maxLookahead,za(t))}),a.forEach(t=>{this.computeLookaheadFunc(e,t.idx,Qc,`RepetitionMandatoryWithSeparator`,t.maxLookahead,za(t))}),o.forEach(t=>{this.computeLookaheadFunc(e,t.idx,Zc,`RepetitionWithSeparator`,t.maxLookahead,za(t))})})})}computeLookaheadFunc(e,t,n,r,i,a){this.TRACE_INIT(`${a}${t===0?``:t}`,()=>{let a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r});this.setLaFuncCache(this.fullRuleNameToShort[e.name],n|t,a)})}setLaFuncCache(e,t,n){let r=this.lookAheadFuncsCache[e];r===void 0&&(r=[],this.lookAheadFuncsCache[e]=r),r[t]=n}},tl=new class extends Fa{static{o(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 nl(e){tl.reset(),e.accept(tl);let t=tl.dslMethods;return tl.reset(),t}o(nl,`collectMethods`);function rl(e,t){e.startOffset===-1?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset&&(e.endOffset=t.endOffset)}o(rl,`setNodeLocationOnlyOffset`);function il(e,t){e.startOffset===-1?(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&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}o(il,`setNodeLocationFull`);function al(e,t,n){e.children[n]===void 0?e.children[n]=[t]:e.children[n].push(t)}o(al,`addTerminalToCst`);function ol(e,t,n){e.children[t]===void 0?e.children[t]=[n]:e.children[t].push(n)}o(ol,`addNoneTerminalToCst`);var sl=`name`;function cl(e,t){Object.defineProperty(e,sl,{enumerable:!1,configurable:!0,writable:!1,value:t})}o(cl,`defineNameProp`);function ll(e,t){let n=Object.keys(e),r=n.length;for(let i=0;i<r;i++){let r=e[n[i]],a=r.length;for(let e=0;e<a;e++){let n=r[e];n.tokenTypeIdx===void 0&&this[n.name](n.children,t)}}}o(ll,`defaultVisit`);function ul(e,t){let n=o(function(){},`derivedConstructor`);return cl(n,e+`BaseSemantics`),n.prototype={visit:o(function(e,t){if(Array.isArray(e)&&(e=e[0]),e!==void 0)return this[e.name](e.children,t)},`visit`),validateVisitor:o(function(){let e=pl(this,t);if(e.length!==0){let t=e.map(e=>e.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
100
+ ${t.join(`
101
+
102
+ `).replace(/\n/g,`
103
+ `)}`)}},`validateVisitor`)},n.prototype.constructor=n,n._RULE_NAMES=t,n}o(ul,`createBaseSemanticVisitorConstructor`);function dl(e,t,n){let r=o(function(){},`derivedConstructor`);cl(r,e+`BaseSemanticsWithDefaults`);let i=Object.create(n.prototype);return t.forEach(e=>{i[e]=ll}),r.prototype=i,r.prototype.constructor=r,r}o(dl,`createBaseVisitorConstructorWithDefaults`);var fl;(function(e){e[e.REDUNDANT_METHOD=0]=`REDUNDANT_METHOD`,e[e.MISSING_METHOD=1]=`MISSING_METHOD`})(fl||={});function pl(e,t){return ml(e,t)}o(pl,`validateVisitor`);function ml(e,t){return t.filter(t=>typeof e[t]!=`function`).map(t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:fl.MISSING_METHOD,methodName:t})).filter(Boolean)}o(ml,`validateMissingCstMethods`);var hl=class{static{o(this,`TreeBuilder`)}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Object.hasOwn(e,`nodeLocationTracking`)?e.nodeLocationTracking:Pl.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=()=>{},this.cstFinallyStateUpdate=()=>{},this.cstPostTerminal=()=>{},this.cstPostNonTerminal=()=>{},this.cstPostRule=()=>{};else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=il,this.setNodeLocationFromNode=il,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=rl,this.setNodeLocationFromNode=rl,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=()=>{},this.setInitialNodeLocation=()=>{};else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:-1,endOffset:-1}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA_FAST(1).startOffset,endOffset:-1}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:-1,startLine:-1,startColumn:-1,endOffset:-1,endLine:-1,endColumn:-1}}setInitialNodeLocationFullRegular(e){let t=this.LA_FAST(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:-1,endLine:-1,endColumn:-1}}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),n=e.location;n.startOffset!==-1&&n.startOffset<=t.startOffset?(n.endOffset=t.endOffset,n.endLine=t.endLine,n.endColumn=t.endColumn):(n.startOffset=-1,n.startLine=-1,n.startColumn=-1)}cstPostRuleOnlyOffset(e){let t=this.LA(0),n=e.location;n.startOffset!==-1&&n.startOffset<=t.startOffset?n.endOffset=t.endOffset:n.startOffset=-1}cstPostTerminal(e,t){let n=this.CST_STACK[this.CST_STACK.length-1];al(n,t,e),this.setNodeLocationFromToken(n.location,t)}cstPostNonTerminal(e,t){let n=this.CST_STACK[this.CST_STACK.length-1];ol(n,t,e),this.setNodeLocationFromNode(n.location,e.location)}get currCSTNode(){let e=this;return e.CST_STACK[e.CST_STACK.length-1]}getBaseCstVisitorConstructor(){if(this.baseCstVisitorConstructor===void 0){let e=ul(this.className,Object.keys(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(this.baseCstVisitorWithDefaultsConstructor===void 0){let e=dl(this.className,Object.keys(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getPreviousExplicitRuleShortName(){return this.RULE_STACK[this.RULE_STACK_IDX-1]}getLastExplicitRuleOccurrenceIndex(){return this.RULE_OCCURRENCE_STACK[this.RULE_OCCURRENCE_STACK_IDX]}},gl=class{static{o(this,`LexerAdapter`)}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error(`Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.`);this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVectorLength-2?(this.consumeToken(),this.LA_FAST(1)):Nl}LA_FAST(e){let t=this.currIdx+e;return this.tokVector[t]}LA(e){let t=this.currIdx+e;return t<0||this.tokVectorLength<=t?Nl:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVectorLength-1}getLexerPosition(){return this.exportLexerState()}},_l=class{static{o(this,`RecognizerApi`)}ACTION(e){return e.call(this)}consume(e,t,n){return this.consumeInternal(t,e,n)}subrule(e,t,n){return this.subruleInternal(t,e,n)}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,n=Fl){if(this.definedRulesNames.includes(e)){let t={message:Ns.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Il.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);let r=this.defineRule(e,t,n);return this[e]=r,r}OVERRIDE_RULE(e,t,n=Fl){let r=gc(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);let i=this.defineRule(e,t,n);return this[e]=i,i}BACKTRACK(e,t){let n=e.coreRule??e;return function(){this.isBackTrackingStack.push(1);let e=this.saveRecogState();try{return n.apply(this,t),!0}catch(e){if(Fc(e))return!1;throw e}finally{this.reloadRecogState(e),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ma(Object.values(this.gastProductionsCache))}},vl=class{static{o(this,`RecognizerEngine`)}initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull=[],this.fullRuleNameToShort={},this.ruleShortNameIdx=0,this.tokenMatcher=Qo,this.subruleIdx=0,this.currRuleShortName=-1,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK=[],this.RULE_OCCURRENCE_STACK_IDX=-1,this.gastProductionsCache={},Object.hasOwn(t,`serializedGrammar`))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
104
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
105
+ For Further details.`);if(Array.isArray(e)){if(e.length===0)throw Error(`A Token Vocabulary cannot be empty.
106
+ Note that the first argument for the parser constructor
107
+ is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset==`number`)throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
108
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
109
+ For Further details.`)}if(Array.isArray(e))this.tokensMap=e.reduce((e,t)=>(e[t.name]=t,e),{});else if(Object.hasOwn(e,`modes`)&&Object.values(e.modes).flat().every(ds)){let t=Object.values(e.modes).flat(),n=[...new Set(t)];this.tokensMap=n.reduce((e,t)=>(e[t.name]=t,e),{})}else if(typeof e==`object`&&e)this.tokensMap=Object.assign({},e);else throw Error(`<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition`);this.tokensMap.EOF=Os;let n=(Object.hasOwn(e,`modes`)?Object.values(e.modes).flat():Object.values(e)).every(e=>e.categoryMatches?.length==0);this.tokenMatcher=n?Qo:Zo,ts(Object.values(this.tokensMap))}defineRule(e,t,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
110
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let r=Object.hasOwn(n,`resyncEnabled`)?n.resyncEnabled:Fl.resyncEnabled,i=Object.hasOwn(n,`recoveryValueFunc`)?n.recoveryValueFunc:Fl.recoveryValueFunc,a=this.ruleShortNameIdx++;this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a;let s;return s=this.outputCst===!0?o(function(...n){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,n);let r=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(r),r}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}},`invokeRuleWithTry`):o(function(...n){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,n)}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}},`invokeRuleWithTryCst`),Object.assign(o(function(...t){this.onBeforeParse(e);try{return s.apply(this,t)}finally{this.onAfterParse(e)}},`rootRule`),{ruleName:e,originalGrammarAction:t,coreRule:s})}invokeRuleCatch(e,t,n){let r=this.RULE_STACK_IDX===0,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(Fc(e)){let t=e;if(i){let r=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(r)){if(t.resyncedTokens=this.reSyncTo(r),this.outputCst){let e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}return n(e)}if(this.outputCst){let e=this.CST_STACK[this.CST_STACK.length-1];e.recoveredNode=!0,t.partialCstResult=e}throw t}if(r)return this.moveToTerminatedState(),n(e);throw t}throw e}optionInternal(e,t){let n=Jc|t;return this.optionInternalLogic(e,t,n)}optionInternalLogic(e,t,n){let r=this.currRuleLookaheadFuncs[n],i;if(typeof e!=`function`){i=e.DEF;let t=e.GATE;if(t!==void 0){let e=r;r=o(()=>t.call(this)&&e.call(this),`lookAheadFunc`)}}else i=e;if(r.call(this)===!0)return i.call(this)}atLeastOneInternal(e,t){let n=Xc|e;return this.atLeastOneInternalLogic(e,t,n)}atLeastOneInternalLogic(e,t,n){let r=this.currRuleLookaheadFuncs[n],i;if(typeof t!=`function`){i=t.DEF;let e=t.GATE;if(e!==void 0){let t=r;r=o(()=>e.call(this)&&t.call(this),`lookAheadFunc`)}}else i=t;if(r.call(this)===!0){let e=this.doSingleRepetition(i);for(;r.call(this)===!0&&e===!0;)e=this.doSingleRepetition(i)}else throw this.raiseEarlyExitException(e,W.REPETITION_MANDATORY,t.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],r,Xc,e,Vs)}atLeastOneSepFirstInternal(e,t){let n=Qc|e;this.atLeastOneSepFirstInternalLogic(e,t,n)}atLeastOneSepFirstInternalLogic(e,t,n){let r=t.DEF,i=t.SEP;if(this.currRuleLookaheadFuncs[n].call(this)===!0){r.call(this);let t=o(()=>this.tokenMatcher(this.LA_FAST(1),i),`separatorLookAheadFunc`);for(;this.tokenMatcher(this.LA_FAST(1),i)===!0;)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,Hs],t,Qc,e,Hs)}else throw this.raiseEarlyExitException(e,W.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG)}manyInternal(e,t){let n=Yc|e;return this.manyInternalLogic(e,t,n)}manyInternalLogic(e,t,n){let r=this.currRuleLookaheadFuncs[n],i;if(typeof t!=`function`){i=t.DEF;let e=t.GATE;if(e!==void 0){let t=r;r=o(()=>e.call(this)&&t.call(this),`lookaheadFunction`)}}else i=t;let a=!0;for(;r.call(this)===!0&&a===!0;)a=this.doSingleRepetition(i);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],r,Yc,e,zs,a)}manySepFirstInternal(e,t){let n=Zc|e;this.manySepFirstInternalLogic(e,t,n)}manySepFirstInternalLogic(e,t,n){let r=t.DEF,i=t.SEP;if(this.currRuleLookaheadFuncs[n].call(this)===!0){r.call(this);let t=o(()=>this.tokenMatcher(this.LA_FAST(1),i),`separatorLookAheadFunc`);for(;this.tokenMatcher(this.LA_FAST(1),i)===!0;)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,Bs],t,Zc,e,Bs)}}repetitionSepSecondInternal(e,t,n,r,i){for(;n();)this.CONSUME(t),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,n,r,i],n,Qc,e,i)}doSingleRepetition(e){let t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){let n=qc|t,r=Array.isArray(e)?e:e.DEF,i=this.currRuleLookaheadFuncs[n].call(this,r);if(i!==void 0)return r[i].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){this.RULE_STACK_IDX--,this.RULE_OCCURRENCE_STACK_IDX--,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName]),this.cstFinallyStateUpdate()}subruleInternal(e,t,n){let r;try{let i=n===void 0?void 0:n.ARGS;return this.subruleIdx=t,r=e.coreRule.apply(this,i),this.cstPostNonTerminal(r,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),r}catch(t){throw this.subruleInternalError(t,n,e.ruleName)}}subruleInternalError(e,t,n){throw Fc(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,t!==void 0&&t.LABEL!==void 0?t.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,t,n){let r;try{let t=this.LA_FAST(1);this.tokenMatcher(t,e)===!0?(this.consumeToken(),r=t):this.consumeInternalError(e,t,n)}catch(n){r=this.consumeInternalRecovery(e,t,n)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,r),r}consumeInternalError(e,t,n){let r,i=this.LA(0);throw r=n!==void 0&&n.ERR_MSG?n.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Lc(r,t,i))}consumeInternalRecovery(e,t,n){if(this.recoveryEnabled&&n.name===`MismatchedTokenException`&&!this.isBackTracking()){let r=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,r)}catch(e){throw e.name===Hc?n:e}}throw n}saveRecogState(){let e=this.errors,t=this.RULE_STACK.slice(0,this.RULE_STACK_IDX+1);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState);let t=e.RULE_STACK;for(let e=0;e<t.length;e++)this.RULE_STACK[e]=t[e];this.RULE_STACK_IDX=t.length-1,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName])}ruleInvocationStateUpdate(e,t,n){this.RULE_OCCURRENCE_STACK[++this.RULE_OCCURRENCE_STACK_IDX]=n,this.RULE_STACK[++this.RULE_STACK_IDX]=e,this.currRuleShortName=e,this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[e],this.cstInvocationStateUpdate(t)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.currRuleShortName;return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Os)}reset(){this.resetLexerState(),this.subruleIdx=0,this.currRuleShortName=-1,this.currRuleLookaheadFuncs=[],this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK_IDX=-1,this.CST_STACK=[]}onBeforeParse(e){for(let e=0;e<this.maxLookahead+1;e++)this.tokVector.push(Nl)}onAfterParse(e){if(this.isAtEndOfInput()===!1){let e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new zc(t,e))}for(;this.tokVector.at(-1)===Nl;)this.tokVector.pop()}},yl=class{static{o(this,`ErrorHandler`)}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Object.hasOwn(e,`errorMessageProvider`)?e.errorMessageProvider:Pl.errorMessageProvider}SAVE_ERROR(e){if(Fc(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1)},this._errors.push(e),e;throw Error(`Trying to save an Error which is not a RecognitionException`)}get errors(){return[...this._errors]}set errors(e){this._errors=e}raiseEarlyExitException(e,t,n){let r=this.getCurrRuleFullName(),i=this.getGAstProductions()[r],a=ac(e,i,t,this.maxLookahead)[0],o=[];for(let e=1;e<=this.maxLookahead;e++)o.push(this.LA(e));let s=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:o,previous:this.LA(0),customUserDescription:n,ruleName:r});throw this.SAVE_ERROR(new Bc(s,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){let n=this.getCurrRuleFullName(),r=this.getGAstProductions()[n],i=ic(e,r,this.maxLookahead),a=[];for(let e=1;e<=this.maxLookahead;e++)a.push(this.LA(e));let o=this.LA(0),s=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:i,actual:a,previous:o,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Rc(s,this.LA(1),o))}},bl={description:`This Object indicates the Parser is during Recording Phase`};Object.freeze(bl);var xl=!0,Sl=255,Cl=Es({name:`RECORDING_PHASE_TOKEN`,pattern:ms.NA});ts([Cl]);var wl=ks(Cl,`This IToken indicates the Parser is in Recording Phase
111
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(wl);var Tl={name:`This CSTNode indicates the Parser is in Recording Phase
112
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},El=class{static{o(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,n){return this.consumeInternalRecord(t,e,n)},this[`SUBRULE${t}`]=function(t,n){return this.subruleInternalRecord(t,e,n)},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,n){return this.consumeInternalRecord(t,e,n)},this.subrule=function(e,t,n){return this.subruleInternalRecord(t,e,n)},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`,()=>{let e=this;for(let t=0;t<10;t++){let n=t>0?t:``;delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return Nl}topLevelRuleRecord(e,t){try{let n=new Ea({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),t.call(this),this.recordingProdStack.pop(),n}catch(e){if(e.KNOWN_RECORDER_ERROR!==!0)try{e.message+=`
113
+ This error was thrown during the "grammar recording phase" For more info see:
114
+ https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw e}throw e}}optionInternalRecord(e,t){return Dl.call(this,B,e,t)}atLeastOneInternalRecord(e,t){Dl.call(this,Oa,t,e)}atLeastOneSepFirstInternalRecord(e,t){Dl.call(this,ka,t,e,xl)}manyInternalRecord(e,t){Dl.call(this,V,t,e)}manySepFirstInternalRecord(e,t){Dl.call(this,Aa,t,e,xl)}orInternalRecord(e,t){return Ol.call(this,e,t)}subruleInternalRecord(e,t,n){if(Al(t),!e||!Object.hasOwn(e,`ruleName`)){let n=Error(`<SUBRULE${kl(t)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
115
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}let r=this.recordingProdStack.at(-1),i=e.ruleName,a=new Ta({idx:t,nonTerminalName:i,label:n?.LABEL,referencedRule:void 0});return r.definition.push(a),this.outputCst?Tl:bl}consumeInternalRecord(e,t,n){if(Al(t),!ss(e)){let n=Error(`<CONSUME${kl(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
116
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}let r=this.recordingProdStack.at(-1),i=new H({idx:t,terminalType:e,label:n?.LABEL});return r.definition.push(i),wl}};function Dl(e,t,n,r=!1){Al(n);let i=this.recordingProdStack.at(-1),a=typeof t==`function`?t:t.DEF,o=new e({definition:[],idx:n});return r&&(o.separator=t.SEP),Object.hasOwn(t,`MAX_LOOKAHEAD`)&&(o.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(o),a.call(this),i.definition.push(o),this.recordingProdStack.pop(),bl}o(Dl,`recordProd`);function Ol(e,t){Al(t);let n=this.recordingProdStack.at(-1),r=Array.isArray(e)===!1,i=r===!1?e:e.DEF,a=new ja({definition:[],idx:t,ignoreAmbiguities:r&&e.IGNORE_AMBIGUITIES===!0});return Object.hasOwn(e,`MAX_LOOKAHEAD`)&&(a.maxLookahead=e.MAX_LOOKAHEAD),a.hasPredicates=i.some(e=>typeof e.GATE==`function`),n.definition.push(a),i.forEach(e=>{let t=new Da({definition:[]});a.definition.push(t),Object.hasOwn(e,`IGNORE_AMBIGUITIES`)?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:Object.hasOwn(e,`GATE`)&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()}),bl}o(Ol,`recordOrProd`);function kl(e){return e===0?``:`${e}`}o(kl,`getIdxSuffix`);function Al(e){if(e<0||e>Sl){let t=Error(`Invalid DSL Method idx value: <${e}>
117
+ Idx value must be a none negative value smaller than ${Sl+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}o(Al,`assertMethodIdxIsValid`);var jl=class{static{o(this,`PerformanceTracer`)}initPerformanceTracer(e){if(Object.hasOwn(e,`traceInitPerf`)){let t=e.traceInitPerf,n=typeof t==`number`;this.traceInitMaxIdent=n?t:1/0,this.traceInitPerf=n?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=Pl.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=Array(this.traceInitIndent+1).join(` `);this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);let{time:r,value:i}=ba(t),a=r>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${n}<-- <${e}> time: ${r}ms`),this.traceInitIndent--,i}return t()}};function Ml(e,t){t.forEach(t=>{let n=t.prototype;Object.getOwnPropertyNames(n).forEach(r=>{if(r===`constructor`)return;let i=Object.getOwnPropertyDescriptor(n,r);i&&(i.get||i.set)?Object.defineProperty(e.prototype,r,i):e.prototype[r]=t.prototype[r]})})}o(Ml,`applyMixins`);var Nl=ks(Os,``,-1,-1,-1,-1,-1,-1);Object.freeze(Nl);var Pl=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:js,nodeLocationTracking:`none`,traceInitPerf:!1,skipValidations:!1}),Fl=Object.freeze({recoveryValueFunc:o(()=>void 0,`recoveryValueFunc`),resyncEnabled:!0}),Il;(function(e){e[e.INVALID_RULE_NAME=0]=`INVALID_RULE_NAME`,e[e.DUPLICATE_RULE_NAME=1]=`DUPLICATE_RULE_NAME`,e[e.INVALID_RULE_OVERRIDE=2]=`INVALID_RULE_OVERRIDE`,e[e.DUPLICATE_PRODUCTIONS=3]=`DUPLICATE_PRODUCTIONS`,e[e.UNRESOLVED_SUBRULE_REF=4]=`UNRESOLVED_SUBRULE_REF`,e[e.LEFT_RECURSION=5]=`LEFT_RECURSION`,e[e.NONE_LAST_EMPTY_ALT=6]=`NONE_LAST_EMPTY_ALT`,e[e.AMBIGUOUS_ALTS=7]=`AMBIGUOUS_ALTS`,e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]=`CONFLICT_TOKENS_RULES_NAMESPACE`,e[e.INVALID_TOKEN_NAME=9]=`INVALID_TOKEN_NAME`,e[e.NO_NON_EMPTY_LOOKAHEAD=10]=`NO_NON_EMPTY_LOOKAHEAD`,e[e.AMBIGUOUS_PREFIX_ALTS=11]=`AMBIGUOUS_PREFIX_ALTS`,e[e.TOO_MANY_ALTS=12]=`TOO_MANY_ALTS`,e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]=`CUSTOM_LOOKAHEAD_VALIDATION`})(Il||={});function Ll(e=void 0){return function(){return e}}o(Ll,`EMPTY_ALT`);var Rl=class e{static{o(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 n=this.className;this.TRACE_INIT(`toFastProps`,()=>{xa(this)}),this.TRACE_INIT(`Grammar Recording`,()=>{try{this.enableRecording(),this.definedRulesNames.forEach(e=>{let t=this[e].originalGrammarAction,n;this.TRACE_INIT(`${e} Rule`,()=>{n=this.topLevelRuleRecord(e,t)}),this.gastProductionsCache[e]=n})}finally{this.disableRecording()}});let r=[];if(this.TRACE_INIT(`Grammar Resolving`,()=>{r=Oc({rules:Object.values(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(r)}),this.TRACE_INIT(`Grammar Validations`,()=>{if(r.length===0&&this.skipValidations===!1){let e=kc({rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),errMsgProvider:Ns,grammarName:n}),t=lc({lookaheadStrategy:this.lookaheadStrategy,rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),grammarName:n});this.definitionErrors=this.definitionErrors.concat(e,t)}}),this.definitionErrors.length===0&&(this.recoveryEnabled&&this.TRACE_INIT(`computeAllProdsFollows`,()=>{let e=Ja(Object.values(this.gastProductionsCache));this.resyncFollows=e}),this.TRACE_INIT(`ComputeLookaheadFunctions`,()=>{var e,t;(t=(e=this.lookaheadStrategy).initialize)==null||t.call(e,{rules:Object.values(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Object.values(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&this.definitionErrors.length!==0)throw t=this.definitionErrors.map(e=>e.message),Error(`Parser Definition Errors detected:
118
+ ${t.join(`
119
+ -------------------------------
120
+ `)}`)})}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(t),n.initLexerAdapter(),n.initLooksAhead(t),n.initRecognizerEngine(e,t),n.initRecoverable(t),n.initTreeBuilder(t),n.initGastRecorder(t),n.initPerformanceTracer(t),Object.hasOwn(t,`ignoredIssues`))throw Error(`The <ignoredIssues> IParserConfig property has been deprecated.
121
+ Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
122
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
123
+ For further details.`);this.skipValidations=Object.hasOwn(t,`skipValidations`)?t.skipValidations:Pl.skipValidations}};Rl.DEFER_DEFINITION_ERRORS_HANDLING=!1,Ml(Rl,[Wc,el,hl,gl,vl,_l,yl,El,jl]);var zl=class extends Rl{static{o(this,`EmbeddedActionsParser`)}constructor(e,t=Pl){let n=Object.assign({},t);n.outputCst=!1,super(e,n)}};function Bl(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}o(Bl,`arrayMap`);var Vl=Bl;function Hl(){this.__data__=[],this.size=0}o(Hl,`listCacheClear`);var Ul=Hl;function Wl(e,t){return e===t||e!==e&&t!==t}o(Wl,`eq`);var Gl=Wl;function Kl(e,t){for(var n=e.length;n--;)if(Gl(e[n][0],t))return n;return-1}o(Kl,`assocIndexOf`);var ql=Kl,Jl=Array.prototype.splice;function Yl(e){var t=this.__data__,n=ql(t,e);return n<0?!1:(n==t.length-1?t.pop():Jl.call(t,n,1),--this.size,!0)}o(Yl,`listCacheDelete`);var Xl=Yl;function Zl(e){var t=this.__data__,n=ql(t,e);return n<0?void 0:t[n][1]}o(Zl,`listCacheGet`);var Ql=Zl;function $l(e){return ql(this.__data__,e)>-1}o($l,`listCacheHas`);var eu=$l;function tu(e,t){var n=this.__data__,r=ql(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}o(tu,`listCacheSet`);var nu=tu;function ru(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}o(ru,`ListCache`),ru.prototype.clear=Ul,ru.prototype.delete=Xl,ru.prototype.get=Ql,ru.prototype.has=eu,ru.prototype.set=nu;var iu=ru;function au(){this.__data__=new iu,this.size=0}o(au,`stackClear`);var ou=au;function su(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}o(su,`stackDelete`);var cu=su;function lu(e){return this.__data__.get(e)}o(lu,`stackGet`);var uu=lu;function du(e){return this.__data__.has(e)}o(du,`stackHas`);var fu=du,pu=typeof global==`object`&&global&&global.Object===Object&&global,mu=typeof self==`object`&&self&&self.Object===Object&&self,hu=pu||mu||Function(`return this`)(),gu=hu.Symbol,_u=Object.prototype,vu=_u.hasOwnProperty,yu=_u.toString,bu=gu?gu.toStringTag:void 0;function xu(e){var t=vu.call(e,bu),n=e[bu];try{e[bu]=void 0;var r=!0}catch{}var i=yu.call(e);return r&&(t?e[bu]=n:delete e[bu]),i}o(xu,`getRawTag`);var Su=xu,Cu=Object.prototype.toString;function wu(e){return Cu.call(e)}o(wu,`objectToString`);var Tu=wu,Eu=`[object Null]`,Du=`[object Undefined]`,Ou=gu?gu.toStringTag:void 0;function ku(e){return e==null?e===void 0?Du:Eu:Ou&&Ou in Object(e)?Su(e):Tu(e)}o(ku,`baseGetTag`);var Au=ku;function ju(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}o(ju,`isObject`);var Mu=ju,Nu=`[object AsyncFunction]`,Pu=`[object Function]`,Fu=`[object GeneratorFunction]`,Iu=`[object Proxy]`;function Lu(e){if(!Mu(e))return!1;var t=Au(e);return t==Pu||t==Fu||t==Nu||t==Iu}o(Lu,`isFunction`);var Ru=Lu,zu=hu[`__core-js_shared__`],Bu=(function(){var e=/[^.]+$/.exec(zu&&zu.keys&&zu.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``})();function Vu(e){return!!Bu&&Bu in e}o(Vu,`isMasked`);var Hu=Vu,Uu=Function.prototype.toString;function Wu(e){if(e!=null){try{return Uu.call(e)}catch{}try{return e+``}catch{}}return``}o(Wu,`toSource`);var Gu=Wu,Ku=/[\\^$.*+?()[\]{}|]/g,qu=/^\[object .+?Constructor\]$/,Ju=Function.prototype,Yu=Object.prototype,Xu=Ju.toString,Zu=Yu.hasOwnProperty,Qu=RegExp(`^`+Xu.call(Zu).replace(Ku,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function $u(e){return!Mu(e)||Hu(e)?!1:(Ru(e)?Qu:qu).test(Gu(e))}o($u,`baseIsNative`);var ed=$u;function td(e,t){return e?.[t]}o(td,`getValue`);var nd=td;function rd(e,t){var n=nd(e,t);return ed(n)?n:void 0}o(rd,`getNative`);var id=rd,ad=id(hu,`Map`),od=id(Object,`create`);function sd(){this.__data__=od?od(null):{},this.size=0}o(sd,`hashClear`);var cd=sd;function ld(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}o(ld,`hashDelete`);var ud=ld,dd=`__lodash_hash_undefined__`,fd=Object.prototype.hasOwnProperty;function pd(e){var t=this.__data__;if(od){var n=t[e];return n===dd?void 0:n}return fd.call(t,e)?t[e]:void 0}o(pd,`hashGet`);var md=pd,hd=Object.prototype.hasOwnProperty;function gd(e){var t=this.__data__;return od?t[e]!==void 0:hd.call(t,e)}o(gd,`hashHas`);var _d=gd,vd=`__lodash_hash_undefined__`;function yd(e,t){var n=this.__data__;return this.size+=+!this.has(e),n[e]=od&&t===void 0?vd:t,this}o(yd,`hashSet`);var bd=yd;function xd(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}o(xd,`Hash`),xd.prototype.clear=cd,xd.prototype.delete=ud,xd.prototype.get=md,xd.prototype.has=_d,xd.prototype.set=bd;var Sd=xd;function Cd(){this.size=0,this.__data__={hash:new Sd,map:new(ad||iu),string:new Sd}}o(Cd,`mapCacheClear`);var wd=Cd;function Td(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}o(Td,`isKeyable`);var Ed=Td;function Dd(e,t){var n=e.__data__;return Ed(t)?n[typeof t==`string`?`string`:`hash`]:n.map}o(Dd,`getMapData`);var Od=Dd;function kd(e){var t=Od(this,e).delete(e);return this.size-=+!!t,t}o(kd,`mapCacheDelete`);var Ad=kd;function jd(e){return Od(this,e).get(e)}o(jd,`mapCacheGet`);var Md=jd;function Nd(e){return Od(this,e).has(e)}o(Nd,`mapCacheHas`);var Pd=Nd;function Fd(e,t){var n=Od(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}o(Fd,`mapCacheSet`);var Id=Fd;function Ld(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}o(Ld,`MapCache`),Ld.prototype.clear=wd,Ld.prototype.delete=Ad,Ld.prototype.get=Md,Ld.prototype.has=Pd,Ld.prototype.set=Id;var Rd=Ld,zd=200;function Bd(e,t){var n=this.__data__;if(n instanceof iu){var r=n.__data__;if(!ad||r.length<zd-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Rd(r)}return n.set(e,t),this.size=n.size,this}o(Bd,`stackSet`);var Vd=Bd;function Hd(e){var t=this.__data__=new iu(e);this.size=t.size}o(Hd,`Stack`),Hd.prototype.clear=ou,Hd.prototype.delete=cu,Hd.prototype.get=uu,Hd.prototype.has=fu,Hd.prototype.set=Vd;var Ud=Hd,Wd=`__lodash_hash_undefined__`;function Gd(e){return this.__data__.set(e,Wd),this}o(Gd,`setCacheAdd`);var Kd=Gd;function qd(e){return this.__data__.has(e)}o(qd,`setCacheHas`);var Jd=qd;function Yd(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Rd;++t<n;)this.add(e[t])}o(Yd,`SetCache`),Yd.prototype.add=Yd.prototype.push=Kd,Yd.prototype.has=Jd;var Xd=Yd;function Zd(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}o(Zd,`arraySome`);var Qd=Zd;function $d(e,t){return e.has(t)}o($d,`cacheHas`);var ef=$d,tf=1,nf=2;function rf(e,t,n,r,i,a){var o=n&tf,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var l=a.get(e),u=a.get(t);if(l&&u)return l==t&&u==e;var d=-1,f=!0,p=n&nf?new Xd:void 0;for(a.set(e,t),a.set(t,e);++d<s;){var m=e[d],h=t[d];if(r)var g=o?r(h,m,d,t,e,a):r(m,h,d,e,t,a);if(g!==void 0){if(g)continue;f=!1;break}if(p){if(!Qd(t,function(e,t){if(!ef(p,t)&&(m===e||i(m,e,n,r,a)))return p.push(t)})){f=!1;break}}else if(!(m===h||i(m,h,n,r,a))){f=!1;break}}return a.delete(e),a.delete(t),f}o(rf,`equalArrays`);var af=rf,of=hu.Uint8Array;function sf(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}o(sf,`mapToArray`);var cf=sf;function lf(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}o(lf,`setToArray`);var uf=lf,df=1,ff=2,pf=`[object Boolean]`,mf=`[object Date]`,hf=`[object Error]`,gf=`[object Map]`,_f=`[object Number]`,vf=`[object RegExp]`,yf=`[object Set]`,bf=`[object String]`,xf=`[object Symbol]`,Sf=`[object ArrayBuffer]`,Cf=`[object DataView]`,wf=gu?gu.prototype:void 0,Tf=wf?wf.valueOf:void 0;function Ef(e,t,n,r,i,a,o){switch(n){case Cf:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Sf:return!(e.byteLength!=t.byteLength||!a(new of(e),new of(t)));case pf:case mf:case _f:return Gl(+e,+t);case hf:return e.name==t.name&&e.message==t.message;case vf:case bf:return e==t+``;case gf:var s=cf;case yf:var c=r&df;if(s||=uf,e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;r|=ff,o.set(e,t);var u=af(s(e),s(t),r,i,a,o);return o.delete(e),u;case xf:if(Tf)return Tf.call(e)==Tf.call(t)}return!1}o(Ef,`equalByTag`);var Df=Ef;function Of(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}o(Of,`arrayPush`);var kf=Of,Af=Array.isArray;function jf(e,t,n){var r=t(e);return Af(e)?r:kf(r,n(e))}o(jf,`baseGetAllKeys`);var Mf=jf;function Nf(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}o(Nf,`arrayFilter`);var Pf=Nf;function Ff(){return[]}o(Ff,`stubArray`);var If=Ff,Lf=Object.prototype.propertyIsEnumerable,Rf=Object.getOwnPropertySymbols,zf=Rf?function(e){return e==null?[]:(e=Object(e),Pf(Rf(e),function(t){return Lf.call(e,t)}))}:If;function Bf(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}o(Bf,`baseTimes`);var Vf=Bf;function Hf(e){return typeof e==`object`&&!!e}o(Hf,`isObjectLike`);var Uf=Hf,Wf=`[object Arguments]`;function Gf(e){return Uf(e)&&Au(e)==Wf}o(Gf,`baseIsArguments`);var Kf=Gf,qf=Object.prototype,Jf=qf.hasOwnProperty,Yf=qf.propertyIsEnumerable,Xf=Kf((function(){return arguments})())?Kf:function(e){return Uf(e)&&Jf.call(e,`callee`)&&!Yf.call(e,`callee`)};function Zf(){return!1}o(Zf,`stubFalse`);var Qf=Zf,$f=typeof exports==`object`&&exports&&!exports.nodeType&&exports,ep=$f&&typeof module==`object`&&module&&!module.nodeType&&module,tp=ep&&ep.exports===$f?hu.Buffer:void 0,np=(tp?tp.isBuffer:void 0)||Qf,rp=9007199254740991,ip=/^(?:0|[1-9]\d*)$/;function ap(e,t){var n=typeof e;return t??=rp,!!t&&(n==`number`||n!=`symbol`&&ip.test(e))&&e>-1&&e%1==0&&e<t}o(ap,`isIndex`);var op=ap,sp=9007199254740991;function cp(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=sp}o(cp,`isLength`);var lp=cp,up=`[object Arguments]`,dp=`[object Array]`,fp=`[object Boolean]`,pp=`[object Date]`,mp=`[object Error]`,hp=`[object Function]`,gp=`[object Map]`,_p=`[object Number]`,vp=`[object Object]`,yp=`[object RegExp]`,bp=`[object Set]`,xp=`[object String]`,Sp=`[object WeakMap]`,Cp=`[object ArrayBuffer]`,wp=`[object DataView]`,Tp=`[object Float32Array]`,Ep=`[object Float64Array]`,Dp=`[object Int8Array]`,Op=`[object Int16Array]`,kp=`[object Int32Array]`,Ap=`[object Uint8Array]`,jp=`[object Uint8ClampedArray]`,Mp=`[object Uint16Array]`,Np=`[object Uint32Array]`,G={};G[Tp]=G[Ep]=G[Dp]=G[Op]=G[kp]=G[Ap]=G[jp]=G[Mp]=G[Np]=!0,G[up]=G[dp]=G[Cp]=G[fp]=G[wp]=G[pp]=G[mp]=G[hp]=G[gp]=G[_p]=G[vp]=G[yp]=G[bp]=G[xp]=G[Sp]=!1;function Pp(e){return Uf(e)&&lp(e.length)&&!!G[Au(e)]}o(Pp,`baseIsTypedArray`);var Fp=Pp;function Ip(e){return function(t){return e(t)}}o(Ip,`baseUnary`);var Lp=Ip,Rp=typeof exports==`object`&&exports&&!exports.nodeType&&exports,zp=Rp&&typeof module==`object`&&module&&!module.nodeType&&module,Bp=zp&&zp.exports===Rp&&pu.process,Vp=(function(){try{return zp&&zp.require&&zp.require(`util`).types||Bp&&Bp.binding&&Bp.binding(`util`)}catch{}})(),Hp=Vp&&Vp.isTypedArray,Up=Hp?Lp(Hp):Fp,Wp=Object.prototype.hasOwnProperty;function Gp(e,t){var n=Af(e),r=!n&&Xf(e),i=!n&&!r&&np(e),a=!n&&!r&&!i&&Up(e),o=n||r||i||a,s=o?Vf(e.length,String):[],c=s.length;for(var l in e)(t||Wp.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||op(l,c)))&&s.push(l);return s}o(Gp,`arrayLikeKeys`);var Kp=Gp,qp=Object.prototype;function Jp(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||qp)}o(Jp,`isPrototype`);var Yp=Jp;function Xp(e,t){return function(n){return e(t(n))}}o(Xp,`overArg`);var Zp=Xp(Object.keys,Object),Qp=Object.prototype.hasOwnProperty;function $p(e){if(!Yp(e))return Zp(e);var t=[];for(var n in Object(e))Qp.call(e,n)&&n!=`constructor`&&t.push(n);return t}o($p,`baseKeys`);var em=$p;function tm(e){return e!=null&&lp(e.length)&&!Ru(e)}o(tm,`isArrayLike`);var nm=tm;function rm(e){return nm(e)?Kp(e):em(e)}o(rm,`keys`);var im=rm;function am(e){return Mf(e,im,zf)}o(am,`getAllKeys`);var om=am,sm=1,cm=Object.prototype.hasOwnProperty;function lm(e,t,n,r,i,a){var o=n&sm,s=om(e),c=s.length;if(c!=om(t).length&&!o)return!1;for(var l=c;l--;){var u=s[l];if(!(o?u in t:cm.call(t,u)))return!1}var d=a.get(e),f=a.get(t);if(d&&f)return d==t&&f==e;var p=!0;a.set(e,t),a.set(t,e);for(var m=o;++l<c;){u=s[l];var h=e[u],g=t[u];if(r)var _=o?r(g,h,u,t,e,a):r(h,g,u,e,t,a);if(!(_===void 0?h===g||i(h,g,n,r,a):_)){p=!1;break}m||=u==`constructor`}if(p&&!m){var v=e.constructor,y=t.constructor;v!=y&&`constructor`in e&&`constructor`in t&&!(typeof v==`function`&&v instanceof v&&typeof y==`function`&&y instanceof y)&&(p=!1)}return a.delete(e),a.delete(t),p}o(lm,`equalObjects`);var um=lm,dm=id(hu,`DataView`),fm=id(hu,`Promise`),pm=id(hu,`Set`),mm=id(hu,`WeakMap`),hm=`[object Map]`,gm=`[object Object]`,_m=`[object Promise]`,vm=`[object Set]`,ym=`[object WeakMap]`,bm=`[object DataView]`,xm=Gu(dm),Sm=Gu(ad),Cm=Gu(fm),wm=Gu(pm),Tm=Gu(mm),Em=Au;(dm&&Em(new dm(new ArrayBuffer(1)))!=bm||ad&&Em(new ad)!=hm||fm&&Em(fm.resolve())!=_m||pm&&Em(new pm)!=vm||mm&&Em(new mm)!=ym)&&(Em=o(function(e){var t=Au(e),n=t==gm?e.constructor:void 0,r=n?Gu(n):``;if(r)switch(r){case xm:return bm;case Sm:return hm;case Cm:return _m;case wm:return vm;case Tm:return ym}return t},`getTag`));var Dm=Em,Om=1,km=`[object Arguments]`,Am=`[object Array]`,jm=`[object Object]`,Mm=Object.prototype.hasOwnProperty;function Nm(e,t,n,r,i,a){var o=Af(e),s=Af(t),c=o?Am:Dm(e),l=s?Am:Dm(t);c=c==km?jm:c,l=l==km?jm:l;var u=c==jm,d=l==jm,f=c==l;if(f&&np(e)){if(!np(t))return!1;o=!0,u=!1}if(f&&!u)return a||=new Ud,o||Up(e)?af(e,t,n,r,i,a):Df(e,t,c,n,r,i,a);if(!(n&Om)){var p=u&&Mm.call(e,`__wrapped__`),m=d&&Mm.call(t,`__wrapped__`);if(p||m){var h=p?e.value():e,g=m?t.value():t;return a||=new Ud,i(h,g,n,r,a)}}return f?(a||=new Ud,um(e,t,n,r,i,a)):!1}o(Nm,`baseIsEqualDeep`);var Pm=Nm;function Fm(e,t,n,r,i){return e===t?!0:e==null||t==null||!Uf(e)&&!Uf(t)?e!==e&&t!==t:Pm(e,t,n,r,Fm,i)}o(Fm,`baseIsEqual`);var Im=Fm,Lm=1,Rm=2;function zm(e,t,n,r){var i=n.length,a=i,o=!r;if(e==null)return!a;for(e=Object(e);i--;){var s=n[i];if(o&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++i<a;){s=n[i];var c=s[0],l=e[c],u=s[1];if(o&&s[2]){if(l===void 0&&!(c in e))return!1}else{var d=new Ud;if(r)var f=r(l,u,c,e,t,d);if(!(f===void 0?Im(u,l,Lm|Rm,r,d):f))return!1}}return!0}o(zm,`baseIsMatch`);var Bm=zm;function Vm(e){return e===e&&!Mu(e)}o(Vm,`isStrictComparable`);var Hm=Vm;function Um(e){for(var t=im(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,Hm(i)]}return t}o(Um,`getMatchData`);var Wm=Um;function Gm(e,t){return function(n){return n!=null&&n[e]===t&&(t!==void 0||e in Object(n))}}o(Gm,`matchesStrictComparable`);var Km=Gm;function qm(e){var t=Wm(e);return t.length==1&&t[0][2]?Km(t[0][0],t[0][1]):function(n){return n===e||Bm(n,e,t)}}o(qm,`baseMatches`);var Jm=qm,Ym=`[object Symbol]`;function Xm(e){return typeof e==`symbol`||Uf(e)&&Au(e)==Ym}o(Xm,`isSymbol`);var Zm=Xm,Qm=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,$m=/^\w*$/;function eh(e,t){if(Af(e))return!1;var n=typeof e;return n==`number`||n==`symbol`||n==`boolean`||e==null||Zm(e)?!0:$m.test(e)||!Qm.test(e)||t!=null&&e in Object(t)}o(eh,`isKey`);var th=eh,nh=`Expected a function`;function rh(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(nh);var n=o(function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o},`memoized`);return n.cache=new(rh.Cache||Rd),n}o(rh,`memoize`),rh.Cache=Rd;var ih=rh,ah=500;function oh(e){var t=ih(e,function(e){return n.size===ah&&n.clear(),e}),n=t.cache;return t}o(oh,`memoizeCapped`);var sh=oh,ch=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,lh=/\\(\\)?/g,uh=sh(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(``),e.replace(ch,function(e,n,r,i){t.push(r?i.replace(lh,`$1`):n||e)}),t}),dh=1/0,fh=gu?gu.prototype:void 0,ph=fh?fh.toString:void 0;function mh(e){if(typeof e==`string`)return e;if(Af(e))return Vl(e,mh)+``;if(Zm(e))return ph?ph.call(e):``;var t=e+``;return t==`0`&&1/e==-dh?`-0`:t}o(mh,`baseToString`);var hh=mh;function gh(e){return e==null?``:hh(e)}o(gh,`toString`);var _h=gh;function vh(e,t){return Af(e)?e:th(e,t)?[e]:uh(_h(e))}o(vh,`castPath`);var yh=vh,bh=1/0;function xh(e){if(typeof e==`string`||Zm(e))return e;var t=e+``;return t==`0`&&1/e==-bh?`-0`:t}o(xh,`toKey`);var Sh=xh;function Ch(e,t){t=yh(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[Sh(t[n++])];return n&&n==r?e:void 0}o(Ch,`baseGet`);var wh=Ch;function Th(e,t,n){var r=e==null?void 0:wh(e,t);return r===void 0?n:r}o(Th,`get`);var Eh=Th;function Dh(e,t){return e!=null&&t in Object(e)}o(Dh,`baseHasIn`);var Oh=Dh;function kh(e,t,n){t=yh(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var o=Sh(t[r]);if(!(a=e!=null&&n(e,o)))break;e=e[o]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&lp(i)&&op(o,i)&&(Af(e)||Xf(e)))}o(kh,`hasPath`);var Ah=kh;function jh(e,t){return e!=null&&Ah(e,t,Oh)}o(jh,`hasIn`);var Mh=jh,Nh=1,Ph=2;function Fh(e,t){return th(e)&&Hm(t)?Km(Sh(e),t):function(n){var r=Eh(n,e);return r===void 0&&r===t?Mh(n,e):Im(t,r,Nh|Ph)}}o(Fh,`baseMatchesProperty`);var Ih=Fh;function Lh(e){return e}o(Lh,`identity`);var Rh=Lh;function zh(e){return function(t){return t?.[e]}}o(zh,`baseProperty`);var Bh=zh;function Vh(e){return function(t){return wh(t,e)}}o(Vh,`basePropertyDeep`);var Hh=Vh;function Uh(e){return th(e)?Bh(Sh(e)):Hh(e)}o(Uh,`property`);var Wh=Uh;function Gh(e){return typeof e==`function`?e:e==null?Rh:typeof e==`object`?Af(e)?Ih(e[0],e[1]):Jm(e):Wh(e)}o(Gh,`baseIteratee`);var Kh=Gh;function qh(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}o(qh,`createBaseFor`);var Jh=qh();function Yh(e,t){return e&&Jh(e,t,im)}o(Yh,`baseForOwn`);var Xh=Yh;function Zh(e,t){return function(n,r){if(n==null)return n;if(!nm(n))return e(n,r);for(var i=n.length,a=t?i:-1,o=Object(n);(t?a--:++a<i)&&r(o[a],a,o)!==!1;);return n}}o(Zh,`createBaseEach`);var Qh=Zh(Xh);function $h(e,t){var n=-1,r=nm(e)?Array(e.length):[];return Qh(e,function(e,i,a){r[++n]=t(e,i,a)}),r}o($h,`baseMap`);var eg=$h;function tg(e,t){return(Af(e)?Vl:eg)(e,Kh(t,3))}o(tg,`map`);var ng=tg;function rg(e,t){var n=[];return Qh(e,function(e,r,i){t(e,r,i)&&n.push(e)}),n}o(rg,`baseFilter`);var ig=rg;function ag(e,t){return(Af(e)?Pf:ig)(e,Kh(t,3))}o(ag,`filter`);var og=ag;function sg(e,t,n){return`${e.name}_${t}_${n}`}o(sg,`buildATNKey`);var cg=1,lg=2,ug=4,dg=5,fg=7,pg=8,mg=9,hg=10,gg=11,_g=12,vg=class{static{o(this,`AbstractTransition`)}constructor(e){this.target=e}isEpsilon(){return!1}},yg=class extends vg{static{o(this,`AtomTransition`)}constructor(e,t){super(e),this.tokenType=t}},bg=class extends vg{static{o(this,`EpsilonTransition`)}constructor(e){super(e)}isEpsilon(){return!0}},xg=class extends vg{static{o(this,`RuleTransition`)}constructor(e,t,n){super(e),this.rule=t,this.followState=n}isEpsilon(){return!0}};function Sg(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};Cg(t,e);let n=e.length;for(let r=0;r<n;r++){let n=e[r],i=jg(t,n,n);i!==void 0&&Vg(t,n,i)}return t}o(Sg,`createATN`);function Cg(e,t){let n=t.length;for(let r=0;r<n;r++){let n=t[r],i=q(e,n,void 0,{type:lg}),a=q(e,n,void 0,{type:fg});i.stop=a,e.ruleToStartState.set(n,i),e.ruleToStopState.set(n,a)}}o(Cg,`createRuleStartAndStopATNStates`);function wg(e,t,n){return n instanceof H?zg(e,t,n.terminalType,n):n instanceof Ta?Bg(e,t,n):n instanceof ja?kg(e,t,n):n instanceof B?Ag(e,t,n):n instanceof V?Tg(e,t,n):n instanceof Aa?Eg(e,t,n):n instanceof Oa?Dg(e,t,n):n instanceof ka?Og(e,t,n):jg(e,t,n)}o(wg,`atom`);function Tg(e,t,n){let r=q(e,t,n,{type:dg});return Fg(e,r),Ng(e,t,n,Ig(e,t,r,n,jg(e,t,n)))}o(Tg,`repetition`);function Eg(e,t,n){let r=q(e,t,n,{type:dg});return Fg(e,r),Ng(e,t,n,Ig(e,t,r,n,jg(e,t,n)),zg(e,t,n.separator,n))}o(Eg,`repetitionSep`);function Dg(e,t,n){let r=q(e,t,n,{type:ug});return Fg(e,r),Mg(e,t,n,Ig(e,t,r,n,jg(e,t,n)))}o(Dg,`repetitionMandatory`);function Og(e,t,n){let r=q(e,t,n,{type:ug});return Fg(e,r),Mg(e,t,n,Ig(e,t,r,n,jg(e,t,n)),zg(e,t,n.separator,n))}o(Og,`repetitionMandatorySep`);function kg(e,t,n){let r=q(e,t,n,{type:cg});return Fg(e,r),Ig(e,t,r,n,...ng(n.definition,n=>wg(e,t,n)))}o(kg,`alternation`);function Ag(e,t,n){let r=q(e,t,n,{type:cg});return Fg(e,r),Pg(e,t,n,Ig(e,t,r,n,jg(e,t,n)))}o(Ag,`option`);function jg(e,t,n){let r=og(ng(n.definition,n=>wg(e,t,n)),e=>e!==void 0);return r.length===1?r[0]:r.length===0?void 0:Rg(e,r)}o(jg,`block`);function Mg(e,t,n,r,i){let a=r.left,o=r.right,s=q(e,t,n,{type:gg});Fg(e,s);let c=q(e,t,n,{type:_g});return a.loopback=s,c.loopback=s,e.decisionMap[sg(t,i?`RepetitionMandatoryWithSeparator`:`RepetitionMandatory`,n.idx)]=s,K(o,s),i===void 0?(K(s,a),K(s,c)):(K(s,c),K(s,i.left),K(i.right,a)),{left:a,right:c}}o(Mg,`plus`);function Ng(e,t,n,r,i){let a=r.left,o=r.right,s=q(e,t,n,{type:hg});Fg(e,s);let c=q(e,t,n,{type:_g}),l=q(e,t,n,{type:mg});return s.loopback=l,c.loopback=l,K(s,a),K(s,c),K(o,l),i===void 0?K(l,s):(K(l,c),K(l,i.left),K(i.right,a)),e.decisionMap[sg(t,i?`RepetitionWithSeparator`:`Repetition`,n.idx)]=s,{left:s,right:c}}o(Ng,`star`);function Pg(e,t,n,r){let i=r.left,a=r.right;return K(i,a),e.decisionMap[sg(t,`Option`,n.idx)]=i,r}o(Pg,`optional`);function Fg(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}o(Fg,`defineDecisionState`);function Ig(e,t,n,r,...i){let a=q(e,t,r,{type:pg,start:n});n.end=a;for(let e of i)e===void 0?K(n,a):(K(n,e.left),K(e.right,a));let o={left:n,right:a};return e.decisionMap[sg(t,Lg(r),r.idx)]=n,o}o(Ig,`makeAlts`);function Lg(e){if(e instanceof ja)return`Alternation`;if(e instanceof B)return`Option`;if(e instanceof V)return`Repetition`;if(e instanceof Aa)return`RepetitionWithSeparator`;if(e instanceof Oa)return`RepetitionMandatory`;if(e instanceof ka)return`RepetitionMandatoryWithSeparator`;throw Error(`Invalid production type encountered`)}o(Lg,`getProdType`);function Rg(e,t){let n=t.length;for(let r=0;r<n-1;r++){let n=t[r],i;n.left.transitions.length===1&&(i=n.left.transitions[0]);let a=i instanceof xg,o=i,s=t[r+1].left;n.left.type===cg&&n.right.type===cg&&i!==void 0&&(a&&o.followState===n.right||i.target===n.right)?(a?o.followState=s:i.target=s,Ug(e,n.right)):K(n.right,s)}let r=t[0],i=t[n-1];return{left:r.left,right:i.right}}o(Rg,`makeBlock`);function zg(e,t,n,r){let i=q(e,t,r,{type:cg}),a=q(e,t,r,{type:cg});return Hg(i,new yg(a,n)),{left:i,right:a}}o(zg,`tokenRef`);function Bg(e,t,n){let r=n.referencedRule,i=e.ruleToStartState.get(r),a=q(e,t,n,{type:cg}),o=q(e,t,n,{type:cg});return Hg(a,new xg(i,r,o)),{left:a,right:o}}o(Bg,`ruleRef`);function Vg(e,t,n){let r=e.ruleToStartState.get(t);K(r,n.left);let i=e.ruleToStopState.get(t);return K(n.right,i),{left:r,right:i}}o(Vg,`buildRuleHandle`);function K(e,t){Hg(e,new bg(t))}o(K,`epsilon`);function q(e,t,n,r){let i=Object.assign({atn:e,production:n,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},r);return e.states.push(i),i}o(q,`newState`);function Hg(e,t){e.transitions.length===0&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}o(Hg,`addTransition`);function Ug(e,t){e.states.splice(e.states.indexOf(t),1)}o(Ug,`removeState`);var Wg={},Gg=class{static{o(this,`ATNConfigSet`)}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=Kg(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return ng(this.configs,e=>e.alt)}get key(){let e=``;for(let t in this.map)e+=t+`:`;return e}};function Kg(e,t=!0){return`${t?`a${e.alt}`:``}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join(`_`)}`}o(Kg,`getATNConfigKey`);function qg(e,t,n){for(var r=-1,i=e.length;++r<i;){var a=e[r],o=t(a);if(o!=null&&(s===void 0?o===o&&!Zm(o):n(o,s)))var s=o,c=a}return c}o(qg,`baseExtremum`);var Jg=qg;function Yg(e,t){return e<t}o(Yg,`baseLt`);var Xg=Yg;function Zg(e){return e&&e.length?Jg(e,Rh,Xg):void 0}o(Zg,`min`);var Qg=Zg,$g=gu?gu.isConcatSpreadable:void 0;function e_(e){return Af(e)||Xf(e)||!!($g&&e&&e[$g])}o(e_,`isFlattenable`);var t_=e_;function n_(e,t,n,r,i){var a=-1,o=e.length;for(n||=t_,i||=[];++a<o;){var s=e[a];t>0&&n(s)?t>1?n_(s,t-1,n,r,i):kf(i,s):r||(i[i.length]=s)}return i}o(n_,`baseFlatten`);var r_=n_;function i_(e,t){return r_(ng(e,t),1)}o(i_,`flatMap`);var a_=i_;function o_(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}o(o_,`baseFindIndex`);var s_=o_;function c_(e){return e!==e}o(c_,`baseIsNaN`);var l_=c_;function u_(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}o(u_,`strictIndexOf`);var d_=u_;function f_(e,t,n){return t===t?d_(e,t,n):s_(e,l_,n)}o(f_,`baseIndexOf`);var p_=f_;function m_(e,t){return!!(e!=null&&e.length)&&p_(e,t,0)>-1}o(m_,`arrayIncludes`);var h_=m_;function g_(e,t,n){for(var r=-1,i=e==null?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}o(g_,`arrayIncludesWith`);var __=g_;function v_(){}o(v_,`noop`);var y_=v_,b_=pm&&1/uf(new pm([,-0]))[1]==1/0?function(e){return new pm(e)}:y_,x_=200;function S_(e,t,n){var r=-1,i=h_,a=e.length,o=!0,s=[],c=s;if(n)o=!1,i=__;else if(a>=x_){var l=t?null:b_(e);if(l)return uf(l);o=!1,i=ef,c=new Xd}else c=t?[]:s;outer:for(;++r<a;){var u=e[r],d=t?t(u):u;if(u=n||u!==0?u:0,o&&d===d){for(var f=c.length;f--;)if(c[f]===d)continue outer;t&&c.push(d),s.push(u)}else i(c,d,n)||(c!==s&&c.push(d),s.push(u))}return s}o(S_,`baseUniq`);var C_=S_;function w_(e,t){return e&&e.length?C_(e,Kh(t,2)):[]}o(w_,`uniqBy`);var T_=w_;function E_(e){return e!=null&&e.length?r_(e,1):[]}o(E_,`flatten`);var D_=E_;function O_(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}o(O_,`arrayEach`);var k_=O_;function A_(e){return typeof e==`function`?e:Rh}o(A_,`castFunction`);var j_=A_;function M_(e,t){return(Af(e)?k_:Qh)(e,j_(t))}o(M_,`forEach`);var N_=M_,P_=`[object Map]`,F_=`[object Set]`,I_=Object.prototype.hasOwnProperty;function L_(e){if(e==null)return!0;if(nm(e)&&(Af(e)||typeof e==`string`||typeof e.splice==`function`||np(e)||Up(e)||Xf(e)))return!e.length;var t=Dm(e);if(t==P_||t==F_)return!e.size;if(Yp(e))return!em(e).length;for(var n in e)if(I_.call(e,n))return!1;return!0}o(L_,`isEmpty`);var R_=L_;function z_(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}o(z_,`arrayReduce`);var B_=z_;function V_(e,t,n,r,i){return i(e,function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)}),n}o(V_,`baseReduce`);var H_=V_;function U_(e,t,n){var r=Af(e)?B_:H_,i=arguments.length<3;return r(e,Kh(t,4),n,i,Qh)}o(U_,`reduce`);var W_=U_;function G_(e,t){let n={};return r=>{let i=r.toString(),a=n[i];return a===void 0?(a={atnStartState:e,decision:t,states:{}},n[i]=a,a):a}}o(G_,`createDFACache`);var K_=class{static{o(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 n=0;n<t;n++)e+=this.predicates[n]===!0?`1`:`0`;return e}},q_=new K_,J_=class extends $c{static{o(this,`LLStarLookaheadStrategy`)}constructor(e){super(),this.logging=e?.logging??(e=>console.log(e)),this.incomplete=e?.incomplete??!1}initialize(e){this.atn=Sg(e.rules),this.dfas=$_(this.atn),this.callers=X_(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:n,hasPredicates:r,dynamicTokensEnabled:i}=e,a=this.dfas,o=this.logging,s=this.incomplete,c=sg(n,`Alternation`,t),l=this.atn.decisionMap[c].decision,u=ng(qs({maxLookahead:1,occurrence:t,prodType:`Alternation`,rule:n}),e=>ng(e,e=>e[0]));if(Y_(u,!1)&&!i){let e=W_(u,(e,t,n)=>(N_(t,t=>{t&&(e[t.tokenTypeIdx]=n,N_(t.categoryMatches,t=>{e[t]=n}))}),e),{});return r?function(t){let n=this.LA_FAST(1),r=e[n.tokenTypeIdx];if(t!==void 0&&r!==void 0){let e=t[r]?.GATE;if(e!==void 0&&e.call(this)===!1)return}return r}:function(){let t=this.LA_FAST(1);return e[t.tokenTypeIdx]}}return r?function(e){let t=new K_,n=e===void 0?0:e.length;for(let r=0;r<n;r++){let n=e?.[r].GATE;t.set(r,n===void 0||n.call(this))}let r=ev.call(this,a,l,t,o,s);return typeof r==`number`?r:void 0}:function(){let e=ev.call(this,a,l,q_,o,s);return typeof e==`number`?e:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:n,prodType:r,dynamicTokensEnabled:i}=e,a=this.dfas,o=this.logging,s=this.incomplete,c=this.callers,l=sg(n,r,t),u=this.atn.decisionMap[l],d=u.decision,f=ng(qs({maxLookahead:1,occurrence:t,prodType:r,rule:n}),e=>ng(e,e=>e[0]));if(Y_(f)&&f[0][0]&&!i&&!Q_(u,r,c)){let e=f[0],t=D_(e);if(t.length===1&&R_(t[0].categoryMatches)){let e=t[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===e}}{let e=W_(t,(e,t)=>(t!==void 0&&(e[t.tokenTypeIdx]=!0,N_(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){let t=this.LA_FAST(1);return e[t.tokenTypeIdx]===!0}}}return function(){let e=ev.call(this,a,d,q_,o,s);return typeof e!=`object`&&e===0}}};function Y_(e,t=!0){let n=new Set;for(let r of e){let e=new Set;for(let i of r){if(i===void 0){if(t)break;return!1}let r=[i.tokenTypeIdx].concat(i.categoryMatches);for(let t of r)if(n.has(t)){if(!e.has(t))return!1}else n.add(t),e.add(t)}}return!0}o(Y_,`isLL1Sequence`);function X_(e){let t=new Map;for(let n of e.states)for(let e of n.transitions)if(e instanceof xg){let n=t.get(e.rule);n===void 0&&(n=[],t.set(e.rule,n)),n.push(e.followState)}return t}o(X_,`buildCallers`);function Z_(e,t){let n=new Set,r=new Set,i=[e];for(;i.length>0;){let e=i.shift();if(!r.has(e)){if(r.add(e),e.type===fg){if(t!==void 0){let n=t.get(e.rule);n!==void 0&&i.push(...n)}continue}for(let t of e.transitions)if(t instanceof yg){n.add(t.tokenType.tokenTypeIdx);for(let e of t.tokenType.categoryMatches)n.add(e)}else i.push(t.target)}}return n}o(Z_,`firstSet`);function Q_(e,t,n){let r=t===`RepetitionMandatoryWithSeparator`,i=e.transitions[+!!r],a=e.transitions[+!r];if(i===void 0||a===void 0)return!1;let o=Z_(i.target),s=Z_(a.target,n);for(let e of o)if(s.has(e))return!0;return!1}o(Q_,`optionalHasFollowConflict`);function $_(e){let t=e.decisionStates.length,n=Array(t);for(let r=0;r<t;r++)n[r]=G_(e.decisionStates[r],r);return n}o($_,`initATNSimulator`);function ev(e,t,n,r,i){let a=e[t](n),o=a.start;return o===void 0&&(o=pv(a,dv(mv(a.atnStartState))),a.start=o),tv.apply(this,[a,o,n,r,i])}o(ev,`adaptivePredict`);function tv(e,t,n,r,i){let a=t,o=1,s=[],c=this.LA_FAST(o++);for(;;){let t=sv(a,c);if(t===void 0&&(t=nv.apply(this,[e,a,c,o,n,r])),t===Wg)return ov(s,a,c);if(t.isAcceptState===!0){if(i===!0&&As(c,Os)){let e=Cv(a,n);if(e!==void 0)return e}return t.prediction}a=t,s.push(c),c=this.LA(o++)}}o(tv,`performLookahead`);function nv(e,t,n,r,i,a){let o=cv(t.configs,n,i);if(o.size===0)return fv(e,t,n,Wg),Wg;let s=dv(o),c=uv(o,i);if(c!==void 0)s.isAcceptState=!0,s.prediction=c,s.configs.uniqueAlt=c;else if(yv(o)){let t=Qg(o.alts);s.isAcceptState=!0,s.prediction=t,s.configs.uniqueAlt=t,rv.apply(this,[e,r,o.alts,a])}return s=fv(e,t,n,s),s}o(nv,`computeLookaheadTarget`);function rv(e,t,n,r){let i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);let a=e.atnStartState,o=a.rule,s=a.production;r(iv({topLevelRule:o,ambiguityIndices:n,production:s,prefixPath:i}))}o(rv,`reportLookaheadAmbiguity`);function iv(e){let t=ng(e.prefixPath,e=>hs(e)).join(`, `),n=e.production.idx===0?``:e.production.idx,r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(`, `)}> in <${av(e.production)}${n}> inside <${e.topLevelRule.name}> Rule,
124
+ <${t}> may appears as a prefix path in all these alternatives.
125
+ `;return r+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
126
+ For Further details.`,r}o(iv,`buildAmbiguityError`);function av(e){if(e instanceof Ta)return`SUBRULE`;if(e instanceof B)return`OPTION`;if(e instanceof ja)return`OR`;if(e instanceof Oa)return`AT_LEAST_ONE`;if(e instanceof ka)return`AT_LEAST_ONE_SEP`;if(e instanceof Aa)return`MANY_SEP`;if(e instanceof V)return`MANY`;if(e instanceof H)return`CONSUME`;throw Error(`non exhaustive match`)}o(av,`getProductionDslName`);function ov(e,t,n){return{actualToken:n,possibleTokenTypes:T_(a_(t.configs.elements,e=>e.state.transitions).filter(e=>e instanceof yg).map(e=>e.tokenType),e=>e.tokenTypeIdx),tokenPath:e}}o(ov,`buildAdaptivePredictError`);function sv(e,t){return e.edges[t.tokenTypeIdx]}o(sv,`getExistingTargetState`);function cv(e,t,n){let r=new Gg,i=[];for(let a of e.elements){if(n.is(a.alt)===!1)continue;if(a.state.type===fg){i.push(a);continue}let e=a.state.transitions.length;for(let n=0;n<e;n++){let e=a.state.transitions[n],i=lv(e,t);i!==void 0&&r.add({state:i,alt:a.alt,stack:a.stack})}}let a;if(i.length===0&&r.size===1&&(a=r),a===void 0){a=new Gg;for(let e of r.elements)hv(e,a)}if(i.length>0&&!_v(a))for(let e of i)a.add(e);return a}o(cv,`computeReachSet`);function lv(e,t){if(e instanceof yg&&As(t,e.tokenType))return e.target}o(lv,`getReachableTarget`);function uv(e,t){let n;for(let r of e.elements)if(t.is(r.alt)===!0){if(n===void 0)n=r.alt;else if(n!==r.alt)return}return n}o(uv,`getUniqueAlt`);function dv(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}o(dv,`newDFAState`);function fv(e,t,n,r){return r=pv(e,r),t.edges[n.tokenTypeIdx]=r,r}o(fv,`addDFAEdge`);function pv(e,t){if(t===Wg)return t;let n=t.configs.key,r=e.states[n];return r===void 0?(t.configs.finalize(),e.states[n]=t,t):r}o(pv,`addDFAState`);function mv(e){let t=new Gg,n=e.transitions.length;for(let r=0;r<n;r++)hv({state:e.transitions[r].target,alt:r,stack:[]},t);return t}o(mv,`computeStartState`);function hv(e,t){let n=e.state;if(n.type===fg){if(e.stack.length>0){let n=[...e.stack];hv({state:n.pop(),alt:e.alt,stack:n},t)}else t.add(e);return}n.epsilonOnlyTransitions||t.add(e);let r=n.transitions.length;for(let i=0;i<r;i++){let r=n.transitions[i],a=gv(e,r);a!==void 0&&hv(a,t)}}o(hv,`closure`);function gv(e,t){if(t instanceof bg)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof xg){let n=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:n}}}o(gv,`getEpsilonTarget`);function _v(e){for(let t of e.elements)if(t.state.type===fg)return!0;return!1}o(_v,`hasConfigInRuleStopState`);function vv(e){for(let t of e.elements)if(t.state.type!==fg)return!1;return!0}o(vv,`allConfigsInRuleStopStates`);function yv(e){if(vv(e))return!0;let t=bv(e.elements);return xv(t)&&!Sv(t)}o(yv,`hasConflictTerminatingPrediction`);function bv(e){let t=new Map;for(let n of e){let e=Kg(n,!1),r=t.get(e);r===void 0&&(r={},t.set(e,r)),r[n.alt]=!0}return t}o(bv,`getConflictingAltSets`);function xv(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}o(xv,`hasConflictingAltSet`);function Sv(e){for(let t of Array.from(e.values()))if(Object.keys(t).length===1)return!0;return!1}o(Sv,`hasStateAssociatedWithOneAlt`);function Cv(e,t){let n;for(let r of e.configs.elements)if(t.is(r.alt)!==!1&&r.state.type!==fg){if(n===void 0)n=r.alt;else if(n!==r.alt)return}return n}o(Cv,`getBestGuess`);var wv=class{static{o(this,`CstNodeBuilder`)}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new kv(e),this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new Ov;return t.grammarSource=e,this.appendChild(this.current,t),this.nodeStack.push(t),t}buildLeafNode(e,t){let n=this.createLeafNode(e,!t);return t&&(n.grammarSource=t),this.appendChild(this.current,n),n}createLeafNode(e,t){return new Ev(e.startOffset,e.image.length,e.startLine-1,e.startColumn-1,e.endLine-1,e.endColumn,e.tokenType,t)}appendChild(e,t){t.container=e,e.content.push(t)}appendChildren(e,t){for(let n of t)n.container=e;e.content.length===0?e.content=t.slice():e.content.push(...t)}insertChildren(e,t,n){for(let t of n)t.container=e;e.content.splice(t,0,...n)}removeNode(e){let t=e.container;if(t){let n=t.content.indexOf(e);n>=0&&t.content.splice(n,1)}}addHiddenNodes(e){let t=[];for(let n of e)t.push(this.createLeafNode(n,!0));let n=this.current,r=!1;if(n.content.length>0){this.appendChildren(n,t);return}for(;n.container;){let e=n.container.content.indexOf(n);if(e>0){this.insertChildren(n.container,e,t),r=!0;break}n=n.container}r||this.insertChildren(this.rootNode,0,t)}construct(e){e.$cstNode=this.current;let t=this.nodeStack.pop();t&&(t.content.length===0?this.removeNode(t):t.content=t.content.slice())}},Tv=class{static{o(this,`AbstractCstNode`)}constructor(){this.container=void 0,this.grammarSource=void 0}get root(){let e=this;for(;e.container;)e=e.container;return e}get text(){return this.root.fullText.substring(this.offset,this.end)}},Ev=class extends Tv{static{o(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 astNode(){let e=this.container;if(!e)throw Error(`This node has no associated AST element`);return e.astNode}get range(){return{start:{line:this._startLine,character:this._startColumn},end:{line:this._endLine,character:this._endColumn}}}constructor(e,t,n,r,i,a,o,s=!1){super(),this._hidden=s,this._offset=Dv(e),this._length=Dv(t),this._startLine=Dv(n),this._startColumn=Dv(r),this._endLine=Dv(i),this._endColumn=Dv(a),this._tokenType=o}};function Dv(e){return e|0}o(Dv,`toSmi`);var Ov=class extends Tv{static{o(this,`CompositeCstNodeImpl`)}constructor(){super(...arguments),this.content=[],this._astNode=void 0,this._rangeCache=void 0}get astNode(){let e=this;for(;e;){if(e._astNode)return e._astNode;e=e.container}throw Error(`This node has no associated AST element`)}set astNode(e){this._astNode=e}get hidden(){return!1}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._rangeCache;if(e===void 0){let t=this.firstNonHiddenNode,n=this.lastNonHiddenNode;if(t&&n){let{range:r}=t,{range:i}=n;this._rangeCache=e={start:r.start,end:i.end.line<r.start.line?r.start:i.end}}else return{start:{line:0,character:0},end:{line:0,character:0}}}return e}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]}},kv=class extends Ov{static{o(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??``}},Av=Symbol(`Datatype`);function jv(e){return e.$type===Av}o(jv,`isDataTypeNode`);var Mv=`​`,Nv=o(e=>e.endsWith(Mv)?e:e+Mv,`withRuleSuffix`),Pv=class{static{o(this,`AbstractLangiumParser`)}constructor(e,t){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let n=this.lexer.definition,r=e.LanguageMetaData.mode===`production`;this.wrapper=e.shared.profilers.LangiumProfiler?.isActive(`parsing`)?new Vv(n,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider},t,e.shared.profilers.LangiumProfiler.createTask(`parsing`,e.LanguageMetaData.languageId)):new Bv(n,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider},t)}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()}},Fv=class extends Pv{static{o(this,`LangiumParser`)}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e,!1),this.nodeBuilder=new wv,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 n=this.computeRuleType(e),r;lr(e)&&(r=e.name,this.registerPrecedenceMap(e));let i=this.wrapper.DEFINE_RULE(Nv(e.name),this.startImplementation(n,r,t).bind(this));return this.allRules.set(e.name,i),Er(e)&&e.entry&&(this.mainRule=i),i}registerPrecedenceMap(e){let t=e.name,n=new Map;for(let t=0;t<e.operators.precedences.length;t++){let r=e.operators.precedences[t];for(let e of r.operators)n.set(e.value,{precedence:t,rightAssoc:r.associativity===`right`})}this.operatorPrecedence.set(t,n)}computeRuleType(e){return lr(e)?ia(e):e.fragment?void 0:ta(e)?Av:ia(e)}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;let r=t.rule?this.allRules.get(t.rule):this.mainRule;if(!r)throw Error(t.rule?`No rule found with name '${t.rule}'`:`No main rule available.`);let i=this.doParse(r);return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,_n(i,{deep:!0}),{value:i,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}doParse(e){let t=this.wrapper.rule(e);if(this.stack.length>0&&(t=this.construct()),t===void 0)throw Error(`No result from parser`);if(this.stack.length>0)throw Error(`Parser stack is not empty after parsing`);return this.linkCstNode(t),t}linkCstNode(e){I(e)&&e.$cstNode&&(e.$cstNode.astNode=e)}startImplementation(e,t,n){return r=>{let i=!this.isRecording()&&e!==void 0;if(i){let n={$type:e};this.stack.push(n),e===Av?n.value=``:t!==void 0&&(n.$infixName=t)}return n(r),i?this.construct():void 0}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let n=e.startOffset;for(let e=0;e<t.length;e++)if(t[e].startOffset>n)return t.splice(0,e);return t.splice(0,t.length)}consume(e,t,n){let r=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(r)){let e=this.extractHiddenTokens(r);this.nodeBuilder.addHiddenNodes(e);let t=this.nodeBuilder.buildLeafNode(r,n),{assignment:i,crossRef:a}=this.getAssignment(n),o=this.current;if(i){let e=hr(n)?r.image:this.converter.convert(r.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(jv(o)){let e=r.image;hr(n)||(e=this.converter.convert(e,t).toString()),o.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&ci(e)}subrule(e,t,n,r,i){let a;!this.isRecording()&&!n&&(a=this.nodeBuilder.buildCompositeNode(r));let o;try{o=this.wrapper.wrapSubrule(e,t,i)}finally{this.isRecording()||(o===void 0&&!n&&(o=this.construct()),o!==void 0&&a&&a.length>0&&this.performSubruleAssignment(o,r,a))}}performSubruleAssignment(e,t,n){let{assignment:r,crossRef:i}=this.getAssignment(t);if(r)this.assign(r.operator,r.feature,e,n,i);else if(!r){let t=this.current;if(jv(t))t.value+=e.toString();else if(typeof e==`object`&&e){let n=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(n)}}}action(e,t){if(!this.isRecording()){let n=this.current;if(t.feature&&t.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode);let r=this.nodeBuilder.buildCompositeNode(t);this.nodeBuilder.appendChild(r,n.$cstNode);let i={$type:e};this.stack.push(i),this.assign(t.operator,t.feature,n,n.$cstNode)}else n.$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)):jv(e)?this.converter.convert(e.value,e.$cstNode):(Dn(this.astReflection,e),e)}constructInfix(e,t){let n=e.parts;if(!Array.isArray(n)||n.length===0)return;let r=e.operators;if(!Array.isArray(r)||n.length<2)return n[0];let i=0,a=-1;for(let e=0;e<r.length;e++){let n=r[e],o=t.get(n)??{precedence:1/0,rightAssoc:!1};o.precedence>a?(a=o.precedence,i=e):o.precedence===a&&(o.rightAssoc||(i=e))}let o=r.slice(0,i),s=r.slice(i+1),c=n.slice(0,i+1),l=n.slice(i+1),u={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:c,operators:o},d={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:s},f=this.constructInfix(u,t),p=this.constructInfix(d,t);return{$type:e.$type,$cstNode:e.$cstNode,left:f,operator:r[i],right:p}}getAssignment(e){if(!this.assignmentMap.has(e)){let t=vn(e,Hn);this.assignmentMap.set(e,{assignment:t,crossRef:t&&Zn(t.terminal)?t.terminal.isMulti?`multi`:`single`:void 0})}return this.assignmentMap.get(e)}assign(e,t,n,r,i){let a=this.current,o;switch(o=i===`single`&&typeof n==`string`?this.linker.buildReference(a,t,r,n):i===`multi`&&typeof n==`string`?this.linker.buildMultiReference(a,t,r,n):n,this.linkCstNode(o),e){case`=`:a[t]=o;break;case`?=`:a[t]=!0;break;case`+=`:Array.isArray(a[t])||(a[t]=[]),a[t].push(o)}}assignWithoutOverride(e,t){for(let[n,r]of Object.entries(t)){let t=e[n];t===void 0?e[n]=r:Array.isArray(t)&&Array.isArray(r)&&(r.push(...t),e[n]=r)}return e.$cstNode=void 0,e}get definitionErrors(){return this.wrapper.definitionErrors}},Iv=class{static{o(this,`AbstractParserErrorMessageProvider`)}buildMismatchTokenMessage(e){return js.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return js.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return js.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return js.buildEarlyExitMessage(e)}},Lv=class extends Iv{static{o(this,`LangiumParserErrorMessageProvider`)}buildMismatchTokenMessage({expected:e,actual:t}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(`:KW`)?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Rv=class extends Pv{static{o(this,`LangiumCompletionParser`)}constructor(e){super(e,!0),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 n=this.wrapper.DEFINE_RULE(Nv(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let n=this.keepStackSize();try{e(t)}finally{this.resetStackSize(n)}}}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,n){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,n,r,i){this.before(r),this.wrapper.wrapSubrule(e,t,i),this.after(r)}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}},zv={recoveryEnabled:!0,nodeLocationTracking:`full`,skipValidations:!0,errorMessageProvider:new Lv},Bv=class extends zl{static{o(this,`ChevrotainWrapper`)}constructor(e,t,n){let r=t&&`maxLookahead`in t;super(e,{...zv,lookaheadStrategy:r?new $c({maxLookahead:t.maxLookahead}):new J_({logging:t.skipValidations?()=>{}:void 0,incomplete:n}),...t})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t,n){return this.RULE(e,t,n)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t,void 0)}wrapSubrule(e,t,n){return this.subrule(e,t,{ARGS:[n]})}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,{})}},Vv=class extends Bv{static{o(this,`ProfilerWrapper`)}constructor(e,t,n,r){super(e,t,n),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,n){this.task.startSubTask(this.ruleName(t));try{return super.subrule(e,t,n)}finally{this.task.stopSubTask(this.ruleName(t))}}};function Hv(e,t,n){return Uv({parser:t,tokens:n,ruleNames:new Map},e),t}o(Hv,`createParser`);function Uv(e,t){let n=Ui(t,!1),r=L(t.rules).filter(Er).filter(e=>n.has(e));for(let t of r){let n={...e,consume:1,optional:1,subrule:1,many:1,or:1};e.parser.rule(t,Gv(n,t.definition))}let i=L(t.rules).filter(lr).filter(e=>n.has(e));for(let t of i)e.parser.rule(t,Wv(e,t))}o(Uv,`buildRules`);function Wv(e,t){let n=t.call.rule.ref;if(!n)throw Error(`Could not resolve reference to infix operator rule: `+t.call.rule.$refText);if(Ur(n))throw Error(`Cannot use terminal rule in infix expression`);let r=t.operators.precedences.flatMap(e=>e.operators),i={$type:`Group`,elements:[]},a={$container:i,$type:`Assignment`,feature:`parts`,operator:`+=`,terminal:t.call},s={$container:i,$type:`Group`,elements:[],cardinality:`*`};i.elements.push(a,s);let c={$container:s,$type:`Assignment`,feature:`operators`,operator:`+=`,terminal:{$type:`Alternatives`,elements:r}},l={...a,$container:s};s.elements.push(c,l);let u=r.map(t=>e.tokens[t.value]).map((t,n)=>({ALT:o(()=>e.parser.consume(n,t,c),`ALT`)})),d;return t=>{d??=ry(e,n),e.parser.subrule(0,d,!1,a,t),e.parser.many(0,{DEF:o(()=>{e.parser.alternatives(0,u),e.parser.subrule(1,d,!1,l,t)},`DEF`)})}}o(Wv,`buildInfixRule`);function Gv(e,t,n=!1){let r;if(hr(t))r=ty(e,t);else if(In(t))r=Kv(e,t);else if(Hn(t))r=Gv(e,t.terminal);else if(Zn(t))r=ey(e,t);else if(Nr(t))r=qv(e,t);else if(Rn(t))r=Xv(e,t);else if(Qr(t))r=Zv(e,t);else if(ar(t))r=Qv(e,t);else if(tr(t)){let n=e.consume++;r=o(()=>e.parser.consume(n,Os,t),`method`)}else throw new _i(t.$cstNode,`Unexpected element type: ${t.$type}`);return ny(e,n?void 0:$v(t),r,t.cardinality)}o(Gv,`buildElement`);function Kv(e,t){let n=ia(t);return()=>e.parser.action(n,t)}o(Kv,`buildAction`);function qv(e,t){let n=t.rule.ref;if(Mn(n)){let r=e.subrule++,i=Er(n)&&n.fragment,a=t.arguments.length>0?Jv(n,t.arguments):()=>({}),o;return s=>{o??=ry(e,n),e.parser.subrule(r,o,i,t,a(s))}}if(Ur(n)){let r=e.consume++,i=ay(e,n.name);return()=>e.parser.consume(r,i,t)}if(n)vi(n);else throw new _i(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}o(qv,`buildRuleCall`);function Jv(e,t){if(t.some(e=>e.calledByName)){let e=t.map(e=>({parameterName:e.parameter?.ref?.name,predicate:Yv(e.value)}));return t=>{let n={};for(let{parameterName:r,predicate:i}of e)r&&(n[r]=i(t));return n}}{let n=t.map(e=>Yv(e.value));return t=>{let r={};for(let i=0;i<n.length;i++)if(i<e.parameters.length){let a=e.parameters[i].name,o=n[i];r[a]=o(t)}return r}}}o(Jv,`buildRuleCallPredicate`);function Yv(e){if($n(e)){let t=Yv(e.left),n=Yv(e.right);return e=>t(e)||n(e)}if(Yn(e)){let t=Yv(e.left),n=Yv(e.right);return e=>t(e)&&n(e)}if(br(e)){let t=Yv(e.value);return e=>!t(e)}if(wr(e)){let t=e.parameter.ref.name;return e=>e!==void 0&&e[t]===!0}if(Wn(e)){let t=!!e.true;return()=>t}vi(e)}o(Yv,`buildPredicate`);function Xv(e,t){if(t.elements.length===1)return Gv(e,t.elements[0]);{let n=[];for(let r of t.elements){let t={ALT:Gv(e,r,!0)},i=$v(r);i&&(t.GATE=Yv(i)),n.push(t)}let r=e.or++;return t=>e.parser.alternatives(r,n.map(e=>{let n={ALT:o(()=>e.ALT(t),`ALT`)},r=e.GATE;return r&&(n.GATE=()=>r(t)),n}))}}o(Xv,`buildAlternatives`);function Zv(e,t){if(t.elements.length===1)return Gv(e,t.elements[0]);let n=[];for(let r of t.elements){let t={ALT:Gv(e,r,!0)},i=$v(r);i&&(t.GATE=Yv(i)),n.push(t)}let r=e.or++,i=o((e,t)=>`uGroup_${e}_${t.getRuleStack().join(`-`)}`,`idFunc`),a=o(t=>e.parser.alternatives(r,n.map((n,a)=>{let s={ALT:o(()=>!0,`ALT`)},c=e.parser;s.ALT=()=>{if(n.ALT(t),!c.isRecording()){let e=i(r,c);c.unorderedGroups.get(e)||c.unorderedGroups.set(e,[]);let t=c.unorderedGroups.get(e);t?.[a]===void 0&&(t[a]=!0)}};let l=n.GATE;return s.GATE=l?()=>l(t):()=>!c.unorderedGroups.get(i(r,c))?.[a],s})),`alternatives`),s=ny(e,$v(t),a,`*`);return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(r,e.parser))}}o(Zv,`buildUnorderedGroup`);function Qv(e,t){let n=t.elements.map(t=>Gv(e,t));return e=>n.forEach(t=>t(e))}o(Qv,`buildGroup`);function $v(e){if(ar(e))return e.guardCondition}o($v,`getGuardCondition`);function ey(e,t,n=t.terminal){if(!n){if(!t.type.ref)throw Error(`Could not resolve reference to type: `+t.type.$refText);let n=$i(t.type.ref)?.terminal;if(!n)throw Error(`Could not find name assignment for type: `+ia(t.type.ref));return ey(e,t,n)}if(Nr(n)&&Er(n.rule.ref)){let r=n.rule.ref,i=e.subrule++,a;return n=>{a??=ry(e,r),e.parser.subrule(i,a,!1,t,n)}}if(Nr(n)&&Ur(n.rule.ref)){let r=e.consume++,i=ay(e,n.rule.ref.name);return()=>e.parser.consume(r,i,t)}if(hr(n)){let r=e.consume++,i=ay(e,n.value);return()=>e.parser.consume(r,i,t)}throw Error(`Could not build cross reference parser`)}o(ey,`buildCrossReference`);function ty(e,t){let n=e.consume++,r=e.tokens[t.value];if(!r)throw Error(`Could not find token for keyword: `+t.value);return()=>e.parser.consume(n,r,t)}o(ty,`buildKeyword`);function ny(e,t,n,r){let i=t&&Yv(t);if(!r){if(i){let t=e.or++;return r=>e.parser.alternatives(t,[{ALT:o(()=>n(r),`ALT`),GATE:o(()=>i(r),`GATE`)},{ALT:Ll(),GATE:o(()=>!i(r),`GATE`)}])}return n}if(r===`*`){let t=e.many++;return r=>e.parser.many(t,{DEF:o(()=>n(r),`DEF`),GATE:i?()=>i(r):void 0})}if(r===`+`){let t=e.many++;if(i){let r=e.or++;return a=>e.parser.alternatives(r,[{ALT:o(()=>e.parser.atLeastOne(t,{DEF:o(()=>n(a),`DEF`)}),`ALT`),GATE:o(()=>i(a),`GATE`)},{ALT:Ll(),GATE:o(()=>!i(a),`GATE`)}])}return r=>e.parser.atLeastOne(t,{DEF:o(()=>n(r),`DEF`)})}if(r===`?`){let t=e.optional++;return r=>e.parser.optional(t,{DEF:o(()=>n(r),`DEF`),GATE:i?()=>i(r):void 0})}vi(r)}o(ny,`wrap`);function ry(e,t){let n=iy(e,t),r=e.parser.getRule(n);if(!r)throw Error(`Rule "${n}" not found."`);return r}o(ry,`getRule`);function iy(e,t){if(Mn(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let n=t,r=n.$container,i=t.$type;for(;!Er(r);)(ar(r)||Rn(r)||Qr(r))&&(i=r.elements.indexOf(n).toString()+`:`+i),n=r,r=r.$container;return i=r.name+`:`+i,e.ruleNames.set(t,i),i}}o(iy,`getRuleName`);function ay(e,t){let n=e.tokens[t];if(!n)throw Error(`Token "${t}" not found."`);return n}o(ay,`getToken`);function oy(e){let t=e.Grammar,n=e.parser.Lexer,r=new Rv(e);return Hv(t,r,n.definition),r.finalize(),r}o(oy,`createCompletionParser`);function sy(e){let t=cy(e);return t.finalize(),t}o(sy,`createLangiumParser`);function cy(e){let t=e.Grammar,n=e.parser.Lexer;return Hv(t,new Fv(e),n.definition)}o(cy,`prepareLangiumParser`);var ly=class{static{o(this,`DefaultTokenBuilder`)}constructor(){this.diagnostics=[]}buildTokens(e,t){let n=L(Ui(e,!1)),r=this.buildTerminalTokens(n),i=this.buildKeywordTokens(n,r,t);return i.push(...r),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(Ur).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){let t=sa(e),n=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,r={name:e.name,PATTERN:n};return typeof n==`function`&&(r.LINE_BREAKS=!0),e.hidden&&(r.GROUP=Li(t)?ms.SKIPPED:`hidden`),r}requiresCustomPattern(e){return!!(e.flags.includes(`u`)||e.flags.includes(`s`))}regexPatternFunction(e){let t=new RegExp(e,e.flags+`y`);return(e,n)=>(t.lastIndex=n,t.exec(e))}buildKeywordTokens(e,t,n){return e.filter(Mn).flatMap(e=>Cn(e).filter(hr)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,!!n?.caseInsensitive))}buildKeywordToken(e,t,n){let r=this.buildKeywordPattern(e,n),i={name:e.value,PATTERN:r,LONGER_ALT:this.findLongerAlt(e,t)};return typeof r==`function`&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?new RegExp(Ri(e.value),`i`):e.value}findLongerAlt(e,t){return t.reduce((t,n)=>{let r=n?.PATTERN;return r?.source&&zi(`^`+r.source+`$`,e.value)&&t.push(n),t},[])}},uy=class{static{o(this,`DefaultValueConverter`)}convert(e,t){let n=t.grammarSource;if(Zn(n)&&(n=Gi(n)),Nr(n)){let r=n.rule.ref;if(!r)throw Error(`This cst node was not parsed by a rule.`);return this.runConverter(r,e,t)}return e}runConverter(e,t,n){switch(e.name.toUpperCase()){case`INT`:return dy.convertInt(t);case`STRING`:return dy.convertString(t);case`ID`:return dy.convertID(t)}switch(oa(e)?.toLowerCase()){case`number`:return dy.convertNumber(t);case`boolean`:return dy.convertBoolean(t);case`bigint`:return dy.convertBigint(t);case`date`:return dy.convertDate(t);default:return t}}},dy;(function(e){function t(e){let t=``;for(let r=1;r<e.length-1;r++){let i=e.charAt(r);if(i===`\\`){let i=e.charAt(++r);t+=n(i)}else t+=i}return t}o(t,`convertString`),e.convertString=t;function n(e){switch(e){case`b`:return`\b`;case`f`:return`\f`;case`n`:return`
127
+ `;case`r`:return`\r`;case`t`:return` `;case`v`:return`\v`;case`0`:return`\0`;default:return e}}o(n,`convertEscapeCharacter`);function r(e){return e.charAt(0)===`^`?e.substring(1):e}o(r,`convertID`),e.convertID=r;function i(e){return parseInt(e)}o(i,`convertInt`),e.convertInt=i;function a(e){return BigInt(e)}o(a,`convertBigint`),e.convertBigint=a;function s(e){return new Date(e)}o(s,`convertDate`),e.convertDate=s;function c(e){return Number(e)}o(c,`convertNumber`),e.convertNumber=c;function l(e){return e.toLowerCase()===`true`}o(l,`convertBoolean`),e.convertBoolean=l})(dy||={});var J=d(en(),1);function fy(){return new Promise(e=>{typeof setImmediate>`u`?setTimeout(e,0):setImmediate(e)})}o(fy,`delayNextTick`);var py=0,my=10;function hy(){return py=performance.now(),new J.CancellationTokenSource}o(hy,`startCancelableOperation`);var gy=Symbol(`OperationCancelled`);function _y(e){return e===gy}o(_y,`isOperationCancelled`);async function Y(e){if(e===J.CancellationToken.None)return;let t=performance.now();if(t-py>=my&&(py=t,await fy(),py=performance.now()),e.isCancellationRequested)throw gy}o(Y,`interruptAndCheck`);var vy=class{static{o(this,`Deferred`)}constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}},yy=class e{static{o(this,`FullTextDocument`)}constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,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),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(t,n){for(let n of t)if(e.isIncremental(n)){let e=wy(n.range),t=this.offsetAt(e.start),r=this.offsetAt(e.end);this._content=this._content.substring(0,t)+n.text+this._content.substring(r,this._content.length);let i=Math.max(e.start.line,0),a=Math.max(e.end.line,0),o=this._lineOffsets,s=Sy(n.text,!1,t);if(a-i===s.length)for(let e=0,t=s.length;e<t;e++)o[e+i+1]=s[e];else s.length<1e4?o.splice(i+1,a-i,...s):this._lineOffsets=o=o.slice(0,i+1).concat(s,o.slice(a+1));let c=n.text.length-(r-t);if(c!==0)for(let e=i+1+s.length,t=o.length;e<t;e++)o[e]=o[e]+c}else if(e.isFull(n))this._content=n.text,this._lineOffsets=void 0;else throw Error(`Unknown change event received`);this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Sy(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(r===0)return{line:0,character:e};for(;n<r;){let i=Math.floor((n+r)/2);t[i]>e?r=i:n=i+1}let i=n-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 n=t[e.line];if(e.character<=0)return n;let r=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(n+e.character,r);return this.ensureBeforeEOL(i,n)}getLineRange(e){let t=this.getLineOffsets();if(e>=t.length){let e=t.length-1;return{start:{line:e,character:0},end:{line:e,character:this._content.length-t[e]}}}if(e<0)return{start:{line:0,character:0},end:{line:0,character:0}};let n=t[e],r=e+1<t.length?t[e+1]:this._content.length,i=this.ensureBeforeEOL(r,n);return{start:{line:e,character:0},end:{line:e,character:i-n}}}getEOLCharacters(e){let t=this.getLineOffsets();if(e>=t.length||e<0)return``;let n=e+1<t.length?t[e+1]:this._content.length,r=this.ensureBeforeEOL(n,t[e]);return this._content.substring(r,n)}ensureBeforeEOL(e,t){for(;e>t&&Cy(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let t=e;return t!=null&&typeof t.text==`string`&&t.range!==void 0&&(t.rangeLength===void 0||typeof t.rangeLength==`number`)}static isFull(e){let t=e;return t!=null&&typeof t.text==`string`&&t.range===void 0&&t.rangeLength===void 0}},by;(function(e){function t(e,t,n,r){return new yy(e,t,n,r)}o(t,`create`),e.create=t;function n(e,t,n){if(e instanceof yy)return e.update(t,n),e;throw Error(`TextDocument.update: document must be created by TextDocument.create`)}o(n,`update`),e.update=n;function r(e,t){let n=e.getText(),r=xy(t.map(Ty),(e,t)=>{let n=e.range.start.line-t.range.start.line;return n===0?e.range.start.character-t.range.start.character:n}),i=0,a=[];for(let t of r){let r=e.offsetAt(t.range.start);if(r<i)throw Error(`Overlapping edit`);r>i&&a.push(n.substring(i,r)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(n.substr(i)),a.join(``)}o(r,`applyEdits`),e.applyEdits=r})(by||={});function xy(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);xy(r,t),xy(i,t);let a=0,o=0,s=0;for(;a<r.length&&o<i.length;)t(r[a],i[o])<=0?e[s++]=r[a++]:e[s++]=i[o++];for(;a<r.length;)e[s++]=r[a++];for(;o<i.length;)e[s++]=i[o++];return e}o(xy,`mergeSort`);function Sy(e,t,n=0){let r=t?[n]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);Cy(i)&&(i===13&&t+1<e.length&&e.charCodeAt(t+1)===10&&t++,r.push(n+t+1))}return r}o(Sy,`computeLineOffsets`);function Cy(e){return e===13||e===10}o(Cy,`isEOL`);function wy(e){let t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}o(wy,`getWellformedRange`);function Ty(e){let t=wy(e.range);return t===e.range?e:{newText:e.newText,range:t}}o(Ty,`getWellformedEdit`);var Ey;(()=>{var e={975:e=>{function t(e){if(typeof e!=`string`)throw TypeError(`Path must be a string. Received `+JSON.stringify(e))}o(t,`e`);function n(e,t){for(var n,r=``,i=0,a=-1,o=0,s=0;s<=e.length;++s){if(s<e.length)n=e.charCodeAt(s);else{if(n===47)break;n=47}if(n===47){if(a!==s-1&&o!==1){if(a!==s-1&&o===2){if(r.length<2||i!==2||r.charCodeAt(r.length-1)!==46||r.charCodeAt(r.length-2)!==46){if(r.length>2){var c=r.lastIndexOf(`/`);if(c!==r.length-1){c===-1?(r=``,i=0):i=(r=r.slice(0,c)).length-1-r.lastIndexOf(`/`),a=s,o=0;continue}}else if(r.length===2||r.length===1){r=``,i=0,a=s,o=0;continue}}t&&(r.length>0?r+=`/..`:r=`..`,i=2)}else r.length>0?r+=`/`+e.slice(a+1,s):r=e.slice(a+1,s),i=s-a-1}a=s,o=0}else n===46&&o!==-1?++o:o=-1}return r}o(n,`r`);var r={resolve:o(function(){for(var e,r=``,i=!1,a=arguments.length-1;a>=-1&&!i;a--){var o;a>=0?o=arguments[a]:(e===void 0&&(e=process.cwd()),o=e),t(o),o.length!==0&&(r=o+`/`+r,i=o.charCodeAt(0)===47)}return r=n(r,!i),i?r.length>0?`/`+r:`/`:r.length>0?r:`.`},`resolve`),normalize:o(function(e){if(t(e),e.length===0)return`.`;var r=e.charCodeAt(0)===47,i=e.charCodeAt(e.length-1)===47;return(e=n(e,!r)).length!==0||r||(e=`.`),e.length>0&&i&&(e+=`/`),r?`/`+e:e},`normalize`),isAbsolute:o(function(e){return t(e),e.length>0&&e.charCodeAt(0)===47},`isAbsolute`),join:o(function(){if(arguments.length===0)return`.`;for(var e,n=0;n<arguments.length;++n){var i=arguments[n];t(i),i.length>0&&(e===void 0?e=i:e+=`/`+i)}return e===void 0?`.`:r.normalize(e)},`join`),relative:o(function(e,n){if(t(e),t(n),e===n||(e=r.resolve(e))===(n=r.resolve(n)))return``;for(var i=1;i<e.length&&e.charCodeAt(i)===47;++i);for(var a=e.length,o=a-i,s=1;s<n.length&&n.charCodeAt(s)===47;++s);for(var c=n.length-s,l=o<c?o:c,u=-1,d=0;d<=l;++d){if(d===l){if(c>l){if(n.charCodeAt(s+d)===47)return n.slice(s+d+1);if(d===0)return n.slice(s+d)}else o>l&&(e.charCodeAt(i+d)===47?u=d:d===0&&(u=0));break}var f=e.charCodeAt(i+d);if(f!==n.charCodeAt(s+d))break;f===47&&(u=d)}var p=``;for(d=i+u+1;d<=a;++d)d!==a&&e.charCodeAt(d)!==47||(p.length===0?p+=`..`:p+=`/..`);return p.length>0?p+n.slice(s+u):(s+=u,n.charCodeAt(s)===47&&++s,n.slice(s))},`relative`),_makeLong:o(function(e){return e},`_makeLong`),dirname:o(function(e){if(t(e),e.length===0)return`.`;for(var n=e.charCodeAt(0),r=n===47,i=-1,a=!0,o=e.length-1;o>=1;--o)if((n=e.charCodeAt(o))===47){if(!a){i=o;break}}else a=!1;return i===-1?r?`/`:`.`:r&&i===1?`//`:e.slice(0,i)},`dirname`),basename:o(function(e,n){if(n!==void 0&&typeof n!=`string`)throw TypeError(`"ext" argument must be a string`);t(e);var r,i=0,a=-1,o=!0;if(n!==void 0&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return``;var s=n.length-1,c=-1;for(r=e.length-1;r>=0;--r){var l=e.charCodeAt(r);if(l===47){if(!o){i=r+1;break}}else c===-1&&(o=!1,c=r+1),s>=0&&(l===n.charCodeAt(s)?--s==-1&&(a=r):(s=-1,a=c))}return i===a?a=c:a===-1&&(a=e.length),e.slice(i,a)}for(r=e.length-1;r>=0;--r)if(e.charCodeAt(r)===47){if(!o){i=r+1;break}}else a===-1&&(o=!1,a=r+1);return a===-1?``:e.slice(i,a)},`basename`),extname:o(function(e){t(e);for(var n=-1,r=0,i=-1,a=!0,o=0,s=e.length-1;s>=0;--s){var c=e.charCodeAt(s);if(c!==47)i===-1&&(a=!1,i=s+1),c===46?n===-1?n=s:o!==1&&(o=1):n!==-1&&(o=-1);else if(!a){r=s+1;break}}return n===-1||i===-1||o===0||o===1&&n===i-1&&n===r+1?``:e.slice(n,i)},`extname`),format:o(function(e){if(typeof e!=`object`||!e)throw TypeError(`The "pathObject" argument must be of type Object. Received type `+typeof e);return(function(e,t){var n=t.dir||t.root,r=t.base||(t.name||``)+(t.ext||``);return n?n===t.root?n+r:n+`/`+r:r})(0,e)},`format`),parse:o(function(e){t(e);var n={root:``,dir:``,base:``,ext:``,name:``};if(e.length===0)return n;var r,i=e.charCodeAt(0),a=i===47;a?(n.root=`/`,r=1):r=0;for(var o=-1,s=0,c=-1,l=!0,u=e.length-1,d=0;u>=r;--u)if((i=e.charCodeAt(u))!==47)c===-1&&(l=!1,c=u+1),i===46?o===-1?o=u:d!==1&&(d=1):o!==-1&&(d=-1);else if(!l){s=u+1;break}return o===-1||c===-1||d===0||d===1&&o===c-1&&o===s+1?c!==-1&&(n.base=n.name=s===0&&a?e.slice(1,c):e.slice(s,c)):(s===0&&a?(n.name=e.slice(1,o),n.base=e.slice(1,c)):(n.name=e.slice(s,o),n.base=e.slice(s,c)),n.ext=e.slice(o,c)),s>0?n.dir=e.slice(0,s-1):a&&(n.dir=`/`),n},`parse`),sep:`/`,delimiter:`:`,win32:null,posix:null};r.posix=r,e.exports=r}},t={};function n(r){var i=t[r];if(i!==void 0)return i.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}o(n,`r`),n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};let i;n.r(r),n.d(r,{URI:o(()=>d,`URI`),Utils:o(()=>C,`Utils`)}),typeof process==`object`?i=process.platform===`win32`:typeof navigator==`object`&&(i=navigator.userAgent.indexOf(`Windows`)>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,c=/^\/\//;function l(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&&!a.test(e.scheme))throw Error(`[UriError]: Scheme contains illegal characters.`);if(e.path){if(e.authority){if(!s.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(c.test(e.path))throw Error(`[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")`)}}o(l,`a`);let u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class d{static{o(this,`l`)}static isUri(e){return e instanceof d||!!e&&typeof e.authority==`string`&&typeof e.fragment==`string`&&typeof e.path==`string`&&typeof e.query==`string`&&typeof e.scheme==`string`&&typeof e.fsPath==`string`&&typeof e.with==`function`&&typeof e.toString==`function`}scheme;authority;path;query;fragment;constructor(e,t,n,r,i,a=!1){typeof e==`object`?(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,n||``),this.query=r||``,this.fragment=i||``,l(this,a))}get fsPath(){return _(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:a}=e;return t===void 0?t=this.scheme:t===null&&(t=``),n===void 0?n=this.authority:n===null&&(n=``),r===void 0?r=this.path:r===null&&(r=``),i===void 0?i=this.query:i===null&&(i=``),a===void 0?a=this.fragment:a===null&&(a=``),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&a===this.fragment?this:new p(t,n,r,i,a)}static parse(e,t=!1){let n=u.exec(e);return n?new p(n[2]||``,ee(n[4]||``),ee(n[5]||``),ee(n[7]||``),ee(n[9]||``),t):new p(``,``,``,``,``)}static file(e){let t=``;if(i&&(e=e.replace(/\\/g,`/`)),e[0]===`/`&&e[1]===`/`){let n=e.indexOf(`/`,2);n===-1?(t=e.substring(2),e=`/`):(t=e.substring(2,n),e=e.substring(n)||`/`)}return new p(`file`,t,e,``,``)}static from(e){let t=new p(e.scheme,e.authority,e.path,e.query,e.fragment);return l(t,!0),t}toString(e=!1){return v(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof d)return e;{let t=new p(e);return t._formatted=e.external,t._fsPath=e._sep===f?e.fsPath:null,t}}return e}}let f=i?1:void 0;class p extends d{static{o(this,`d`)}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||=_(this,!1),this._fsPath}toString(e=!1){return e?v(this,!0):(this._formatted||=v(this,!1),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=f),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}let m={58:`%3A`,47:`%2F`,63:`%3F`,35:`%23`,91:`%5B`,93:`%5D`,64:`%40`,33:`%21`,36:`%24`,38:`%26`,39:`%27`,40:`%28`,41:`%29`,42:`%2A`,43:`%2B`,44:`%2C`,59:`%3B`,61:`%3D`,32:`%20`};function h(e,t,n){let r,i=-1;for(let a=0;a<e.length;a++){let o=e.charCodeAt(a);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||o===45||o===46||o===95||o===126||t&&o===47||n&&o===91||n&&o===93||n&&o===58)i!==-1&&(r+=encodeURIComponent(e.substring(i,a)),i=-1),r!==void 0&&(r+=e.charAt(a));else{r===void 0&&(r=e.substr(0,a));let t=m[o];t===void 0?i===-1&&(i=a):(i!==-1&&(r+=encodeURIComponent(e.substring(i,a)),i=-1),r+=t)}}return i!==-1&&(r+=encodeURIComponent(e.substring(i))),r===void 0?e:r}o(h,`m`);function g(e){let t;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r===35||r===63?(t===void 0&&(t=e.substr(0,n)),t+=m[r]):t!==void 0&&(t+=e[n])}return t===void 0?e:t}o(g,`y`);function _(e,t){let n;return n=e.authority&&e.path.length>1&&e.scheme===`file`?`//${e.authority}${e.path}`:e.path.charCodeAt(0)===47&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&e.path.charCodeAt(2)===58?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,i&&(n=n.replace(/\//g,`\\`)),n}o(_,`v`);function v(e,t){let n=t?g:h,r=``,{scheme:i,authority:a,path:o,query:s,fragment:c}=e;if(i&&(r+=i,r+=`:`),(a||i===`file`)&&(r+=`/`,r+=`/`),a){let e=a.indexOf(`@`);if(e!==-1){let t=a.substr(0,e);a=a.substr(e+1),e=t.lastIndexOf(`:`),e===-1?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=`:`,r+=n(t.substr(e+1),!1,!0)),r+=`@`}a=a.toLowerCase(),e=a.lastIndexOf(`:`),e===-1?r+=n(a,!1,!0):(r+=n(a.substr(0,e),!1,!0),r+=a.substr(e))}if(o){if(o.length>=3&&o.charCodeAt(0)===47&&o.charCodeAt(2)===58){let e=o.charCodeAt(1);e>=65&&e<=90&&(o=`/${String.fromCharCode(e+32)}:${o.substr(3)}`)}else if(o.length>=2&&o.charCodeAt(1)===58){let e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}r+=n(o,!0,!1)}return s&&(r+=`?`,r+=n(s,!1,!1)),c&&(r+=`#`,r+=t?c:h(c,!1,!1)),r}o(v,`b`);function y(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+y(e.substr(3)):e}}o(y,`C`);let b=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ee(e){return e.match(b)?e.replace(b,(e=>y(e))):e}o(ee,`w`);var x=n(975);let S=x.posix||x;var C;(function(e){e.joinPath=function(e,...t){return e.with({path:S.join(e.path,...t)})},e.resolvePath=function(e,...t){let n=e.path,r=!1;n[0]!==`/`&&(n=`/`+n,r=!0);let i=S.resolve(n,...t);return r&&i[0]===`/`&&!e.authority&&(i=i.substring(1)),e.with({path:i})},e.dirname=function(e){if(e.path.length===0||e.path===`/`)return e;let t=S.dirname(e.path);return t.length===1&&t.charCodeAt(0)===46&&(t=``),e.with({path:t})},e.basename=function(e){return S.basename(e.path)},e.extname=function(e){return S.extname(e.path)}})(C||={}),Ey=r})();var{URI:Dy,Utils:Oy}=Ey,ky;(function(e){e.basename=Oy.basename,e.dirname=Oy.dirname,e.extname=Oy.extname,e.joinPath=Oy.joinPath,e.resolvePath=Oy.resolvePath;let t=typeof process==`object`&&process?.platform===`win32`;function n(e,t){return e?.toString()===t?.toString()}o(n,`equals`),e.equals=n;function r(e,n){let r=typeof e==`string`?Dy.parse(e).path:e.path,i=typeof n==`string`?Dy.parse(n).path:n.path,a=r.split(`/`).filter(e=>e.length>0),o=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()),o[0]&&e.test(o[0])&&(o[0]=o[0].toLowerCase()),a[0]!==o[0])return i.substring(1)}let s=0;for(;s<a.length&&a[s]===o[s];s++);return`../`.repeat(a.length-s)+o.slice(s).join(`/`)}o(r,`relative`),e.relative=r;function i(e){return Dy.parse(e.toString()).toString()}o(i,`normalize`),e.normalize=i;function a(e,t){let n=typeof e==`string`?Dy.parse(e):e,r=typeof t==`string`?Dy.parse(t):t;if(n.scheme!==r.scheme)return!1;let i=n.path,a=r.path;return a.charAt(a.length-1)===`/`&&(a=a.slice(0,-1)),i.charAt(i.length-1)===`/`&&(i=i.slice(0,-1)),a===i?!0:a.length<i.length||a.charAt(i.length)!==`/`?!1:a.startsWith(i)}o(a,`contains`),e.contains=a})(ky||={});var Ay=class{static{o(this,`UriTrie`)}constructor(){this.root={name:``,children:new Map}}normalizeUri(e){return ky.normalize(e)}clear(){this.root.children.clear()}insert(e,t){let n=this.getNode(this.normalizeUri(e),!0);n.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 this.getNode(this.normalizeUri(e),!1)!==void 0}find(e){return this.getNode(this.normalizeUri(e),!1)?.element}findNode(e){let t=this.normalizeUri(e),n=this.getNode(t,!1);if(n)return{name:n.name,uri:ky.joinPath(Dy.parse(t),n.name).toString(),element:n.element}}findChildren(e){let t=this.normalizeUri(e),n=this.getNode(t,!1);return n?Array.from(n.children.values()).map(e=>({name:e.name,uri:ky.joinPath(Dy.parse(t),e.name).toString(),element:e.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let t=this.getNode(this.normalizeUri(e),!1);return t?this.collectValues(t):[]}getNode(e,t){let n=e.split(`/`);e.charAt(e.length-1)===`/`&&n.pop();let r=this.root;for(let e of n){let n=r.children.get(e);if(!n){if(t)n={name:e,children:new Map,parent:r},r.children.set(e,n);else return}r=n}return r}collectValues(e){let t=[];e.element&&t.push(e.element);for(let n of e.children.values())t.push(...this.collectValues(n));return t}},X;(function(e){e[e.Changed=0]=`Changed`,e[e.Parsed=1]=`Parsed`,e[e.IndexedContent=2]=`IndexedContent`,e[e.ComputedScopes=3]=`ComputedScopes`,e[e.Linked=4]=`Linked`,e[e.IndexedReferences=5]=`IndexedReferences`,e[e.Validated=6]=`Validated`})(X||={});var jy=class{static{o(this,`DefaultLangiumDocumentFactory`)}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=J.CancellationToken.None){let n=await this.getInitialText(e,t);return this.createAsync(e,n,t)}async getInitialText(e,t){return this.fileSystemProvider.readFile(e)}fromTextDocument(e,t,n){return t??=Dy.parse(e.uri),J.CancellationToken.is(n)?this.createAsync(t,e,n):this.create(t,e,n)}fromString(e,t,n){return J.CancellationToken.is(n)?this.createAsync(t,e,n):this.create(t,e,n)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,n){if(typeof t==`string`){let r=this.parse(e,t,n);return this.createLangiumDocument(r,e,void 0,t)}if(`$model`in t){let n={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(n,e)}{let r=this.parse(e,t.getText(),n);return this.createLangiumDocument(r,e,t)}}async createAsync(e,t,n){if(typeof t==`string`){let r=await this.parseAsync(e,t,n);return this.createLangiumDocument(r,e,void 0,t)}{let r=await this.parseAsync(e,t.getText(),n);return this.createLangiumDocument(r,e,t)}}createLangiumDocument(e,t,n,r){let i;if(n)i={parseResult:e,uri:t,state:X.Parsed,references:[],textDocument:n};else{let n=this.createTextDocumentGetter(t,r);i={parseResult:e,uri:t,state:X.Parsed,references:[],get textDocument(){return n()}}}return e.value.$document=i,i}async update(e,t){let n=e.parseResult.value.$cstNode?.root.fullText,r=this.textDocuments?.get(e.uri.toString()),i=await this.getUpdatedText(e,r,t);if(r)Object.defineProperty(e,"textDocument",{value:r});else{let t=this.createTextDocumentGetter(e.uri,i);Object.defineProperty(e,"textDocument",{get:t})}return n!==i&&(e.parseResult=await this.parseAsync(e.uri,i,t),e.parseResult.value.$document=e),e.state=X.Parsed,e}async getUpdatedText(e,t,n){return t?t.getText():await this.fileSystemProvider.readFile(e.uri)}parse(e,t,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,n)}parseAsync(e,t,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,n)}createTextDocumentGetter(e,t){let n=this.serviceRegistry,r;return()=>r??=by.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,t??``)}},My=class{static{o(this,`DefaultLangiumDocuments`)}constructor(e){this.documentTrie=new Ay,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return L(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 n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(n),n)}createDocument(e,t,n){if(n)return this.langiumDocumentFactory.fromString(t,e,n).then(e=>(this.addDocument(e),e));{let n=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(n),n}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let t=e.toString(),n=this.documentTrie.find(t);return n&&this.documentBuilder().resetToState(n,X.Changed),n}deleteDocument(e){let t=e.toString(),n=this.documentTrie.find(t);return n&&(n.state=X.Changed,this.documentTrie.delete(t)),n}deleteDocuments(e){let t=e.toString(),n=this.documentTrie.findAll(t);for(let e of n)e.state=X.Changed;return this.documentTrie.delete(t),n}},Ny=Symbol(`RefResolving`),Py=class{static{o(this,`DefaultReferenceImpl`)}constructor(e,t,n,r,i){this.resolver=e,this.node=t,this.property=n,this._ref=void 0,this.$refNode=r,this.$refText=i}get ref(){return this.resolver.resolveReference(this,this.node,this.property)}get $nodeDescription(){return this._nodeDescription}get error(){return an(this._ref)?this._ref:void 0}},Fy=class{static{o(this,`DefaultMultiReferenceImpl`)}constructor(e,t,n,r,i){this.resolver=e,this.node=t,this.property=n,this._items=void 0,this.$refNode=r,this.$refText=i}get items(){return this.resolver.resolveMultiReference(this,this.node,this.property)}get error(){return this._linkingError}},Iy=class{static{o(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,this.referenceResolver={resolveReference:this.resolveReference.bind(this),resolveMultiReference:this.resolveMultiReference.bind(this)}}async link(e,t=J.CancellationToken.None){if(this.profiler?.isActive(`linking`)){let n=this.profiler.createTask(`linking`,this.languageId);n.start();try{for(let r of wn(e.parseResult.value))await Y(t),En(r).forEach(t=>{let i=`${r.$type}:${t.property}`;n.startSubTask(i);try{this.doLink(t,e)}finally{n.stopSubTask(i)}})}finally{n.stop()}}else for(let n of wn(e.parseResult.value))await Y(t),En(n).forEach(t=>this.doLink(t,e))}doLink(e,t){let n=e.reference;if(`_ref`in n&&n._ref===void 0){n._ref=Ny;try{let t=this.getCandidate(e);an(t)?n._ref=t:(n._nodeDescription=t,n._ref=this.loadAstNode(t)??this.createLinkingError(e,t))}catch(t){console.error(`An error occurred while resolving reference to '${n.$refText}':`,t);let r=t.message??String(t);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${r}`}}t.references.push(n)}else if(`_items`in n&&n._items===void 0){n._items=Ny;try{let t=this.getCandidates(e),r=[];if(an(t))n._linkingError=t;else for(let e of t){let t=this.loadAstNode(e);t&&r.push({ref:t,$nodeDescription:e})}n._items=r}catch(t){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${t}`},n._items=[]}t.references.push(n)}}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,n,r){return new Py(this.referenceResolver,e,t,n,r)}buildMultiReference(e,t,n,r){return new Fy(this.referenceResolver,e,t,n,r)}resolveReference(e,t,n){if(I(e._ref))return e._ref;if(rn(e._nodeDescription))e._ref=this.loadAstNode(e._nodeDescription)??this.createLinkingError({reference:e,container:t,property:n},e._nodeDescription);else if(e._ref===void 0){e._ref=Ny;let r=bn(t).$document,i=this.getLinkedNode({reference:e,container:t,property:n});if(i.error&&r&&r.state<X.ComputedScopes){e._ref=void 0;return}e._ref=i.node??i.error,e._nodeDescription=i.descr,r?.references.push(e)}else e._ref===Ny&&this.throwCyclicReferenceError(t,n,e.$refText);return I(e._ref)?e._ref:void 0}resolveMultiReference(e,t,n){if(Array.isArray(e._items))return e._items;if(e._items===void 0){e._items=Ny;let r=bn(t).$document,i=this.getCandidates({reference:e,container:t,property:n}),a=[];if(an(i))e._linkingError=i;else{for(let e of i){let t=this.loadAstNode(e);t&&a.push({ref:t,$nodeDescription:e})}a.length===0&&(e._linkingError=this.createLinkingError({reference:e,container:t,property:n}))}e._items=a,r?.references.push(e)}else e._items===Ny&&this.throwCyclicReferenceError(t,n,e.$refText);return Array.isArray(e._items)?e._items:[]}throwCyclicReferenceError(e,t,n){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${n}')`)}getLinkedNode(e){try{let t=this.getCandidate(e);if(an(t))return{error:t};let n=this.loadAstNode(t);return n?{node:n,descr:t}:{descr:t,error:this.createLinkingError(e,t)}}catch(t){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,t);let n=t.message??String(t);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${n}`}}}}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 n=bn(e.container).$document;return n&&n.state<X.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`),{info:e,message:`Could not resolve reference to ${this.reflection.getReferenceType(e)} named '${e.reference.$refText}'.`,targetDescription:t}}};function Ly(e){return typeof e.name==`string`}o(Ly,`isNamed`);var Ry=class{static{o(this,`DefaultNameProvider`)}getName(e){if(Ly(e))return e.name}getNameNode(e){return Ji(e.$cstNode,`name`)}},zy=class{static{o(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=wn(e.Grammar).some(e=>Zn(e)&&e.isMulti)}findDeclarations(e){if(e){let t=Qi(e),n=e.astNode;if(t&&n){let r=n[t.feature];if(tn(r)||nn(r))return xn(r);if(Array.isArray(r)){for(let t of r)if((tn(t)||nn(t))&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return xn(t)}}if(n){let t=this.nameProvider.getNameNode(n);if(t&&(t===e||oi(e,t)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let t=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(t.head());if(n){for(let t of En(n))if(nn(t.reference)&&t.reference.items.some(t=>t.ref===e))return t.reference.items.map(e=>e.ref)}return[e]}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),n=[];for(let e of t){let t=this.nameProvider.getNameNode(e)??e.$cstNode;t&&n.push(t)}return n}findReferences(e,t){let n=[];t.includeDeclaration&&n.push(...this.getSelfReferences(e));let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(r=r.filter(e=>ky.equals(e.sourceUri,t.documentUri))),n.push(...r),L(n)}getSelfReferences(e){let t=this.getSelfNodes(e),n=[];for(let e of t){let t=this.nameProvider.getNameNode(e);if(t){let r=yn(e),i=this.nodeLocator.getAstNodePath(e);n.push({sourceUri:r.uri,sourcePath:i,targetUri:r.uri,targetPath:i,segment:li(t),local:!0})}}return n}},By=class{static{o(this,`MultiMap`)}constructor(e){if(this.map=new Map,e)for(let[t,n]of e)this.add(t,n)}get size(){return gn.sum(L(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(t===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let r=n.indexOf(t);if(r>=0)return n.length===1?this.map.delete(e):n.splice(r,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let t=this.map.get(e);return t?L(t):pn}has(e,t){if(t===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(t)>=0:!1}}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,n)=>t.forEach(t=>e(t,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return L(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return L(this.map.keys())}values(){return L(this.map.values()).flat()}entriesGroupedByKey(){return L(this.map.entries())}},Vy=class{static{o(this,`BiMap`)}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[t,n]of e)this.set(t,n)}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 t!==void 0&&(this.map.delete(e),this.inverse.delete(t),!0)}},Hy=class{static{o(this,`DefaultScopeComputation`)}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,t=J.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,t)}async collectExportedSymbolsForNode(e,t,n=Sn,r=J.CancellationToken.None){let i=[];this.addExportedSymbol(e,i,t);for(let a of n(e))await Y(r),this.addExportedSymbol(a,i,t);return i}addExportedSymbol(e,t,n){let r=this.nameProvider.getName(e);r&&t.push(this.descriptions.createDescription(e,r,n))}async collectLocalSymbols(e,t=J.CancellationToken.None){let n=e.parseResult.value,r=new By;for(let i of Cn(n))await Y(t),this.addLocalSymbol(i,e,r);return r}addLocalSymbol(e,t,n){let r=e.$container;if(r){let i=this.nameProvider.getName(e);i&&n.add(r,this.descriptions.createDescription(e,i,t))}}},Uy=class{static{o(this,`StreamScope`)}constructor(e,t,n){this.elements=e,this.outerScope=t,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(e=>e.name.toLowerCase()===t):this.elements.find(t=>t.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(e=>e.name.toLowerCase()===t):this.elements.filter(t=>t.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},Wy=class{static{o(this,`MultiMapScope`)}constructor(e,t,n){this.elements=new By,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let t of e){let 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,n=this.elements.get(t)[0];if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(t);return(this.concatOuterScope||n.length===0)&&this.outerScope?L(n).concat(this.outerScope.getElements(e)):L(n)}getAllElements(){let e=L(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},Gy=class{static{o(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`)}},Ky=class extends Gy{static{o(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 n=t();return this.cache.set(e,n),n}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},qy=class extends Gy{static{o(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,n){this.throwIfDisposed(),this.cacheForContext(e).set(t,n)}get(e,t,n){this.throwIfDisposed();let r=this.cacheForContext(e);if(r.has(t))return r.get(t);if(n){let e=n();return r.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),n=this.cache.get(t);return n||(n=new Map,this.cache.set(t,n)),n}},Jy=class extends Ky{static{o(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()}))}},Yy=class{static{o(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 Jy(e.shared)}getScope(e){let t=[],n=this.reflection.getReferenceType(e),r=yn(e.container).localSymbols;if(r){let i=e.container;do r.has(i)&&t.push(r.getStream(i).filter(e=>this.reflection.isSubtype(e.type,n))),i=i.$container;while(i)}let i=this.getGlobalScope(n,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,n){return new Uy(L(e),t,n)}createScopeForNodes(e,t,n){return new Uy(L(e).map(e=>{let t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable(),t,n)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new Wy(this.indexManager.allElements(e)))}};function Xy(e){return typeof e.$comment==`string`}o(Xy,`isAstNodeWithComment`);function Zy(e){return typeof e==`object`&&!!e&&(`$ref`in e||`$refs`in e||`$error`in e)}o(Zy,`isIntermediateReference`);var Qy=class{static{o(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 n=t??{},r=t?.replacer,i=o((e,t)=>this.replacer(e,t,n),`defaultReplacer`),a=r?(e,t)=>r(e,t,i):i;try{return this.currentDocument=yn(e),JSON.stringify(e,a,t?.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let n=t??{},r=JSON.parse(e);return this.linkNode(r,r,n),r}replacer(e,t,{refText:n,sourceText:r,textRegions:i,comments:a,uriConverter:o}){if(!this.ignoreProperties.has(e)){if(tn(t)){let e=t.ref,r=n?t.$refText:void 0;if(e){let t=yn(e),n=``;this.currentDocument&&this.currentDocument!==t&&(n=o?o(t.uri,e):t.uri.toString());let i=this.astNodeLocator.getAstNodePath(e);return{$ref:`${n}#${i}`,$refText:r}}return{$error:t.error?.message??`Could not resolve reference`,$refText:r}}if(nn(t)){let e=n?t.$refText:void 0,r=[];for(let e of t.items){let t=e.ref,n=yn(e.ref),i=``;this.currentDocument&&this.currentDocument!==n&&(i=o?o(n.uri,t):n.uri.toString());let a=this.astNodeLocator.getAstNodePath(t);r.push(`${i}#${a}`)}return{$refs:r,$refText:e}}if(I(t)){let n;if(i&&(n=this.addAstNodeRegionWithAssignmentsTo({...t}),(!e||t.$document)&&n?.$textRegion&&(n.$textRegion.documentURI=this.currentDocument?.uri.toString())),r&&!e&&(n??={...t},n.$sourceText=t.$cstNode?.text),a){n??={...t};let e=this.commentProvider.getComment(t);e&&(n.$comment=e.replace(/\r/g,``))}return n??t}return t}}addAstNodeRegionWithAssignmentsTo(e){let t=o(e=>({offset:e.offset,end:e.end,length:e.length,range:e.range}),`createDocumentSegment`);if(e.$cstNode){let n=e.$textRegion=t(e.$cstNode),r=n.assignments={};return Object.keys(e).filter(e=>!e.startsWith(`$`)).forEach(n=>{let i=qi(e.$cstNode,n).map(t);i.length!==0&&(r[n]=i)}),e}}linkNode(e,t,n,r,i,a){for(let[r,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){let o=i[a];Zy(o)?i[a]=this.reviveReference(e,r,t,o,n):I(o)&&this.linkNode(o,t,n,e,r,a)}else Zy(i)?e[r]=this.reviveReference(e,r,t,i,n):I(i)&&this.linkNode(i,t,n,e,r);let o=e;o.$container=r,o.$containerProperty=i,o.$containerIndex=a}reviveReference(e,t,n,r,i){let a=r.$refText,o=r.$error,s;if(r.$ref){let e=this.getRefNode(n,r.$ref,i.uriConverter);if(I(e))return a||=this.nameProvider.getName(e),{$refText:a??``,ref:e};o=e}else if(r.$refs){let e=[];for(let t of r.$refs){let r=this.getRefNode(n,t,i.uriConverter);I(r)&&e.push({ref:r})}if(e.length===0)s={$refText:a??``,items:e},o??=`Could not resolve multi-reference`;else return{$refText:a??``,items:e}}if(o)return s??={$refText:a??``,ref:void 0},s.error={info:{container:e,property:t,reference:s},message:o},s}getRefNode(e,t,n){try{let r=t.indexOf(`#`);if(r===0)return this.astNodeLocator.getAstNode(e,t.substring(1))||`Could not resolve path: `+t;if(r<0){let e=n?n(t):Dy.parse(t),r=this.langiumDocuments.getDocument(e);return r?r.parseResult.value:`Could not find document for URI: `+t}let i=n?n(t.substring(0,r)):Dy.parse(t.substring(0,r)),a=this.langiumDocuments.getDocument(i);return a?r===t.length-1?a.parseResult.value:this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(r+1))||`Could not resolve URI: `+t:`Could not find document for URI: `+t}catch(e){return String(e)}}},$y=class{static{o(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 n of t.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(n,e);if(t.fileNames)for(let n of t.fileNames)this.fileNameMap.has(n)&&console.warn(`The file name ${n} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileNameMap.set(n,e);this.languageIdMap.set(t.languageId,e)}getServices(e){if(this.languageIdMap.size===0)throw Error("The service registry is empty. Use `register` to register the services of a language.");let t=this.textDocuments?.get(e)?.languageId;if(t!==void 0){let e=this.languageIdMap.get(t);if(e)return e}let n=ky.extname(e),r=ky.basename(e),i=this.fileNameMap.get(r)??this.fileExtensionMap.get(n);if(!i)throw Error(t?`The service registry contains no services for the extension '${n}' for language '${t}'.`:`The service registry contains no services for the extension '${n}'.`);return i}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function eb(e){return{code:e}}o(eb,`diagnosticData`);var tb;(function(e){e.defaults=[`fast`,`slow`,`built-in`],e.all=e.defaults})(tb||={});var nb=class{static{o(this,`ValidationRegistry`)}constructor(e){this.entries=new By,this.knownCategories=new Set(tb.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,n=`fast`){if(n===`built-in`)throw Error(`The 'built-in' category is reserved for lexer, parser, and linker errors.`);this.knownCategories.add(n);for(let[r,i]of Object.entries(e)){let e=i;if(Array.isArray(e))for(let i of e){let e={check:this.wrapValidationException(i,t),category:n};this.addEntry(r,e)}else if(typeof e==`function`){let i={check:this.wrapValidationException(e,t),category:n};this.addEntry(r,i)}else vi(e)}}wrapValidationException(e,t){return async(n,r,i)=>{await this.handleException(()=>e.call(t,n,r,i),`An error occurred during validation`,r,n)}}async handleException(e,t,n,r){try{await e()}catch(e){if(_y(e))throw e;console.error(`${t}:`,e),e instanceof Error&&e.stack&&console.error(e.stack),n(`error`,`${t}: ${e instanceof Error?e.message:String(e)}`,{node:r})}}addEntry(e,t){if(e===`AstNode`){this.entries.add(`AstNode`,t);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,t)}getChecks(e,t){let n=L(this.entries.get(e)).concat(this.entries.get(`AstNode`));return t&&(n=n.filter(e=>t.includes(e.category))),n.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,n){return async(r,i,a,o)=>{await this.handleException(()=>e.call(n,r,i,a,o),t,i,r)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},rb=Object.freeze({validateNode:!0,validateChildren:!0}),ib=class{static{o(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={},n=J.CancellationToken.None){let r=e.parseResult,i=[];if(await Y(n),(!t.categories||t.categories.includes(`built-in`))&&(this.processLexingErrors(r,i,t),t.stopAfterLexingErrors&&i.some(e=>e.data?.code===cb.LexingError)||(this.processParsingErrors(r,i,t),t.stopAfterParsingErrors&&i.some(e=>e.data?.code===cb.ParsingError))||(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>e.data?.code===cb.LinkingError))))return i;try{i.push(...await this.validateAst(r.value,t,n))}catch(e){if(_y(e))throw e;console.error(`An error occurred during validation:`,e)}return await Y(n),i}processLexingErrors(e,t,n){let r=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(let e of r){let n=e.severity??`error`,r={severity:ob(n),range:{start:{line:e.line-1,character:e.column-1},end:{line:e.line-1,character:e.column+e.length-1}},message:e.message,data:sb(n),source:this.getSource()};t.push(r)}}processParsingErrors(e,t,n){for(let n of e.parserErrors){let e;if(ci(n.token))e=si(n.token);else if(`previousToken`in n){let t=n.previousToken;if(ci(t)){let n={line:t.endLine-1,character:t.endColumn};e={start:n,end:n}}else{let t={line:0,character:0};e={start:t,end:t}}}if(e){let r={severity:ob(`error`),range:e,message:n.message,data:eb(cb.ParsingError),source:this.getSource()};t.push(r)}}}processLinkingErrors(e,t,n){for(let n of e.references){let e=n.error;if(e){let r={node:e.info.container,range:n.$refNode?.range,property:e.info.property,index:e.info.index,data:{code:cb.LinkingError,containerType:e.info.container.$type,property:e.info.property,refText:e.info.reference.$refText}};t.push(this.toDiagnostic(`error`,e.message,r))}}}async validateAst(e,t,n=J.CancellationToken.None){let r=[],i=o((e,t,n)=>{r.push(this.toDiagnostic(e,t,n))},`acceptor`);return await this.validateAstBefore(e,t,i,n),await this.validateAstNodes(e,t,i,n),await this.validateAstAfter(e,t,i,n),r}async validateAstBefore(e,t,n,r=J.CancellationToken.None){let i=this.validationRegistry.checksBefore;for(let a of i)await Y(r),await a(e,n,t.categories??[],r)}async validateAstNodes(e,t,n,r=J.CancellationToken.None){if(this.profiler?.isActive(`validating`)){let i=this.profiler.createTask(`validating`,this.languageId);i.start();try{let a=wn(e).iterator();for(let e of a){i.startSubTask(e.$type);let o=this.validateSingleNodeOptions(e,t);if(o.validateNode)try{let i=this.validationRegistry.getChecks(e.$type,t.categories);for(let t of i)await t(e,n,r)}finally{i.stopSubTask(e.$type)}o.validateChildren||a.prune()}}finally{i.stop()}}else{let i=wn(e).iterator();for(let e of i){await Y(r);let a=this.validateSingleNodeOptions(e,t);if(a.validateNode){let i=this.validationRegistry.getChecks(e.$type,t.categories);for(let t of i)await t(e,n,r)}a.validateChildren||i.prune()}}}validateSingleNodeOptions(e,t){return rb}async validateAstAfter(e,t,n,r=J.CancellationToken.None){let i=this.validationRegistry.checksAfter;for(let a of i)await Y(r),await a(e,n,t.categories??[],r)}toDiagnostic(e,t,n){return{message:t,range:ab(n),severity:ob(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function ab(e){if(e.range)return e.range;let t;return typeof e.property==`string`?t=Ji(e.node.$cstNode,e.property,e.index):typeof e.keyword==`string`&&(t=Xi(e.node.$cstNode,e.keyword,e.index)),t??=e.node.$cstNode,t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}o(ab,`getDiagnosticRange`);function ob(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)}}o(ob,`toDiagnosticSeverity`);function sb(e){switch(e){case`error`:return eb(cb.LexingError);case`warning`:return eb(cb.LexingWarning);case`info`:return eb(cb.LexingInfo);case`hint`:return eb(cb.LexingHint);default:throw Error(`Invalid diagnostic severity: `+e)}}o(sb,`toDiagnosticData`);var cb;(function(e){e.LexingError=`lexing-error`,e.LexingWarning=`lexing-warning`,e.LexingInfo=`lexing-info`,e.LexingHint=`lexing-hint`,e.ParsingError=`parsing-error`,e.LinkingError=`linking-error`})(cb||={});var lb=class{static{o(this,`DefaultAstNodeDescriptionProvider`)}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,n){let r=n??yn(e);t??=this.nameProvider.getName(e);let i=this.astNodeLocator.getAstNodePath(e);if(!t)throw Error(`Node at path ${i} has no name.`);let a,s=o(()=>a??=li(this.nameProvider.getNameNode(e)??e.$cstNode),`nameSegmentGetter`);return{node:e,name:t,get nameSegment(){return s()},selectionSegment:li(e.$cstNode),type:e.$type,documentUri:r.uri,path:i}}},ub=class{static{o(this,`DefaultReferenceDescriptionProvider`)}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=J.CancellationToken.None){let n=[],r=e.parseResult.value;for(let e of wn(r))await Y(t),En(e).forEach(e=>{e.reference.error||n.push(...this.createInfoDescriptions(e))});return n}createInfoDescriptions(e){let t=e.reference;if(t.error||!t.$refNode)return[];let n=[];tn(t)&&t.$nodeDescription?n=[t.$nodeDescription]:nn(t)&&(n=t.items.map(e=>e.$nodeDescription).filter(e=>e!==void 0));let r=yn(e.container).uri,i=this.nodeLocator.getAstNodePath(e.container),a=[],o=li(t.$refNode);for(let e of n)a.push({sourceUri:r,sourcePath:i,targetUri:e.documentUri,targetPath:e.path,segment:o,local:ky.equals(e.documentUri,r)});return a}},db=class{static{o(this,`DefaultAstNodeLocator`)}constructor(){this.segmentSeparator=`/`,this.indexSeparator=`@`}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return t+this.segmentSeparator+n}return``}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw Error(`Missing '$containerProperty' in AST node.`);return t===void 0?e:e+this.indexSeparator+t}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||t.length===0)return e;let n=t.indexOf(this.indexSeparator);if(n>0){let r=t.substring(0,n),i=parseInt(t.substring(n+1));return e[r]?.[i]}return e[t]},e)}},fb=d(en(),1),pb=class{static{o(this,`DefaultConfigurationProvider`)}constructor(e){this._ready=new vy,this.onConfigurationSectionUpdateEmitter=new fb.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)})),n=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,n[t])})}}this._ready.resolve()}updateConfiguration(e){typeof e.settings==`object`&&e.settings!==null&&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 n=this.toSectionName(e);if(this.settings[n])return this.settings[n][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},mb=d(en(),1),hb;(function(e){function t(e){return{dispose:o(async()=>await e(),`dispose`)}}o(t,`create`),e.create=t})(hb||={});var gb=class{static{o(this,`DefaultDocumentBuilder`)}constructor(e){this.updateBuildOptions={validation:{categories:[`built-in`,`fast`]}},this.updateListeners=[],this.buildPhaseListeners=new By,this.documentPhaseListeners=new By,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=X.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={},n=J.CancellationToken.None){for(let n of e){let e=n.uri.toString();if(n.state===X.Validated){if(typeof t.validation==`boolean`&&t.validation)this.resetToState(n,X.IndexedReferences);else if(typeof t.validation==`object`){let r=this.findMissingValidationCategories(n,t);r.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:{categories:r}},result:this.buildState.get(e)?.result}),n.state=X.IndexedReferences)}}else this.buildState.delete(e)}this.currentState=X.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,n)}async update(e,t,n=J.CancellationToken.None){this.currentState=X.Changed;let r=[];for(let e of t){let t=this.langiumDocuments.deleteDocuments(e);for(let e of t)r.push(e.uri),this.cleanUpDeleted(e)}let i=(await Promise.all(e.map(e=>this.findChangedUris(e)))).flat();for(let e of i){let t=this.langiumDocuments.getDocument(e);t===void 0&&(t=this.langiumDocumentFactory.fromModel({$type:`INVALID`},e),t.state=X.Changed,this.langiumDocuments.addDocument(t)),this.resetToState(t,X.Changed)}let a=L(i).concat(r).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!a.has(e.uri.toString())&&this.shouldRelink(e,a)).forEach(e=>this.resetToState(e,X.ComputedScopes)),await this.emitUpdate(i,r),await Y(n);let o=this.sortDocuments(this.langiumDocuments.all.filter(e=>e.state<X.Validated||!this.buildState.get(e.uri.toString())?.completed||this.resultsAreIncomplete(e,this.updateBuildOptions)).toArray());await this.buildDocuments(o,this.updateBuildOptions,n)}resultsAreIncomplete(e,t){return this.findMissingValidationCategories(e,t).length>=1}findMissingValidationCategories(e,t){let n=this.buildState.get(e.uri.toString()),r=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),i=n?.result?.validationChecks?new Set(n?.result?.validationChecks):n?.completed?r:new Set;return L(t===void 0||t.validation===!0?r:typeof t.validation==`object`?t.validation.categories??r:[]).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(n=>n(e,t)))}sortDocuments(e){let t=0,n=e.length-1;for(;t<n;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;n>=0&&!this.hasTextDocument(e[n]);)n--;t<n&&([e[t],e[n]]=[e[n],e[t]])}return e}hasTextDocument(e){return!!this.textDocuments?.get(e.uri)}shouldRelink(e,t){return e.references.some(e=>e.error!==void 0)?!0:this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),hb.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}resetToState(e,t){switch(t){case X.Changed:case X.Parsed:this.indexManager.removeContent(e.uri);case X.IndexedContent:e.localSymbols=void 0;case X.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case X.Linked:this.indexManager.removeReferences(e.uri);case X.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case X.Validated:}e.state>t&&(e.state=t)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=X.Changed}async buildDocuments(e,t,n){this.prepareBuild(e,t),await this.runCancelable(e,X.Parsed,n,e=>this.langiumDocumentFactory.update(e,n)),await this.runCancelable(e,X.IndexedContent,n,e=>this.indexManager.updateContent(e,n)),await this.runCancelable(e,X.ComputedScopes,n,async e=>{e.localSymbols=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectLocalSymbols(e,n)});let r=e.filter(e=>this.shouldLink(e));await this.runCancelable(r,X.Linked,n,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,n)),await this.runCancelable(r,X.IndexedReferences,n,e=>this.indexManager.updateReferences(e,n));let i=e.filter(e=>this.shouldValidate(e)?!0:(this.markAsCompleted(e),!1));await this.runCancelable(i,X.Validated,n,async e=>{await this.validate(e,n),this.markAsCompleted(e)})}markAsCompleted(e){let t=this.buildState.get(e.uri.toString());t&&(t.completed=!0)}prepareBuild(e,t){for(let n of e){let e=n.uri.toString(),r=this.buildState.get(e);(!r||r.completed)&&this.buildState.set(e,{completed:!1,options:t,result:r?.result})}}async runCancelable(e,t,n,r){for(let i of e)i.state<t&&(await Y(n),await r(i),i.state=t,await this.notifyDocumentPhase(i,t,n));let i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,n),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),hb.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),hb.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,n){let r;return t&&`path`in t?r=t:n=t,n??=J.CancellationToken.None,r?this.awaitDocumentState(e,r,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,t,n){let r=this.langiumDocuments.getDocument(t);return r?r.state>=e?Promise.resolve(t):n.isCancellationRequested?Promise.reject(gy):this.currentState>=e&&e>r.state?Promise.reject(new mb.ResponseError(mb.LSPErrorCodes.RequestFailed,`Document state of ${t.toString()} is ${X[r.state]}, requiring ${X[e]}, but workspace state is already ${X[this.currentState]}. Returning undefined.`)):new Promise((r,i)=>{let a=this.onDocumentPhase(e,e=>{ky.equals(e.uri,t)&&(a.dispose(),o.dispose(),r(e.uri))}),o=n.onCancellationRequested(()=>{a.dispose(),o.dispose(),i(gy)})}):Promise.reject(new mb.ResponseError(mb.LSPErrorCodes.ServerCancelled,`No document found for URI: ${t.toString()}`))}awaitBuilderState(e,t){return this.currentState>=e?Promise.resolve():t.isCancellationRequested?Promise.reject(gy):new Promise((n,r)=>{let i=this.onBuildPhase(e,()=>{i.dispose(),a.dispose(),n()}),a=t.onCancellationRequested(()=>{i.dispose(),a.dispose(),r(gy)})})}async notifyDocumentPhase(e,t,n){let r=this.documentPhaseListeners.get(t).slice();for(let t of r)try{await Y(n),await t(e,n)}catch(e){if(!_y(e))throw e}}async notifyBuildPhase(e,t,n){if(e.length===0)return;let r=this.buildPhaseListeners.get(t).slice();for(let t of r)await Y(n),await t(e,n)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,r=this.getBuildOptions(e),i=typeof r.validation==`object`?{...r.validation}:{};i.categories=this.findMissingValidationCategories(e,r);let a=await n.validateDocument(e,i,t);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;let o=this.buildState.get(e.uri.toString());o&&(o.result??={},o.result.validationChecks?o.result.validationChecks=L(o.result.validationChecks).concat(i.categories).distinct().toArray():o.result.validationChecks=[...i.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}},_b=class{static{o(this,`DefaultIndexManager`)}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new qy,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let n=yn(e).uri,r=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{ky.equals(e.targetUri,n)&&e.targetPath===t&&r.push(e)})}),L(r)}allElements(e,t){let n=L(this.symbolIndex.keys());return t&&(n=n.filter(e=>!t||t.has(e))),n.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=J.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,t),r=e.uri.toString();this.symbolIndex.set(r,n),this.symbolByTypeIndex.clear(r)}async updateReferences(e,t=J.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(e=>!e.local&&t.has(e.targetUri.toString())):!1}},vb=class{static{o(this,`DefaultWorkspaceManager`)}constructor(e){this.initialBuildOptions={},this._ready=new vy,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=J.CancellationToken.None){let n=await this.performStartup(e);await Y(t),await this.documentBuilder.build(n,this.initialBuildOptions,t)}async performStartup(e){let t=[],n=o(e=>{t.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)},`collector`);await this.loadAdditionalDocuments(e,n);let r=[];await Promise.all(e.map(e=>this.getRootFolder(e)).map(async e=>this.traverseFolder(e,r)));let i=L(r).distinct(e=>e.toString()).filter(e=>!this.langiumDocuments.hasDocument(e));return await this.loadWorkspaceDocuments(i,n),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 Dy.parse(e.uri)}async traverseFolder(e,t){try{let n=await this.fileSystemProvider.readDirectory(e);await Promise.all(n.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=ky.basename(e.uri);return t.startsWith(`.`)?!1:e.isDirectory?t!==`node_modules`&&t!==`out`:e.isFile?this.serviceRegistry.hasServices(e.uri):!1}},yb=class{static{o(this,`DefaultLexerErrorMessageProvider`)}buildUnexpectedCharactersMessage(e,t,n,r,i){return fs.buildUnexpectedCharactersMessage(e,t,n,r,i)}buildUnableToPopLexerModeMessage(e){return fs.buildUnableToPopLexerModeMessage(e)}},bb={mode:`full`},xb=class{static{o(this,`DefaultLexer`)}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);let n=wb(t)?Object.values(t):t,r=e.LanguageMetaData.mode===`production`;this.chevrotainLexer=new ms(n,{positionTracking:`full`,skipValidations:r,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=bb){let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(wb(e))return e;let t=Cb(e)?Object.values(e.modes).flat():e,n={};return t.forEach(e=>n[e.name]=e),n}};function Sb(e){return Array.isArray(e)&&(e.length===0||`name`in e[0])}o(Sb,`isTokenTypeArray`);function Cb(e){return e&&`modes`in e&&`defaultMode`in e}o(Cb,`isIMultiModeLexerDefinition`);function wb(e){return!Sb(e)&&!Cb(e)}o(wb,`isTokenTypeDictionary`),Ot();function Tb(e,t,n){let r,i;typeof e==`string`?(i=t,r=n):(i=e.range.start,r=t),i||=D.create(0,0);let a=Db(e),o=Ub(r);return Ib({index:0,tokens:Ab({lines:a,position:i,options:o}),position:i})}o(Tb,`parseJSDoc`);function Eb(e,t){let n=Ub(t),r=Db(e);if(r.length===0)return!1;let i=r[0],a=r[r.length-1],o=n.start,s=n.end;return!!o?.exec(i)&&!!s?.exec(a)}o(Eb,`isJSDoc`);function Db(e){let t=``;return t=typeof e==`string`?e:e.text,t.split(Mi)}o(Db,`getLines`);var Ob=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,kb=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function Ab(e){let t=[],n=e.position.line,r=e.position.character;for(let i=0;i<e.lines.length;i++){let a=i===0,o=i===e.lines.length-1,s=e.lines[i],c=0;if(a&&e.options.start){let t=e.options.start?.exec(s);t&&(c=t.index+t[0].length)}else{let t=e.options.line?.exec(s);t&&(c=t.index+t[0].length)}if(o){let t=e.options.end?.exec(s);t&&(s=s.substring(0,t.index))}if(s=s.substring(0,Fb(s)),Pb(s,c)>=s.length){if(t.length>0){let e=D.create(n,r);t.push({type:`break`,content:``,range:O.create(e,e)})}}else{Ob.lastIndex=c;let e=Ob.exec(s);if(e){let i=e[0],a=e[1],o=D.create(n,r+c),l=D.create(n,r+c+i.length);t.push({type:`tag`,content:a,range:O.create(o,l)}),c+=i.length,c=Pb(s,c)}if(c<s.length){let e=s.substring(c),i=Array.from(e.matchAll(kb));t.push(...jb(i,e,n,r+c))}}n++,r=0}return t.length>0&&t[t.length-1].type===`break`?t.slice(0,-1):t}o(Ab,`tokenize`);function jb(e,t,n,r){let i=[];if(e.length===0){let e=D.create(n,r),a=D.create(n,r+t.length);i.push({type:`text`,content:t,range:O.create(e,a)})}else{let a=0;for(let o of e){let e=o.index,s=t.substring(a,e);s.length>0&&i.push({type:`text`,content:t.substring(a,e),range:O.create(D.create(n,a+r),D.create(n,e+r))});let c=s.length+1,l=o[1];if(i.push({type:`inline-tag`,content:l,range:O.create(D.create(n,a+c+r),D.create(n,a+c+l.length+r))}),c+=l.length,o.length===4){c+=o[2].length;let e=o[3];i.push({type:`text`,content:e,range:O.create(D.create(n,a+c+r),D.create(n,a+c+e.length+r))})}else i.push({type:`text`,content:``,range:O.create(D.create(n,a+c+r),D.create(n,a+c+r))});a=e+o[0].length}let o=t.substring(a);o.length>0&&i.push({type:`text`,content:o,range:O.create(D.create(n,a+r),D.create(n,a+r+o.length))})}return i}o(jb,`buildInlineTokens`);var Mb=/\S/,Nb=/\s*$/;function Pb(e,t){let n=e.substring(t).match(Mb);return n?t+n.index:e.length}o(Pb,`skipWhitespace`);function Fb(e){let t=e.match(Nb);if(t&&typeof t.index==`number`)return t.index}o(Fb,`lastCharacter`);function Ib(e){let t=D.create(e.position.line,e.position.character);if(e.tokens.length===0)return new Gb([],O.create(t,t));let n=[];for(;e.index<e.tokens.length;){let t=Lb(e,n[n.length-1]);t&&n.push(t)}let r=n[0]?.range.start??t,i=n[n.length-1]?.range.end??t;return new Gb(n,O.create(r,i))}o(Ib,`parseJSDocComment`);function Lb(e,t){let n=e.tokens[e.index];if(n.type===`tag`)return Vb(e,!1);if(n.type===`text`||n.type===`inline-tag`)return zb(e);Rb(n,t),e.index++}o(Lb,`parseJSDocElement`);function Rb(e,t){if(t){let n=new Xb(``,e.range);`inlines`in t?t.inlines.push(n):t.content.inlines.push(n)}}o(Rb,`appendEmptyLine`);function zb(e){let t=e.tokens[e.index],n=t,r=t,i=[];for(;t&&t.type!==`break`&&t.type!==`tag`;)i.push(Bb(e)),r=t,t=e.tokens[e.index];return new Yb(i,O.create(n.range.start,r.range.end))}o(zb,`parseJSDocText`);function Bb(e){return e.tokens[e.index].type===`inline-tag`?Vb(e,!0):Hb(e)}o(Bb,`parseJSDocInline`);function Vb(e,t){let n=e.tokens[e.index++],r=n.content.substring(1);if(e.tokens[e.index]?.type===`text`){if(t){let i=Hb(e);return new Kb(r,new Yb([i],i.range),t,O.create(n.range.start,i.range.end))}{let i=zb(e);return new Kb(r,i,t,O.create(n.range.start,i.range.end))}}{let e=n.range;return new Kb(r,new Yb([],e),t,e)}}o(Vb,`parseJSDocTag`);function Hb(e){let t=e.tokens[e.index++];return new Xb(t.content,t.range)}o(Hb,`parseJSDocLine`);function Ub(e){if(!e)return Ub({start:`/**`,end:`*/`,line:`*`});let{start:t,end:n,line:r}=e;return{start:Wb(t,!0),end:Wb(n,!1),line:Wb(r,!0)}}o(Ub,`normalizeOptions`);function Wb(e,t){if(typeof e==`string`||typeof e==`object`){let n=typeof e==`string`?Ri(e):e.source;return RegExp(t?`^\\s*${n}`:`\\s*${n}\\s*$`)}return e}o(Wb,`normalizeOption`);var Gb=class{static{o(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(e.length===0)e=t.toString();else{let n=t.toString();e+=Zb(e)+n}return e.trim()}toMarkdown(e){let t=``;for(let n of this.elements)if(t.length===0)t=n.toMarkdown(e);else{let r=n.toMarkdown(e);t+=Zb(t)+r}return t.trim()}},Kb=class{static{o(this,`JSDocTagImpl`)}constructor(e,t,n,r){this.name=e,this.content=t,this.inline=n,this.range=r}toString(){let e=`@${this.name}`,t=this.content.toString();return this.content.inlines.length===1?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
128
+ ${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 n=qb(this.name,t,e??{});if(typeof n==`string`)return n}let n=``;e?.tag===`italic`||e?.tag===void 0?n=`*`:e?.tag===`bold`?n=`**`:e?.tag===`bold-italic`&&(n=`***`);let r=`${n}@${this.name}${n}`;return this.content.inlines.length===1?r=`${r} \u2014 ${t}`:this.content.inlines.length>1&&(r=`${r}
129
+ ${t}`),this.inline?`{${r}}`:r}};function qb(e,t,n){if(e===`linkplain`||e===`linkcode`||e===`link`){let r=t.indexOf(` `),i=t;if(r>0){let e=Pb(t,r);i=t.substring(e),t=t.substring(0,r)}return(e===`linkcode`||e===`link`&&n.link===`code`)&&(i=`\`${i}\``),n.renderLink?.(t,i)??Jb(t,i)}}o(qb,`renderInlineTag`);function Jb(e,t){try{return Dy.parse(e,!0),`[${t}](${e})`}catch{return e}}o(Jb,`renderLinkDefault`);var Yb=class{static{o(this,`JSDocTextImpl`)}constructor(e,t){this.inlines=e,this.range=t}toString(){let e=``;for(let t=0;t<this.inlines.length;t++){let n=this.inlines[t],r=this.inlines[t+1];e+=n.toString(),r&&r.range.start.line>n.range.start.line&&(e+=`
130
+ `)}return e}toMarkdown(e){let t=``;for(let n=0;n<this.inlines.length;n++){let r=this.inlines[n],i=this.inlines[n+1];t+=r.toMarkdown(e),i&&i.range.start.line>r.range.start.line&&(t+=`
131
+ `)}return t}},Xb=class{static{o(this,`JSDocLineImpl`)}constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}};function Zb(e){return e.endsWith(`
132
+ `)?`
133
+ `:`
134
+
135
+ `}o(Zb,`fillNewlines`);var Qb=class{static{o(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&&Eb(t))return Tb(t).toMarkdown({renderLink:o((t,n)=>this.documentationLinkRenderer(e,t,n),`renderLink`),renderTag:o(t=>this.documentationTagRenderer(e,t),`renderTag`)})}documentationLinkRenderer(e,t,n){let r=this.findNameInLocalSymbols(e,t)??this.findNameInGlobalScope(e,t);if(r&&r.nameSegment){let e=r.nameSegment.range.start.line+1,t=r.nameSegment.range.start.character+1;return`[${n}](${r.documentUri.with({fragment:`L${e},${t}`}).toString()})`}}documentationTagRenderer(e,t){}findNameInLocalSymbols(e,t){let n=yn(e).localSymbols;if(!n)return;let r=e;do{let e=n.getStream(r).find(e=>e.name===t);if(e)return e;r=r.$container}while(r)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}},$b=class{static{o(this,`DefaultCommentProvider`)}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return Xy(e)?e.$comment:mi(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},ex=class{static{o(this,`DefaultAsyncParser`)}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}},tx;(function(e){e[e.Normal=0]=`Normal`,e[e.Immediate=1]=`Immediate`})(tx||={});var nx=class{static{o(this,`DefaultWorkspaceLock`)}constructor(){this.previousTokenSource=new J.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.immediateReads=[],this.done=!0}write(e){this.cancelWrite();let t=hy();return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e,t=tx.Normal){if(t===tx.Immediate){let t=Promise.resolve().then(()=>e());this.immediateReads.push(t);let n=o(()=>{this.immediateReads.splice(this.immediateReads.indexOf(t),1)},`remove`);return t.then(n,n),t}return this.enqueue(this.readQueue,e)}enqueue(e,t,n=J.CancellationToken.None){let r=new vy,i={action:t,deferred:r,cancellationToken:n};return e.push(i),this.performNextOperation(),r.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)for(e.push(this.writeQueue.shift()),this.done=!1;this.immediateReads.length>0;)await Promise.allSettled(this.immediateReads.slice());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length)),this.done=!1;else return;await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:n})=>{try{let r=await Promise.resolve().then(()=>e(n));t.resolve(r)}catch(e){_y(e)?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},rx=class{static{o(this,`DefaultHydrator`)}constructor(e){this.grammarElementIdMap=new Vy,this.tokenTypeIdMap=new Vy,this.cstNodeBuilder=new wv,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,n=new Map;for(let n of wn(e))t.set(n,{});if(e.$cstNode)for(let t of ai(e.$cstNode))n.set(t,{});return{astNodes:t,cstNodes:n}}dehydrateAstNode(e,t){let n=t.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,t));for(let[r,i]of Object.entries(e))if(!r.startsWith(`$`)){if(Array.isArray(i)){let e=[];n[r]=e;for(let n of i)I(n)?e.push(this.dehydrateAstNode(n,t)):tn(n)?e.push(this.dehydrateReference(n,t)):e.push(n)}else I(i)?n[r]=this.dehydrateAstNode(i,t):tn(i)?n[r]=this.dehydrateReference(i,t):i!==void 0&&(n[r]=i)}return n}dehydrateReference(e,t){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=t.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,t){let n=t.cstNodes.get(e);if(ln(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,sn(e))n.content=e.content.map(e=>this.dehydrateCstNode(e,t));else if(cn(e)){n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length;let{start:t,end:r}=e.range;n.startLine=t.line,n.startColumn=t.character,n.endLine=r.line,n.endColumn=r.character}return n}hydrate(e){let t=e.value,n=this.createHydrationContext(t);return`$cstNode`in t&&this.hydrateCstNode(t.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,n)}}createHydrationContext(e){let t=new Map,n=new Map;for(let n of wn(e))t.set(n,{});if(e.$cstNode)for(let t of ai(e.$cstNode)){let e;`fullText`in t?e=new kv(t.fullText):`content`in t?e=new Ov:`tokenType`in t&&(e=this.hydrateCstLeafNode(t)),e&&n.set(t,e)}return{astNodes:t,cstNodes:n,linkedCstNodes:new Set}}hydrateAstNode(e,t){let n=t.astNodes.get(e);if(n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode){let r=t.cstNodes.get(e.$cstNode);n.$cstNode=r,r&&!t.linkedCstNodes.has(r)&&(t.linkedCstNodes.add(r),r.astNode=n)}for(let[r,i]of Object.entries(e))if(!r.startsWith(`$`)){if(Array.isArray(i)){let e=[];n[r]=e;for(let a of i)I(a)?e.push(this.setParent(this.hydrateAstNode(a,t),n)):tn(a)?e.push(this.hydrateReference(a,n,r,t)):e.push(a)}else I(i)?n[r]=this.setParent(this.hydrateAstNode(i,t),n):tn(i)?n[r]=this.hydrateReference(i,n,r,t):i!==void 0&&(n[r]=i)}return n}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,n,r){return this.linker.buildReference(t,n,r.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,n=0){let r=t.cstNodes.get(e);if(typeof e.grammarSource==`number`&&(r.grammarSource=this.getGrammarElement(e.grammarSource)),sn(r)){let i=[];for(let r of e.content)i.push(this.hydrateCstNode(r,t,n++));this.cstNodeBuilder.appendChildren(r,i)}return r}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new Ev(e.offset,e.length,e.startLine,e.startColumn,e.endLine,e.endColumn,t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of wn(this.grammar))An(t)&&this.grammarElementIdMap.set(t,e++)}};function ix(e){return{documentation:{CommentProvider:o(e=>new $b(e),`CommentProvider`),DocumentationProvider:o(e=>new Qb(e),`DocumentationProvider`)},parser:{AsyncParser:o(e=>new ex(e),`AsyncParser`),GrammarConfig:o(e=>_a(e),`GrammarConfig`),LangiumParser:o(e=>sy(e),`LangiumParser`),CompletionParser:o(e=>oy(e),`CompletionParser`),ValueConverter:o(()=>new uy,`ValueConverter`),TokenBuilder:o(()=>new ly,`TokenBuilder`),Lexer:o(e=>new xb(e),`Lexer`),ParserErrorMessageProvider:o(()=>new Lv,`ParserErrorMessageProvider`),LexerErrorMessageProvider:o(()=>new yb,`LexerErrorMessageProvider`)},workspace:{AstNodeLocator:o(()=>new db,`AstNodeLocator`),AstNodeDescriptionProvider:o(e=>new lb(e),`AstNodeDescriptionProvider`),ReferenceDescriptionProvider:o(e=>new ub(e),`ReferenceDescriptionProvider`)},references:{Linker:o(e=>new Iy(e),`Linker`),NameProvider:o(()=>new Ry,`NameProvider`),ScopeProvider:o(e=>new Yy(e),`ScopeProvider`),ScopeComputation:o(e=>new Hy(e),`ScopeComputation`),References:o(e=>new zy(e),`References`)},serializer:{Hydrator:o(e=>new rx(e),`Hydrator`),JsonSerializer:o(e=>new Qy(e),`JsonSerializer`)},validation:{DocumentValidator:o(e=>new ib(e),`DocumentValidator`),ValidationRegistry:o(e=>new nb(e),`ValidationRegistry`)},shared:o(()=>e.shared,`shared`)}}o(ix,`createDefaultCoreModule`);function ax(e){return{ServiceRegistry:o(e=>new $y(e),`ServiceRegistry`),workspace:{LangiumDocuments:o(e=>new My(e),`LangiumDocuments`),LangiumDocumentFactory:o(e=>new jy(e),`LangiumDocumentFactory`),DocumentBuilder:o(e=>new gb(e),`DocumentBuilder`),IndexManager:o(e=>new _b(e),`IndexManager`),WorkspaceManager:o(e=>new vb(e),`WorkspaceManager`),FileSystemProvider:o(t=>e.fileSystemProvider(t),`FileSystemProvider`),WorkspaceLock:o(()=>new nx,`WorkspaceLock`),ConfigurationProvider:o(e=>new pb(e),`ConfigurationProvider`)},profilers:{}}}o(ax,`createDefaultSharedCoreModule`);var ox;(function(e){e.merge=(e,t)=>fx(fx({},e),t)})(ox||={});function sx(e,t,n,r,i,a,o,s,c){return lx([e,t,n,r,i,a,o,s,c].reduce(fx,{}))}o(sx,`inject`);var cx=Symbol(`isProxy`);function lx(e,t){let n=new Proxy({},{deleteProperty:o(()=>!1,`deleteProperty`),set:o(()=>{throw Error(`Cannot set property on injected service container`)},`set`),get:o((r,i)=>i===cx||dx(r,i,e,t||n),`get`),getOwnPropertyDescriptor:o((r,i)=>(dx(r,i,e,t||n),Object.getOwnPropertyDescriptor(r,i)),`getOwnPropertyDescriptor`),has:o((t,n)=>n in e,`has`),ownKeys:o(()=>[...Object.getOwnPropertyNames(e)],`ownKeys`)});return n}o(lx,`_inject`);var ux=Symbol();function dx(e,t,n,r){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]===ux)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 n){let i=n[t];e[t]=ux;try{e[t]=typeof i==`function`?i(r):lx(i,r)}catch(n){throw e[t]=n instanceof Error?n:void 0,n}return e[t]}}o(dx,`_resolve`);function fx(e,t){if(t){for(let[n,r]of Object.entries(t))if(n!==`__proto__`&&n!==`constructor`&&n!==`prototype`&&r!=null){if(typeof r==`object`){let t=e[n];e[n]=fx(typeof t==`object`&&t?t:{},r)}else e[n]=r}}return e}o(fx,`_merge`);var px=class{static{o(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[]}},mx={fileSystemProvider:o(()=>new px,`fileSystemProvider`)},hx={Grammar:o(()=>void 0,`Grammar`),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[`.langium`],languageId:`langium`}),`LanguageMetaData`)},gx={AstReflection:o(()=>new ii,`AstReflection`)};function _x(){let e=sx(ax(mx),gx),t=sx(ix({shared:e}),hx);return e.ServiceRegistry.register(t),t}o(_x,`createMinimalGrammarServices`);function Z(e){let t=_x(),n=t.serializer.JsonSerializer.deserialize(e);return t.shared.workspace.LangiumDocumentFactory.fromModel(n,Dy.parse(`memory:/${n.name??`grammar`}.langium`)),n}o(Z,`loadGrammarFromJson`);var vx;(e=>{e.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]+)\]/}})(vx||={});var yx;(e=>{e.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]*/}})(yx||={});var bx;(e=>{e.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]*/}})(bx||={});var xx;(e=>{e.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])?/}})(xx||={});var Sx;(e=>{e.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]*/}})(Sx||={});var Cx;(e=>{e.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]*/}})(Cx||={});var wx;(e=>{e.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]*/}})(wx||={});var Tx;(e=>{e.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]*/}})(Tx||={});var Ex;(e=>{e.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]*/}})(Ex||={});var Dx;(e=>{e.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]*?\*\)/}})(Dx||={});var Ox;(e=>{e.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]*?\*\//}})(Ox||={});var kx;(e=>{e.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]*/}})(kx||={});var Ax;(e=>{e.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:/"[^"]*"|'[^']*'/}})(Ax||={});var jx;(e=>{e.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])*/}})(jx||={});var Mx;(e=>{e.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]*/}})(Mx||={}),{...vx.Terminals,...yx.Terminals,...bx.Terminals,...xx.Terminals,...Sx.Terminals,...Cx.Terminals,...wx.Terminals,...Tx.Terminals,...Ex.Terminals,...Dx.Terminals,...Ox.Terminals,...kx.Terminals,...jx.Terminals,...Ax.Terminals,...Mx.Terminals};var Nx={$type:`AbnfAlternation`,alternatives:`alternatives`},Px={$type:`AbnfConcatenation`,elements:`elements`},Fx={$type:`AbnfElement`,primary:`primary`,repeat:`repeat`},Ix={$type:`AbnfGroup`,element:`element`},Lx={$type:`AbnfNumVal`,value:`value`},Rx={$type:`AbnfOptionalGroup`,element:`element`},zx={$type:`AbnfPrimary`},Bx={$type:`AbnfRule`,definition:`definition`,name:`name`},Vx={$type:`AbnfRuleName`,name:`name`},Hx={$type:`AbnfStringLiteral`,value:`value`},Ux={$type:`Accelerator`,name:`name`,x:`x`,y:`y`},Wx={$type:`Alignment`,direction:`direction`,members:`members`},Gx={$type:`Anchor`,evolution:`evolution`,name:`name`,visibility:`visibility`},Kx={$type:`Annotation`,number:`number`,text:`text`,x:`x`,y:`y`},qx={$type:`Annotations`,x:`x`,y:`y`},Jx={$type:`Architecture`,accDescr:`accDescr`,accTitle:`accTitle`,alignments:`alignments`,edges:`edges`,groups:`groups`,junctions:`junctions`,services:`services`,title:`title`};function Yx(e){return $.isInstance(e,Jx.$type)}o(Yx,`isArchitecture`);var Xx={$type:`Axis`,label:`label`,name:`name`},Zx={$type:`Branch`,name:`name`,order:`order`};function Qx(e){return $.isInstance(e,Zx.$type)}o(Qx,`isBranch`);var $x={$type:`Checkout`,branch:`branch`},eS={$type:`CherryPicking`,id:`id`,parent:`parent`,tags:`tags`},tS={$type:`ClassDefStatement`,className:`className`,styleText:`styleText`},nS={$type:`Commit`,id:`id`,message:`message`,tags:`tags`,type:`type`};function rS(e){return $.isInstance(e,nS.$type)}o(rS,`isCommit`);var iS={$type:`Common`,accDescr:`accDescr`,accTitle:`accTitle`,title:`title`},aS={$type:`Component`,decorator:`decorator`,evolution:`evolution`,inertia:`inertia`,label:`label`,name:`name`,visibility:`visibility`},oS={$type:`Curve`,entries:`entries`,label:`label`,name:`name`},sS={$type:`Cynefin`,accDescr:`accDescr`,accTitle:`accTitle`,domains:`domains`,title:`title`,transitions:`transitions`};function cS(e){return $.isInstance(e,sS.$type)}o(cS,`isCynefin`);var lS={$type:`Deaccelerator`,name:`name`,x:`x`,y:`y`},uS={$type:`Decorator`,strategy:`strategy`},dS={$type:`Direction`,accDescr:`accDescr`,accTitle:`accTitle`,dir:`dir`,statements:`statements`,title:`title`},fS={$type:`DomainBlock`,domain:`domain`,items:`items`};function pS(e){return $.isInstance(e,fS.$type)}o(pS,`isDomainBlock`);var mS={$type:`DomainItem`,label:`label`};function hS(e){return $.isInstance(e,mS.$type)}o(hS,`isDomainItem`);var gS={$type:`EbnfChoice`,alternatives:`alternatives`},_S={$type:`EbnfExceptionPostfix`,except:`except`},vS={$type:`EbnfGroup`,element:`element`},yS={$type:`EbnfNonTerminal`,name:`name`},bS={$type:`EbnfOneOrMorePostfix`,operator:`operator`},xS={$type:`EbnfOptional`,element:`element`},SS={$type:`EbnfOptionalPostfix`,operator:`operator`},CS={$type:`EbnfPostfix`},wS={$type:`EbnfPrimary`},TS={$type:`EbnfRepetition`,element:`element`},ES={$type:`EbnfRule`,definition:`definition`,name:`name`},DS={$type:`EbnfSequence`,elements:`elements`},OS={$type:`EbnfSpecial`,text:`text`},kS={$type:`EbnfTerm`,base:`base`,postfixes:`postfixes`},AS={$type:`EbnfTerminal`,value:`value`},jS={$type:`EbnfZeroOrMorePostfix`,operator:`operator`},MS={$type:`Edge`,lhsDir:`lhsDir`,lhsGroup:`lhsGroup`,lhsId:`lhsId`,lhsInto:`lhsInto`,rhsDir:`rhsDir`,rhsGroup:`rhsGroup`,rhsId:`rhsId`,rhsInto:`rhsInto`,title:`title`},NS={$type:`EmDataEntity`,dataBlockValue:`dataBlockValue`,dataType:`dataType`,name:`name`},PS={$type:`EmFrame`},FS={$type:`EmGwt`,givenStatements:`givenStatements`,sourceFrame:`sourceFrame`,thenStatements:`thenStatements`,whenStatements:`whenStatements`},IS={$type:`EmGwtStatement`,entityIdentifier:`entityIdentifier`},LS={$type:`EmModelEntity`,name:`name`};function RS(e){return e===`rmo`||e===`readmodel`||e===`ui`||e===`cmd`||e===`command`||e===`evt`||e===`event`||e===`pcr`||e===`processor`}o(RS,`isEmModelEntityType`);var zS={$type:`EmNoteEntity`,dataBlockValue:`dataBlockValue`,dataType:`dataType`,sourceFrame:`sourceFrame`},BS={$type:`EmResetFrame`,dataInlineValue:`dataInlineValue`,dataReference:`dataReference`,dataType:`dataType`,entityIdentifier:`entityIdentifier`,modelEntityType:`modelEntityType`,name:`name`,sourceFrames:`sourceFrames`};function VS(e){return $.isInstance(e,BS.$type)}o(VS,`isEmResetFrame`);var HS={$type:`EmTimeFrame`,dataInlineValue:`dataInlineValue`,dataReference:`dataReference`,dataType:`dataType`,entityIdentifier:`entityIdentifier`,modelEntityType:`modelEntityType`,name:`name`,sourceFrames:`sourceFrames`},US={$type:`Entry`,axis:`axis`,value:`value`},WS={$type:`EventModel`,accDescr:`accDescr`,accTitle:`accTitle`,dataEntities:`dataEntities`,frames:`frames`,gwtEntities:`gwtEntities`,modelEntities:`modelEntities`,noteEntities:`noteEntities`,title:`title`},GS={$type:`Evolution`,stages:`stages`},KS={$type:`EvolutionStage`,boundary:`boundary`,name:`name`,secondName:`secondName`},qS={$type:`Evolve`,component:`component`,target:`target`},JS={$type:`GitGraph`,accDescr:`accDescr`,accTitle:`accTitle`,statements:`statements`,title:`title`};function YS(e){return $.isInstance(e,JS.$type)}o(YS,`isGitGraph`);var XS={$type:`Group`,icon:`icon`,id:`id`,in:`in`,title:`title`},ZS={$type:`Info`,accDescr:`accDescr`,accTitle:`accTitle`,title:`title`};function QS(e){return $.isInstance(e,ZS.$type)}o(QS,`isInfo`);var $S={$type:`Item`,classSelector:`classSelector`,name:`name`},eC={$type:`Junction`,id:`id`,in:`in`},tC={$type:`Label`,negX:`negX`,negY:`negY`,offsetX:`offsetX`,offsetY:`offsetY`},nC={$type:`Leaf`,classSelector:`classSelector`,name:`name`,value:`value`},rC={$type:`Link`,arrow:`arrow`,from:`from`,fromPort:`fromPort`,linkLabel:`linkLabel`,to:`to`,toPort:`toPort`},iC={$type:`Merge`,branch:`branch`,id:`id`,tags:`tags`,type:`type`};function aC(e){return $.isInstance(e,iC.$type)}o(aC,`isMerge`);var oC={$type:`Note`,evolution:`evolution`,text:`text`,visibility:`visibility`},sC={$type:`Option`,name:`name`,value:`value`},cC={$type:`Packet`,accDescr:`accDescr`,accTitle:`accTitle`,blocks:`blocks`,title:`title`};function lC(e){return $.isInstance(e,cC.$type)}o(lC,`isPacket`);var uC={$type:`PacketBlock`,bits:`bits`,end:`end`,label:`label`,start:`start`};function dC(e){return $.isInstance(e,uC.$type)}o(dC,`isPacketBlock`);var fC={$type:`PegAny`,dot:`dot`},pC={$type:`PegGroup`,element:`element`},mC={$type:`PegIdentifier`,name:`name`},hC={$type:`PegLiteral`,value:`value`},gC={$type:`PegOrderedChoice`,alternatives:`alternatives`},_C={$type:`PegPrefix`,operator:`operator`,suffix:`suffix`},vC={$type:`PegPrimary`},yC={$type:`PegRule`,definition:`definition`,name:`name`},bC={$type:`PegSequence`,elements:`elements`},xC={$type:`PegSuffix`,operator:`operator`,primary:`primary`},SC={$type:`Pie`,accDescr:`accDescr`,accTitle:`accTitle`,sections:`sections`,showData:`showData`,title:`title`};function CC(e){return $.isInstance(e,SC.$type)}o(CC,`isPie`);var wC={$type:`PieSection`,label:`label`,value:`value`};function TC(e){return $.isInstance(e,wC.$type)}o(TC,`isPieSection`);var EC={$type:`Pipeline`,components:`components`,parent:`parent`},DC={$type:`PipelineComponent`,evolution:`evolution`,label:`label`,name:`name`},OC={$type:`Radar`,accDescr:`accDescr`,accTitle:`accTitle`,axes:`axes`,curves:`curves`,options:`options`,title:`title`},kC={$type:`Railroad`,accDescr:`accDescr`,accTitle:`accTitle`,rules:`rules`,title:`title`};function AC(e){return $.isInstance(e,kC.$type)}o(AC,`isRailroad`);var jC={$type:`RailroadAbnf`,accDescr:`accDescr`,accTitle:`accTitle`,rules:`rules`,title:`title`};function MC(e){return $.isInstance(e,jC.$type)}o(MC,`isRailroadAbnf`);var NC={$type:`RailroadChoiceExpr`,alternatives:`alternatives`},PC={$type:`RailroadEbnf`,accDescr:`accDescr`,accTitle:`accTitle`,rules:`rules`,title:`title`};function FC(e){return $.isInstance(e,PC.$type)}o(FC,`isRailroadEbnf`);var IC={$type:`RailroadExpression`},LC={$type:`RailroadNonTerminalExpr`,name:`name`},RC={$type:`RailroadOneOrMoreExpr`,element:`element`},zC={$type:`RailroadOptionalExpr`,element:`element`},BC={$type:`RailroadPeg`,accDescr:`accDescr`,accTitle:`accTitle`,rules:`rules`,title:`title`};function VC(e){return $.isInstance(e,BC.$type)}o(VC,`isRailroadPeg`);var HC={$type:`RailroadRule`,definition:`definition`,name:`name`},UC={$type:`RailroadSequenceExpr`,elements:`elements`},WC={$type:`RailroadSpecialExpr`,text:`text`},GC={$type:`RailroadTerminalExpr`,value:`value`},KC={$type:`RailroadZeroOrMoreExpr`,element:`element`},qC={$type:`Section`,classSelector:`classSelector`,name:`name`},JC={$type:`Service`,icon:`icon`,iconText:`iconText`,id:`id`,in:`in`,title:`title`},YC={$type:`Size`,height:`height`,width:`width`},XC={$type:`Statement`},ZC={$type:`Transition`,from:`from`,label:`label`,to:`to`};function QC(e){return $.isInstance(e,ZC.$type)}o(QC,`isTransition`);var $C={$type:`Treemap`,accDescr:`accDescr`,accTitle:`accTitle`,title:`title`,TreemapRows:`TreemapRows`};function ew(e){return $.isInstance(e,$C.$type)}o(ew,`isTreemap`);var tw={$type:`TreemapRow`,indent:`indent`,item:`item`},nw={$type:`TreeNode`,classAnnotation:`classAnnotation`,descAnnotation:`descAnnotation`,iconAnnotation:`iconAnnotation`,indent:`indent`,name:`name`},rw={$type:`TreeView`,accDescr:`accDescr`,accTitle:`accTitle`,nodes:`nodes`,title:`title`},Q={$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 iw(e){return $.isInstance(e,Q.$type)}o(iw,`isWardley`);var aw=class extends on{constructor(){super(...arguments),this.types={AbnfAlternation:{name:Nx.$type,properties:{alternatives:{name:Nx.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:Px.$type,properties:{elements:{name:Px.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:Fx.$type,properties:{primary:{name:Fx.primary},repeat:{name:Fx.repeat,optional:!0}},superTypes:[]},AbnfGroup:{name:Ix.$type,properties:{element:{name:Ix.element}},superTypes:[zx.$type]},AbnfNumVal:{name:Lx.$type,properties:{value:{name:Lx.value}},superTypes:[zx.$type]},AbnfOptionalGroup:{name:Rx.$type,properties:{element:{name:Rx.element}},superTypes:[zx.$type]},AbnfPrimary:{name:zx.$type,properties:{},superTypes:[]},AbnfRule:{name:Bx.$type,properties:{definition:{name:Bx.definition},name:{name:Bx.name}},superTypes:[]},AbnfRuleName:{name:Vx.$type,properties:{name:{name:Vx.name}},superTypes:[zx.$type]},AbnfStringLiteral:{name:Hx.$type,properties:{value:{name:Hx.value}},superTypes:[zx.$type]},Accelerator:{name:Ux.$type,properties:{name:{name:Ux.name},x:{name:Ux.x},y:{name:Ux.y}},superTypes:[]},Alignment:{name:Wx.$type,properties:{direction:{name:Wx.direction},members:{name:Wx.members,defaultValue:[]}},superTypes:[]},Anchor:{name:Gx.$type,properties:{evolution:{name:Gx.evolution},name:{name:Gx.name},visibility:{name:Gx.visibility}},superTypes:[]},Annotation:{name:Kx.$type,properties:{number:{name:Kx.number},text:{name:Kx.text},x:{name:Kx.x},y:{name:Kx.y}},superTypes:[]},Annotations:{name:qx.$type,properties:{x:{name:qx.x},y:{name:qx.y}},superTypes:[]},Architecture:{name:Jx.$type,properties:{accDescr:{name:Jx.accDescr,optional:!0},accTitle:{name:Jx.accTitle,optional:!0},alignments:{name:Jx.alignments,defaultValue:[],optional:!0},edges:{name:Jx.edges,defaultValue:[],optional:!0},groups:{name:Jx.groups,defaultValue:[],optional:!0},junctions:{name:Jx.junctions,defaultValue:[],optional:!0},services:{name:Jx.services,defaultValue:[],optional:!0},title:{name:Jx.title,optional:!0}},superTypes:[]},Axis:{name:Xx.$type,properties:{label:{name:Xx.label,optional:!0},name:{name:Xx.name}},superTypes:[]},Branch:{name:Zx.$type,properties:{name:{name:Zx.name},order:{name:Zx.order}},superTypes:[XC.$type]},Checkout:{name:$x.$type,properties:{branch:{name:$x.branch}},superTypes:[XC.$type]},CherryPicking:{name:eS.$type,properties:{id:{name:eS.id},parent:{name:eS.parent},tags:{name:eS.tags,defaultValue:[]}},superTypes:[XC.$type]},ClassDefStatement:{name:tS.$type,properties:{className:{name:tS.className},styleText:{name:tS.styleText}},superTypes:[]},Commit:{name:nS.$type,properties:{id:{name:nS.id},message:{name:nS.message},tags:{name:nS.tags,defaultValue:[]},type:{name:nS.type}},superTypes:[XC.$type]},Common:{name:iS.$type,properties:{accDescr:{name:iS.accDescr,optional:!0},accTitle:{name:iS.accTitle,optional:!0},title:{name:iS.title,optional:!0}},superTypes:[]},Component:{name:aS.$type,properties:{decorator:{name:aS.decorator,optional:!0},evolution:{name:aS.evolution},inertia:{name:aS.inertia,defaultValue:!1},label:{name:aS.label,optional:!0},name:{name:aS.name},visibility:{name:aS.visibility}},superTypes:[]},Curve:{name:oS.$type,properties:{entries:{name:oS.entries,defaultValue:[]},label:{name:oS.label,optional:!0},name:{name:oS.name}},superTypes:[]},Cynefin:{name:sS.$type,properties:{accDescr:{name:sS.accDescr,optional:!0},accTitle:{name:sS.accTitle,optional:!0},domains:{name:sS.domains,defaultValue:[],optional:!0},title:{name:sS.title,optional:!0},transitions:{name:sS.transitions,defaultValue:[],optional:!0}},superTypes:[]},Deaccelerator:{name:lS.$type,properties:{name:{name:lS.name},x:{name:lS.x},y:{name:lS.y}},superTypes:[]},Decorator:{name:uS.$type,properties:{strategy:{name:uS.strategy}},superTypes:[]},Direction:{name:dS.$type,properties:{accDescr:{name:dS.accDescr},accTitle:{name:dS.accTitle},dir:{name:dS.dir},statements:{name:dS.statements,defaultValue:[]},title:{name:dS.title}},superTypes:[JS.$type]},DomainBlock:{name:fS.$type,properties:{domain:{name:fS.domain},items:{name:fS.items,defaultValue:[],optional:!0}},superTypes:[]},DomainItem:{name:mS.$type,properties:{label:{name:mS.label}},superTypes:[]},EbnfChoice:{name:gS.$type,properties:{alternatives:{name:gS.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:_S.$type,properties:{except:{name:_S.except}},superTypes:[CS.$type]},EbnfGroup:{name:vS.$type,properties:{element:{name:vS.element}},superTypes:[wS.$type]},EbnfNonTerminal:{name:yS.$type,properties:{name:{name:yS.name}},superTypes:[wS.$type]},EbnfOneOrMorePostfix:{name:bS.$type,properties:{operator:{name:bS.operator}},superTypes:[CS.$type]},EbnfOptional:{name:xS.$type,properties:{element:{name:xS.element}},superTypes:[wS.$type]},EbnfOptionalPostfix:{name:SS.$type,properties:{operator:{name:SS.operator}},superTypes:[CS.$type]},EbnfPostfix:{name:CS.$type,properties:{},superTypes:[]},EbnfPrimary:{name:wS.$type,properties:{},superTypes:[]},EbnfRepetition:{name:TS.$type,properties:{element:{name:TS.element}},superTypes:[wS.$type]},EbnfRule:{name:ES.$type,properties:{definition:{name:ES.definition},name:{name:ES.name}},superTypes:[]},EbnfSequence:{name:DS.$type,properties:{elements:{name:DS.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:OS.$type,properties:{text:{name:OS.text}},superTypes:[wS.$type]},EbnfTerm:{name:kS.$type,properties:{base:{name:kS.base},postfixes:{name:kS.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:AS.$type,properties:{value:{name:AS.value}},superTypes:[wS.$type]},EbnfZeroOrMorePostfix:{name:jS.$type,properties:{operator:{name:jS.operator}},superTypes:[CS.$type]},Edge:{name:MS.$type,properties:{lhsDir:{name:MS.lhsDir},lhsGroup:{name:MS.lhsGroup,defaultValue:!1,optional:!0},lhsId:{name:MS.lhsId},lhsInto:{name:MS.lhsInto,defaultValue:!1,optional:!0},rhsDir:{name:MS.rhsDir},rhsGroup:{name:MS.rhsGroup,defaultValue:!1,optional:!0},rhsId:{name:MS.rhsId},rhsInto:{name:MS.rhsInto,defaultValue:!1,optional:!0},title:{name:MS.title,optional:!0}},superTypes:[]},EmDataEntity:{name:NS.$type,properties:{dataBlockValue:{name:NS.dataBlockValue},dataType:{name:NS.dataType,optional:!0},name:{name:NS.name}},superTypes:[]},EmFrame:{name:PS.$type,properties:{},superTypes:[]},EmGwt:{name:FS.$type,properties:{givenStatements:{name:FS.givenStatements,defaultValue:[]},sourceFrame:{name:FS.sourceFrame,referenceType:PS.$type},thenStatements:{name:FS.thenStatements,defaultValue:[]},whenStatements:{name:FS.whenStatements,defaultValue:[],optional:!0}},superTypes:[]},EmGwtStatement:{name:IS.$type,properties:{entityIdentifier:{name:IS.entityIdentifier,referenceType:LS.$type}},superTypes:[]},EmModelEntity:{name:LS.$type,properties:{name:{name:LS.name}},superTypes:[]},EmNoteEntity:{name:zS.$type,properties:{dataBlockValue:{name:zS.dataBlockValue},dataType:{name:zS.dataType,optional:!0},sourceFrame:{name:zS.sourceFrame,referenceType:PS.$type}},superTypes:[]},EmResetFrame:{name:BS.$type,properties:{dataInlineValue:{name:BS.dataInlineValue,optional:!0},dataReference:{name:BS.dataReference,referenceType:NS.$type,optional:!0},dataType:{name:BS.dataType,optional:!0},entityIdentifier:{name:BS.entityIdentifier},modelEntityType:{name:BS.modelEntityType},name:{name:BS.name},sourceFrames:{name:BS.sourceFrames,defaultValue:[],referenceType:PS.$type,optional:!0}},superTypes:[PS.$type]},EmTimeFrame:{name:HS.$type,properties:{dataInlineValue:{name:HS.dataInlineValue,optional:!0},dataReference:{name:HS.dataReference,referenceType:NS.$type,optional:!0},dataType:{name:HS.dataType,optional:!0},entityIdentifier:{name:HS.entityIdentifier},modelEntityType:{name:HS.modelEntityType},name:{name:HS.name},sourceFrames:{name:HS.sourceFrames,defaultValue:[],referenceType:PS.$type,optional:!0}},superTypes:[PS.$type]},Entry:{name:US.$type,properties:{axis:{name:US.axis,referenceType:Xx.$type,optional:!0},value:{name:US.value}},superTypes:[]},EventModel:{name:WS.$type,properties:{accDescr:{name:WS.accDescr,optional:!0},accTitle:{name:WS.accTitle,optional:!0},dataEntities:{name:WS.dataEntities,defaultValue:[],optional:!0},frames:{name:WS.frames,defaultValue:[],optional:!0},gwtEntities:{name:WS.gwtEntities,defaultValue:[],optional:!0},modelEntities:{name:WS.modelEntities,defaultValue:[],optional:!0},noteEntities:{name:WS.noteEntities,defaultValue:[],optional:!0},title:{name:WS.title,optional:!0}},superTypes:[]},Evolution:{name:GS.$type,properties:{stages:{name:GS.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:KS.$type,properties:{boundary:{name:KS.boundary,optional:!0},name:{name:KS.name},secondName:{name:KS.secondName,optional:!0}},superTypes:[]},Evolve:{name:qS.$type,properties:{component:{name:qS.component},target:{name:qS.target}},superTypes:[]},GitGraph:{name:JS.$type,properties:{accDescr:{name:JS.accDescr},accTitle:{name:JS.accTitle},statements:{name:JS.statements,defaultValue:[]},title:{name:JS.title}},superTypes:[]},Group:{name:XS.$type,properties:{icon:{name:XS.icon,optional:!0},id:{name:XS.id},in:{name:XS.in},title:{name:XS.title,optional:!0}},superTypes:[]},Info:{name:ZS.$type,properties:{accDescr:{name:ZS.accDescr,optional:!0},accTitle:{name:ZS.accTitle,optional:!0},title:{name:ZS.title,optional:!0}},superTypes:[]},Item:{name:$S.$type,properties:{classSelector:{name:$S.classSelector,optional:!0},name:{name:$S.name}},superTypes:[]},Junction:{name:eC.$type,properties:{id:{name:eC.id},in:{name:eC.in}},superTypes:[]},Label:{name:tC.$type,properties:{negX:{name:tC.negX,defaultValue:!1,optional:!0},negY:{name:tC.negY,defaultValue:!1,optional:!0},offsetX:{name:tC.offsetX},offsetY:{name:tC.offsetY}},superTypes:[]},Leaf:{name:nC.$type,properties:{classSelector:{name:nC.classSelector,optional:!0},name:{name:nC.name},value:{name:nC.value}},superTypes:[$S.$type]},Link:{name:rC.$type,properties:{arrow:{name:rC.arrow,optional:!0},from:{name:rC.from},fromPort:{name:rC.fromPort,optional:!0},linkLabel:{name:rC.linkLabel,optional:!0},to:{name:rC.to},toPort:{name:rC.toPort,optional:!0}},superTypes:[]},Merge:{name:iC.$type,properties:{branch:{name:iC.branch},id:{name:iC.id},tags:{name:iC.tags,defaultValue:[]},type:{name:iC.type}},superTypes:[XC.$type]},Note:{name:oC.$type,properties:{evolution:{name:oC.evolution},text:{name:oC.text},visibility:{name:oC.visibility}},superTypes:[]},Option:{name:sC.$type,properties:{name:{name:sC.name},value:{name:sC.value,defaultValue:!1}},superTypes:[]},Packet:{name:cC.$type,properties:{accDescr:{name:cC.accDescr,optional:!0},accTitle:{name:cC.accTitle,optional:!0},blocks:{name:cC.blocks,defaultValue:[],optional:!0},title:{name:cC.title,optional:!0}},superTypes:[]},PacketBlock:{name:uC.$type,properties:{bits:{name:uC.bits},end:{name:uC.end,optional:!0},label:{name:uC.label},start:{name:uC.start}},superTypes:[]},PegAny:{name:fC.$type,properties:{dot:{name:fC.dot}},superTypes:[vC.$type]},PegGroup:{name:pC.$type,properties:{element:{name:pC.element}},superTypes:[vC.$type]},PegIdentifier:{name:mC.$type,properties:{name:{name:mC.name}},superTypes:[vC.$type]},PegLiteral:{name:hC.$type,properties:{value:{name:hC.value}},superTypes:[vC.$type]},PegOrderedChoice:{name:gC.$type,properties:{alternatives:{name:gC.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:_C.$type,properties:{operator:{name:_C.operator,optional:!0},suffix:{name:_C.suffix}},superTypes:[]},PegPrimary:{name:vC.$type,properties:{},superTypes:[]},PegRule:{name:yC.$type,properties:{definition:{name:yC.definition},name:{name:yC.name}},superTypes:[]},PegSequence:{name:bC.$type,properties:{elements:{name:bC.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:xC.$type,properties:{operator:{name:xC.operator,optional:!0},primary:{name:xC.primary}},superTypes:[]},Pie:{name:SC.$type,properties:{accDescr:{name:SC.accDescr,optional:!0},accTitle:{name:SC.accTitle,optional:!0},sections:{name:SC.sections,defaultValue:[],optional:!0},showData:{name:SC.showData,defaultValue:!1,optional:!0},title:{name:SC.title,optional:!0}},superTypes:[]},PieSection:{name:wC.$type,properties:{label:{name:wC.label},value:{name:wC.value}},superTypes:[]},Pipeline:{name:EC.$type,properties:{components:{name:EC.components,defaultValue:[]},parent:{name:EC.parent}},superTypes:[]},PipelineComponent:{name:DC.$type,properties:{evolution:{name:DC.evolution},label:{name:DC.label,optional:!0},name:{name:DC.name}},superTypes:[]},Radar:{name:OC.$type,properties:{accDescr:{name:OC.accDescr,optional:!0},accTitle:{name:OC.accTitle,optional:!0},axes:{name:OC.axes,defaultValue:[],optional:!0},curves:{name:OC.curves,defaultValue:[],optional:!0},options:{name:OC.options,defaultValue:[],optional:!0},title:{name:OC.title,optional:!0}},superTypes:[]},Railroad:{name:kC.$type,properties:{accDescr:{name:kC.accDescr,optional:!0},accTitle:{name:kC.accTitle,optional:!0},rules:{name:kC.rules,defaultValue:[]},title:{name:kC.title,optional:!0}},superTypes:[]},RailroadAbnf:{name:jC.$type,properties:{accDescr:{name:jC.accDescr,optional:!0},accTitle:{name:jC.accTitle,optional:!0},rules:{name:jC.rules,defaultValue:[]},title:{name:jC.title,optional:!0}},superTypes:[]},RailroadChoiceExpr:{name:NC.$type,properties:{alternatives:{name:NC.alternatives,defaultValue:[]}},superTypes:[IC.$type]},RailroadEbnf:{name:PC.$type,properties:{accDescr:{name:PC.accDescr,optional:!0},accTitle:{name:PC.accTitle,optional:!0},rules:{name:PC.rules,defaultValue:[]},title:{name:PC.title,optional:!0}},superTypes:[]},RailroadExpression:{name:IC.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:LC.$type,properties:{name:{name:LC.name}},superTypes:[IC.$type]},RailroadOneOrMoreExpr:{name:RC.$type,properties:{element:{name:RC.element}},superTypes:[IC.$type]},RailroadOptionalExpr:{name:zC.$type,properties:{element:{name:zC.element}},superTypes:[IC.$type]},RailroadPeg:{name:BC.$type,properties:{accDescr:{name:BC.accDescr,optional:!0},accTitle:{name:BC.accTitle,optional:!0},rules:{name:BC.rules,defaultValue:[]},title:{name:BC.title,optional:!0}},superTypes:[]},RailroadRule:{name:HC.$type,properties:{definition:{name:HC.definition},name:{name:HC.name}},superTypes:[]},RailroadSequenceExpr:{name:UC.$type,properties:{elements:{name:UC.elements,defaultValue:[]}},superTypes:[IC.$type]},RailroadSpecialExpr:{name:WC.$type,properties:{text:{name:WC.text}},superTypes:[IC.$type]},RailroadTerminalExpr:{name:GC.$type,properties:{value:{name:GC.value}},superTypes:[IC.$type]},RailroadZeroOrMoreExpr:{name:KC.$type,properties:{element:{name:KC.element}},superTypes:[IC.$type]},Section:{name:qC.$type,properties:{classSelector:{name:qC.classSelector,optional:!0},name:{name:qC.name}},superTypes:[$S.$type]},Service:{name:JC.$type,properties:{icon:{name:JC.icon,optional:!0},iconText:{name:JC.iconText,optional:!0},id:{name:JC.id},in:{name:JC.in},title:{name:JC.title,optional:!0}},superTypes:[]},Size:{name:YC.$type,properties:{height:{name:YC.height},width:{name:YC.width}},superTypes:[]},Statement:{name:XC.$type,properties:{},superTypes:[]},Transition:{name:ZC.$type,properties:{from:{name:ZC.from},label:{name:ZC.label},to:{name:ZC.to}},superTypes:[]},TreeNode:{name:nw.$type,properties:{classAnnotation:{name:nw.classAnnotation,optional:!0},descAnnotation:{name:nw.descAnnotation,optional:!0},iconAnnotation:{name:nw.iconAnnotation,optional:!0},indent:{name:nw.indent,optional:!0},name:{name:nw.name}},superTypes:[]},TreeView:{name:rw.$type,properties:{accDescr:{name:rw.accDescr,optional:!0},accTitle:{name:rw.accTitle,optional:!0},nodes:{name:rw.nodes,defaultValue:[]},title:{name:rw.title,optional:!0}},superTypes:[]},Treemap:{name:$C.$type,properties:{accDescr:{name:$C.accDescr,optional:!0},accTitle:{name:$C.accTitle,optional:!0},title:{name:$C.title,optional:!0},TreemapRows:{name:$C.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:tw.$type,properties:{indent:{name:tw.indent,optional:!0},item:{name:tw.item}},superTypes:[]},Wardley:{name:Q.$type,properties:{accDescr:{name:Q.accDescr,optional:!0},accelerators:{name:Q.accelerators,defaultValue:[],optional:!0},accTitle:{name:Q.accTitle,optional:!0},anchors:{name:Q.anchors,defaultValue:[],optional:!0},annotation:{name:Q.annotation,defaultValue:[],optional:!0},annotations:{name:Q.annotations,defaultValue:[],optional:!0},components:{name:Q.components,defaultValue:[],optional:!0},deaccelerators:{name:Q.deaccelerators,defaultValue:[],optional:!0},evolution:{name:Q.evolution,optional:!0},evolves:{name:Q.evolves,defaultValue:[],optional:!0},links:{name:Q.links,defaultValue:[],optional:!0},notes:{name:Q.notes,defaultValue:[],optional:!0},pipelines:{name:Q.pipelines,defaultValue:[],optional:!0},size:{name:Q.size,optional:!0},title:{name:Q.title,optional:!0}},superTypes:[]}}}static{o(this,`MermaidAstReflection`)}},$=new aw,ow,sw=o(()=>ow??=Z(`{"$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`),cw,lw=o(()=>cw??=Z(`{"$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`),uw,dw=o(()=>uw??=Z('{"$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`),fw,pw=o(()=>fw??=Z(`{"$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`),mw,hw=o(()=>mw??=Z(`{"$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`),gw,_w=o(()=>gw??=Z(`{"$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`),vw,yw=o(()=>vw??=Z(`{"$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`),bw,xw=o(()=>bw??=Z(`{"$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`),Sw,Cw=o(()=>Sw??=Z(`{"$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`),ww,Tw=o(()=>ww??=Z(`{"$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`),Ew,Dw=o(()=>Ew??=Z(`{"$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`),Ow,kw=o(()=>Ow??=Z(`{"$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`),Aw,jw=o(()=>Aw??=Z(`{"$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`),Mw,Nw=o(()=>Mw??=Z(`{"$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`),Pw,Fw=o(()=>Pw??=Z(`{"$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`),Iw={languageId:`architecture`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Lw={languageId:`cynefin`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Rw={languageId:`eventmodeling`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},zw={languageId:`gitGraph`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Bw={languageId:`info`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Vw={languageId:`packet`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Hw={languageId:`pie`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Uw={languageId:`radar`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Ww={languageId:`railroadAbnf`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Gw={languageId:`railroadEbnf`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Kw={languageId:`railroad`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},qw={languageId:`railroadPeg`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Jw={languageId:`treemap`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Yw={languageId:`treeView`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Xw={languageId:`wardley`,fileExtensions:[`.mmd`,`.mermaid`],caseInsensitive:!1,mode:`production`},Zw={AstReflection:o(()=>new aw,`AstReflection`)},Qw={Grammar:o(()=>sw(),`Grammar`),LanguageMetaData:o(()=>Iw,`LanguageMetaData`),parser:{}},$w={Grammar:o(()=>lw(),`Grammar`),LanguageMetaData:o(()=>Lw,`LanguageMetaData`),parser:{}},eT={Grammar:o(()=>dw(),`Grammar`),LanguageMetaData:o(()=>Rw,`LanguageMetaData`),parser:{}},tT={Grammar:o(()=>pw(),`Grammar`),LanguageMetaData:o(()=>zw,`LanguageMetaData`),parser:{}},nT={Grammar:o(()=>hw(),`Grammar`),LanguageMetaData:o(()=>Bw,`LanguageMetaData`),parser:{}},rT={Grammar:o(()=>_w(),`Grammar`),LanguageMetaData:o(()=>Vw,`LanguageMetaData`),parser:{}},iT={Grammar:o(()=>yw(),`Grammar`),LanguageMetaData:o(()=>Hw,`LanguageMetaData`),parser:{}},aT={Grammar:o(()=>xw(),`Grammar`),LanguageMetaData:o(()=>Uw,`LanguageMetaData`),parser:{}},oT={Grammar:o(()=>Cw(),`Grammar`),LanguageMetaData:o(()=>Ww,`LanguageMetaData`),parser:{}},sT={Grammar:o(()=>Tw(),`Grammar`),LanguageMetaData:o(()=>Gw,`LanguageMetaData`),parser:{}},cT={Grammar:o(()=>Dw(),`Grammar`),LanguageMetaData:o(()=>Kw,`LanguageMetaData`),parser:{}},lT={Grammar:o(()=>kw(),`Grammar`),LanguageMetaData:o(()=>qw,`LanguageMetaData`),parser:{}},uT={Grammar:o(()=>jw(),`Grammar`),LanguageMetaData:o(()=>Jw,`LanguageMetaData`),parser:{}},dT={Grammar:o(()=>Nw(),`Grammar`),LanguageMetaData:o(()=>Yw,`LanguageMetaData`),parser:{}},fT={Grammar:o(()=>Fw(),`Grammar`),LanguageMetaData:o(()=>Xw,`LanguageMetaData`),parser:{}},pT={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},mT=class extends uy{static{o(this,`AbstractMermaidValueConverter`)}runConverter(e,t,n){let r=this.runCommonConverter(e,t,n);return r===void 0&&(r=this.runCustomConverter(e,t,n)),r===void 0?super.runConverter(e,t,n):r}runCommonConverter(e,t,n){let r=pT[e.name];if(r===void 0)return;let i=r.exec(t);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm,` `);if(i[2]!==void 0)return i[2].replace(/^\s*/gm,``).replace(/\s+$/gm,``).replace(/[\t ]{2,}/gm,` `).replace(/[\n\r]{2,}/gm,`
136
+ `)}}},hT=class extends mT{static{o(this,`CommonValueConverter`)}runCustomConverter(e,t,n){}},gT=class extends ly{static{o(this,`AbstractMermaidTokenBuilder`)}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,n){let r=super.buildKeywordTokens(e,t,n);return r.forEach(e=>{this.keywords.has(e.name)&&e.PATTERN!==void 0&&(e.PATTERN=RegExp(e.PATTERN.toString()+`(?:(?=%%)|(?!\\S))`))}),r}};(class extends gT{static{o(this,`CommonTokenBuilder`)}});export{ax as C,ix as S,VS as T,lT as _,$w as a,fT as b,tT as c,rT as d,iT as f,cT as g,sT as h,hT as i,nT as l,oT as m,mT as n,mx as o,aT as p,Qw as r,eT as s,gT as t,Zw as u,dT as v,sx as w,o as x,uT as y};