@codragraph/cli 2.1.4 → 2.1.6

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 (109) hide show
  1. package/README.md +36 -7
  2. package/dist/cli/ai-context.js +297 -0
  3. package/dist/cli/analyze.d.ts +9 -4
  4. package/dist/cli/analyze.js +37 -13
  5. package/dist/cli/index.js +40 -14
  6. package/dist/cli/status.d.ts +1 -1
  7. package/dist/cli/status.js +8 -0
  8. package/dist/cli/tool.d.ts +10 -2
  9. package/dist/cli/tool.js +100 -39
  10. package/dist/config/ignore-service.js +1 -0
  11. package/dist/core/adaptive-profile.d.ts +52 -0
  12. package/dist/core/adaptive-profile.js +180 -0
  13. package/dist/core/cgdb/cgdb-adapter.d.ts +34 -5
  14. package/dist/core/cgdb/cgdb-adapter.js +418 -5
  15. package/dist/core/cgdb/pool-adapter.js +130 -20
  16. package/dist/core/ingestion/parsing-processor.js +7 -1
  17. package/dist/core/ingestion/pipeline-phases/parse-impl.js +7 -1
  18. package/dist/core/ingestion/pipeline-phases/structure.js +19 -3
  19. package/dist/core/ingestion/pipeline.d.ts +10 -0
  20. package/dist/core/ingestion/workers/parse-worker.js +1 -1
  21. package/dist/core/ingestion/workers/worker-pool.d.ts +14 -1
  22. package/dist/core/ingestion/workers/worker-pool.js +33 -17
  23. package/dist/core/run-analyze.d.ts +27 -2
  24. package/dist/core/run-analyze.js +626 -32
  25. package/dist/core/search/bm25-index.d.ts +16 -8
  26. package/dist/core/search/bm25-index.js +72 -110
  27. package/dist/mcp/local/local-backend.d.ts +2 -0
  28. package/dist/mcp/local/local-backend.js +241 -21
  29. package/dist/storage/repo-manager.d.ts +29 -0
  30. package/dist/web/assets/__vite-browser-external-BIHI7g3E.js +1 -0
  31. package/dist/web/assets/agent-DcdaQnmu.js +1104 -0
  32. package/dist/web/assets/architectureDiagram-UL44E2DR-DFSpa3Hb.js +36 -0
  33. package/dist/web/assets/blockDiagram-7IZFK4PR-DlFaxH1b.js +132 -0
  34. package/dist/web/assets/{c4Diagram-DFAF54RM-C4Hl3J2U.js → c4Diagram-Y2BXMSZH-BjJ_Yrim.js} +1 -1
  35. package/dist/web/assets/{chunk-7RZVMHOQ-BitYcNVR.js → chunk-3SSMPTDK-KGZSzG3Y.js} +1 -1
  36. package/dist/web/assets/{chunk-TBF5ZNIQ-DL5stGM1.js → chunk-6764PJDD-p1sGJgVm.js} +1 -1
  37. package/dist/web/assets/{chunk-KSICW3F5-BYzvDLNI.js → chunk-AZZRMDJM-DIDkQA4V.js} +1 -1
  38. package/dist/web/assets/{chunk-AEOMTBSW-BgTIXPsY.js → chunk-JQRUD6KW-DAwg-yCU.js} +1 -1
  39. package/dist/web/assets/chunk-KRXBNO2N-ChVO_XdS.js +1 -0
  40. package/dist/web/assets/chunk-LCXTWHL2-DGYdb_Eh.js +231 -0
  41. package/dist/web/assets/{chunk-O5ABG6QK-dHwHzA6n.js → chunk-LII3EMHJ-Bzh9SNgD.js} +1 -1
  42. package/dist/web/assets/chunk-RG4AUYOV-Bcl7U_IV.js +206 -0
  43. package/dist/web/assets/{chunk-TU3PZOEN-RLyvLcv-.js → chunk-T5OCTHI4-CZYMg5sc.js} +1 -1
  44. package/dist/web/assets/chunk-W44A43WB-REOI67PN.js +13 -0
  45. package/dist/web/assets/{chunk-RWUO3TPN-BgRTY0_k.js → chunk-ZXARS5L4-BfFdV1tf.js} +1 -1
  46. package/dist/web/assets/classDiagram-KGZ6W3CR-B-qkKMYi.js +1 -0
  47. package/dist/web/assets/classDiagram-v2-72OJOZXJ-B-qkKMYi.js +1 -0
  48. package/dist/web/assets/{cose-bilkent-PNC4W37J-DVhePRYg.js → cose-bilkent-UX7MHV2Q-D6vANJGG.js} +1 -1
  49. package/dist/web/assets/dagre-ND4H6XIP-BiHe5Lal.js +4 -0
  50. package/dist/web/assets/diagram-3NCE3AQN-CEutBCOW.js +43 -0
  51. package/dist/web/assets/diagram-GF46GFSD-CZns6HPQ.js +24 -0
  52. package/dist/web/assets/diagram-HNR7UZ2L-Vz8fE5of.js +3 -0
  53. package/dist/web/assets/diagram-QXG6HAR7-D60HKZ_y.js +24 -0
  54. package/dist/web/assets/diagram-WEQXMOUZ-vGAf1p3E.js +10 -0
  55. package/dist/web/assets/{erDiagram-GCSMX5X6-C3dhDFA8.js → erDiagram-L5TCEMPS-DZaplJA6.js} +5 -5
  56. package/dist/web/assets/{flowDiagram-OTCZ4VVT-CWSFWmhr.js → flowDiagram-H6V6AXG4-BqUqeAsI.js} +9 -9
  57. package/dist/web/assets/ganttDiagram-JCBTUEKG-XEB6H-0G.js +292 -0
  58. package/dist/web/assets/gitGraphDiagram-S2ZK5IYY-7G50u1Cd.js +106 -0
  59. package/dist/web/assets/index-B5WxtMpv.js +1415 -0
  60. package/dist/web/assets/infoDiagram-3YFTVSEB-Cut_rzaf.js +2 -0
  61. package/dist/web/assets/{ishikawaDiagram-YMYX4NHK-DUoJvNP2.js → ishikawaDiagram-BNXS4ZKH-B4DGfGi3.js} +3 -3
  62. package/dist/web/assets/{journeyDiagram-SO5T7YLQ-RMFPNNqz.js → journeyDiagram-M6C3CM3L-BBFhsL3E.js} +1 -1
  63. package/dist/web/assets/{kanban-definition-LJHFXRCJ-BzpDs1K9.js → kanban-definition-75IXJCU3-DarGRyn3.js} +4 -4
  64. package/dist/web/assets/{katex-GD7MH7QM-DBQvrix-.js → katex-K3KEBU37-W5XTYMhr.js} +1 -1
  65. package/dist/web/assets/mindmap-definition-2TDM6QVE-BgeczIJM.js +96 -0
  66. package/dist/web/assets/pieDiagram-CU6KROY3-Kkoo-Noq.js +30 -0
  67. package/dist/web/assets/quadrantDiagram-VICAPDV7-CDQFeRWN.js +7 -0
  68. package/dist/web/assets/{requirementDiagram-M5DCFWZL-DLHOVTSv.js → requirementDiagram-JXO7QTGE-Cz9-XnkA.js} +2 -2
  69. package/dist/web/assets/sankeyDiagram-URQDO5SZ-CU26z0n7.js +40 -0
  70. package/dist/web/assets/sequenceDiagram-VS2MUI6T-OGK1FLOt.js +162 -0
  71. package/dist/web/assets/stateDiagram-7D4R322I-DJ9brq0U.js +1 -0
  72. package/dist/web/assets/stateDiagram-v2-36443NZ5-DhJ4Ky-7.js +1 -0
  73. package/dist/web/assets/{timeline-definition-5SPVSISX-TRSDRgPw.js → timeline-definition-O6YCAMPW-XZvnjqTT.js} +4 -4
  74. package/dist/web/assets/{vennDiagram-IE5QUKF5-DNy7HRBM.js → vennDiagram-MWXL3ELB-CJUssEjA.js} +6 -6
  75. package/dist/web/assets/wardley-L42UT6IY-5TKZOOLJ-DZr11zBG.js +173 -0
  76. package/dist/web/assets/wardleyDiagram-CUQ6CDDI-C276iqrN.js +78 -0
  77. package/dist/web/assets/{xychartDiagram-ZHJ5623Y-Dr9r7a35.js → xychartDiagram-N2JHSOCM-B9-uCZyP.js} +4 -4
  78. package/dist/web/index.html +1 -1
  79. package/hooks/claude/codragraph-hook.cjs +15 -122
  80. package/package.json +1 -1
  81. package/vendor/node_modules/node-addon-api/node_addon_api_except.stamp +0 -0
  82. package/dist/web/assets/agent-D5lb0zXz.js +0 -1089
  83. package/dist/web/assets/architectureDiagram-EMZXCZ2Q-CZtc99v_.js +0 -36
  84. package/dist/web/assets/blockDiagram-IGV67L2C-BtoUp-6Y.js +0 -132
  85. package/dist/web/assets/chunk-3GS5O3IE-DkUjU0WD.js +0 -231
  86. package/dist/web/assets/chunk-3YCYZ6SJ-CQkVgT_z.js +0 -1
  87. package/dist/web/assets/chunk-H3VCZNTA-Cx5XV_aC.js +0 -13
  88. package/dist/web/assets/chunk-HN6EAY2L-BBnyTNdB.js +0 -1
  89. package/dist/web/assets/chunk-PK6DOVAG-CvsEnugt.js +0 -206
  90. package/dist/web/assets/classDiagram-PPOCWD7C-DTr8QIOf.js +0 -1
  91. package/dist/web/assets/classDiagram-v2-23LJLIIU-DTr8QIOf.js +0 -1
  92. package/dist/web/assets/dagre-E77IOHMT-Dzx0A6ZU.js +0 -4
  93. package/dist/web/assets/diagram-H7BISOXX-CC9pRew1.js +0 -43
  94. package/dist/web/assets/diagram-JC5VWROH-Bau_i9tf.js +0 -24
  95. package/dist/web/assets/diagram-LXUTUG65-D9_FM2Gt.js +0 -10
  96. package/dist/web/assets/diagram-WEHSV5V5-BMlayouL.js +0 -24
  97. package/dist/web/assets/ganttDiagram-MUNLMDZQ-D3a67Yol.js +0 -292
  98. package/dist/web/assets/gitGraphDiagram-3HKGZ4G3-7jmry-vM.js +0 -106
  99. package/dist/web/assets/index-BgeqpYgd.js +0 -1415
  100. package/dist/web/assets/infoDiagram-MN7RKWGX-G7lhP0Ib.js +0 -2
  101. package/dist/web/assets/mindmap-definition-2EUWGEK5-Bk0O4roa.js +0 -96
  102. package/dist/web/assets/pieDiagram-3IATQBI2-DKU7kpgS.js +0 -30
  103. package/dist/web/assets/quadrantDiagram-E256RVCF-BY0TGWCS.js +0 -7
  104. package/dist/web/assets/sankeyDiagram-L3NBLAOT-DVMj5rX2.js +0 -10
  105. package/dist/web/assets/sequenceDiagram-ZOUHS735-CJC73bV-.js +0 -157
  106. package/dist/web/assets/stateDiagram-MLPALWAM-BCFyESls.js +0 -1
  107. package/dist/web/assets/stateDiagram-v2-B5LQ5ZB2-DahzzIca.js +0 -1
  108. package/dist/web/assets/wardley-RL74JXVD-BCRCBASE-B-eZEzf9.js +0 -161
  109. package/dist/web/assets/wardleyDiagram-XU3VSMPF-BP-r1xzR.js +0 -20
@@ -0,0 +1,173 @@
1
+ var Xw=Object.defineProperty;var Zw=(t,e,r)=>e in t?Xw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var Wr=(t,e,r)=>Zw(t,typeof e!="symbol"?e+"":e,r);import{m as s,b0 as ir}from"./index-B5WxtMpv.js";var Qw=Object.create,Wu=Object.defineProperty,eI=Object.getOwnPropertyDescriptor,ky=Object.getOwnPropertyNames,tI=Object.getPrototypeOf,rI=Object.prototype.hasOwnProperty,o=s((t,e)=>Wu(t,"name",{value:e,configurable:!0}),"__name"),nI=s((t,e)=>s(function(){return t&&(e=(0,t[ky(t)[0]])(t=0)),e},"__init"),"__esm"),J=s((t,e)=>s(function(){return e||(0,t[ky(t)[0]])((e={exports:{}}).exports,e),e.exports},"__require"),"__commonJS"),dn=s((t,e)=>{for(var r in e)Wu(t,r,{get:e[r],enumerable:!0})},"__export"),dp=s((t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ky(e))!rI.call(t,i)&&i!==r&&Wu(t,i,{get:s(()=>e[i],"get"),enumerable:!(n=eI(e,i))||n.enumerable});return t},"__copyProps"),ad=s((t,e,r)=>(dp(t,e,"default"),r&&dp(r,e,"default")),"__reExport"),Ny=s((t,e,r)=>(r=t!=null?Qw(tI(t)):{},dp(e||!t||!t.__esModule?Wu(r,"default",{value:t,enumerable:!0}):r,t)),"__toESM"),xy=s(t=>dp(Wu({},"__esModule",{value:!0}),t),"__toCommonJS"),sd={};dn(sd,{AnnotatedTextEdit:s(()=>Nr,"AnnotatedTextEdit"),ChangeAnnotation:s(()=>qn,"ChangeAnnotation"),ChangeAnnotationIdentifier:s(()=>Ze,"ChangeAnnotationIdentifier"),CodeAction:s(()=>Ih,"CodeAction"),CodeActionContext:s(()=>wh,"CodeActionContext"),CodeActionKind:s(()=>xh,"CodeActionKind"),CodeActionTriggerKind:s(()=>ru,"CodeActionTriggerKind"),CodeDescription:s(()=>oh,"CodeDescription"),CodeLens:s(()=>Ph,"CodeLens"),Color:s(()=>Qc,"Color"),ColorInformation:s(()=>th,"ColorInformation"),ColorPresentation:s(()=>rh,"ColorPresentation"),Command:s(()=>zn,"Command"),CompletionItem:s(()=>gh,"CompletionItem"),CompletionItemKind:s(()=>ph,"CompletionItemKind"),CompletionItemLabelDetails:s(()=>yh,"CompletionItemLabelDetails"),CompletionItemTag:s(()=>fh,"CompletionItemTag"),CompletionList:s(()=>vh,"CompletionList"),CreateFile:s(()=>Mo,"CreateFile"),DeleteFile:s(()=>Fo,"DeleteFile"),Diagnostic:s(()=>Zl,"Diagnostic"),DiagnosticRelatedInformation:s(()=>ep,"DiagnosticRelatedInformation"),DiagnosticSeverity:s(()=>ah,"DiagnosticSeverity"),DiagnosticTag:s(()=>sh,"DiagnosticTag"),DocumentHighlight:s(()=>Ch,"DocumentHighlight"),DocumentHighlightKind:s(()=>bh,"DocumentHighlightKind"),DocumentLink:s(()=>Dh,"DocumentLink"),DocumentSymbol:s(()=>Nh,"DocumentSymbol"),DocumentUri:s(()=>Zm,"DocumentUri"),EOL:s(()=>lN,"EOL"),FoldingRange:s(()=>ih,"FoldingRange"),FoldingRangeKind:s(()=>nh,"FoldingRangeKind"),FormattingOptions:s(()=>_h,"FormattingOptions"),Hover:s(()=>Th,"Hover"),InlayHint:s(()=>Uh,"InlayHint"),InlayHintKind:s(()=>np,"InlayHintKind"),InlayHintLabelPart:s(()=>ip,"InlayHintLabelPart"),InlineCompletionContext:s(()=>Yh,"InlineCompletionContext"),InlineCompletionItem:s(()=>Vh,"InlineCompletionItem"),InlineCompletionList:s(()=>Bh,"InlineCompletionList"),InlineCompletionTriggerKind:s(()=>Wh,"InlineCompletionTriggerKind"),InlineValueContext:s(()=>qh,"InlineValueContext"),InlineValueEvaluatableExpression:s(()=>zh,"InlineValueEvaluatableExpression"),InlineValueText:s(()=>Fh,"InlineValueText"),InlineValueVariableLookup:s(()=>Gh,"InlineValueVariableLookup"),InsertReplaceEdit:s(()=>mh,"InsertReplaceEdit"),InsertTextFormat:s(()=>dh,"InsertTextFormat"),InsertTextMode:s(()=>hh,"InsertTextMode"),Location:s(()=>Xl,"Location"),LocationLink:s(()=>eh,"LocationLink"),MarkedString:s(()=>tu,"MarkedString"),MarkupContent:s(()=>Go,"MarkupContent"),MarkupKind:s(()=>rp,"MarkupKind"),OptionalVersionedTextDocumentIdentifier:s(()=>eu,"OptionalVersionedTextDocumentIdentifier"),ParameterInformation:s(()=>Rh,"ParameterInformation"),Position:s(()=>oe,"Position"),Range:s(()=>ne,"Range"),RenameFile:s(()=>jo,"RenameFile"),SelectedCompletionInfo:s(()=>Hh,"SelectedCompletionInfo"),SelectionRange:s(()=>Lh,"SelectionRange"),SemanticTokenModifiers:s(()=>Mh,"SemanticTokenModifiers"),SemanticTokenTypes:s(()=>Oh,"SemanticTokenTypes"),SemanticTokens:s(()=>jh,"SemanticTokens"),SignatureInformation:s(()=>$h,"SignatureInformation"),StringValue:s(()=>Kh,"StringValue"),SymbolInformation:s(()=>Sh,"SymbolInformation"),SymbolKind:s(()=>Eh,"SymbolKind"),SymbolTag:s(()=>Ah,"SymbolTag"),TextDocument:s(()=>Xh,"TextDocument"),TextDocumentEdit:s(()=>Ql,"TextDocumentEdit"),TextDocumentIdentifier:s(()=>lh,"TextDocumentIdentifier"),TextDocumentItem:s(()=>ch,"TextDocumentItem"),TextEdit:s(()=>sr,"TextEdit"),URI:s(()=>Zc,"URI"),VersionedTextDocumentIdentifier:s(()=>uh,"VersionedTextDocumentIdentifier"),WorkspaceChange:s(()=>oN,"WorkspaceChange"),WorkspaceEdit:s(()=>tp,"WorkspaceEdit"),WorkspaceFolder:s(()=>Jh,"WorkspaceFolder"),WorkspaceSymbol:s(()=>kh,"WorkspaceSymbol"),integer:s(()=>Qm,"integer"),uinteger:s(()=>Jl,"uinteger")});var Zm,Zc,Qm,Jl,oe,ne,Xl,eh,Qc,th,rh,nh,ih,ep,ah,sh,oh,Zl,zn,sr,qn,Ze,Nr,Ql,Mo,jo,Fo,tp,Gl,xm,oN,lh,uh,eu,ch,rp,Go,ph,dh,fh,mh,hh,yh,gh,vh,tu,Th,Rh,$h,bh,Ch,Eh,Ah,Sh,kh,Nh,xh,ru,wh,Ih,Ph,_h,Dh,Lh,Oh,Mh,jh,Fh,Gh,zh,qh,np,ip,Uh,Kh,Vh,Bh,Wh,Hh,Yh,Jh,lN,Xh,gS,E,Hu=nI({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var t,e,r,n;(function(i){function a(l){return typeof l=="string"}s(a,"is"),o(a,"is"),i.is=a})(Zm||(Zm={})),function(i){function a(l){return typeof l=="string"}s(a,"is"),o(a,"is"),i.is=a}(Zc||(Zc={})),function(i){i.MIN_VALUE=-2147483648,i.MAX_VALUE=2147483647;function a(l){return typeof l=="number"&&i.MIN_VALUE<=l&&l<=i.MAX_VALUE}s(a,"is"),o(a,"is"),i.is=a}(Qm||(Qm={})),function(i){i.MIN_VALUE=0,i.MAX_VALUE=2147483647;function a(l){return typeof l=="number"&&i.MIN_VALUE<=l&&l<=i.MAX_VALUE}s(a,"is"),o(a,"is"),i.is=a}(Jl||(Jl={})),function(i){function a(c,u){return c===Number.MAX_VALUE&&(c=Jl.MAX_VALUE),u===Number.MAX_VALUE&&(u=Jl.MAX_VALUE),{line:c,character:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&E.uinteger(u.line)&&E.uinteger(u.character)}s(l,"is"),o(l,"is"),i.is=l}(oe||(oe={})),function(i){function a(c,u,p,d){if(E.uinteger(c)&&E.uinteger(u)&&E.uinteger(p)&&E.uinteger(d))return{start:oe.create(c,u),end:oe.create(p,d)};if(oe.is(c)&&oe.is(u))return{start:c,end:u};throw new Error(`Range#create called with invalid arguments[${c}, ${u}, ${p}, ${d}]`)}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&oe.is(u.start)&&oe.is(u.end)}s(l,"is"),o(l,"is"),i.is=l}(ne||(ne={})),function(i){function a(c,u){return{uri:c,range:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&ne.is(u.range)&&(E.string(u.uri)||E.undefined(u.uri))}s(l,"is"),o(l,"is"),i.is=l}(Xl||(Xl={})),function(i){function a(c,u,p,d){return{targetUri:c,targetRange:u,targetSelectionRange:p,originSelectionRange:d}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&ne.is(u.targetRange)&&E.string(u.targetUri)&&ne.is(u.targetSelectionRange)&&(ne.is(u.originSelectionRange)||E.undefined(u.originSelectionRange))}s(l,"is"),o(l,"is"),i.is=l}(eh||(eh={})),function(i){function a(c,u,p,d){return{red:c,green:u,blue:p,alpha:d}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&E.numberRange(u.red,0,1)&&E.numberRange(u.green,0,1)&&E.numberRange(u.blue,0,1)&&E.numberRange(u.alpha,0,1)}s(l,"is"),o(l,"is"),i.is=l}(Qc||(Qc={})),function(i){function a(c,u){return{range:c,color:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&ne.is(u.range)&&Qc.is(u.color)}s(l,"is"),o(l,"is"),i.is=l}(th||(th={})),function(i){function a(c,u,p){return{label:c,textEdit:u,additionalTextEdits:p}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&E.string(u.label)&&(E.undefined(u.textEdit)||sr.is(u))&&(E.undefined(u.additionalTextEdits)||E.typedArray(u.additionalTextEdits,sr.is))}s(l,"is"),o(l,"is"),i.is=l}(rh||(rh={})),function(i){i.Comment="comment",i.Imports="imports",i.Region="region"}(nh||(nh={})),function(i){function a(c,u,p,d,f,m){let g={startLine:c,endLine:u};return E.defined(p)&&(g.startCharacter=p),E.defined(d)&&(g.endCharacter=d),E.defined(f)&&(g.kind=f),E.defined(m)&&(g.collapsedText=m),g}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&E.uinteger(u.startLine)&&E.uinteger(u.startLine)&&(E.undefined(u.startCharacter)||E.uinteger(u.startCharacter))&&(E.undefined(u.endCharacter)||E.uinteger(u.endCharacter))&&(E.undefined(u.kind)||E.string(u.kind))}s(l,"is"),o(l,"is"),i.is=l}(ih||(ih={})),function(i){function a(c,u){return{location:c,message:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&Xl.is(u.location)&&E.string(u.message)}s(l,"is"),o(l,"is"),i.is=l}(ep||(ep={})),function(i){i.Error=1,i.Warning=2,i.Information=3,i.Hint=4}(ah||(ah={})),function(i){i.Unnecessary=1,i.Deprecated=2}(sh||(sh={})),function(i){function a(l){let c=l;return E.objectLiteral(c)&&E.string(c.href)}s(a,"is"),o(a,"is"),i.is=a}(oh||(oh={})),function(i){function a(c,u,p,d,f,m){let g={range:c,message:u};return E.defined(p)&&(g.severity=p),E.defined(d)&&(g.code=d),E.defined(f)&&(g.source=f),E.defined(m)&&(g.relatedInformation=m),g}s(a,"create"),o(a,"create"),i.create=a;function l(c){var u;let p=c;return E.defined(p)&&ne.is(p.range)&&E.string(p.message)&&(E.number(p.severity)||E.undefined(p.severity))&&(E.integer(p.code)||E.string(p.code)||E.undefined(p.code))&&(E.undefined(p.codeDescription)||E.string((u=p.codeDescription)===null||u===void 0?void 0:u.href))&&(E.string(p.source)||E.undefined(p.source))&&(E.undefined(p.relatedInformation)||E.typedArray(p.relatedInformation,ep.is))}s(l,"is"),o(l,"is"),i.is=l}(Zl||(Zl={})),function(i){function a(c,u,...p){let d={title:c,command:u};return E.defined(p)&&p.length>0&&(d.arguments=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.string(u.title)&&E.string(u.command)}s(l,"is"),o(l,"is"),i.is=l}(zn||(zn={})),function(i){function a(p,d){return{range:p,newText:d}}s(a,"replace"),o(a,"replace"),i.replace=a;function l(p,d){return{range:{start:p,end:p},newText:d}}s(l,"insert"),o(l,"insert"),i.insert=l;function c(p){return{range:p,newText:""}}s(c,"del"),o(c,"del"),i.del=c;function u(p){let d=p;return E.objectLiteral(d)&&E.string(d.newText)&&ne.is(d.range)}s(u,"is"),o(u,"is"),i.is=u}(sr||(sr={})),function(i){function a(c,u,p){let d={label:c};return u!==void 0&&(d.needsConfirmation=u),p!==void 0&&(d.description=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&E.string(u.label)&&(E.boolean(u.needsConfirmation)||u.needsConfirmation===void 0)&&(E.string(u.description)||u.description===void 0)}s(l,"is"),o(l,"is"),i.is=l}(qn||(qn={})),function(i){function a(l){let c=l;return E.string(c)}s(a,"is"),o(a,"is"),i.is=a}(Ze||(Ze={})),function(i){function a(p,d,f){return{range:p,newText:d,annotationId:f}}s(a,"replace"),o(a,"replace"),i.replace=a;function l(p,d,f){return{range:{start:p,end:p},newText:d,annotationId:f}}s(l,"insert"),o(l,"insert"),i.insert=l;function c(p,d){return{range:p,newText:"",annotationId:d}}s(c,"del"),o(c,"del"),i.del=c;function u(p){let d=p;return sr.is(d)&&(qn.is(d.annotationId)||Ze.is(d.annotationId))}s(u,"is"),o(u,"is"),i.is=u}(Nr||(Nr={})),function(i){function a(c,u){return{textDocument:c,edits:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&eu.is(u.textDocument)&&Array.isArray(u.edits)}s(l,"is"),o(l,"is"),i.is=l}(Ql||(Ql={})),function(i){function a(c,u,p){let d={kind:"create",uri:c};return u!==void 0&&(u.overwrite!==void 0||u.ignoreIfExists!==void 0)&&(d.options=u),p!==void 0&&(d.annotationId=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&u.kind==="create"&&E.string(u.uri)&&(u.options===void 0||(u.options.overwrite===void 0||E.boolean(u.options.overwrite))&&(u.options.ignoreIfExists===void 0||E.boolean(u.options.ignoreIfExists)))&&(u.annotationId===void 0||Ze.is(u.annotationId))}s(l,"is"),o(l,"is"),i.is=l}(Mo||(Mo={})),function(i){function a(c,u,p,d){let f={kind:"rename",oldUri:c,newUri:u};return p!==void 0&&(p.overwrite!==void 0||p.ignoreIfExists!==void 0)&&(f.options=p),d!==void 0&&(f.annotationId=d),f}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&u.kind==="rename"&&E.string(u.oldUri)&&E.string(u.newUri)&&(u.options===void 0||(u.options.overwrite===void 0||E.boolean(u.options.overwrite))&&(u.options.ignoreIfExists===void 0||E.boolean(u.options.ignoreIfExists)))&&(u.annotationId===void 0||Ze.is(u.annotationId))}s(l,"is"),o(l,"is"),i.is=l}(jo||(jo={})),function(i){function a(c,u,p){let d={kind:"delete",uri:c};return u!==void 0&&(u.recursive!==void 0||u.ignoreIfNotExists!==void 0)&&(d.options=u),p!==void 0&&(d.annotationId=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&u.kind==="delete"&&E.string(u.uri)&&(u.options===void 0||(u.options.recursive===void 0||E.boolean(u.options.recursive))&&(u.options.ignoreIfNotExists===void 0||E.boolean(u.options.ignoreIfNotExists)))&&(u.annotationId===void 0||Ze.is(u.annotationId))}s(l,"is"),o(l,"is"),i.is=l}(Fo||(Fo={})),function(i){function a(l){let c=l;return c&&(c.changes!==void 0||c.documentChanges!==void 0)&&(c.documentChanges===void 0||c.documentChanges.every(u=>E.string(u.kind)?Mo.is(u)||jo.is(u)||Fo.is(u):Ql.is(u)))}s(a,"is"),o(a,"is"),i.is=a}(tp||(tp={})),Gl=(t=class{constructor(a,l){this.edits=a,this.changeAnnotations=l}insert(a,l,c){let u,p;if(c===void 0?u=sr.insert(a,l):Ze.is(c)?(p=c,u=Nr.insert(a,l,c)):(this.assertChangeAnnotations(this.changeAnnotations),p=this.changeAnnotations.manage(c),u=Nr.insert(a,l,p)),this.edits.push(u),p!==void 0)return p}replace(a,l,c){let u,p;if(c===void 0?u=sr.replace(a,l):Ze.is(c)?(p=c,u=Nr.replace(a,l,c)):(this.assertChangeAnnotations(this.changeAnnotations),p=this.changeAnnotations.manage(c),u=Nr.replace(a,l,p)),this.edits.push(u),p!==void 0)return p}delete(a,l){let c,u;if(l===void 0?c=sr.del(a):Ze.is(l)?(u=l,c=Nr.del(a,l)):(this.assertChangeAnnotations(this.changeAnnotations),u=this.changeAnnotations.manage(l),c=Nr.del(a,u)),this.edits.push(c),u!==void 0)return u}add(a){this.edits.push(a)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(a){if(a===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},s(t,"TextEditChangeImpl"),o(t,"TextEditChangeImpl"),t),xm=(e=class{constructor(a){this._annotations=a===void 0?Object.create(null):a,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(a,l){let c;if(Ze.is(a)?c=a:(c=this.nextId(),l=a),this._annotations[c]!==void 0)throw new Error(`Id ${c} is already in use.`);if(l===void 0)throw new Error(`No annotation provided for id ${c}`);return this._annotations[c]=l,this._size++,c}nextId(){return this._counter++,this._counter.toString()}},s(e,"ChangeAnnotations"),o(e,"ChangeAnnotations"),e),oN=(r=class{constructor(a){this._textEditChanges=Object.create(null),a!==void 0?(this._workspaceEdit=a,a.documentChanges?(this._changeAnnotations=new xm(a.changeAnnotations),a.changeAnnotations=this._changeAnnotations.all(),a.documentChanges.forEach(l=>{if(Ql.is(l)){let c=new Gl(l.edits,this._changeAnnotations);this._textEditChanges[l.textDocument.uri]=c}})):a.changes&&Object.keys(a.changes).forEach(l=>{let c=new Gl(a.changes[l]);this._textEditChanges[l]=c})):this._workspaceEdit={}}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(a){if(eu.is(a)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let l={uri:a.uri,version:a.version},c=this._textEditChanges[l.uri];if(!c){let u=[],p={textDocument:l,edits:u};this._workspaceEdit.documentChanges.push(p),c=new Gl(u,this._changeAnnotations),this._textEditChanges[l.uri]=c}return c}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let l=this._textEditChanges[a];if(!l){let c=[];this._workspaceEdit.changes[a]=c,l=new Gl(c),this._textEditChanges[a]=l}return l}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new xm,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(a,l,c){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let u;qn.is(l)||Ze.is(l)?u=l:c=l;let p,d;if(u===void 0?p=Mo.create(a,c):(d=Ze.is(u)?u:this._changeAnnotations.manage(u),p=Mo.create(a,c,d)),this._workspaceEdit.documentChanges.push(p),d!==void 0)return d}renameFile(a,l,c,u){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let p;qn.is(c)||Ze.is(c)?p=c:u=c;let d,f;if(p===void 0?d=jo.create(a,l,u):(f=Ze.is(p)?p:this._changeAnnotations.manage(p),d=jo.create(a,l,u,f)),this._workspaceEdit.documentChanges.push(d),f!==void 0)return f}deleteFile(a,l,c){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let u;qn.is(l)||Ze.is(l)?u=l:c=l;let p,d;if(u===void 0?p=Fo.create(a,c):(d=Ze.is(u)?u:this._changeAnnotations.manage(u),p=Fo.create(a,c,d)),this._workspaceEdit.documentChanges.push(p),d!==void 0)return d}},s(r,"WorkspaceChange"),o(r,"WorkspaceChange"),r),function(i){function a(c){return{uri:c}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.string(u.uri)}s(l,"is"),o(l,"is"),i.is=l}(lh||(lh={})),function(i){function a(c,u){return{uri:c,version:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.string(u.uri)&&E.integer(u.version)}s(l,"is"),o(l,"is"),i.is=l}(uh||(uh={})),function(i){function a(c,u){return{uri:c,version:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.string(u.uri)&&(u.version===null||E.integer(u.version))}s(l,"is"),o(l,"is"),i.is=l}(eu||(eu={})),function(i){function a(c,u,p,d){return{uri:c,languageId:u,version:p,text:d}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.string(u.uri)&&E.string(u.languageId)&&E.integer(u.version)&&E.string(u.text)}s(l,"is"),o(l,"is"),i.is=l}(ch||(ch={})),function(i){i.PlainText="plaintext",i.Markdown="markdown";function a(l){let c=l;return c===i.PlainText||c===i.Markdown}s(a,"is"),o(a,"is"),i.is=a}(rp||(rp={})),function(i){function a(l){let c=l;return E.objectLiteral(l)&&rp.is(c.kind)&&E.string(c.value)}s(a,"is"),o(a,"is"),i.is=a}(Go||(Go={})),function(i){i.Text=1,i.Method=2,i.Function=3,i.Constructor=4,i.Field=5,i.Variable=6,i.Class=7,i.Interface=8,i.Module=9,i.Property=10,i.Unit=11,i.Value=12,i.Enum=13,i.Keyword=14,i.Snippet=15,i.Color=16,i.File=17,i.Reference=18,i.Folder=19,i.EnumMember=20,i.Constant=21,i.Struct=22,i.Event=23,i.Operator=24,i.TypeParameter=25}(ph||(ph={})),function(i){i.PlainText=1,i.Snippet=2}(dh||(dh={})),function(i){i.Deprecated=1}(fh||(fh={})),function(i){function a(c,u,p){return{newText:c,insert:u,replace:p}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&E.string(u.newText)&&ne.is(u.insert)&&ne.is(u.replace)}s(l,"is"),o(l,"is"),i.is=l}(mh||(mh={})),function(i){i.asIs=1,i.adjustIndentation=2}(hh||(hh={})),function(i){function a(l){let c=l;return c&&(E.string(c.detail)||c.detail===void 0)&&(E.string(c.description)||c.description===void 0)}s(a,"is"),o(a,"is"),i.is=a}(yh||(yh={})),function(i){function a(l){return{label:l}}s(a,"create"),o(a,"create"),i.create=a}(gh||(gh={})),function(i){function a(l,c){return{items:l||[],isIncomplete:!!c}}s(a,"create"),o(a,"create"),i.create=a}(vh||(vh={})),function(i){function a(c){return c.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}s(a,"fromPlainText"),o(a,"fromPlainText"),i.fromPlainText=a;function l(c){let u=c;return E.string(u)||E.objectLiteral(u)&&E.string(u.language)&&E.string(u.value)}s(l,"is"),o(l,"is"),i.is=l}(tu||(tu={})),function(i){function a(l){let c=l;return!!c&&E.objectLiteral(c)&&(Go.is(c.contents)||tu.is(c.contents)||E.typedArray(c.contents,tu.is))&&(l.range===void 0||ne.is(l.range))}s(a,"is"),o(a,"is"),i.is=a}(Th||(Th={})),function(i){function a(l,c){return c?{label:l,documentation:c}:{label:l}}s(a,"create"),o(a,"create"),i.create=a}(Rh||(Rh={})),function(i){function a(l,c,...u){let p={label:l};return E.defined(c)&&(p.documentation=c),E.defined(u)?p.parameters=u:p.parameters=[],p}s(a,"create"),o(a,"create"),i.create=a}($h||($h={})),function(i){i.Text=1,i.Read=2,i.Write=3}(bh||(bh={})),function(i){function a(l,c){let u={range:l};return E.number(c)&&(u.kind=c),u}s(a,"create"),o(a,"create"),i.create=a}(Ch||(Ch={})),function(i){i.File=1,i.Module=2,i.Namespace=3,i.Package=4,i.Class=5,i.Method=6,i.Property=7,i.Field=8,i.Constructor=9,i.Enum=10,i.Interface=11,i.Function=12,i.Variable=13,i.Constant=14,i.String=15,i.Number=16,i.Boolean=17,i.Array=18,i.Object=19,i.Key=20,i.Null=21,i.EnumMember=22,i.Struct=23,i.Event=24,i.Operator=25,i.TypeParameter=26}(Eh||(Eh={})),function(i){i.Deprecated=1}(Ah||(Ah={})),function(i){function a(l,c,u,p,d){let f={name:l,kind:c,location:{uri:p,range:u}};return d&&(f.containerName=d),f}s(a,"create"),o(a,"create"),i.create=a}(Sh||(Sh={})),function(i){function a(l,c,u,p){return p!==void 0?{name:l,kind:c,location:{uri:u,range:p}}:{name:l,kind:c,location:{uri:u}}}s(a,"create"),o(a,"create"),i.create=a}(kh||(kh={})),function(i){function a(c,u,p,d,f,m){let g={name:c,detail:u,kind:p,range:d,selectionRange:f};return m!==void 0&&(g.children=m),g}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&E.string(u.name)&&E.number(u.kind)&&ne.is(u.range)&&ne.is(u.selectionRange)&&(u.detail===void 0||E.string(u.detail))&&(u.deprecated===void 0||E.boolean(u.deprecated))&&(u.children===void 0||Array.isArray(u.children))&&(u.tags===void 0||Array.isArray(u.tags))}s(l,"is"),o(l,"is"),i.is=l}(Nh||(Nh={})),function(i){i.Empty="",i.QuickFix="quickfix",i.Refactor="refactor",i.RefactorExtract="refactor.extract",i.RefactorInline="refactor.inline",i.RefactorRewrite="refactor.rewrite",i.Source="source",i.SourceOrganizeImports="source.organizeImports",i.SourceFixAll="source.fixAll"}(xh||(xh={})),function(i){i.Invoked=1,i.Automatic=2}(ru||(ru={})),function(i){function a(c,u,p){let d={diagnostics:c};return u!=null&&(d.only=u),p!=null&&(d.triggerKind=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.typedArray(u.diagnostics,Zl.is)&&(u.only===void 0||E.typedArray(u.only,E.string))&&(u.triggerKind===void 0||u.triggerKind===ru.Invoked||u.triggerKind===ru.Automatic)}s(l,"is"),o(l,"is"),i.is=l}(wh||(wh={})),function(i){function a(c,u,p){let d={title:c},f=!0;return typeof u=="string"?(f=!1,d.kind=u):zn.is(u)?d.command=u:d.edit=u,f&&p!==void 0&&(d.kind=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u&&E.string(u.title)&&(u.diagnostics===void 0||E.typedArray(u.diagnostics,Zl.is))&&(u.kind===void 0||E.string(u.kind))&&(u.edit!==void 0||u.command!==void 0)&&(u.command===void 0||zn.is(u.command))&&(u.isPreferred===void 0||E.boolean(u.isPreferred))&&(u.edit===void 0||tp.is(u.edit))}s(l,"is"),o(l,"is"),i.is=l}(Ih||(Ih={})),function(i){function a(c,u){let p={range:c};return E.defined(u)&&(p.data=u),p}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&ne.is(u.range)&&(E.undefined(u.command)||zn.is(u.command))}s(l,"is"),o(l,"is"),i.is=l}(Ph||(Ph={})),function(i){function a(c,u){return{tabSize:c,insertSpaces:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&E.uinteger(u.tabSize)&&E.boolean(u.insertSpaces)}s(l,"is"),o(l,"is"),i.is=l}(_h||(_h={})),function(i){function a(c,u,p){return{range:c,target:u,data:p}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&ne.is(u.range)&&(E.undefined(u.target)||E.string(u.target))}s(l,"is"),o(l,"is"),i.is=l}(Dh||(Dh={})),function(i){function a(c,u){return{range:c,parent:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&ne.is(u.range)&&(u.parent===void 0||i.is(u.parent))}s(l,"is"),o(l,"is"),i.is=l}(Lh||(Lh={})),function(i){i.namespace="namespace",i.type="type",i.class="class",i.enum="enum",i.interface="interface",i.struct="struct",i.typeParameter="typeParameter",i.parameter="parameter",i.variable="variable",i.property="property",i.enumMember="enumMember",i.event="event",i.function="function",i.method="method",i.macro="macro",i.keyword="keyword",i.modifier="modifier",i.comment="comment",i.string="string",i.number="number",i.regexp="regexp",i.operator="operator",i.decorator="decorator"}(Oh||(Oh={})),function(i){i.declaration="declaration",i.definition="definition",i.readonly="readonly",i.static="static",i.deprecated="deprecated",i.abstract="abstract",i.async="async",i.modification="modification",i.documentation="documentation",i.defaultLibrary="defaultLibrary"}(Mh||(Mh={})),function(i){function a(l){let c=l;return E.objectLiteral(c)&&(c.resultId===void 0||typeof c.resultId=="string")&&Array.isArray(c.data)&&(c.data.length===0||typeof c.data[0]=="number")}s(a,"is"),o(a,"is"),i.is=a}(jh||(jh={})),function(i){function a(c,u){return{range:c,text:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u!=null&&ne.is(u.range)&&E.string(u.text)}s(l,"is"),o(l,"is"),i.is=l}(Fh||(Fh={})),function(i){function a(c,u,p){return{range:c,variableName:u,caseSensitiveLookup:p}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u!=null&&ne.is(u.range)&&E.boolean(u.caseSensitiveLookup)&&(E.string(u.variableName)||u.variableName===void 0)}s(l,"is"),o(l,"is"),i.is=l}(Gh||(Gh={})),function(i){function a(c,u){return{range:c,expression:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return u!=null&&ne.is(u.range)&&(E.string(u.expression)||u.expression===void 0)}s(l,"is"),o(l,"is"),i.is=l}(zh||(zh={})),function(i){function a(c,u){return{frameId:c,stoppedLocation:u}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.defined(u)&&ne.is(c.stoppedLocation)}s(l,"is"),o(l,"is"),i.is=l}(qh||(qh={})),function(i){i.Type=1,i.Parameter=2;function a(l){return l===1||l===2}s(a,"is"),o(a,"is"),i.is=a}(np||(np={})),function(i){function a(c){return{value:c}}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&(u.tooltip===void 0||E.string(u.tooltip)||Go.is(u.tooltip))&&(u.location===void 0||Xl.is(u.location))&&(u.command===void 0||zn.is(u.command))}s(l,"is"),o(l,"is"),i.is=l}(ip||(ip={})),function(i){function a(c,u,p){let d={position:c,label:u};return p!==void 0&&(d.kind=p),d}s(a,"create"),o(a,"create"),i.create=a;function l(c){let u=c;return E.objectLiteral(u)&&oe.is(u.position)&&(E.string(u.label)||E.typedArray(u.label,ip.is))&&(u.kind===void 0||np.is(u.kind))&&u.textEdits===void 0||E.typedArray(u.textEdits,sr.is)&&(u.tooltip===void 0||E.string(u.tooltip)||Go.is(u.tooltip))&&(u.paddingLeft===void 0||E.boolean(u.paddingLeft))&&(u.paddingRight===void 0||E.boolean(u.paddingRight))}s(l,"is"),o(l,"is"),i.is=l}(Uh||(Uh={})),function(i){function a(l){return{kind:"snippet",value:l}}s(a,"createSnippet"),o(a,"createSnippet"),i.createSnippet=a}(Kh||(Kh={})),function(i){function a(l,c,u,p){return{insertText:l,filterText:c,range:u,command:p}}s(a,"create"),o(a,"create"),i.create=a}(Vh||(Vh={})),function(i){function a(l){return{items:l}}s(a,"create"),o(a,"create"),i.create=a}(Bh||(Bh={})),function(i){i.Invoked=0,i.Automatic=1}(Wh||(Wh={})),function(i){function a(l,c){return{range:l,text:c}}s(a,"create"),o(a,"create"),i.create=a}(Hh||(Hh={})),function(i){function a(l,c){return{triggerKind:l,selectedCompletionInfo:c}}s(a,"create"),o(a,"create"),i.create=a}(Yh||(Yh={})),function(i){function a(l){let c=l;return E.objectLiteral(c)&&Zc.is(c.uri)&&E.string(c.name)}s(a,"is"),o(a,"is"),i.is=a}(Jh||(Jh={})),lN=[`
2
+ `,`\r
3
+ `,"\r"],function(i){function a(p,d,f,m){return new gS(p,d,f,m)}s(a,"create"),o(a,"create"),i.create=a;function l(p){let d=p;return!!(E.defined(d)&&E.string(d.uri)&&(E.undefined(d.languageId)||E.string(d.languageId))&&E.uinteger(d.lineCount)&&E.func(d.getText)&&E.func(d.positionAt)&&E.func(d.offsetAt))}s(l,"is"),o(l,"is"),i.is=l;function c(p,d){let f=p.getText(),m=u(d,(y,T)=>{let A=y.range.start.line-T.range.start.line;return A===0?y.range.start.character-T.range.start.character:A}),g=f.length;for(let y=m.length-1;y>=0;y--){let T=m[y],A=p.offsetAt(T.range.start),b=p.offsetAt(T.range.end);if(b<=g)f=f.substring(0,A)+T.newText+f.substring(b,f.length);else throw new Error("Overlapping edit");g=A}return f}s(c,"applyEdits"),o(c,"applyEdits"),i.applyEdits=c;function u(p,d){if(p.length<=1)return p;let f=p.length/2|0,m=p.slice(0,f),g=p.slice(f);u(m,d),u(g,d);let y=0,T=0,A=0;for(;y<m.length&&T<g.length;)d(m[y],g[T])<=0?p[A++]=m[y++]:p[A++]=g[T++];for(;y<m.length;)p[A++]=m[y++];for(;T<g.length;)p[A++]=g[T++];return p}s(u,"mergeSort2"),o(u,"mergeSort")}(Xh||(Xh={})),gS=(n=class{constructor(a,l,c,u){this._uri=a,this._languageId=l,this._version=c,this._content=u,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(a){if(a){let l=this.offsetAt(a.start),c=this.offsetAt(a.end);return this._content.substring(l,c)}return this._content}update(a,l){this._content=a.text,this._version=l,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let a=[],l=this._content,c=!0;for(let u=0;u<l.length;u++){c&&(a.push(u),c=!1);let p=l.charAt(u);c=p==="\r"||p===`
4
+ `,p==="\r"&&u+1<l.length&&l.charAt(u+1)===`
5
+ `&&u++}c&&l.length>0&&a.push(l.length),this._lineOffsets=a}return this._lineOffsets}positionAt(a){a=Math.max(Math.min(a,this._content.length),0);let l=this.getLineOffsets(),c=0,u=l.length;if(u===0)return oe.create(0,a);for(;c<u;){let d=Math.floor((c+u)/2);l[d]>a?u=d:c=d+1}let p=c-1;return oe.create(p,a-l[p])}offsetAt(a){let l=this.getLineOffsets();if(a.line>=l.length)return this._content.length;if(a.line<0)return 0;let c=l[a.line],u=a.line+1<l.length?l[a.line+1]:this._content.length;return Math.max(Math.min(c+a.character,u),c)}get lineCount(){return this.getLineOffsets().length}},s(n,"FullTextDocument"),o(n,"FullTextDocument"),n),function(i){let a=Object.prototype.toString;function l(b){return typeof b<"u"}s(l,"defined"),o(l,"defined"),i.defined=l;function c(b){return typeof b>"u"}s(c,"undefined2"),o(c,"undefined"),i.undefined=c;function u(b){return b===!0||b===!1}s(u,"boolean"),o(u,"boolean"),i.boolean=u;function p(b){return a.call(b)==="[object String]"}s(p,"string"),o(p,"string"),i.string=p;function d(b){return a.call(b)==="[object Number]"}s(d,"number"),o(d,"number"),i.number=d;function f(b,w,S){return a.call(b)==="[object Number]"&&w<=b&&b<=S}s(f,"numberRange"),o(f,"numberRange"),i.numberRange=f;function m(b){return a.call(b)==="[object Number]"&&-2147483648<=b&&b<=2147483647}s(m,"integer2"),o(m,"integer"),i.integer=m;function g(b){return a.call(b)==="[object Number]"&&0<=b&&b<=2147483647}s(g,"uinteger2"),o(g,"uinteger"),i.uinteger=g;function y(b){return a.call(b)==="[object Function]"}s(y,"func"),o(y,"func"),i.func=y;function T(b){return b!==null&&typeof b=="object"}s(T,"objectLiteral"),o(T,"objectLiteral"),i.objectLiteral=T;function A(b,w){return Array.isArray(b)&&b.every(w)}s(A,"typedArray"),o(A,"typedArray"),i.typedArray=A}(E||(E={}))}}),ao=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(t){Object.defineProperty(t,"__esModule",{value:!0});var e;function r(){if(e===void 0)throw new Error("No runtime abstraction layer installed");return e}s(r,"RAL"),o(r,"RAL"),function(n){function i(a){if(a===void 0)throw new Error("No runtime abstraction layer provided");e=a}s(i,"install"),o(i,"install"),n.install=i}(r||(r={})),t.default=r}}),Yu=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0;function e(u){return u===!0||u===!1}s(e,"boolean"),o(e,"boolean"),t.boolean=e;function r(u){return typeof u=="string"||u instanceof String}s(r,"string"),o(r,"string"),t.string=r;function n(u){return typeof u=="number"||u instanceof Number}s(n,"number"),o(n,"number"),t.number=n;function i(u){return u instanceof Error}s(i,"error"),o(i,"error"),t.error=i;function a(u){return typeof u=="function"}s(a,"func"),o(a,"func"),t.func=a;function l(u){return Array.isArray(u)}s(l,"array"),o(l,"array"),t.array=l;function c(u){return l(u)&&u.every(p=>r(p))}s(c,"stringArray"),o(c,"stringArray"),t.stringArray=c}}),El=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(t){var a,l;Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;var e=ao(),r;(function(c){let u={dispose(){}};c.None=function(){return u}})(r||(t.Event=r={}));var n=(a=class{add(u,p=null,d){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(u),this._contexts.push(p),Array.isArray(d)&&d.push({dispose:o(()=>this.remove(u,p),"dispose")})}remove(u,p=null){if(!this._callbacks)return;let d=!1;for(let f=0,m=this._callbacks.length;f<m;f++)if(this._callbacks[f]===u)if(this._contexts[f]===p){this._callbacks.splice(f,1),this._contexts.splice(f,1);return}else d=!0;if(d)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...u){if(!this._callbacks)return[];let p=[],d=this._callbacks.slice(0),f=this._contexts.slice(0);for(let m=0,g=d.length;m<g;m++)try{p.push(d[m].apply(f[m],u))}catch(y){(0,e.default)().console.error(y)}return p}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},s(a,"CallbackList"),o(a,"CallbackList"),a),i=(l=class{constructor(u){this._options=u}get event(){return this._event||(this._event=(u,p,d)=>{this._callbacks||(this._callbacks=new n),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(u,p);let f={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(u,p),f.dispose=l._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(d)&&d.push(f),f}),this._event}fire(u){this._callbacks&&this._callbacks.invoke.call(this._callbacks,u)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}},s(l,"_Emitter"),o(l,"Emitter"),l);t.Emitter=i,i._noop=function(){}}}),od=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(t){var u,p;Object.defineProperty(t,"__esModule",{value:!0}),t.CancellationTokenSource=t.CancellationToken=void 0;var e=ao(),r=Yu(),n=El(),i;(function(d){d.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:n.Event.None}),d.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:n.Event.None});function f(m){let g=m;return g&&(g===d.None||g===d.Cancelled||r.boolean(g.isCancellationRequested)&&!!g.onCancellationRequested)}s(f,"is"),o(f,"is"),d.is=f})(i||(t.CancellationToken=i={}));var a=Object.freeze(function(d,f){let m=(0,e.default)().timer.setTimeout(d.bind(f),0);return{dispose(){m.dispose()}}}),l=(u=class{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?a:(this._emitter||(this._emitter=new n.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},s(u,"MutableToken"),o(u,"MutableToken"),u),c=(p=class{get token(){return this._token||(this._token=new l),this._token}cancel(){this._token?this._token.cancel():this._token=i.Cancelled}dispose(){this._token?this._token instanceof l&&this._token.dispose():this._token=i.None}},s(p,"CancellationTokenSource3"),o(p,"CancellationTokenSource"),p);t.CancellationTokenSource=c}}),uN=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(t){var _,N,R,k,$,C,x,D,M,L,G,F,re,q,te,de,fe,me,ye,ke,he,Z,ze,ue,Be;Object.defineProperty(t,"__esModule",{value:!0}),t.Message=t.NotificationType9=t.NotificationType8=t.NotificationType7=t.NotificationType6=t.NotificationType5=t.NotificationType4=t.NotificationType3=t.NotificationType2=t.NotificationType1=t.NotificationType0=t.NotificationType=t.RequestType9=t.RequestType8=t.RequestType7=t.RequestType6=t.RequestType5=t.RequestType4=t.RequestType3=t.RequestType2=t.RequestType1=t.RequestType=t.RequestType0=t.AbstractMessageSignature=t.ParameterStructures=t.ResponseError=t.ErrorCodes=void 0;var e=Yu(),r;(function(Re){Re.ParseError=-32700,Re.InvalidRequest=-32600,Re.MethodNotFound=-32601,Re.InvalidParams=-32602,Re.InternalError=-32603,Re.jsonrpcReservedErrorRangeStart=-32099,Re.serverErrorStart=-32099,Re.MessageWriteError=-32099,Re.MessageReadError=-32098,Re.PendingResponseRejected=-32097,Re.ConnectionInactive=-32096,Re.ServerNotInitialized=-32002,Re.UnknownErrorCode=-32001,Re.jsonrpcReservedErrorRangeEnd=-32e3,Re.serverErrorEnd=-32e3})(r||(t.ErrorCodes=r={}));var n=(_=class extends Error{constructor(j,qe,Vt){super(qe),this.code=e.number(j)?j:r.UnknownErrorCode,this.data=Vt,Object.setPrototypeOf(this,_.prototype)}toJson(){let j={code:this.code,message:this.message};return this.data!==void 0&&(j.data=this.data),j}},s(_,"_ResponseError"),o(_,"ResponseError"),_);t.ResponseError=n;var i=(N=class{constructor(j){this.kind=j}static is(j){return j===N.auto||j===N.byName||j===N.byPosition}toString(){return this.kind}},s(N,"_ParameterStructures"),o(N,"ParameterStructures"),N);t.ParameterStructures=i,i.auto=new i("auto"),i.byPosition=new i("byPosition"),i.byName=new i("byName");var a=(R=class{constructor(j,qe){this.method=j,this.numberOfParams=qe}get parameterStructures(){return i.auto}},s(R,"AbstractMessageSignature"),o(R,"AbstractMessageSignature"),R);t.AbstractMessageSignature=a;var l=(k=class extends a{constructor(j){super(j,0)}},s(k,"RequestType0"),o(k,"RequestType0"),k);t.RequestType0=l;var c=($=class extends a{constructor(j,qe=i.auto){super(j,1),this._parameterStructures=qe}get parameterStructures(){return this._parameterStructures}},s($,"RequestType"),o($,"RequestType"),$);t.RequestType=c;var u=(C=class extends a{constructor(j,qe=i.auto){super(j,1),this._parameterStructures=qe}get parameterStructures(){return this._parameterStructures}},s(C,"RequestType1"),o(C,"RequestType1"),C);t.RequestType1=u;var p=(x=class extends a{constructor(j){super(j,2)}},s(x,"RequestType2"),o(x,"RequestType2"),x);t.RequestType2=p;var d=(D=class extends a{constructor(j){super(j,3)}},s(D,"RequestType3"),o(D,"RequestType3"),D);t.RequestType3=d;var f=(M=class extends a{constructor(j){super(j,4)}},s(M,"RequestType4"),o(M,"RequestType4"),M);t.RequestType4=f;var m=(L=class extends a{constructor(j){super(j,5)}},s(L,"RequestType5"),o(L,"RequestType5"),L);t.RequestType5=m;var g=(G=class extends a{constructor(j){super(j,6)}},s(G,"RequestType6"),o(G,"RequestType6"),G);t.RequestType6=g;var y=(F=class extends a{constructor(j){super(j,7)}},s(F,"RequestType7"),o(F,"RequestType7"),F);t.RequestType7=y;var T=(re=class extends a{constructor(j){super(j,8)}},s(re,"RequestType8"),o(re,"RequestType8"),re);t.RequestType8=T;var A=(q=class extends a{constructor(j){super(j,9)}},s(q,"RequestType9"),o(q,"RequestType9"),q);t.RequestType9=A;var b=(te=class extends a{constructor(j,qe=i.auto){super(j,1),this._parameterStructures=qe}get parameterStructures(){return this._parameterStructures}},s(te,"NotificationType"),o(te,"NotificationType"),te);t.NotificationType=b;var w=(de=class extends a{constructor(j){super(j,0)}},s(de,"NotificationType0"),o(de,"NotificationType0"),de);t.NotificationType0=w;var S=(fe=class extends a{constructor(j,qe=i.auto){super(j,1),this._parameterStructures=qe}get parameterStructures(){return this._parameterStructures}},s(fe,"NotificationType1"),o(fe,"NotificationType1"),fe);t.NotificationType1=S;var I=(me=class extends a{constructor(j){super(j,2)}},s(me,"NotificationType2"),o(me,"NotificationType2"),me);t.NotificationType2=I;var K=(ye=class extends a{constructor(j){super(j,3)}},s(ye,"NotificationType3"),o(ye,"NotificationType3"),ye);t.NotificationType3=K;var ie=(ke=class extends a{constructor(j){super(j,4)}},s(ke,"NotificationType4"),o(ke,"NotificationType4"),ke);t.NotificationType4=ie;var X=(he=class extends a{constructor(j){super(j,5)}},s(he,"NotificationType5"),o(he,"NotificationType5"),he);t.NotificationType5=X;var Te=(Z=class extends a{constructor(j){super(j,6)}},s(Z,"NotificationType6"),o(Z,"NotificationType6"),Z);t.NotificationType6=Te;var Se=(ze=class extends a{constructor(j){super(j,7)}},s(ze,"NotificationType7"),o(ze,"NotificationType7"),ze);t.NotificationType7=Se;var _e=(ue=class extends a{constructor(j){super(j,8)}},s(ue,"NotificationType8"),o(ue,"NotificationType8"),ue);t.NotificationType8=_e;var le=(Be=class extends a{constructor(j){super(j,9)}},s(Be,"NotificationType9"),o(Be,"NotificationType9"),Be);t.NotificationType9=le;var Xe;(function(Re){function j(_t){let $e=_t;return $e&&e.string($e.method)&&(e.string($e.id)||e.number($e.id))}s(j,"isRequest"),o(j,"isRequest"),Re.isRequest=j;function qe(_t){let $e=_t;return $e&&e.string($e.method)&&_t.id===void 0}s(qe,"isNotification"),o(qe,"isNotification"),Re.isNotification=qe;function Vt(_t){let $e=_t;return $e&&($e.result!==void 0||!!$e.error)&&(e.string($e.id)||e.number($e.id)||$e.id===null)}s(Vt,"isResponse"),o(Vt,"isResponse"),Re.isResponse=Vt})(Xe||(t.Message=Xe={}))}}),cN=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(t){var a,l;var e;Object.defineProperty(t,"__esModule",{value:!0}),t.LRUCache=t.LinkedMap=t.Touch=void 0;var r;(function(c){c.None=0,c.First=1,c.AsOld=c.First,c.Last=2,c.AsNew=c.Last})(r||(t.Touch=r={}));var n=(a=class{constructor(){this[e]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){var u;return(u=this._head)==null?void 0:u.value}get last(){var u;return(u=this._tail)==null?void 0:u.value}has(u){return this._map.has(u)}get(u,p=r.None){let d=this._map.get(u);if(d)return p!==r.None&&this.touch(d,p),d.value}set(u,p,d=r.None){let f=this._map.get(u);if(f)f.value=p,d!==r.None&&this.touch(f,d);else{switch(f={key:u,value:p,next:void 0,previous:void 0},d){case r.None:this.addItemLast(f);break;case r.First:this.addItemFirst(f);break;case r.Last:this.addItemLast(f);break;default:this.addItemLast(f);break}this._map.set(u,f),this._size++}return this}delete(u){return!!this.remove(u)}remove(u){let p=this._map.get(u);if(p)return this._map.delete(u),this.removeItem(p),this._size--,p.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let u=this._head;return this._map.delete(u.key),this.removeItem(u),this._size--,u.value}forEach(u,p){let d=this._state,f=this._head;for(;f;){if(p?u.bind(p)(f.value,f.key,this):u(f.value,f.key,this),this._state!==d)throw new Error("LinkedMap got modified during iteration.");f=f.next}}keys(){let u=this._state,p=this._head,d={[Symbol.iterator]:()=>d,next:o(()=>{if(this._state!==u)throw new Error("LinkedMap got modified during iteration.");if(p){let f={value:p.key,done:!1};return p=p.next,f}else return{value:void 0,done:!0}},"next")};return d}values(){let u=this._state,p=this._head,d={[Symbol.iterator]:()=>d,next:o(()=>{if(this._state!==u)throw new Error("LinkedMap got modified during iteration.");if(p){let f={value:p.value,done:!1};return p=p.next,f}else return{value:void 0,done:!0}},"next")};return d}entries(){let u=this._state,p=this._head,d={[Symbol.iterator]:()=>d,next:o(()=>{if(this._state!==u)throw new Error("LinkedMap got modified during iteration.");if(p){let f={value:[p.key,p.value],done:!1};return p=p.next,f}else return{value:void 0,done:!0}},"next")};return d}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(u){if(u>=this.size)return;if(u===0){this.clear();return}let p=this._head,d=this.size;for(;p&&d>u;)this._map.delete(p.key),p=p.next,d--;this._head=p,this._size=d,p&&(p.previous=void 0),this._state++}addItemFirst(u){if(!this._head&&!this._tail)this._tail=u;else if(this._head)u.next=this._head,this._head.previous=u;else throw new Error("Invalid list");this._head=u,this._state++}addItemLast(u){if(!this._head&&!this._tail)this._head=u;else if(this._tail)u.previous=this._tail,this._tail.next=u;else throw new Error("Invalid list");this._tail=u,this._state++}removeItem(u){if(u===this._head&&u===this._tail)this._head=void 0,this._tail=void 0;else if(u===this._head){if(!u.next)throw new Error("Invalid list");u.next.previous=void 0,this._head=u.next}else if(u===this._tail){if(!u.previous)throw new Error("Invalid list");u.previous.next=void 0,this._tail=u.previous}else{let p=u.next,d=u.previous;if(!p||!d)throw new Error("Invalid list");p.previous=d,d.next=p}u.next=void 0,u.previous=void 0,this._state++}touch(u,p){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(p!==r.First&&p!==r.Last)){if(p===r.First){if(u===this._head)return;let d=u.next,f=u.previous;u===this._tail?(f.next=void 0,this._tail=f):(d.previous=f,f.next=d),u.previous=void 0,u.next=this._head,this._head.previous=u,this._head=u,this._state++}else if(p===r.Last){if(u===this._tail)return;let d=u.next,f=u.previous;u===this._head?(d.previous=void 0,this._head=d):(d.previous=f,f.next=d),u.next=void 0,u.previous=this._tail,this._tail.next=u,this._tail=u,this._state++}}}toJSON(){let u=[];return this.forEach((p,d)=>{u.push([d,p])}),u}fromJSON(u){this.clear();for(let[p,d]of u)this.set(p,d)}},s(a,"LinkedMap"),o(a,"LinkedMap"),a);t.LinkedMap=n;var i=(l=class extends n{constructor(u,p=1){super(),this._limit=u,this._ratio=Math.min(Math.max(0,p),1)}get limit(){return this._limit}set limit(u){this._limit=u,this.checkTrim()}get ratio(){return this._ratio}set ratio(u){this._ratio=Math.min(Math.max(0,u),1),this.checkTrim()}get(u,p=r.AsNew){return super.get(u,p)}peek(u){return super.get(u,r.None)}set(u,p){return super.set(u,p,r.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}},s(l,"LRUCache"),o(l,"LRUCache"),l);t.LRUCache=i}}),iI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.Disposable=void 0;var e;(function(r){function n(i){return{dispose:i}}s(n,"create"),o(n,"create"),r.create=n})(e||(t.Disposable=e={}))}}),aI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(t){var c,u,p,d;Object.defineProperty(t,"__esModule",{value:!0}),t.SharedArrayReceiverStrategy=t.SharedArraySenderStrategy=void 0;var e=od(),r;(function(f){f.Continue=0,f.Cancelled=1})(r||(r={}));var n=(c=class{constructor(){this.buffers=new Map}enableCancellation(m){if(m.id===null)return;let g=new SharedArrayBuffer(4),y=new Int32Array(g,0,1);y[0]=r.Continue,this.buffers.set(m.id,g),m.$cancellationData=g}async sendCancellation(m,g){let y=this.buffers.get(g);if(y===void 0)return;let T=new Int32Array(y,0,1);Atomics.store(T,0,r.Cancelled)}cleanup(m){this.buffers.delete(m)}dispose(){this.buffers.clear()}},s(c,"SharedArraySenderStrategy"),o(c,"SharedArraySenderStrategy"),c);t.SharedArraySenderStrategy=n;var i=(u=class{constructor(m){this.data=new Int32Array(m,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===r.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},s(u,"SharedArrayBufferCancellationToken"),o(u,"SharedArrayBufferCancellationToken"),u),a=(p=class{constructor(m){this.token=new i(m)}cancel(){}dispose(){}},s(p,"SharedArrayBufferCancellationTokenSource"),o(p,"SharedArrayBufferCancellationTokenSource"),p),l=(d=class{constructor(){this.kind="request"}createCancellationTokenSource(m){let g=m.$cancellationData;return g===void 0?new e.CancellationTokenSource:new a(g)}},s(d,"SharedArrayReceiverStrategy"),o(d,"SharedArrayReceiverStrategy"),d);t.SharedArrayReceiverStrategy=l}}),pN=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(t){var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Semaphore=void 0;var e=ao(),r=(n=class{constructor(a=1){if(a<=0)throw new Error("Capacity must be greater than 0");this._capacity=a,this._active=0,this._waiting=[]}lock(a){return new Promise((l,c)=>{this._waiting.push({thunk:a,resolve:l,reject:c}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,e.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let a=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let l=a.thunk();l instanceof Promise?l.then(c=>{this._active--,a.resolve(c),this.runNext()},c=>{this._active--,a.reject(c),this.runNext()}):(this._active--,a.resolve(l),this.runNext())}catch(l){this._active--,a.reject(l),this.runNext()}}},s(n,"Semaphore"),o(n,"Semaphore"),n);t.Semaphore=r}}),sI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(t){var p,d;Object.defineProperty(t,"__esModule",{value:!0}),t.ReadableStreamMessageReader=t.AbstractMessageReader=t.MessageReader=void 0;var e=ao(),r=Yu(),n=El(),i=pN(),a;(function(f){function m(g){let y=g;return y&&r.func(y.listen)&&r.func(y.dispose)&&r.func(y.onError)&&r.func(y.onClose)&&r.func(y.onPartialMessage)}s(m,"is"),o(m,"is"),f.is=m})(a||(t.MessageReader=a={}));var l=(p=class{constructor(){this.errorEmitter=new n.Emitter,this.closeEmitter=new n.Emitter,this.partialMessageEmitter=new n.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(m){this.errorEmitter.fire(this.asError(m))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(m){this.partialMessageEmitter.fire(m)}asError(m){return m instanceof Error?m:new Error(`Reader received error. Reason: ${r.string(m.message)?m.message:"unknown"}`)}},s(p,"AbstractMessageReader"),o(p,"AbstractMessageReader"),p);t.AbstractMessageReader=l;var c;(function(f){function m(g){let y,T,A=new Map,b,w=new Map;if(g===void 0||typeof g=="string")y=g??"utf-8";else{if(y=g.charset??"utf-8",g.contentDecoder!==void 0&&(T=g.contentDecoder,A.set(T.name,T)),g.contentDecoders!==void 0)for(let S of g.contentDecoders)A.set(S.name,S);if(g.contentTypeDecoder!==void 0&&(b=g.contentTypeDecoder,w.set(b.name,b)),g.contentTypeDecoders!==void 0)for(let S of g.contentTypeDecoders)w.set(S.name,S)}return b===void 0&&(b=(0,e.default)().applicationJson.decoder,w.set(b.name,b)),{charset:y,contentDecoder:T,contentDecoders:A,contentTypeDecoder:b,contentTypeDecoders:w}}s(m,"fromOptions"),o(m,"fromOptions"),f.fromOptions=m})(c||(c={}));var u=(d=class extends l{constructor(m,g){super(),this.readable=m,this.options=c.fromOptions(g),this.buffer=(0,e.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new i.Semaphore(1)}set partialMessageTimeout(m){this._partialMessageTimeout=m}get partialMessageTimeout(){return this._partialMessageTimeout}listen(m){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=m;let g=this.readable.onData(y=>{this.onData(y)});return this.readable.onError(y=>this.fireError(y)),this.readable.onClose(()=>this.fireClose()),g}onData(m){try{for(this.buffer.append(m);;){if(this.nextMessageLength===-1){let y=this.buffer.tryReadHeaders(!0);if(!y)return;let T=y.get("content-length");if(!T){this.fireError(new Error(`Header must provide a Content-Length property.
6
+ ${JSON.stringify(Object.fromEntries(y))}`));return}let A=parseInt(T);if(isNaN(A)){this.fireError(new Error(`Content-Length value must be a number. Got ${T}`));return}this.nextMessageLength=A}let g=this.buffer.tryReadBody(this.nextMessageLength);if(g===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let y=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(g):g,T=await this.options.contentTypeDecoder.decode(y,this.options);this.callback(T)}).catch(y=>{this.fireError(y)})}}catch(g){this.fireError(g)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,e.default)().timer.setTimeout((m,g)=>{this.partialMessageTimer=void 0,m===this.messageToken&&(this.firePartialMessage({messageToken:m,waitingTime:g}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}},s(d,"ReadableStreamMessageReader"),o(d,"ReadableStreamMessageReader"),d);t.ReadableStreamMessageReader=u}}),oI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(t){var f,m;Object.defineProperty(t,"__esModule",{value:!0}),t.WriteableStreamMessageWriter=t.AbstractMessageWriter=t.MessageWriter=void 0;var e=ao(),r=Yu(),n=pN(),i=El(),a="Content-Length: ",l=`\r
7
+ `,c;(function(g){function y(T){let A=T;return A&&r.func(A.dispose)&&r.func(A.onClose)&&r.func(A.onError)&&r.func(A.write)}s(y,"is"),o(y,"is"),g.is=y})(c||(t.MessageWriter=c={}));var u=(f=class{constructor(){this.errorEmitter=new i.Emitter,this.closeEmitter=new i.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(y,T,A){this.errorEmitter.fire([this.asError(y),T,A])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(y){return y instanceof Error?y:new Error(`Writer received error. Reason: ${r.string(y.message)?y.message:"unknown"}`)}},s(f,"AbstractMessageWriter"),o(f,"AbstractMessageWriter"),f);t.AbstractMessageWriter=u;var p;(function(g){function y(T){return T===void 0||typeof T=="string"?{charset:T??"utf-8",contentTypeEncoder:(0,e.default)().applicationJson.encoder}:{charset:T.charset??"utf-8",contentEncoder:T.contentEncoder,contentTypeEncoder:T.contentTypeEncoder??(0,e.default)().applicationJson.encoder}}s(y,"fromOptions"),o(y,"fromOptions"),g.fromOptions=y})(p||(p={}));var d=(m=class extends u{constructor(y,T){super(),this.writable=y,this.options=p.fromOptions(T),this.errorCount=0,this.writeSemaphore=new n.Semaphore(1),this.writable.onError(A=>this.fireError(A)),this.writable.onClose(()=>this.fireClose())}async write(y){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(y,this.options).then(T=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(T):T).then(T=>{let A=[];return A.push(a,T.byteLength.toString(),l),A.push(l),this.doWrite(y,A,T)},T=>{throw this.fireError(T),T}))}async doWrite(y,T,A){try{return await this.writable.write(T.join(""),"ascii"),this.writable.write(A)}catch(b){return this.handleError(b,y),Promise.reject(b)}}handleError(y,T){this.errorCount++,this.fireError(y,T,this.errorCount)}end(){this.writable.end()}},s(m,"WriteableStreamMessageWriter"),o(m,"WriteableStreamMessageWriter"),m);t.WriteableStreamMessageWriter=d}}),lI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(t){var a;Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractMessageBuffer=void 0;var e=13,r=10,n=`\r
8
+ `,i=(a=class{constructor(c="utf-8"){this._encoding=c,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(c){let u=typeof c=="string"?this.fromString(c,this._encoding):c;this._chunks.push(u),this._totalLength+=u.byteLength}tryReadHeaders(c=!1){if(this._chunks.length===0)return;let u=0,p=0,d=0,f=0;e:for(;p<this._chunks.length;){let T=this._chunks[p];for(d=0;d<T.length;){switch(T[d]){case e:switch(u){case 0:u=1;break;case 2:u=3;break;default:u=0}break;case r:switch(u){case 1:u=2;break;case 3:u=4,d++;break e;default:u=0}break;default:u=0}d++}f+=T.byteLength,p++}if(u!==4)return;let m=this._read(f+d),g=new Map,y=this.toString(m,"ascii").split(n);if(y.length<2)return g;for(let T=0;T<y.length-2;T++){let A=y[T],b=A.indexOf(":");if(b===-1)throw new Error(`Message header must separate key and value using ':'
9
+ ${A}`);let w=A.substr(0,b),S=A.substr(b+1).trim();g.set(c?w.toLowerCase():w,S)}return g}tryReadBody(c){if(!(this._totalLength<c))return this._read(c)}get numberOfBytes(){return this._totalLength}_read(c){if(c===0)return this.emptyBuffer();if(c>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===c){let f=this._chunks[0];return this._chunks.shift(),this._totalLength-=c,this.asNative(f)}if(this._chunks[0].byteLength>c){let f=this._chunks[0],m=this.asNative(f,c);return this._chunks[0]=f.slice(c),this._totalLength-=c,m}let u=this.allocNative(c),p=0,d=0;for(;c>0;){let f=this._chunks[d];if(f.byteLength>c){let m=f.slice(0,c);u.set(m,p),p+=c,this._chunks[d]=f.slice(c),this._totalLength-=c,c-=c}else u.set(f,p),p+=f.byteLength,this._chunks.shift(),this._totalLength-=f.byteLength,c-=f.byteLength}return u}},s(a,"AbstractMessageBuffer"),o(a,"AbstractMessageBuffer"),a);t.AbstractMessageBuffer=i}}),uI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(t){var _,N;Object.defineProperty(t,"__esModule",{value:!0}),t.createMessageConnection=t.ConnectionOptions=t.MessageStrategy=t.CancellationStrategy=t.CancellationSenderStrategy=t.CancellationReceiverStrategy=t.RequestCancellationReceiverStrategy=t.IdCancellationReceiverStrategy=t.ConnectionStrategy=t.ConnectionError=t.ConnectionErrors=t.LogTraceNotification=t.SetTraceNotification=t.TraceFormat=t.TraceValues=t.Trace=t.NullLogger=t.ProgressType=t.ProgressToken=void 0;var e=ao(),r=Yu(),n=uN(),i=cN(),a=El(),l=od(),c;(function(R){R.type=new n.NotificationType("$/cancelRequest")})(c||(c={}));var u;(function(R){function k($){return typeof $=="string"||typeof $=="number"}s(k,"is"),o(k,"is"),R.is=k})(u||(t.ProgressToken=u={}));var p;(function(R){R.type=new n.NotificationType("$/progress")})(p||(p={}));var d=(_=class{constructor(){}},s(_,"ProgressType"),o(_,"ProgressType"),_);t.ProgressType=d;var f;(function(R){function k($){return r.func($)}s(k,"is"),o(k,"is"),R.is=k})(f||(f={})),t.NullLogger=Object.freeze({error:o(()=>{},"error"),warn:o(()=>{},"warn"),info:o(()=>{},"info"),log:o(()=>{},"log")});var m;(function(R){R[R.Off=0]="Off",R[R.Messages=1]="Messages",R[R.Compact=2]="Compact",R[R.Verbose=3]="Verbose"})(m||(t.Trace=m={}));var g;(function(R){R.Off="off",R.Messages="messages",R.Compact="compact",R.Verbose="verbose"})(g||(t.TraceValues=g={})),function(R){function k(C){if(!r.string(C))return R.Off;switch(C=C.toLowerCase(),C){case"off":return R.Off;case"messages":return R.Messages;case"compact":return R.Compact;case"verbose":return R.Verbose;default:return R.Off}}s(k,"fromString"),o(k,"fromString"),R.fromString=k;function $(C){switch(C){case R.Off:return"off";case R.Messages:return"messages";case R.Compact:return"compact";case R.Verbose:return"verbose";default:return"off"}}s($,"toString4"),o($,"toString"),R.toString=$}(m||(t.Trace=m={}));var y;(function(R){R.Text="text",R.JSON="json"})(y||(t.TraceFormat=y={})),function(R){function k($){return r.string($)?($=$.toLowerCase(),$==="json"?R.JSON:R.Text):R.Text}s(k,"fromString"),o(k,"fromString"),R.fromString=k}(y||(t.TraceFormat=y={}));var T;(function(R){R.type=new n.NotificationType("$/setTrace")})(T||(t.SetTraceNotification=T={}));var A;(function(R){R.type=new n.NotificationType("$/logTrace")})(A||(t.LogTraceNotification=A={}));var b;(function(R){R[R.Closed=1]="Closed",R[R.Disposed=2]="Disposed",R[R.AlreadyListening=3]="AlreadyListening"})(b||(t.ConnectionErrors=b={}));var w=(N=class extends Error{constructor(k,$){super($),this.code=k,Object.setPrototypeOf(this,N.prototype)}},s(N,"_ConnectionError"),o(N,"ConnectionError"),N);t.ConnectionError=w;var S;(function(R){function k($){let C=$;return C&&r.func(C.cancelUndispatched)}s(k,"is"),o(k,"is"),R.is=k})(S||(t.ConnectionStrategy=S={}));var I;(function(R){function k($){let C=$;return C&&(C.kind===void 0||C.kind==="id")&&r.func(C.createCancellationTokenSource)&&(C.dispose===void 0||r.func(C.dispose))}s(k,"is"),o(k,"is"),R.is=k})(I||(t.IdCancellationReceiverStrategy=I={}));var K;(function(R){function k($){let C=$;return C&&C.kind==="request"&&r.func(C.createCancellationTokenSource)&&(C.dispose===void 0||r.func(C.dispose))}s(k,"is"),o(k,"is"),R.is=k})(K||(t.RequestCancellationReceiverStrategy=K={}));var ie;(function(R){R.Message=Object.freeze({createCancellationTokenSource($){return new l.CancellationTokenSource}});function k($){return I.is($)||K.is($)}s(k,"is"),o(k,"is"),R.is=k})(ie||(t.CancellationReceiverStrategy=ie={}));var X;(function(R){R.Message=Object.freeze({sendCancellation($,C){return $.sendNotification(c.type,{id:C})},cleanup($){}});function k($){let C=$;return C&&r.func(C.sendCancellation)&&r.func(C.cleanup)}s(k,"is"),o(k,"is"),R.is=k})(X||(t.CancellationSenderStrategy=X={}));var Te;(function(R){R.Message=Object.freeze({receiver:ie.Message,sender:X.Message});function k($){let C=$;return C&&ie.is(C.receiver)&&X.is(C.sender)}s(k,"is"),o(k,"is"),R.is=k})(Te||(t.CancellationStrategy=Te={}));var Se;(function(R){function k($){let C=$;return C&&r.func(C.handleMessage)}s(k,"is"),o(k,"is"),R.is=k})(Se||(t.MessageStrategy=Se={}));var _e;(function(R){function k($){let C=$;return C&&(Te.is(C.cancellationStrategy)||S.is(C.connectionStrategy)||Se.is(C.messageStrategy))}s(k,"is"),o(k,"is"),R.is=k})(_e||(t.ConnectionOptions=_e={}));var le;(function(R){R[R.New=1]="New",R[R.Listening=2]="Listening",R[R.Closed=3]="Closed",R[R.Disposed=4]="Disposed"})(le||(le={}));function Xe(R,k,$,C){let x=$!==void 0?$:t.NullLogger,D=0,M=0,L=0,G="2.0",F,re=new Map,q,te=new Map,de=new Map,fe,me=new i.LinkedMap,ye=new Map,ke=new Set,he=new Map,Z=m.Off,ze=y.Text,ue,Be=le.New,Re=new a.Emitter,j=new a.Emitter,qe=new a.Emitter,Vt=new a.Emitter,_t=new a.Emitter,$e=C&&C.cancellationStrategy?C.cancellationStrategy:Te.Message;function In(v){if(v===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+v.toString()}s(In,"createRequestQueueKey"),o(In,"createRequestQueueKey");function ho(v){return v===null?"res-unknown-"+(++L).toString():"res-"+v.toString()}s(ho,"createResponseQueueKey"),o(ho,"createResponseQueueKey");function yo(){return"not-"+(++M).toString()}s(yo,"createNotificationQueueKey"),o(yo,"createNotificationQueueKey");function go(v,P){n.Message.isRequest(P)?v.set(In(P.id),P):n.Message.isResponse(P)?v.set(ho(P.id),P):v.set(yo(),P)}s(go,"addMessageToQueue"),o(go,"addMessageToQueue");function vo(v){}s(vo,"cancelUndispatched"),o(vo,"cancelUndispatched");function Pn(){return Be===le.Listening}s(Pn,"isListening"),o(Pn,"isListening");function _n(){return Be===le.Closed}s(_n,"isClosed"),o(_n,"isClosed");function Bt(){return Be===le.Disposed}s(Bt,"isDisposed"),o(Bt,"isDisposed");function Dn(){(Be===le.New||Be===le.Listening)&&(Be=le.Closed,j.fire(void 0))}s(Dn,"closeHandler"),o(Dn,"closeHandler");function To(v){Re.fire([v,void 0,void 0])}s(To,"readErrorHandler"),o(To,"readErrorHandler");function Ro(v){Re.fire(v)}s(Ro,"writeErrorHandler"),o(Ro,"writeErrorHandler"),R.onClose(Dn),R.onError(To),k.onClose(Dn),k.onError(Ro);function Ln(){fe||me.size===0||(fe=(0,e.default)().timer.setImmediate(()=>{fe=void 0,$o()}))}s(Ln,"triggerMessageQueue"),o(Ln,"triggerMessageQueue");function On(v){n.Message.isRequest(v)?bo(v):n.Message.isNotification(v)?Eo(v):n.Message.isResponse(v)?Co(v):Ao(v)}s(On,"handleMessage"),o(On,"handleMessage");function $o(){if(me.size===0)return;let v=me.shift();try{let P=C==null?void 0:C.messageStrategy;Se.is(P)?P.handleMessage(v,On):On(v)}finally{Ln()}}s($o,"processMessageQueue"),o($o,"processMessageQueue");let _c=o(v=>{try{if(n.Message.isNotification(v)&&v.method===c.type.method){let P=v.params.id,O=In(P),z=me.get(O);if(n.Message.isRequest(z)){let ve=C==null?void 0:C.connectionStrategy,be=ve&&ve.cancelUndispatched?ve.cancelUndispatched(z,vo):void 0;if(be&&(be.error!==void 0||be.result!==void 0)){me.delete(O),he.delete(P),be.id=z.id,Sr(be,v.method,Date.now()),k.write(be).catch(()=>x.error("Sending response for canceled message failed."));return}}let Ne=he.get(P);if(Ne!==void 0){Ne.cancel(),Br(v);return}else ke.add(P)}go(me,v)}finally{Ln()}},"callback");function bo(v){if(Bt())return;function P(ae,De,pe){let We={jsonrpc:G,id:v.id};ae instanceof n.ResponseError?We.error=ae.toJson():We.result=ae===void 0?null:ae,Sr(We,De,pe),k.write(We).catch(()=>x.error("Sending response failed."))}s(P,"reply"),o(P,"reply");function O(ae,De,pe){let We={jsonrpc:G,id:v.id,error:ae.toJson()};Sr(We,De,pe),k.write(We).catch(()=>x.error("Sending response failed."))}s(O,"replyError"),o(O,"replyError");function z(ae,De,pe){ae===void 0&&(ae=null);let We={jsonrpc:G,id:v.id,result:ae};Sr(We,De,pe),k.write(We).catch(()=>x.error("Sending response failed."))}s(z,"replySuccess"),o(z,"replySuccess"),No(v);let Ne=re.get(v.method),ve,be;Ne&&(ve=Ne.type,be=Ne.handler);let Ue=Date.now();if(be||F){let ae=v.id??String(Date.now()),De=I.is($e.receiver)?$e.receiver.createCancellationTokenSource(ae):$e.receiver.createCancellationTokenSource(v);v.id!==null&&ke.has(v.id)&&De.cancel(),v.id!==null&&he.set(ae,De);try{let pe;if(be)if(v.params===void 0){if(ve!==void 0&&ve.numberOfParams!==0){O(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${v.method} defines ${ve.numberOfParams} params but received none.`),v.method,Ue);return}pe=be(De.token)}else if(Array.isArray(v.params)){if(ve!==void 0&&ve.parameterStructures===n.ParameterStructures.byName){O(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${v.method} defines parameters by name but received parameters by position`),v.method,Ue);return}pe=be(...v.params,De.token)}else{if(ve!==void 0&&ve.parameterStructures===n.ParameterStructures.byPosition){O(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${v.method} defines parameters by position but received parameters by name`),v.method,Ue);return}pe=be(v.params,De.token)}else F&&(pe=F(v.method,v.params,De.token));let We=pe;pe?We.then?We.then(at=>{he.delete(ae),P(at,v.method,Ue)},at=>{he.delete(ae),at instanceof n.ResponseError?O(at,v.method,Ue):at&&r.string(at.message)?O(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${v.method} failed with message: ${at.message}`),v.method,Ue):O(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${v.method} failed unexpectedly without providing any details.`),v.method,Ue)}):(he.delete(ae),P(pe,v.method,Ue)):(he.delete(ae),z(pe,v.method,Ue))}catch(pe){he.delete(ae),pe instanceof n.ResponseError?P(pe,v.method,Ue):pe&&r.string(pe.message)?O(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${v.method} failed with message: ${pe.message}`),v.method,Ue):O(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${v.method} failed unexpectedly without providing any details.`),v.method,Ue)}}else O(new n.ResponseError(n.ErrorCodes.MethodNotFound,`Unhandled method ${v.method}`),v.method,Ue)}s(bo,"handleRequest"),o(bo,"handleRequest");function Co(v){if(!Bt())if(v.id===null)v.error?x.error(`Received response message without id: Error is:
10
+ ${JSON.stringify(v.error,void 0,4)}`):x.error("Received response message without id. No further error information provided.");else{let P=v.id,O=ye.get(P);if(xo(v,O),O!==void 0){ye.delete(P);try{if(v.error){let z=v.error;O.reject(new n.ResponseError(z.code,z.message,z.data))}else if(v.result!==void 0)O.resolve(v.result);else throw new Error("Should never happen.")}catch(z){z.message?x.error(`Response handler '${O.method}' failed with message: ${z.message}`):x.error(`Response handler '${O.method}' failed unexpectedly.`)}}}}s(Co,"handleResponse"),o(Co,"handleResponse");function Eo(v){if(Bt())return;let P,O;if(v.method===c.type.method){let z=v.params.id;ke.delete(z),Br(v);return}else{let z=te.get(v.method);z&&(O=z.handler,P=z.type)}if(O||q)try{if(Br(v),O)if(v.params===void 0)P!==void 0&&P.numberOfParams!==0&&P.parameterStructures!==n.ParameterStructures.byName&&x.error(`Notification ${v.method} defines ${P.numberOfParams} params but received none.`),O();else if(Array.isArray(v.params)){let z=v.params;v.method===p.type.method&&z.length===2&&u.is(z[0])?O({token:z[0],value:z[1]}):(P!==void 0&&(P.parameterStructures===n.ParameterStructures.byName&&x.error(`Notification ${v.method} defines parameters by name but received parameters by position`),P.numberOfParams!==v.params.length&&x.error(`Notification ${v.method} defines ${P.numberOfParams} params but received ${z.length} arguments`)),O(...z))}else P!==void 0&&P.parameterStructures===n.ParameterStructures.byPosition&&x.error(`Notification ${v.method} defines parameters by position but received parameters by name`),O(v.params);else q&&q(v.method,v.params)}catch(z){z.message?x.error(`Notification handler '${v.method}' failed with message: ${z.message}`):x.error(`Notification handler '${v.method}' failed unexpectedly.`)}else qe.fire(v)}s(Eo,"handleNotification"),o(Eo,"handleNotification");function Ao(v){if(!v){x.error("Received empty message.");return}x.error(`Received message which is neither a response nor a notification message:
11
+ ${JSON.stringify(v,null,4)}`);let P=v;if(r.string(P.id)||r.number(P.id)){let O=P.id,z=ye.get(O);z&&z.reject(new Error("The received response has neither a result nor an error property."))}}s(Ao,"handleInvalidMessage"),o(Ao,"handleInvalidMessage");function Ct(v){if(v!=null)switch(Z){case m.Verbose:return JSON.stringify(v,null,4);case m.Compact:return JSON.stringify(v);default:return}}s(Ct,"stringifyTrace"),o(Ct,"stringifyTrace");function So(v){if(!(Z===m.Off||!ue))if(ze===y.Text){let P;(Z===m.Verbose||Z===m.Compact)&&v.params&&(P=`Params: ${Ct(v.params)}
12
+
13
+ `),ue.log(`Sending request '${v.method} - (${v.id})'.`,P)}else Wt("send-request",v)}s(So,"traceSendingRequest"),o(So,"traceSendingRequest");function ko(v){if(!(Z===m.Off||!ue))if(ze===y.Text){let P;(Z===m.Verbose||Z===m.Compact)&&(v.params?P=`Params: ${Ct(v.params)}
14
+
15
+ `:P=`No parameters provided.
16
+
17
+ `),ue.log(`Sending notification '${v.method}'.`,P)}else Wt("send-notification",v)}s(ko,"traceSendingNotification"),o(ko,"traceSendingNotification");function Sr(v,P,O){if(!(Z===m.Off||!ue))if(ze===y.Text){let z;(Z===m.Verbose||Z===m.Compact)&&(v.error&&v.error.data?z=`Error data: ${Ct(v.error.data)}
18
+
19
+ `:v.result?z=`Result: ${Ct(v.result)}
20
+
21
+ `:v.error===void 0&&(z=`No result returned.
22
+
23
+ `)),ue.log(`Sending response '${P} - (${v.id})'. Processing request took ${Date.now()-O}ms`,z)}else Wt("send-response",v)}s(Sr,"traceSendingResponse"),o(Sr,"traceSendingResponse");function No(v){if(!(Z===m.Off||!ue))if(ze===y.Text){let P;(Z===m.Verbose||Z===m.Compact)&&v.params&&(P=`Params: ${Ct(v.params)}
24
+
25
+ `),ue.log(`Received request '${v.method} - (${v.id})'.`,P)}else Wt("receive-request",v)}s(No,"traceReceivedRequest"),o(No,"traceReceivedRequest");function Br(v){if(!(Z===m.Off||!ue||v.method===A.type.method))if(ze===y.Text){let P;(Z===m.Verbose||Z===m.Compact)&&(v.params?P=`Params: ${Ct(v.params)}
26
+
27
+ `:P=`No parameters provided.
28
+
29
+ `),ue.log(`Received notification '${v.method}'.`,P)}else Wt("receive-notification",v)}s(Br,"traceReceivedNotification"),o(Br,"traceReceivedNotification");function xo(v,P){if(!(Z===m.Off||!ue))if(ze===y.Text){let O;if((Z===m.Verbose||Z===m.Compact)&&(v.error&&v.error.data?O=`Error data: ${Ct(v.error.data)}
30
+
31
+ `:v.result?O=`Result: ${Ct(v.result)}
32
+
33
+ `:v.error===void 0&&(O=`No result returned.
34
+
35
+ `)),P){let z=v.error?` Request failed: ${v.error.message} (${v.error.code}).`:"";ue.log(`Received response '${P.method} - (${v.id})' in ${Date.now()-P.timerStart}ms.${z}`,O)}else ue.log(`Received response ${v.id} without active response promise.`,O)}else Wt("receive-response",v)}s(xo,"traceReceivedResponse"),o(xo,"traceReceivedResponse");function Wt(v,P){if(!ue||Z===m.Off)return;let O={isLSPMessage:!0,type:v,message:P,timestamp:Date.now()};ue.log(O)}s(Wt,"logLSPMessage"),o(Wt,"logLSPMessage");function rr(){if(_n())throw new w(b.Closed,"Connection is closed.");if(Bt())throw new w(b.Disposed,"Connection is disposed.")}s(rr,"throwIfClosedOrDisposed"),o(rr,"throwIfClosedOrDisposed");function wo(){if(Pn())throw new w(b.AlreadyListening,"Connection is already listening")}s(wo,"throwIfListening"),o(wo,"throwIfListening");function Io(){if(!Pn())throw new Error("Call listen() first.")}s(Io,"throwIfNotListening"),o(Io,"throwIfNotListening");function h(v){return v===void 0?null:v}s(h,"undefinedToNull"),o(h,"undefinedToNull");function Q(v){if(v!==null)return v}s(Q,"nullToUndefined"),o(Q,"nullToUndefined");function ge(v){return v!=null&&!Array.isArray(v)&&typeof v=="object"}s(ge,"isNamedParam"),o(ge,"isNamedParam");function Y(v,P){switch(v){case n.ParameterStructures.auto:return ge(P)?Q(P):[h(P)];case n.ParameterStructures.byName:if(!ge(P))throw new Error("Received parameters by name but param is not an object literal.");return Q(P);case n.ParameterStructures.byPosition:return[h(P)];default:throw new Error(`Unknown parameter structure ${v.toString()}`)}}s(Y,"computeSingleParam"),o(Y,"computeSingleParam");function Me(v,P){let O,z=v.numberOfParams;switch(z){case 0:O=void 0;break;case 1:O=Y(v.parameterStructures,P[0]);break;default:O=[];for(let Ne=0;Ne<P.length&&Ne<z;Ne++)O.push(h(P[Ne]));if(P.length<z)for(let Ne=P.length;Ne<z;Ne++)O.push(null);break}return O}s(Me,"computeMessageParams"),o(Me,"computeMessageParams");let Po={sendNotification:o((v,...P)=>{rr();let O,z;if(r.string(v)){O=v;let ve=P[0],be=0,Ue=n.ParameterStructures.auto;n.ParameterStructures.is(ve)&&(be=1,Ue=ve);let ae=P.length,De=ae-be;switch(De){case 0:z=void 0;break;case 1:z=Y(Ue,P[be]);break;default:if(Ue===n.ParameterStructures.byName)throw new Error(`Received ${De} parameters for 'by Name' notification parameter structure.`);z=P.slice(be,ae).map(pe=>h(pe));break}}else{let ve=P;O=v.method,z=Me(v,ve)}let Ne={jsonrpc:G,method:O,params:z};return ko(Ne),k.write(Ne).catch(ve=>{throw x.error("Sending notification failed."),ve})},"sendNotification"),onNotification:o((v,P)=>{rr();let O;return r.func(v)?q=v:P&&(r.string(v)?(O=v,te.set(v,{type:void 0,handler:P})):(O=v.method,te.set(v.method,{type:v,handler:P}))),{dispose:o(()=>{O!==void 0?te.delete(O):q=void 0},"dispose")}},"onNotification"),onProgress:o((v,P,O)=>{if(de.has(P))throw new Error(`Progress handler for token ${P} already registered`);return de.set(P,O),{dispose:o(()=>{de.delete(P)},"dispose")}},"onProgress"),sendProgress:o((v,P,O)=>Po.sendNotification(p.type,{token:P,value:O}),"sendProgress"),onUnhandledProgress:Vt.event,sendRequest:o((v,...P)=>{rr(),Io();let O,z,Ne;if(r.string(v)){O=v;let ae=P[0],De=P[P.length-1],pe=0,We=n.ParameterStructures.auto;n.ParameterStructures.is(ae)&&(pe=1,We=ae);let at=P.length;l.CancellationToken.is(De)&&(at=at-1,Ne=De);let nr=at-pe;switch(nr){case 0:z=void 0;break;case 1:z=Y(We,P[pe]);break;default:if(We===n.ParameterStructures.byName)throw new Error(`Received ${nr} parameters for 'by Name' request parameter structure.`);z=P.slice(pe,at).map(Jw=>h(Jw));break}}else{let ae=P;O=v.method,z=Me(v,ae);let De=v.numberOfParams;Ne=l.CancellationToken.is(ae[De])?ae[De]:void 0}let ve=D++,be;Ne&&(be=Ne.onCancellationRequested(()=>{let ae=$e.sender.sendCancellation(Po,ve);return ae===void 0?(x.log(`Received no promise from cancellation strategy when cancelling id ${ve}`),Promise.resolve()):ae.catch(()=>{x.log(`Sending cancellation messages for id ${ve} failed`)})}));let Ue={jsonrpc:G,id:ve,method:O,params:z};return So(Ue),typeof $e.sender.enableCancellation=="function"&&$e.sender.enableCancellation(Ue),new Promise(async(ae,De)=>{let pe=o(nr=>{ae(nr),$e.sender.cleanup(ve),be==null||be.dispose()},"resolveWithCleanup"),We=o(nr=>{De(nr),$e.sender.cleanup(ve),be==null||be.dispose()},"rejectWithCleanup"),at={method:O,timerStart:Date.now(),resolve:pe,reject:We};try{await k.write(Ue),ye.set(ve,at)}catch(nr){throw x.error("Sending request failed."),at.reject(new n.ResponseError(n.ErrorCodes.MessageWriteError,nr.message?nr.message:"Unknown reason")),nr}})},"sendRequest"),onRequest:o((v,P)=>{rr();let O=null;return f.is(v)?(O=void 0,F=v):r.string(v)?(O=null,P!==void 0&&(O=v,re.set(v,{handler:P,type:void 0}))):P!==void 0&&(O=v.method,re.set(v.method,{type:v,handler:P})),{dispose:o(()=>{O!==null&&(O!==void 0?re.delete(O):F=void 0)},"dispose")}},"onRequest"),hasPendingResponse:o(()=>ye.size>0,"hasPendingResponse"),trace:o(async(v,P,O)=>{let z=!1,Ne=y.Text;O!==void 0&&(r.boolean(O)?z=O:(z=O.sendNotification||!1,Ne=O.traceFormat||y.Text)),Z=v,ze=Ne,Z===m.Off?ue=void 0:ue=P,z&&!_n()&&!Bt()&&await Po.sendNotification(T.type,{value:m.toString(v)})},"trace"),onError:Re.event,onClose:j.event,onUnhandledNotification:qe.event,onDispose:_t.event,end:o(()=>{k.end()},"end"),dispose:o(()=>{if(Bt())return;Be=le.Disposed,_t.fire(void 0);let v=new n.ResponseError(n.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let P of ye.values())P.reject(v);ye=new Map,he=new Map,ke=new Set,me=new i.LinkedMap,r.func(k.dispose)&&k.dispose(),r.func(R.dispose)&&R.dispose()},"dispose"),listen:o(()=>{rr(),wo(),Be=le.Listening,R.listen(_c)},"listen"),inspect:o(()=>{(0,e.default)().console.log("inspect")},"inspect")};return Po.onNotification(A.type,v=>{if(Z===m.Off||!ue)return;let P=Z===m.Verbose||Z===m.Compact;ue.log(v.message,P?v.verbose:void 0)}),Po.onNotification(p.type,v=>{let P=de.get(v.token);P?P(v.value):Vt.fire(v)}),Po}s(Xe,"createMessageConnection"),o(Xe,"createMessageConnection"),t.createMessageConnection=Xe}}),Zh=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ProgressType=t.ProgressToken=t.createMessageConnection=t.NullLogger=t.ConnectionOptions=t.ConnectionStrategy=t.AbstractMessageBuffer=t.WriteableStreamMessageWriter=t.AbstractMessageWriter=t.MessageWriter=t.ReadableStreamMessageReader=t.AbstractMessageReader=t.MessageReader=t.SharedArrayReceiverStrategy=t.SharedArraySenderStrategy=t.CancellationToken=t.CancellationTokenSource=t.Emitter=t.Event=t.Disposable=t.LRUCache=t.Touch=t.LinkedMap=t.ParameterStructures=t.NotificationType9=t.NotificationType8=t.NotificationType7=t.NotificationType6=t.NotificationType5=t.NotificationType4=t.NotificationType3=t.NotificationType2=t.NotificationType1=t.NotificationType0=t.NotificationType=t.ErrorCodes=t.ResponseError=t.RequestType9=t.RequestType8=t.RequestType7=t.RequestType6=t.RequestType5=t.RequestType4=t.RequestType3=t.RequestType2=t.RequestType1=t.RequestType0=t.RequestType=t.Message=t.RAL=void 0,t.MessageStrategy=t.CancellationStrategy=t.CancellationSenderStrategy=t.CancellationReceiverStrategy=t.ConnectionError=t.ConnectionErrors=t.LogTraceNotification=t.SetTraceNotification=t.TraceFormat=t.TraceValues=t.Trace=void 0;var e=uN();Object.defineProperty(t,"Message",{enumerable:!0,get:o(function(){return e.Message},"get")}),Object.defineProperty(t,"RequestType",{enumerable:!0,get:o(function(){return e.RequestType},"get")}),Object.defineProperty(t,"RequestType0",{enumerable:!0,get:o(function(){return e.RequestType0},"get")}),Object.defineProperty(t,"RequestType1",{enumerable:!0,get:o(function(){return e.RequestType1},"get")}),Object.defineProperty(t,"RequestType2",{enumerable:!0,get:o(function(){return e.RequestType2},"get")}),Object.defineProperty(t,"RequestType3",{enumerable:!0,get:o(function(){return e.RequestType3},"get")}),Object.defineProperty(t,"RequestType4",{enumerable:!0,get:o(function(){return e.RequestType4},"get")}),Object.defineProperty(t,"RequestType5",{enumerable:!0,get:o(function(){return e.RequestType5},"get")}),Object.defineProperty(t,"RequestType6",{enumerable:!0,get:o(function(){return e.RequestType6},"get")}),Object.defineProperty(t,"RequestType7",{enumerable:!0,get:o(function(){return e.RequestType7},"get")}),Object.defineProperty(t,"RequestType8",{enumerable:!0,get:o(function(){return e.RequestType8},"get")}),Object.defineProperty(t,"RequestType9",{enumerable:!0,get:o(function(){return e.RequestType9},"get")}),Object.defineProperty(t,"ResponseError",{enumerable:!0,get:o(function(){return e.ResponseError},"get")}),Object.defineProperty(t,"ErrorCodes",{enumerable:!0,get:o(function(){return e.ErrorCodes},"get")}),Object.defineProperty(t,"NotificationType",{enumerable:!0,get:o(function(){return e.NotificationType},"get")}),Object.defineProperty(t,"NotificationType0",{enumerable:!0,get:o(function(){return e.NotificationType0},"get")}),Object.defineProperty(t,"NotificationType1",{enumerable:!0,get:o(function(){return e.NotificationType1},"get")}),Object.defineProperty(t,"NotificationType2",{enumerable:!0,get:o(function(){return e.NotificationType2},"get")}),Object.defineProperty(t,"NotificationType3",{enumerable:!0,get:o(function(){return e.NotificationType3},"get")}),Object.defineProperty(t,"NotificationType4",{enumerable:!0,get:o(function(){return e.NotificationType4},"get")}),Object.defineProperty(t,"NotificationType5",{enumerable:!0,get:o(function(){return e.NotificationType5},"get")}),Object.defineProperty(t,"NotificationType6",{enumerable:!0,get:o(function(){return e.NotificationType6},"get")}),Object.defineProperty(t,"NotificationType7",{enumerable:!0,get:o(function(){return e.NotificationType7},"get")}),Object.defineProperty(t,"NotificationType8",{enumerable:!0,get:o(function(){return e.NotificationType8},"get")}),Object.defineProperty(t,"NotificationType9",{enumerable:!0,get:o(function(){return e.NotificationType9},"get")}),Object.defineProperty(t,"ParameterStructures",{enumerable:!0,get:o(function(){return e.ParameterStructures},"get")});var r=cN();Object.defineProperty(t,"LinkedMap",{enumerable:!0,get:o(function(){return r.LinkedMap},"get")}),Object.defineProperty(t,"LRUCache",{enumerable:!0,get:o(function(){return r.LRUCache},"get")}),Object.defineProperty(t,"Touch",{enumerable:!0,get:o(function(){return r.Touch},"get")});var n=iI();Object.defineProperty(t,"Disposable",{enumerable:!0,get:o(function(){return n.Disposable},"get")});var i=El();Object.defineProperty(t,"Event",{enumerable:!0,get:o(function(){return i.Event},"get")}),Object.defineProperty(t,"Emitter",{enumerable:!0,get:o(function(){return i.Emitter},"get")});var a=od();Object.defineProperty(t,"CancellationTokenSource",{enumerable:!0,get:o(function(){return a.CancellationTokenSource},"get")}),Object.defineProperty(t,"CancellationToken",{enumerable:!0,get:o(function(){return a.CancellationToken},"get")});var l=aI();Object.defineProperty(t,"SharedArraySenderStrategy",{enumerable:!0,get:o(function(){return l.SharedArraySenderStrategy},"get")}),Object.defineProperty(t,"SharedArrayReceiverStrategy",{enumerable:!0,get:o(function(){return l.SharedArrayReceiverStrategy},"get")});var c=sI();Object.defineProperty(t,"MessageReader",{enumerable:!0,get:o(function(){return c.MessageReader},"get")}),Object.defineProperty(t,"AbstractMessageReader",{enumerable:!0,get:o(function(){return c.AbstractMessageReader},"get")}),Object.defineProperty(t,"ReadableStreamMessageReader",{enumerable:!0,get:o(function(){return c.ReadableStreamMessageReader},"get")});var u=oI();Object.defineProperty(t,"MessageWriter",{enumerable:!0,get:o(function(){return u.MessageWriter},"get")}),Object.defineProperty(t,"AbstractMessageWriter",{enumerable:!0,get:o(function(){return u.AbstractMessageWriter},"get")}),Object.defineProperty(t,"WriteableStreamMessageWriter",{enumerable:!0,get:o(function(){return u.WriteableStreamMessageWriter},"get")});var p=lI();Object.defineProperty(t,"AbstractMessageBuffer",{enumerable:!0,get:o(function(){return p.AbstractMessageBuffer},"get")});var d=uI();Object.defineProperty(t,"ConnectionStrategy",{enumerable:!0,get:o(function(){return d.ConnectionStrategy},"get")}),Object.defineProperty(t,"ConnectionOptions",{enumerable:!0,get:o(function(){return d.ConnectionOptions},"get")}),Object.defineProperty(t,"NullLogger",{enumerable:!0,get:o(function(){return d.NullLogger},"get")}),Object.defineProperty(t,"createMessageConnection",{enumerable:!0,get:o(function(){return d.createMessageConnection},"get")}),Object.defineProperty(t,"ProgressToken",{enumerable:!0,get:o(function(){return d.ProgressToken},"get")}),Object.defineProperty(t,"ProgressType",{enumerable:!0,get:o(function(){return d.ProgressType},"get")}),Object.defineProperty(t,"Trace",{enumerable:!0,get:o(function(){return d.Trace},"get")}),Object.defineProperty(t,"TraceValues",{enumerable:!0,get:o(function(){return d.TraceValues},"get")}),Object.defineProperty(t,"TraceFormat",{enumerable:!0,get:o(function(){return d.TraceFormat},"get")}),Object.defineProperty(t,"SetTraceNotification",{enumerable:!0,get:o(function(){return d.SetTraceNotification},"get")}),Object.defineProperty(t,"LogTraceNotification",{enumerable:!0,get:o(function(){return d.LogTraceNotification},"get")}),Object.defineProperty(t,"ConnectionErrors",{enumerable:!0,get:o(function(){return d.ConnectionErrors},"get")}),Object.defineProperty(t,"ConnectionError",{enumerable:!0,get:o(function(){return d.ConnectionError},"get")}),Object.defineProperty(t,"CancellationReceiverStrategy",{enumerable:!0,get:o(function(){return d.CancellationReceiverStrategy},"get")}),Object.defineProperty(t,"CancellationSenderStrategy",{enumerable:!0,get:o(function(){return d.CancellationSenderStrategy},"get")}),Object.defineProperty(t,"CancellationStrategy",{enumerable:!0,get:o(function(){return d.CancellationStrategy},"get")}),Object.defineProperty(t,"MessageStrategy",{enumerable:!0,get:o(function(){return d.MessageStrategy},"get")});var f=ao();t.RAL=f.default}}),cI=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(t){var u,p,d;Object.defineProperty(t,"__esModule",{value:!0});var e=Zh(),r=(u=class extends e.AbstractMessageBuffer{constructor(m="utf-8"){super(m),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return u.emptyBuffer}fromString(m,g){return new TextEncoder().encode(m)}toString(m,g){return g==="ascii"?this.asciiDecoder.decode(m):new TextDecoder(g).decode(m)}asNative(m,g){return g===void 0?m:m.slice(0,g)}allocNative(m){return new Uint8Array(m)}},s(u,"_MessageBuffer"),o(u,"MessageBuffer"),u);r.emptyBuffer=new Uint8Array(0);var n=(p=class{constructor(m){this.socket=m,this._onData=new e.Emitter,this._messageListener=g=>{g.data.arrayBuffer().then(y=>{this._onData.fire(new Uint8Array(y))},()=>{(0,e.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(m){return this.socket.addEventListener("close",m),e.Disposable.create(()=>this.socket.removeEventListener("close",m))}onError(m){return this.socket.addEventListener("error",m),e.Disposable.create(()=>this.socket.removeEventListener("error",m))}onEnd(m){return this.socket.addEventListener("end",m),e.Disposable.create(()=>this.socket.removeEventListener("end",m))}onData(m){return this._onData.event(m)}},s(p,"ReadableStreamWrapper"),o(p,"ReadableStreamWrapper"),p),i=(d=class{constructor(m){this.socket=m}onClose(m){return this.socket.addEventListener("close",m),e.Disposable.create(()=>this.socket.removeEventListener("close",m))}onError(m){return this.socket.addEventListener("error",m),e.Disposable.create(()=>this.socket.removeEventListener("error",m))}onEnd(m){return this.socket.addEventListener("end",m),e.Disposable.create(()=>this.socket.removeEventListener("end",m))}write(m,g){if(typeof m=="string"){if(g!==void 0&&g!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${g}`);this.socket.send(m)}else this.socket.send(m);return Promise.resolve()}end(){this.socket.close()}},s(d,"WritableStreamWrapper"),o(d,"WritableStreamWrapper"),d),a=new TextEncoder,l=Object.freeze({messageBuffer:Object.freeze({create:o(f=>new r(f),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:o((f,m)=>{if(m.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${m.charset}`);return Promise.resolve(a.encode(JSON.stringify(f,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:o((f,m)=>{if(!(f instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(m.charset).decode(f)))},"decode")})}),stream:Object.freeze({asReadableStream:o(f=>new n(f),"asReadableStream"),asWritableStream:o(f=>new i(f),"asWritableStream")}),console,timer:Object.freeze({setTimeout(f,m,...g){let y=setTimeout(f,m,...g);return{dispose:o(()=>clearTimeout(y),"dispose")}},setImmediate(f,...m){let g=setTimeout(f,0,...m);return{dispose:o(()=>clearTimeout(g),"dispose")}},setInterval(f,m,...g){let y=setInterval(f,m,...g);return{dispose:o(()=>clearInterval(y),"dispose")}}})});function c(){return l}s(c,"RIL"),o(c,"RIL"),function(f){function m(){e.RAL.install(l)}s(m,"install"),o(m,"install"),f.install=m}(c||(c={})),t.default=c}}),Al=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(t){var u,p;var e=t&&t.__createBinding||(Object.create?function(d,f,m,g){g===void 0&&(g=m);var y=Object.getOwnPropertyDescriptor(f,m);(!y||("get"in y?!f.__esModule:y.writable||y.configurable))&&(y={enumerable:!0,get:o(function(){return f[m]},"get")}),Object.defineProperty(d,g,y)}:function(d,f,m,g){g===void 0&&(g=m),d[g]=f[m]}),r=t&&t.__exportStar||function(d,f){for(var m in d)m!=="default"&&!Object.prototype.hasOwnProperty.call(f,m)&&e(f,d,m)};Object.defineProperty(t,"__esModule",{value:!0}),t.createMessageConnection=t.BrowserMessageWriter=t.BrowserMessageReader=void 0;var n=cI();n.default.install();var i=Zh();r(Zh(),t);var a=(u=class extends i.AbstractMessageReader{constructor(f){super(),this._onData=new i.Emitter,this._messageListener=m=>{this._onData.fire(m.data)},f.addEventListener("error",m=>this.fireError(m)),f.onmessage=this._messageListener}listen(f){return this._onData.event(f)}},s(u,"BrowserMessageReader"),o(u,"BrowserMessageReader"),u);t.BrowserMessageReader=a;var l=(p=class extends i.AbstractMessageWriter{constructor(f){super(),this.port=f,this.errorCount=0,f.addEventListener("error",m=>this.fireError(m))}write(f){try{return this.port.postMessage(f),Promise.resolve()}catch(m){return this.handleError(m,f),Promise.reject(m)}}handleError(f,m){this.errorCount++,this.fireError(f,m,this.errorCount)}end(){}},s(p,"BrowserMessageWriter"),o(p,"BrowserMessageWriter"),p);t.BrowserMessageWriter=l;function c(d,f,m,g){return m===void 0&&(m=i.NullLogger),i.ConnectionStrategy.is(g)&&(g={connectionStrategy:g}),(0,i.createMessageConnection)(d,f,m,g)}s(c,"createMessageConnection"),o(c,"createMessageConnection"),t.createMessageConnection=c}}),vS=J({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(t,e){e.exports=Al()}}),Oe=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(t){var u,p,d,f,m;Object.defineProperty(t,"__esModule",{value:!0}),t.ProtocolNotificationType=t.ProtocolNotificationType0=t.ProtocolRequestType=t.ProtocolRequestType0=t.RegistrationType=t.MessageDirection=void 0;var e=Al(),r;(function(g){g.clientToServer="clientToServer",g.serverToClient="serverToClient",g.both="both"})(r||(t.MessageDirection=r={}));var n=(u=class{constructor(y){this.method=y}},s(u,"RegistrationType"),o(u,"RegistrationType"),u);t.RegistrationType=n;var i=(p=class extends e.RequestType0{constructor(y){super(y)}},s(p,"ProtocolRequestType0"),o(p,"ProtocolRequestType0"),p);t.ProtocolRequestType0=i;var a=(d=class extends e.RequestType{constructor(y){super(y,e.ParameterStructures.byName)}},s(d,"ProtocolRequestType"),o(d,"ProtocolRequestType"),d);t.ProtocolRequestType=a;var l=(f=class extends e.NotificationType0{constructor(y){super(y)}},s(f,"ProtocolNotificationType0"),o(f,"ProtocolNotificationType0"),f);t.ProtocolNotificationType0=l;var c=(m=class extends e.NotificationType{constructor(y){super(y,e.ParameterStructures.byName)}},s(m,"ProtocolNotificationType"),o(m,"ProtocolNotificationType"),m);t.ProtocolNotificationType=c}}),wy=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.objectLiteral=t.typedArray=t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0;function e(d){return d===!0||d===!1}s(e,"boolean"),o(e,"boolean"),t.boolean=e;function r(d){return typeof d=="string"||d instanceof String}s(r,"string"),o(r,"string"),t.string=r;function n(d){return typeof d=="number"||d instanceof Number}s(n,"number"),o(n,"number"),t.number=n;function i(d){return d instanceof Error}s(i,"error"),o(i,"error"),t.error=i;function a(d){return typeof d=="function"}s(a,"func"),o(a,"func"),t.func=a;function l(d){return Array.isArray(d)}s(l,"array"),o(l,"array"),t.array=l;function c(d){return l(d)&&d.every(f=>r(f))}s(c,"stringArray"),o(c,"stringArray"),t.stringArray=c;function u(d,f){return Array.isArray(d)&&d.every(f)}s(u,"typedArray"),o(u,"typedArray"),t.typedArray=u;function p(d){return d!==null&&typeof d=="object"}s(p,"objectLiteral"),o(p,"objectLiteral"),t.objectLiteral=p}}),pI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ImplementationRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/implementation",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.ImplementationRequest=r={}))}}),dI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.TypeDefinitionRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/typeDefinition",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.TypeDefinitionRequest=r={}))}}),fI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.DidChangeWorkspaceFoldersNotification=t.WorkspaceFoldersRequest=void 0;var e=Oe(),r;(function(i){i.method="workspace/workspaceFolders",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(r||(t.WorkspaceFoldersRequest=r={}));var n;(function(i){i.method="workspace/didChangeWorkspaceFolders",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolNotificationType(i.method)})(n||(t.DidChangeWorkspaceFoldersNotification=n={}))}}),mI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ConfigurationRequest=void 0;var e=Oe(),r;(function(n){n.method="workspace/configuration",n.messageDirection=e.MessageDirection.serverToClient,n.type=new e.ProtocolRequestType(n.method)})(r||(t.ConfigurationRequest=r={}))}}),hI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ColorPresentationRequest=t.DocumentColorRequest=void 0;var e=Oe(),r;(function(i){i.method="textDocument/documentColor",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.DocumentColorRequest=r={}));var n;(function(i){i.method="textDocument/colorPresentation",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(n||(t.ColorPresentationRequest=n={}))}}),yI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.FoldingRangeRefreshRequest=t.FoldingRangeRequest=void 0;var e=Oe(),r;(function(i){i.method="textDocument/foldingRange",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.FoldingRangeRequest=r={}));var n;(function(i){i.method="workspace/foldingRange/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(n||(t.FoldingRangeRefreshRequest=n={}))}}),gI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.DeclarationRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/declaration",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.DeclarationRequest=r={}))}}),vI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRangeRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/selectionRange",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.SelectionRangeRequest=r={}))}}),TI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.WorkDoneProgressCancelNotification=t.WorkDoneProgressCreateRequest=t.WorkDoneProgress=void 0;var e=Al(),r=Oe(),n;(function(l){l.type=new e.ProgressType;function c(u){return u===l.type}s(c,"is"),o(c,"is"),l.is=c})(n||(t.WorkDoneProgress=n={}));var i;(function(l){l.method="window/workDoneProgress/create",l.messageDirection=r.MessageDirection.serverToClient,l.type=new r.ProtocolRequestType(l.method)})(i||(t.WorkDoneProgressCreateRequest=i={}));var a;(function(l){l.method="window/workDoneProgress/cancel",l.messageDirection=r.MessageDirection.clientToServer,l.type=new r.ProtocolNotificationType(l.method)})(a||(t.WorkDoneProgressCancelNotification=a={}))}}),RI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.CallHierarchyOutgoingCallsRequest=t.CallHierarchyIncomingCallsRequest=t.CallHierarchyPrepareRequest=void 0;var e=Oe(),r;(function(a){a.method="textDocument/prepareCallHierarchy",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.CallHierarchyPrepareRequest=r={}));var n;(function(a){a.method="callHierarchy/incomingCalls",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(n||(t.CallHierarchyIncomingCallsRequest=n={}));var i;(function(a){a.method="callHierarchy/outgoingCalls",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(i||(t.CallHierarchyOutgoingCallsRequest=i={}))}}),$I=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.SemanticTokensRefreshRequest=t.SemanticTokensRangeRequest=t.SemanticTokensDeltaRequest=t.SemanticTokensRequest=t.SemanticTokensRegistrationType=t.TokenFormat=void 0;var e=Oe(),r;(function(u){u.Relative="relative"})(r||(t.TokenFormat=r={}));var n;(function(u){u.method="textDocument/semanticTokens",u.type=new e.RegistrationType(u.method)})(n||(t.SemanticTokensRegistrationType=n={}));var i;(function(u){u.method="textDocument/semanticTokens/full",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method),u.registrationMethod=n.method})(i||(t.SemanticTokensRequest=i={}));var a;(function(u){u.method="textDocument/semanticTokens/full/delta",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method),u.registrationMethod=n.method})(a||(t.SemanticTokensDeltaRequest=a={}));var l;(function(u){u.method="textDocument/semanticTokens/range",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method),u.registrationMethod=n.method})(l||(t.SemanticTokensRangeRequest=l={}));var c;(function(u){u.method="workspace/semanticTokens/refresh",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType0(u.method)})(c||(t.SemanticTokensRefreshRequest=c={}))}}),bI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ShowDocumentRequest=void 0;var e=Oe(),r;(function(n){n.method="window/showDocument",n.messageDirection=e.MessageDirection.serverToClient,n.type=new e.ProtocolRequestType(n.method)})(r||(t.ShowDocumentRequest=r={}))}}),CI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedEditingRangeRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/linkedEditingRange",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.LinkedEditingRangeRequest=r={}))}}),EI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.WillDeleteFilesRequest=t.DidDeleteFilesNotification=t.DidRenameFilesNotification=t.WillRenameFilesRequest=t.DidCreateFilesNotification=t.WillCreateFilesRequest=t.FileOperationPatternKind=void 0;var e=Oe(),r;(function(p){p.file="file",p.folder="folder"})(r||(t.FileOperationPatternKind=r={}));var n;(function(p){p.method="workspace/willCreateFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolRequestType(p.method)})(n||(t.WillCreateFilesRequest=n={}));var i;(function(p){p.method="workspace/didCreateFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolNotificationType(p.method)})(i||(t.DidCreateFilesNotification=i={}));var a;(function(p){p.method="workspace/willRenameFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolRequestType(p.method)})(a||(t.WillRenameFilesRequest=a={}));var l;(function(p){p.method="workspace/didRenameFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolNotificationType(p.method)})(l||(t.DidRenameFilesNotification=l={}));var c;(function(p){p.method="workspace/didDeleteFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolNotificationType(p.method)})(c||(t.DidDeleteFilesNotification=c={}));var u;(function(p){p.method="workspace/willDeleteFiles",p.messageDirection=e.MessageDirection.clientToServer,p.type=new e.ProtocolRequestType(p.method)})(u||(t.WillDeleteFilesRequest=u={}))}}),AI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.MonikerRequest=t.MonikerKind=t.UniquenessLevel=void 0;var e=Oe(),r;(function(a){a.document="document",a.project="project",a.group="group",a.scheme="scheme",a.global="global"})(r||(t.UniquenessLevel=r={}));var n;(function(a){a.$import="import",a.$export="export",a.local="local"})(n||(t.MonikerKind=n={}));var i;(function(a){a.method="textDocument/moniker",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(i||(t.MonikerRequest=i={}))}}),SI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHierarchySubtypesRequest=t.TypeHierarchySupertypesRequest=t.TypeHierarchyPrepareRequest=void 0;var e=Oe(),r;(function(a){a.method="textDocument/prepareTypeHierarchy",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.TypeHierarchyPrepareRequest=r={}));var n;(function(a){a.method="typeHierarchy/supertypes",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(n||(t.TypeHierarchySupertypesRequest=n={}));var i;(function(a){a.method="typeHierarchy/subtypes",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(i||(t.TypeHierarchySubtypesRequest=i={}))}}),kI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.InlineValueRefreshRequest=t.InlineValueRequest=void 0;var e=Oe(),r;(function(i){i.method="textDocument/inlineValue",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.InlineValueRequest=r={}));var n;(function(i){i.method="workspace/inlineValue/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(n||(t.InlineValueRefreshRequest=n={}))}}),NI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.InlayHintRefreshRequest=t.InlayHintResolveRequest=t.InlayHintRequest=void 0;var e=Oe(),r;(function(a){a.method="textDocument/inlayHint",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.InlayHintRequest=r={}));var n;(function(a){a.method="inlayHint/resolve",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(n||(t.InlayHintResolveRequest=n={}));var i;(function(a){a.method="workspace/inlayHint/refresh",a.messageDirection=e.MessageDirection.serverToClient,a.type=new e.ProtocolRequestType0(a.method)})(i||(t.InlayHintRefreshRequest=i={}))}}),xI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.DiagnosticRefreshRequest=t.WorkspaceDiagnosticRequest=t.DocumentDiagnosticRequest=t.DocumentDiagnosticReportKind=t.DiagnosticServerCancellationData=void 0;var e=Al(),r=wy(),n=Oe(),i;(function(p){function d(f){let m=f;return m&&r.boolean(m.retriggerRequest)}s(d,"is"),o(d,"is"),p.is=d})(i||(t.DiagnosticServerCancellationData=i={}));var a;(function(p){p.Full="full",p.Unchanged="unchanged"})(a||(t.DocumentDiagnosticReportKind=a={}));var l;(function(p){p.method="textDocument/diagnostic",p.messageDirection=n.MessageDirection.clientToServer,p.type=new n.ProtocolRequestType(p.method),p.partialResult=new e.ProgressType})(l||(t.DocumentDiagnosticRequest=l={}));var c;(function(p){p.method="workspace/diagnostic",p.messageDirection=n.MessageDirection.clientToServer,p.type=new n.ProtocolRequestType(p.method),p.partialResult=new e.ProgressType})(c||(t.WorkspaceDiagnosticRequest=c={}));var u;(function(p){p.method="workspace/diagnostic/refresh",p.messageDirection=n.MessageDirection.serverToClient,p.type=new n.ProtocolRequestType0(p.method)})(u||(t.DiagnosticRefreshRequest=u={}))}}),wI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.DidCloseNotebookDocumentNotification=t.DidSaveNotebookDocumentNotification=t.DidChangeNotebookDocumentNotification=t.NotebookCellArrayChange=t.DidOpenNotebookDocumentNotification=t.NotebookDocumentSyncRegistrationType=t.NotebookDocument=t.NotebookCell=t.ExecutionSummary=t.NotebookCellKind=void 0;var e=(Hu(),xy(sd)),r=wy(),n=Oe(),i;(function(y){y.Markup=1,y.Code=2;function T(A){return A===1||A===2}s(T,"is"),o(T,"is"),y.is=T})(i||(t.NotebookCellKind=i={}));var a;(function(y){function T(w,S){let I={executionOrder:w};return(S===!0||S===!1)&&(I.success=S),I}s(T,"create"),o(T,"create"),y.create=T;function A(w){let S=w;return r.objectLiteral(S)&&e.uinteger.is(S.executionOrder)&&(S.success===void 0||r.boolean(S.success))}s(A,"is"),o(A,"is"),y.is=A;function b(w,S){return w===S?!0:w==null||S===null||S===void 0?!1:w.executionOrder===S.executionOrder&&w.success===S.success}s(b,"equals"),o(b,"equals"),y.equals=b})(a||(t.ExecutionSummary=a={}));var l;(function(y){function T(S,I){return{kind:S,document:I}}s(T,"create"),o(T,"create"),y.create=T;function A(S){let I=S;return r.objectLiteral(I)&&i.is(I.kind)&&e.DocumentUri.is(I.document)&&(I.metadata===void 0||r.objectLiteral(I.metadata))}s(A,"is"),o(A,"is"),y.is=A;function b(S,I){let K=new Set;return S.document!==I.document&&K.add("document"),S.kind!==I.kind&&K.add("kind"),S.executionSummary!==I.executionSummary&&K.add("executionSummary"),(S.metadata!==void 0||I.metadata!==void 0)&&!w(S.metadata,I.metadata)&&K.add("metadata"),(S.executionSummary!==void 0||I.executionSummary!==void 0)&&!a.equals(S.executionSummary,I.executionSummary)&&K.add("executionSummary"),K}s(b,"diff"),o(b,"diff"),y.diff=b;function w(S,I){if(S===I)return!0;if(S==null||I===null||I===void 0||typeof S!=typeof I||typeof S!="object")return!1;let K=Array.isArray(S),ie=Array.isArray(I);if(K!==ie)return!1;if(K&&ie){if(S.length!==I.length)return!1;for(let X=0;X<S.length;X++)if(!w(S[X],I[X]))return!1}if(r.objectLiteral(S)&&r.objectLiteral(I)){let X=Object.keys(S),Te=Object.keys(I);if(X.length!==Te.length||(X.sort(),Te.sort(),!w(X,Te)))return!1;for(let Se=0;Se<X.length;Se++){let _e=X[Se];if(!w(S[_e],I[_e]))return!1}}return!0}s(w,"equalsMetadata"),o(w,"equalsMetadata")})(l||(t.NotebookCell=l={}));var c;(function(y){function T(b,w,S,I){return{uri:b,notebookType:w,version:S,cells:I}}s(T,"create"),o(T,"create"),y.create=T;function A(b){let w=b;return r.objectLiteral(w)&&r.string(w.uri)&&e.integer.is(w.version)&&r.typedArray(w.cells,l.is)}s(A,"is"),o(A,"is"),y.is=A})(c||(t.NotebookDocument=c={}));var u;(function(y){y.method="notebookDocument/sync",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.RegistrationType(y.method)})(u||(t.NotebookDocumentSyncRegistrationType=u={}));var p;(function(y){y.method="notebookDocument/didOpen",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=u.method})(p||(t.DidOpenNotebookDocumentNotification=p={}));var d;(function(y){function T(b){let w=b;return r.objectLiteral(w)&&e.uinteger.is(w.start)&&e.uinteger.is(w.deleteCount)&&(w.cells===void 0||r.typedArray(w.cells,l.is))}s(T,"is"),o(T,"is"),y.is=T;function A(b,w,S){let I={start:b,deleteCount:w};return S!==void 0&&(I.cells=S),I}s(A,"create"),o(A,"create"),y.create=A})(d||(t.NotebookCellArrayChange=d={}));var f;(function(y){y.method="notebookDocument/didChange",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=u.method})(f||(t.DidChangeNotebookDocumentNotification=f={}));var m;(function(y){y.method="notebookDocument/didSave",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=u.method})(m||(t.DidSaveNotebookDocumentNotification=m={}));var g;(function(y){y.method="notebookDocument/didClose",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=u.method})(g||(t.DidCloseNotebookDocumentNotification=g={}))}}),II=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.InlineCompletionRequest=void 0;var e=Oe(),r;(function(n){n.method="textDocument/inlineCompletion",n.messageDirection=e.MessageDirection.clientToServer,n.type=new e.ProtocolRequestType(n.method)})(r||(t.InlineCompletionRequest=r={}))}}),PI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.WorkspaceSymbolRequest=t.CodeActionResolveRequest=t.CodeActionRequest=t.DocumentSymbolRequest=t.DocumentHighlightRequest=t.ReferencesRequest=t.DefinitionRequest=t.SignatureHelpRequest=t.SignatureHelpTriggerKind=t.HoverRequest=t.CompletionResolveRequest=t.CompletionRequest=t.CompletionTriggerKind=t.PublishDiagnosticsNotification=t.WatchKind=t.RelativePattern=t.FileChangeType=t.DidChangeWatchedFilesNotification=t.WillSaveTextDocumentWaitUntilRequest=t.WillSaveTextDocumentNotification=t.TextDocumentSaveReason=t.DidSaveTextDocumentNotification=t.DidCloseTextDocumentNotification=t.DidChangeTextDocumentNotification=t.TextDocumentContentChangeEvent=t.DidOpenTextDocumentNotification=t.TextDocumentSyncKind=t.TelemetryEventNotification=t.LogMessageNotification=t.ShowMessageRequest=t.ShowMessageNotification=t.MessageType=t.DidChangeConfigurationNotification=t.ExitNotification=t.ShutdownRequest=t.InitializedNotification=t.InitializeErrorCodes=t.InitializeRequest=t.WorkDoneProgressOptions=t.TextDocumentRegistrationOptions=t.StaticRegistrationOptions=t.PositionEncodingKind=t.FailureHandlingKind=t.ResourceOperationKind=t.UnregistrationRequest=t.RegistrationRequest=t.DocumentSelector=t.NotebookCellTextDocumentFilter=t.NotebookDocumentFilter=t.TextDocumentFilter=void 0,t.MonikerRequest=t.MonikerKind=t.UniquenessLevel=t.WillDeleteFilesRequest=t.DidDeleteFilesNotification=t.WillRenameFilesRequest=t.DidRenameFilesNotification=t.WillCreateFilesRequest=t.DidCreateFilesNotification=t.FileOperationPatternKind=t.LinkedEditingRangeRequest=t.ShowDocumentRequest=t.SemanticTokensRegistrationType=t.SemanticTokensRefreshRequest=t.SemanticTokensRangeRequest=t.SemanticTokensDeltaRequest=t.SemanticTokensRequest=t.TokenFormat=t.CallHierarchyPrepareRequest=t.CallHierarchyOutgoingCallsRequest=t.CallHierarchyIncomingCallsRequest=t.WorkDoneProgressCancelNotification=t.WorkDoneProgressCreateRequest=t.WorkDoneProgress=t.SelectionRangeRequest=t.DeclarationRequest=t.FoldingRangeRefreshRequest=t.FoldingRangeRequest=t.ColorPresentationRequest=t.DocumentColorRequest=t.ConfigurationRequest=t.DidChangeWorkspaceFoldersNotification=t.WorkspaceFoldersRequest=t.TypeDefinitionRequest=t.ImplementationRequest=t.ApplyWorkspaceEditRequest=t.ExecuteCommandRequest=t.PrepareRenameRequest=t.RenameRequest=t.PrepareSupportDefaultBehavior=t.DocumentOnTypeFormattingRequest=t.DocumentRangesFormattingRequest=t.DocumentRangeFormattingRequest=t.DocumentFormattingRequest=t.DocumentLinkResolveRequest=t.DocumentLinkRequest=t.CodeLensRefreshRequest=t.CodeLensResolveRequest=t.CodeLensRequest=t.WorkspaceSymbolResolveRequest=void 0,t.InlineCompletionRequest=t.DidCloseNotebookDocumentNotification=t.DidSaveNotebookDocumentNotification=t.DidChangeNotebookDocumentNotification=t.NotebookCellArrayChange=t.DidOpenNotebookDocumentNotification=t.NotebookDocumentSyncRegistrationType=t.NotebookDocument=t.NotebookCell=t.ExecutionSummary=t.NotebookCellKind=t.DiagnosticRefreshRequest=t.WorkspaceDiagnosticRequest=t.DocumentDiagnosticRequest=t.DocumentDiagnosticReportKind=t.DiagnosticServerCancellationData=t.InlayHintRefreshRequest=t.InlayHintResolveRequest=t.InlayHintRequest=t.InlineValueRefreshRequest=t.InlineValueRequest=t.TypeHierarchySupertypesRequest=t.TypeHierarchySubtypesRequest=t.TypeHierarchyPrepareRequest=void 0;var e=Oe(),r=(Hu(),xy(sd)),n=wy(),i=pI();Object.defineProperty(t,"ImplementationRequest",{enumerable:!0,get:o(function(){return i.ImplementationRequest},"get")});var a=dI();Object.defineProperty(t,"TypeDefinitionRequest",{enumerable:!0,get:o(function(){return a.TypeDefinitionRequest},"get")});var l=fI();Object.defineProperty(t,"WorkspaceFoldersRequest",{enumerable:!0,get:o(function(){return l.WorkspaceFoldersRequest},"get")}),Object.defineProperty(t,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:o(function(){return l.DidChangeWorkspaceFoldersNotification},"get")});var c=mI();Object.defineProperty(t,"ConfigurationRequest",{enumerable:!0,get:o(function(){return c.ConfigurationRequest},"get")});var u=hI();Object.defineProperty(t,"DocumentColorRequest",{enumerable:!0,get:o(function(){return u.DocumentColorRequest},"get")}),Object.defineProperty(t,"ColorPresentationRequest",{enumerable:!0,get:o(function(){return u.ColorPresentationRequest},"get")});var p=yI();Object.defineProperty(t,"FoldingRangeRequest",{enumerable:!0,get:o(function(){return p.FoldingRangeRequest},"get")}),Object.defineProperty(t,"FoldingRangeRefreshRequest",{enumerable:!0,get:o(function(){return p.FoldingRangeRefreshRequest},"get")});var d=gI();Object.defineProperty(t,"DeclarationRequest",{enumerable:!0,get:o(function(){return d.DeclarationRequest},"get")});var f=vI();Object.defineProperty(t,"SelectionRangeRequest",{enumerable:!0,get:o(function(){return f.SelectionRangeRequest},"get")});var m=TI();Object.defineProperty(t,"WorkDoneProgress",{enumerable:!0,get:o(function(){return m.WorkDoneProgress},"get")}),Object.defineProperty(t,"WorkDoneProgressCreateRequest",{enumerable:!0,get:o(function(){return m.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(t,"WorkDoneProgressCancelNotification",{enumerable:!0,get:o(function(){return m.WorkDoneProgressCancelNotification},"get")});var g=RI();Object.defineProperty(t,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:o(function(){return g.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(t,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:o(function(){return g.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(t,"CallHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return g.CallHierarchyPrepareRequest},"get")});var y=$I();Object.defineProperty(t,"TokenFormat",{enumerable:!0,get:o(function(){return y.TokenFormat},"get")}),Object.defineProperty(t,"SemanticTokensRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRequest},"get")}),Object.defineProperty(t,"SemanticTokensDeltaRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(t,"SemanticTokensRangeRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRangeRequest},"get")}),Object.defineProperty(t,"SemanticTokensRefreshRequest",{enumerable:!0,get:o(function(){return y.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(t,"SemanticTokensRegistrationType",{enumerable:!0,get:o(function(){return y.SemanticTokensRegistrationType},"get")});var T=bI();Object.defineProperty(t,"ShowDocumentRequest",{enumerable:!0,get:o(function(){return T.ShowDocumentRequest},"get")});var A=CI();Object.defineProperty(t,"LinkedEditingRangeRequest",{enumerable:!0,get:o(function(){return A.LinkedEditingRangeRequest},"get")});var b=EI();Object.defineProperty(t,"FileOperationPatternKind",{enumerable:!0,get:o(function(){return b.FileOperationPatternKind},"get")}),Object.defineProperty(t,"DidCreateFilesNotification",{enumerable:!0,get:o(function(){return b.DidCreateFilesNotification},"get")}),Object.defineProperty(t,"WillCreateFilesRequest",{enumerable:!0,get:o(function(){return b.WillCreateFilesRequest},"get")}),Object.defineProperty(t,"DidRenameFilesNotification",{enumerable:!0,get:o(function(){return b.DidRenameFilesNotification},"get")}),Object.defineProperty(t,"WillRenameFilesRequest",{enumerable:!0,get:o(function(){return b.WillRenameFilesRequest},"get")}),Object.defineProperty(t,"DidDeleteFilesNotification",{enumerable:!0,get:o(function(){return b.DidDeleteFilesNotification},"get")}),Object.defineProperty(t,"WillDeleteFilesRequest",{enumerable:!0,get:o(function(){return b.WillDeleteFilesRequest},"get")});var w=AI();Object.defineProperty(t,"UniquenessLevel",{enumerable:!0,get:o(function(){return w.UniquenessLevel},"get")}),Object.defineProperty(t,"MonikerKind",{enumerable:!0,get:o(function(){return w.MonikerKind},"get")}),Object.defineProperty(t,"MonikerRequest",{enumerable:!0,get:o(function(){return w.MonikerRequest},"get")});var S=SI();Object.defineProperty(t,"TypeHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return S.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(t,"TypeHierarchySubtypesRequest",{enumerable:!0,get:o(function(){return S.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(t,"TypeHierarchySupertypesRequest",{enumerable:!0,get:o(function(){return S.TypeHierarchySupertypesRequest},"get")});var I=kI();Object.defineProperty(t,"InlineValueRequest",{enumerable:!0,get:o(function(){return I.InlineValueRequest},"get")}),Object.defineProperty(t,"InlineValueRefreshRequest",{enumerable:!0,get:o(function(){return I.InlineValueRefreshRequest},"get")});var K=NI();Object.defineProperty(t,"InlayHintRequest",{enumerable:!0,get:o(function(){return K.InlayHintRequest},"get")}),Object.defineProperty(t,"InlayHintResolveRequest",{enumerable:!0,get:o(function(){return K.InlayHintResolveRequest},"get")}),Object.defineProperty(t,"InlayHintRefreshRequest",{enumerable:!0,get:o(function(){return K.InlayHintRefreshRequest},"get")});var ie=xI();Object.defineProperty(t,"DiagnosticServerCancellationData",{enumerable:!0,get:o(function(){return ie.DiagnosticServerCancellationData},"get")}),Object.defineProperty(t,"DocumentDiagnosticReportKind",{enumerable:!0,get:o(function(){return ie.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(t,"DocumentDiagnosticRequest",{enumerable:!0,get:o(function(){return ie.DocumentDiagnosticRequest},"get")}),Object.defineProperty(t,"WorkspaceDiagnosticRequest",{enumerable:!0,get:o(function(){return ie.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(t,"DiagnosticRefreshRequest",{enumerable:!0,get:o(function(){return ie.DiagnosticRefreshRequest},"get")});var X=wI();Object.defineProperty(t,"NotebookCellKind",{enumerable:!0,get:o(function(){return X.NotebookCellKind},"get")}),Object.defineProperty(t,"ExecutionSummary",{enumerable:!0,get:o(function(){return X.ExecutionSummary},"get")}),Object.defineProperty(t,"NotebookCell",{enumerable:!0,get:o(function(){return X.NotebookCell},"get")}),Object.defineProperty(t,"NotebookDocument",{enumerable:!0,get:o(function(){return X.NotebookDocument},"get")}),Object.defineProperty(t,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:o(function(){return X.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(t,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:o(function(){return X.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(t,"NotebookCellArrayChange",{enumerable:!0,get:o(function(){return X.NotebookCellArrayChange},"get")}),Object.defineProperty(t,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:o(function(){return X.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(t,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:o(function(){return X.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(t,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:o(function(){return X.DidCloseNotebookDocumentNotification},"get")});var Te=II();Object.defineProperty(t,"InlineCompletionRequest",{enumerable:!0,get:o(function(){return Te.InlineCompletionRequest},"get")});var Se;(function(h){function Q(ge){let Y=ge;return n.string(Y)||n.string(Y.language)||n.string(Y.scheme)||n.string(Y.pattern)}s(Q,"is"),o(Q,"is"),h.is=Q})(Se||(t.TextDocumentFilter=Se={}));var _e;(function(h){function Q(ge){let Y=ge;return n.objectLiteral(Y)&&(n.string(Y.notebookType)||n.string(Y.scheme)||n.string(Y.pattern))}s(Q,"is"),o(Q,"is"),h.is=Q})(_e||(t.NotebookDocumentFilter=_e={}));var le;(function(h){function Q(ge){let Y=ge;return n.objectLiteral(Y)&&(n.string(Y.notebook)||_e.is(Y.notebook))&&(Y.language===void 0||n.string(Y.language))}s(Q,"is"),o(Q,"is"),h.is=Q})(le||(t.NotebookCellTextDocumentFilter=le={}));var Xe;(function(h){function Q(ge){if(!Array.isArray(ge))return!1;for(let Y of ge)if(!n.string(Y)&&!Se.is(Y)&&!le.is(Y))return!1;return!0}s(Q,"is"),o(Q,"is"),h.is=Q})(Xe||(t.DocumentSelector=Xe={}));var _;(function(h){h.method="client/registerCapability",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolRequestType(h.method)})(_||(t.RegistrationRequest=_={}));var N;(function(h){h.method="client/unregisterCapability",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolRequestType(h.method)})(N||(t.UnregistrationRequest=N={}));var R;(function(h){h.Create="create",h.Rename="rename",h.Delete="delete"})(R||(t.ResourceOperationKind=R={}));var k;(function(h){h.Abort="abort",h.Transactional="transactional",h.TextOnlyTransactional="textOnlyTransactional",h.Undo="undo"})(k||(t.FailureHandlingKind=k={}));var $;(function(h){h.UTF8="utf-8",h.UTF16="utf-16",h.UTF32="utf-32"})($||(t.PositionEncodingKind=$={}));var C;(function(h){function Q(ge){let Y=ge;return Y&&n.string(Y.id)&&Y.id.length>0}s(Q,"hasId"),o(Q,"hasId"),h.hasId=Q})(C||(t.StaticRegistrationOptions=C={}));var x;(function(h){function Q(ge){let Y=ge;return Y&&(Y.documentSelector===null||Xe.is(Y.documentSelector))}s(Q,"is"),o(Q,"is"),h.is=Q})(x||(t.TextDocumentRegistrationOptions=x={}));var D;(function(h){function Q(Y){let Me=Y;return n.objectLiteral(Me)&&(Me.workDoneProgress===void 0||n.boolean(Me.workDoneProgress))}s(Q,"is"),o(Q,"is"),h.is=Q;function ge(Y){let Me=Y;return Me&&n.boolean(Me.workDoneProgress)}s(ge,"hasWorkDoneProgress"),o(ge,"hasWorkDoneProgress"),h.hasWorkDoneProgress=ge})(D||(t.WorkDoneProgressOptions=D={}));var M;(function(h){h.method="initialize",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(M||(t.InitializeRequest=M={}));var L;(function(h){h.unknownProtocolVersion=1})(L||(t.InitializeErrorCodes=L={}));var G;(function(h){h.method="initialized",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(G||(t.InitializedNotification=G={}));var F;(function(h){h.method="shutdown",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType0(h.method)})(F||(t.ShutdownRequest=F={}));var re;(function(h){h.method="exit",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType0(h.method)})(re||(t.ExitNotification=re={}));var q;(function(h){h.method="workspace/didChangeConfiguration",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(q||(t.DidChangeConfigurationNotification=q={}));var te;(function(h){h.Error=1,h.Warning=2,h.Info=3,h.Log=4,h.Debug=5})(te||(t.MessageType=te={}));var de;(function(h){h.method="window/showMessage",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolNotificationType(h.method)})(de||(t.ShowMessageNotification=de={}));var fe;(function(h){h.method="window/showMessageRequest",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolRequestType(h.method)})(fe||(t.ShowMessageRequest=fe={}));var me;(function(h){h.method="window/logMessage",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolNotificationType(h.method)})(me||(t.LogMessageNotification=me={}));var ye;(function(h){h.method="telemetry/event",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolNotificationType(h.method)})(ye||(t.TelemetryEventNotification=ye={}));var ke;(function(h){h.None=0,h.Full=1,h.Incremental=2})(ke||(t.TextDocumentSyncKind=ke={}));var he;(function(h){h.method="textDocument/didOpen",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(he||(t.DidOpenTextDocumentNotification=he={}));var Z;(function(h){function Q(Y){let Me=Y;return Me!=null&&typeof Me.text=="string"&&Me.range!==void 0&&(Me.rangeLength===void 0||typeof Me.rangeLength=="number")}s(Q,"isIncremental"),o(Q,"isIncremental"),h.isIncremental=Q;function ge(Y){let Me=Y;return Me!=null&&typeof Me.text=="string"&&Me.range===void 0&&Me.rangeLength===void 0}s(ge,"isFull"),o(ge,"isFull"),h.isFull=ge})(Z||(t.TextDocumentContentChangeEvent=Z={}));var ze;(function(h){h.method="textDocument/didChange",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(ze||(t.DidChangeTextDocumentNotification=ze={}));var ue;(function(h){h.method="textDocument/didClose",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(ue||(t.DidCloseTextDocumentNotification=ue={}));var Be;(function(h){h.method="textDocument/didSave",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(Be||(t.DidSaveTextDocumentNotification=Be={}));var Re;(function(h){h.Manual=1,h.AfterDelay=2,h.FocusOut=3})(Re||(t.TextDocumentSaveReason=Re={}));var j;(function(h){h.method="textDocument/willSave",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(j||(t.WillSaveTextDocumentNotification=j={}));var qe;(function(h){h.method="textDocument/willSaveWaitUntil",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(qe||(t.WillSaveTextDocumentWaitUntilRequest=qe={}));var Vt;(function(h){h.method="workspace/didChangeWatchedFiles",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolNotificationType(h.method)})(Vt||(t.DidChangeWatchedFilesNotification=Vt={}));var _t;(function(h){h.Created=1,h.Changed=2,h.Deleted=3})(_t||(t.FileChangeType=_t={}));var $e;(function(h){function Q(ge){let Y=ge;return n.objectLiteral(Y)&&(r.URI.is(Y.baseUri)||r.WorkspaceFolder.is(Y.baseUri))&&n.string(Y.pattern)}s(Q,"is"),o(Q,"is"),h.is=Q})($e||(t.RelativePattern=$e={}));var In;(function(h){h.Create=1,h.Change=2,h.Delete=4})(In||(t.WatchKind=In={}));var ho;(function(h){h.method="textDocument/publishDiagnostics",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolNotificationType(h.method)})(ho||(t.PublishDiagnosticsNotification=ho={}));var yo;(function(h){h.Invoked=1,h.TriggerCharacter=2,h.TriggerForIncompleteCompletions=3})(yo||(t.CompletionTriggerKind=yo={}));var go;(function(h){h.method="textDocument/completion",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(go||(t.CompletionRequest=go={}));var vo;(function(h){h.method="completionItem/resolve",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(vo||(t.CompletionResolveRequest=vo={}));var Pn;(function(h){h.method="textDocument/hover",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Pn||(t.HoverRequest=Pn={}));var _n;(function(h){h.Invoked=1,h.TriggerCharacter=2,h.ContentChange=3})(_n||(t.SignatureHelpTriggerKind=_n={}));var Bt;(function(h){h.method="textDocument/signatureHelp",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Bt||(t.SignatureHelpRequest=Bt={}));var Dn;(function(h){h.method="textDocument/definition",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Dn||(t.DefinitionRequest=Dn={}));var To;(function(h){h.method="textDocument/references",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(To||(t.ReferencesRequest=To={}));var Ro;(function(h){h.method="textDocument/documentHighlight",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Ro||(t.DocumentHighlightRequest=Ro={}));var Ln;(function(h){h.method="textDocument/documentSymbol",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Ln||(t.DocumentSymbolRequest=Ln={}));var On;(function(h){h.method="textDocument/codeAction",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(On||(t.CodeActionRequest=On={}));var $o;(function(h){h.method="codeAction/resolve",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})($o||(t.CodeActionResolveRequest=$o={}));var _c;(function(h){h.method="workspace/symbol",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(_c||(t.WorkspaceSymbolRequest=_c={}));var bo;(function(h){h.method="workspaceSymbol/resolve",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(bo||(t.WorkspaceSymbolResolveRequest=bo={}));var Co;(function(h){h.method="textDocument/codeLens",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Co||(t.CodeLensRequest=Co={}));var Eo;(function(h){h.method="codeLens/resolve",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Eo||(t.CodeLensResolveRequest=Eo={}));var Ao;(function(h){h.method="workspace/codeLens/refresh",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolRequestType0(h.method)})(Ao||(t.CodeLensRefreshRequest=Ao={}));var Ct;(function(h){h.method="textDocument/documentLink",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Ct||(t.DocumentLinkRequest=Ct={}));var So;(function(h){h.method="documentLink/resolve",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(So||(t.DocumentLinkResolveRequest=So={}));var ko;(function(h){h.method="textDocument/formatting",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(ko||(t.DocumentFormattingRequest=ko={}));var Sr;(function(h){h.method="textDocument/rangeFormatting",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Sr||(t.DocumentRangeFormattingRequest=Sr={}));var No;(function(h){h.method="textDocument/rangesFormatting",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(No||(t.DocumentRangesFormattingRequest=No={}));var Br;(function(h){h.method="textDocument/onTypeFormatting",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Br||(t.DocumentOnTypeFormattingRequest=Br={}));var xo;(function(h){h.Identifier=1})(xo||(t.PrepareSupportDefaultBehavior=xo={}));var Wt;(function(h){h.method="textDocument/rename",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(Wt||(t.RenameRequest=Wt={}));var rr;(function(h){h.method="textDocument/prepareRename",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(rr||(t.PrepareRenameRequest=rr={}));var wo;(function(h){h.method="workspace/executeCommand",h.messageDirection=e.MessageDirection.clientToServer,h.type=new e.ProtocolRequestType(h.method)})(wo||(t.ExecuteCommandRequest=wo={}));var Io;(function(h){h.method="workspace/applyEdit",h.messageDirection=e.MessageDirection.serverToClient,h.type=new e.ProtocolRequestType("workspace/applyEdit")})(Io||(t.ApplyWorkspaceEditRequest=Io={}))}}),_I=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(t){Object.defineProperty(t,"__esModule",{value:!0}),t.createProtocolConnection=void 0;var e=Al();function r(n,i,a,l){return e.ConnectionStrategy.is(l)&&(l={connectionStrategy:l}),(0,e.createMessageConnection)(n,i,a,l)}s(r,"createProtocolConnection"),o(r,"createProtocolConnection"),t.createProtocolConnection=r}}),DI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(t){var e=t&&t.__createBinding||(Object.create?function(a,l,c,u){u===void 0&&(u=c);var p=Object.getOwnPropertyDescriptor(l,c);(!p||("get"in p?!l.__esModule:p.writable||p.configurable))&&(p={enumerable:!0,get:o(function(){return l[c]},"get")}),Object.defineProperty(a,u,p)}:function(a,l,c,u){u===void 0&&(u=c),a[u]=l[c]}),r=t&&t.__exportStar||function(a,l){for(var c in a)c!=="default"&&!Object.prototype.hasOwnProperty.call(l,c)&&e(l,a,c)};Object.defineProperty(t,"__esModule",{value:!0}),t.LSPErrorCodes=t.createProtocolConnection=void 0,r(Al(),t),r((Hu(),xy(sd)),t),r(Oe(),t),r(PI(),t);var n=_I();Object.defineProperty(t,"createProtocolConnection",{enumerable:!0,get:o(function(){return n.createProtocolConnection},"get")});var i;(function(a){a.lspReservedErrorRangeStart=-32899,a.RequestFailed=-32803,a.ServerCancelled=-32802,a.ContentModified=-32801,a.RequestCancelled=-32800,a.lspReservedErrorRangeEnd=-32800})(i||(t.LSPErrorCodes=i={}))}}),LI=J({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(t){var e=t&&t.__createBinding||(Object.create?function(a,l,c,u){u===void 0&&(u=c);var p=Object.getOwnPropertyDescriptor(l,c);(!p||("get"in p?!l.__esModule:p.writable||p.configurable))&&(p={enumerable:!0,get:o(function(){return l[c]},"get")}),Object.defineProperty(a,u,p)}:function(a,l,c,u){u===void 0&&(u=c),a[u]=l[c]}),r=t&&t.__exportStar||function(a,l){for(var c in a)c!=="default"&&!Object.prototype.hasOwnProperty.call(l,c)&&e(l,a,c)};Object.defineProperty(t,"__esModule",{value:!0}),t.createProtocolConnection=void 0;var n=vS();r(vS(),t),r(DI(),t);function i(a,l,c,u){return(0,n.createMessageConnection)(a,l,c,u)}s(i,"createProtocolConnection"),o(i,"createProtocolConnection"),t.createProtocolConnection=i}}),dN={};dn(dN,{AbstractAstReflection:s(()=>Py,"AbstractAstReflection"),AbstractCstNode:s(()=>kA,"AbstractCstNode"),AbstractLangiumParser:s(()=>xA,"AbstractLangiumParser"),AbstractParserErrorMessageProvider:s(()=>zx,"AbstractParserErrorMessageProvider"),AbstractThreadedAsyncParser:s(()=>az,"AbstractThreadedAsyncParser"),AstUtils:s(()=>Dy,"AstUtils"),BiMap:s(()=>ed,"BiMap"),Cancellation:s(()=>Ee,"Cancellation"),CompositeCstNodeImpl:s(()=>im,"CompositeCstNodeImpl"),ContextCache:s(()=>ym,"ContextCache"),CstNodeBuilder:s(()=>jx,"CstNodeBuilder"),CstUtils:s(()=>Iy,"CstUtils"),DEFAULT_TOKENIZE_OPTIONS:s(()=>BA,"DEFAULT_TOKENIZE_OPTIONS"),DONE_RESULT:s(()=>ot,"DONE_RESULT"),DatatypeSymbol:s(()=>Xp,"DatatypeSymbol"),DefaultAstNodeDescriptionProvider:s(()=>sw,"DefaultAstNodeDescriptionProvider"),DefaultAstNodeLocator:s(()=>lw,"DefaultAstNodeLocator"),DefaultAsyncParser:s(()=>gw,"DefaultAsyncParser"),DefaultCommentProvider:s(()=>yw,"DefaultCommentProvider"),DefaultConfigurationProvider:s(()=>uw,"DefaultConfigurationProvider"),DefaultDocumentBuilder:s(()=>cw,"DefaultDocumentBuilder"),DefaultDocumentValidator:s(()=>aw,"DefaultDocumentValidator"),DefaultHydrator:s(()=>Tw,"DefaultHydrator"),DefaultIndexManager:s(()=>pw,"DefaultIndexManager"),DefaultJsonSerializer:s(()=>tw,"DefaultJsonSerializer"),DefaultLangiumDocumentFactory:s(()=>Bx,"DefaultLangiumDocumentFactory"),DefaultLangiumDocuments:s(()=>Wx,"DefaultLangiumDocuments"),DefaultLangiumProfiler:s(()=>cz,"DefaultLangiumProfiler"),DefaultLexer:s(()=>WA,"DefaultLexer"),DefaultLexerErrorMessageProvider:s(()=>fw,"DefaultLexerErrorMessageProvider"),DefaultLinker:s(()=>Hx,"DefaultLinker"),DefaultNameProvider:s(()=>Yx,"DefaultNameProvider"),DefaultReferenceDescriptionProvider:s(()=>ow,"DefaultReferenceDescriptionProvider"),DefaultReferences:s(()=>Jx,"DefaultReferences"),DefaultScopeComputation:s(()=>Xx,"DefaultScopeComputation"),DefaultScopeProvider:s(()=>ew,"DefaultScopeProvider"),DefaultServiceRegistry:s(()=>rw,"DefaultServiceRegistry"),DefaultTokenBuilder:s(()=>cm,"DefaultTokenBuilder"),DefaultValueConverter:s(()=>zA,"DefaultValueConverter"),DefaultWorkspaceLock:s(()=>vw,"DefaultWorkspaceLock"),DefaultWorkspaceManager:s(()=>dw,"DefaultWorkspaceManager"),Deferred:s(()=>Gr,"Deferred"),Disposable:s(()=>di,"Disposable"),DisposableCache:s(()=>hm,"DisposableCache"),DocumentCache:s(()=>Qx,"DocumentCache"),DocumentState:s(()=>ee,"DocumentState"),DocumentValidator:s(()=>Mt,"DocumentValidator"),EMPTY_SCOPE:s(()=>tz,"EMPTY_SCOPE"),EMPTY_STREAM:s(()=>ul,"EMPTY_STREAM"),EmptyFileSystem:s(()=>Kt,"EmptyFileSystem"),EmptyFileSystemProvider:s(()=>bw,"EmptyFileSystemProvider"),ErrorWithLocation:s(()=>Od,"ErrorWithLocation"),GrammarAST:s(()=>fN,"GrammarAST"),GrammarUtils:s(()=>og,"GrammarUtils"),IndentationAwareLexer:s(()=>oz,"IndentationAwareLexer"),IndentationAwareTokenBuilder:s(()=>$w,"IndentationAwareTokenBuilder"),JSDocDocumentationProvider:s(()=>hw,"JSDocDocumentationProvider"),LangiumCompletionParser:s(()=>qx,"LangiumCompletionParser"),LangiumParser:s(()=>Gx,"LangiumParser"),LangiumParserErrorMessageProvider:s(()=>wA,"LangiumParserErrorMessageProvider"),LeafCstNodeImpl:s(()=>Jp,"LeafCstNodeImpl"),LexingMode:s(()=>ui,"LexingMode"),MapScope:s(()=>ez,"MapScope"),Module:s(()=>hy,"Module"),MultiMap:s(()=>zr,"MultiMap"),MultiMapScope:s(()=>Zx,"MultiMapScope"),OperationCancelled:s(()=>pr,"OperationCancelled"),ParserWorker:s(()=>sz,"ParserWorker"),ProfilingTask:s(()=>Cw,"ProfilingTask"),Reduction:s(()=>Su,"Reduction"),RefResolving:s(()=>Vn,"RefResolving"),RegExpUtils:s(()=>lg,"RegExpUtils"),RootCstNodeImpl:s(()=>NA,"RootCstNodeImpl"),SimpleCache:s(()=>KA,"SimpleCache"),StreamImpl:s(()=>cr,"StreamImpl"),StreamScope:s(()=>fy,"StreamScope"),TextDocument:s(()=>Zp,"TextDocument"),TreeStreamImpl:s(()=>cl,"TreeStreamImpl"),URI:s(()=>At,"URI"),UriTrie:s(()=>UA,"UriTrie"),UriUtils:s(()=>lt,"UriUtils"),VALIDATE_EACH_NODE:s(()=>iw,"VALIDATE_EACH_NODE"),ValidationCategory:s(()=>rd,"ValidationCategory"),ValidationRegistry:s(()=>nw,"ValidationRegistry"),ValueConverter:s(()=>lr,"ValueConverter"),WorkspaceCache:s(()=>VA,"WorkspaceCache"),assertCondition:s(()=>Md,"assertCondition"),assertUnreachable:s(()=>qr,"assertUnreachable"),createCompletionParser:s(()=>om,"createCompletionParser"),createDefaultCoreModule:s(()=>Rt,"createDefaultCoreModule"),createDefaultSharedCoreModule:s(()=>$t,"createDefaultSharedCoreModule"),createGrammarConfig:s(()=>tf,"createGrammarConfig"),createLangiumParser:s(()=>lm,"createLangiumParser"),createParser:s(()=>Ac,"createParser"),delayNextTick:s(()=>kc,"delayNextTick"),diagnosticData:s(()=>rn,"diagnosticData"),eagerLoad:s(()=>km,"eagerLoad"),getDiagnosticRange:s(()=>vm,"getDiagnosticRange"),indentationBuilderDefaultOptions:s(()=>yy,"indentationBuilderDefaultOptions"),inject:s(()=>Pe,"inject"),interruptAndCheck:s(()=>Je,"interruptAndCheck"),isAstNode:s(()=>Ke,"isAstNode"),isAstNodeDescription:s(()=>ld,"isAstNodeDescription"),isAstNodeWithComment:s(()=>gm,"isAstNodeWithComment"),isCompositeCstNode:s(()=>dr,"isCompositeCstNode"),isIMultiModeLexerDefinition:s(()=>wc,"isIMultiModeLexerDefinition"),isJSDoc:s(()=>bm,"isJSDoc"),isLeafCstNode:s(()=>fn,"isLeafCstNode"),isLinkingError:s(()=>tn,"isLinkingError"),isMultiReference:s(()=>Yt,"isMultiReference"),isNamed:s(()=>mm,"isNamed"),isOperationCancelled:s(()=>wn,"isOperationCancelled"),isReference:s(()=>nt,"isReference"),isRootCstNode:s(()=>Ju,"isRootCstNode"),isTokenTypeArray:s(()=>xc,"isTokenTypeArray"),isTokenTypeDictionary:s(()=>Vu,"isTokenTypeDictionary"),loadGrammarFromJson:s(()=>bt,"loadGrammarFromJson"),parseJSDoc:s(()=>$m,"parseJSDoc"),prepareLangiumParser:s(()=>um,"prepareLangiumParser"),setInterruptionPeriod:s(()=>pm,"setInterruptionPeriod"),startCancelableOperation:s(()=>Nc,"startCancelableOperation"),stream:s(()=>ce,"stream"),toDiagnosticData:s(()=>Tm,"toDiagnosticData"),toDiagnosticSeverity:s(()=>ol,"toDiagnosticSeverity")});var Iy={};dn(Iy,{DefaultNameRegexp:s(()=>tg,"DefaultNameRegexp"),RangeComparison:s(()=>ur,"RangeComparison"),compareRange:s(()=>wd,"compareRange"),findCommentNode:s(()=>Pd,"findCommentNode"),findDeclarationNodeAtOffset:s(()=>rg,"findDeclarationNodeAtOffset"),findLeafNodeAtOffset:s(()=>nc,"findLeafNodeAtOffset"),findLeafNodeBeforeOffset:s(()=>_d,"findLeafNodeBeforeOffset"),flattenCst:s(()=>eg,"flattenCst"),getDatatypeNode:s(()=>Qy,"getDatatypeNode"),getInteriorNodes:s(()=>ag,"getInteriorNodes"),getNextNode:s(()=>ng,"getNextNode"),getPreviousNode:s(()=>Ld,"getPreviousNode"),getStartlineNode:s(()=>ig,"getStartlineNode"),inRange:s(()=>Id,"inRange"),isChildNode:s(()=>xd,"isChildNode"),isCommentNode:s(()=>wu,"isCommentNode"),streamCst:s(()=>eo,"streamCst"),toDocumentSegment:s(()=>to,"toDocumentSegment"),tokenToRange:s(()=>pl,"tokenToRange")});function Ke(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}s(Ke,"isAstNode");o(Ke,"isAstNode");function nt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}s(nt,"isReference");o(nt,"isReference");function Yt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}s(Yt,"isMultiReference");o(Yt,"isMultiReference");function ld(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}s(ld,"isAstNodeDescription");o(ld,"isAstNodeDescription");function tn(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}s(tn,"isLinkingError");o(tn,"isLinkingError");var fi,Py=(fi=class{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){var i;let r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);let n=(i=r.properties[e.property])==null?void 0:i.referenceType;if(!n)throw new 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,r){return Ke(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.types[e],l=a?a.superTypes.some(c=>this.isSubtype(c,r)):!1;return n[r]=l,l}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}},s(fi,"AbstractAstReflection"),o(fi,"AbstractAstReflection"),fi);function dr(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}s(dr,"isCompositeCstNode");o(dr,"isCompositeCstNode");function fn(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}s(fn,"isLeafCstNode");o(fn,"isLeafCstNode");function Ju(t){return dr(t)&&typeof t.fullText=="string"}s(Ju,"isRootCstNode");o(Ju,"isRootCstNode");var st,cr=(st=class{constructor(e,r){this.startFn=e,this.nextFn=r}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(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new st(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return ot})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=_y(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new st(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?ot:{done:!1,value:e(i)}})}filter(e){return new st(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return ot})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new st(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(ll(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return ot})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new st(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let l=n.iterator.next();if(l.done)n.iterator=void 0;else return l}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(ll(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return ot})}head(){let e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new st(()=>{let r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new st(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?ot:this.nextFn(r.state)))}distinct(e){return new st(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return ot})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}},s(st,"_StreamImpl"),o(st,"StreamImpl"),st);function _y(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}s(_y,"toString");o(_y,"toString");function ll(t){return!!t&&typeof t[Symbol.iterator]=="function"}s(ll,"isIterable");o(ll,"isIterable");var ul=new cr(()=>{},()=>ot),ot=Object.freeze({done:!0,value:void 0});function ce(...t){if(t.length===1){let e=t[0];if(e instanceof cr)return e;if(ll(e))return new cr(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new cr(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:ot)}return t.length>1?new cr(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){let r=t[e.collIndex++];ll(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return ot}):ul}s(ce,"stream");o(ce,"stream");var mi,cl=(mi=class extends cr{constructor(e,r,n){super(()=>({iterators:n!=null&&n.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(r(a.value)[Symbol.iterator]()),a}return ot})}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}},s(mi,"TreeStreamImpl"),o(mi,"TreeStreamImpl"),mi),Su;(function(t){function e(a){return a.reduce((l,c)=>l+c,0)}s(e,"sum"),o(e,"sum"),t.sum=e;function r(a){return a.reduce((l,c)=>l*c,0)}s(r,"product"),o(r,"product"),t.product=r;function n(a){return a.reduce((l,c)=>Math.min(l,c))}s(n,"min2"),o(n,"min"),t.min=n;function i(a){return a.reduce((l,c)=>Math.max(l,c))}s(i,"max"),o(i,"max"),t.max=i})(Su||(Su={}));var Dy={};dn(Dy,{assignMandatoryProperties:s(()=>ud,"assignMandatoryProperties"),copyAstNode:s(()=>xu,"copyAstNode"),findRootNode:s(()=>ci,"findRootNode"),getContainerOfType:s(()=>mn,"getContainerOfType"),getDocument:s(()=>jt,"getDocument"),getReferenceNodes:s(()=>ku,"getReferenceNodes"),hasContainerOfType:s(()=>Ly,"hasContainerOfType"),linkContentToContainer:s(()=>Xs,"linkContentToContainer"),streamAllContents:s(()=>vr,"streamAllContents"),streamAst:s(()=>Ft,"streamAst"),streamContents:s(()=>Sl,"streamContents"),streamReferences:s(()=>Zs,"streamReferences")});function Xs(t,e={}){for(let[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,a)=>{Ke(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=a,e.deep&&Xs(i,e))}):Ke(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&Xs(n,e)))}s(Xs,"linkContentToContainer");o(Xs,"linkContentToContainer");function mn(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}s(mn,"getContainerOfType");o(mn,"getContainerOfType");function Ly(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}s(Ly,"hasContainerOfType");o(Ly,"hasContainerOfType");function jt(t){let e=ci(t).$document;if(!e)throw new Error("AST node has no document.");return e}s(jt,"getDocument");o(jt,"getDocument");function ci(t){for(;t.$container;)t=t.$container;return t}s(ci,"findRootNode");o(ci,"findRootNode");function ku(t){return nt(t)?t.ref?[t.ref]:[]:Yt(t)?t.items.map(e=>e.ref):[]}s(ku,"getReferenceNodes");o(ku,"getReferenceNodes");function Sl(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e==null?void 0:e.range;return new cr(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){let i=n.keys[n.keyIndex];if(!i.startsWith("$")){let a=t[i];if(Ke(a)){if(n.keyIndex++,Nu(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;n.arrayIndex<a.length;){let l=n.arrayIndex++,c=a[l];if(Ke(c)&&Nu(c,r))return{done:!1,value:c}}n.arrayIndex=0}}n.keyIndex++}return ot})}s(Sl,"streamContents");o(Sl,"streamContents");function vr(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new cl(t,r=>Sl(r,e))}s(vr,"streamAllContents");o(vr,"streamAllContents");function Ft(t,e){if(t){if(e!=null&&e.range&&!Nu(t,e.range))return new cl(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new cl(t,r=>Sl(r,e),{includeRoot:!0})}s(Ft,"streamAst");o(Ft,"streamAst");function Nu(t,e){var n;if(!e)return!0;let r=(n=t.$cstNode)==null?void 0:n.range;return r?Id(r,e):!1}s(Nu,"isAstNodeInRange");o(Nu,"isAstNodeInRange");function Zs(t){return new cr(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){let r=e.keys[e.keyIndex];if(!r.startsWith("$")){let n=t[r];if(nt(n)||Yt(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){let i=e.arrayIndex++,a=n[i];if(nt(a)||Yt(n))return{done:!1,value:{reference:a,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return ot})}s(Zs,"streamReferences");o(Zs,"streamReferences");function ud(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of Object.values(r.properties))i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=cd(i.defaultValue))}s(ud,"assignMandatoryProperties");o(ud,"assignMandatoryProperties");function cd(t){return Array.isArray(t)?[...t.map(cd)]:t}s(cd,"copyDefaultValue");o(cd,"copyDefaultValue");function xu(t,e,r){let n={$type:t.$type};r&&(r.set(t,n),r.set(n,t));for(let[i,a]of Object.entries(t))if(!i.startsWith("$"))if(Ke(a))n[i]=xu(a,e,r);else if(nt(a))n[i]=e(n,i,a.$refNode,a.$refText,a);else if(Array.isArray(a)){let l=[];for(let c of a)Ke(c)?l.push(xu(c,e,r)):nt(c)?l.push(e(n,i,c.$refNode,c.$refText,c)):l.push(c);n[i]=l}else n[i]=a;return Xs(n,{deep:!0}),n}s(xu,"copyAstNode");o(xu,"copyAstNode");var fN={};dn(fN,{AbstractElement:s(()=>mt,"AbstractElement"),AbstractParserRule:s(()=>ou,"AbstractParserRule"),AbstractRule:s(()=>Bo,"AbstractRule"),AbstractType:s(()=>Et,"AbstractType"),Action:s(()=>Yr,"Action"),Alternatives:s(()=>lu,"Alternatives"),ArrayLiteral:s(()=>fp,"ArrayLiteral"),ArrayType:s(()=>mp,"ArrayType"),Assignment:s(()=>Jr,"Assignment"),BooleanLiteral:s(()=>hp,"BooleanLiteral"),CharacterRange:s(()=>Xr,"CharacterRange"),Condition:s(()=>Zr,"Condition"),Conjunction:s(()=>uu,"Conjunction"),CrossReference:s(()=>Qr,"CrossReference"),Disjunction:s(()=>cu,"Disjunction"),EndOfFile:s(()=>yp,"EndOfFile"),Grammar:s(()=>Ir,"Grammar"),GrammarImport:s(()=>gp,"GrammarImport"),Group:s(()=>Hn,"Group"),InferredType:s(()=>vp,"InferredType"),InfixRule:s(()=>or,"InfixRule"),InfixRuleOperatorList:s(()=>pu,"InfixRuleOperatorList"),InfixRuleOperators:s(()=>Tp,"InfixRuleOperators"),Interface:s(()=>Wo,"Interface"),Keyword:s(()=>Ho,"Keyword"),LangiumGrammarAstReflection:s(()=>Zy,"LangiumGrammarAstReflection"),LangiumGrammarTerminals:s(()=>OI,"LangiumGrammarTerminals"),NamedArgument:s(()=>Yo,"NamedArgument"),NegatedToken:s(()=>Yn,"NegatedToken"),Negation:s(()=>Rp,"Negation"),NumberLiteral:s(()=>$p,"NumberLiteral"),Parameter:s(()=>Jo,"Parameter"),ParameterReference:s(()=>bp,"ParameterReference"),ParserRule:s(()=>Ht,"ParserRule"),ReferenceType:s(()=>du,"ReferenceType"),RegexToken:s(()=>Jn,"RegexToken"),ReturnType:s(()=>Cp,"ReturnType"),RuleCall:s(()=>Xn,"RuleCall"),SimpleType:s(()=>Xo,"SimpleType"),StringLiteral:s(()=>Ep,"StringLiteral"),TerminalAlternatives:s(()=>Zn,"TerminalAlternatives"),TerminalElement:s(()=>ht,"TerminalElement"),TerminalGroup:s(()=>Qn,"TerminalGroup"),TerminalRule:s(()=>Pr,"TerminalRule"),TerminalRuleCall:s(()=>ei,"TerminalRuleCall"),Type:s(()=>fu,"Type"),TypeAttribute:s(()=>ti,"TypeAttribute"),TypeDefinition:s(()=>ri,"TypeDefinition"),UnionType:s(()=>Ap,"UnionType"),UnorderedGroup:s(()=>mu,"UnorderedGroup"),UntilToken:s(()=>ni,"UntilToken"),ValueLiteral:s(()=>ii,"ValueLiteral"),Wildcard:s(()=>Zo,"Wildcard"),isAbstractElement:s(()=>Xu,"isAbstractElement"),isAbstractParserRule:s(()=>hn,"isAbstractParserRule"),isAbstractRule:s(()=>Oy,"isAbstractRule"),isAbstractType:s(()=>My,"isAbstractType"),isAction:s(()=>Lr,"isAction"),isAlternatives:s(()=>Zu,"isAlternatives"),isArrayLiteral:s(()=>jy,"isArrayLiteral"),isArrayType:s(()=>pd,"isArrayType"),isAssignment:s(()=>fr,"isAssignment"),isBooleanLiteral:s(()=>dd,"isBooleanLiteral"),isCharacterRange:s(()=>fd,"isCharacterRange"),isCondition:s(()=>Fy,"isCondition"),isConjunction:s(()=>md,"isConjunction"),isCrossReference:s(()=>yn,"isCrossReference"),isDisjunction:s(()=>hd,"isDisjunction"),isEndOfFile:s(()=>yd,"isEndOfFile"),isGrammar:s(()=>Gy,"isGrammar"),isGrammarImport:s(()=>zy,"isGrammarImport"),isGroup:s(()=>gn,"isGroup"),isInferredType:s(()=>kl,"isInferredType"),isInfixRule:s(()=>Qs,"isInfixRule"),isInfixRuleOperatorList:s(()=>qy,"isInfixRuleOperatorList"),isInfixRuleOperators:s(()=>Uy,"isInfixRuleOperators"),isInterface:s(()=>gd,"isInterface"),isKeyword:s(()=>mr,"isKeyword"),isNamedArgument:s(()=>Ky,"isNamedArgument"),isNegatedToken:s(()=>vd,"isNegatedToken"),isNegation:s(()=>Td,"isNegation"),isNumberLiteral:s(()=>Vy,"isNumberLiteral"),isParameter:s(()=>By,"isParameter"),isParameterReference:s(()=>Rd,"isParameterReference"),isParserRule:s(()=>it,"isParserRule"),isReferenceType:s(()=>$d,"isReferenceType"),isRegexToken:s(()=>bd,"isRegexToken"),isReturnType:s(()=>Cd,"isReturnType"),isRuleCall:s(()=>hr,"isRuleCall"),isSimpleType:s(()=>Qu,"isSimpleType"),isStringLiteral:s(()=>Wy,"isStringLiteral"),isTerminalAlternatives:s(()=>Ed,"isTerminalAlternatives"),isTerminalElement:s(()=>Hy,"isTerminalElement"),isTerminalGroup:s(()=>Ad,"isTerminalGroup"),isTerminalRule:s(()=>xt,"isTerminalRule"),isTerminalRuleCall:s(()=>ec,"isTerminalRuleCall"),isType:s(()=>tc,"isType"),isTypeAttribute:s(()=>Yy,"isTypeAttribute"),isTypeDefinition:s(()=>Jy,"isTypeDefinition"),isUnionType:s(()=>Sd,"isUnionType"),isUnorderedGroup:s(()=>rc,"isUnorderedGroup"),isUntilToken:s(()=>kd,"isUntilToken"),isValueLiteral:s(()=>Xy,"isValueLiteral"),isWildcard:s(()=>Nd,"isWildcard"),reflection:s(()=>V,"reflection")});var OI={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},mt={$type:"AbstractElement",cardinality:"cardinality"};function Xu(t){return V.isInstance(t,mt.$type)}s(Xu,"isAbstractElement");o(Xu,"isAbstractElement");var ou={$type:"AbstractParserRule"};function hn(t){return V.isInstance(t,ou.$type)}s(hn,"isAbstractParserRule");o(hn,"isAbstractParserRule");var Bo={$type:"AbstractRule"};function Oy(t){return V.isInstance(t,Bo.$type)}s(Oy,"isAbstractRule");o(Oy,"isAbstractRule");var Et={$type:"AbstractType"};function My(t){return V.isInstance(t,Et.$type)}s(My,"isAbstractType");o(My,"isAbstractType");var Yr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function Lr(t){return V.isInstance(t,Yr.$type)}s(Lr,"isAction");o(Lr,"isAction");var lu={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function Zu(t){return V.isInstance(t,lu.$type)}s(Zu,"isAlternatives");o(Zu,"isAlternatives");var fp={$type:"ArrayLiteral",elements:"elements"};function jy(t){return V.isInstance(t,fp.$type)}s(jy,"isArrayLiteral");o(jy,"isArrayLiteral");var mp={$type:"ArrayType",elementType:"elementType"};function pd(t){return V.isInstance(t,mp.$type)}s(pd,"isArrayType");o(pd,"isArrayType");var Jr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function fr(t){return V.isInstance(t,Jr.$type)}s(fr,"isAssignment");o(fr,"isAssignment");var hp={$type:"BooleanLiteral",true:"true"};function dd(t){return V.isInstance(t,hp.$type)}s(dd,"isBooleanLiteral");o(dd,"isBooleanLiteral");var Xr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function fd(t){return V.isInstance(t,Xr.$type)}s(fd,"isCharacterRange");o(fd,"isCharacterRange");var Zr={$type:"Condition"};function Fy(t){return V.isInstance(t,Zr.$type)}s(Fy,"isCondition");o(Fy,"isCondition");var uu={$type:"Conjunction",left:"left",right:"right"};function md(t){return V.isInstance(t,uu.$type)}s(md,"isConjunction");o(md,"isConjunction");var Qr={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function yn(t){return V.isInstance(t,Qr.$type)}s(yn,"isCrossReference");o(yn,"isCrossReference");var cu={$type:"Disjunction",left:"left",right:"right"};function hd(t){return V.isInstance(t,cu.$type)}s(hd,"isDisjunction");o(hd,"isDisjunction");var yp={$type:"EndOfFile",cardinality:"cardinality"};function yd(t){return V.isInstance(t,yp.$type)}s(yd,"isEndOfFile");o(yd,"isEndOfFile");var Ir={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function Gy(t){return V.isInstance(t,Ir.$type)}s(Gy,"isGrammar");o(Gy,"isGrammar");var gp={$type:"GrammarImport",path:"path"};function zy(t){return V.isInstance(t,gp.$type)}s(zy,"isGrammarImport");o(zy,"isGrammarImport");var Hn={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function gn(t){return V.isInstance(t,Hn.$type)}s(gn,"isGroup");o(gn,"isGroup");var vp={$type:"InferredType",name:"name"};function kl(t){return V.isInstance(t,vp.$type)}s(kl,"isInferredType");o(kl,"isInferredType");var or={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Qs(t){return V.isInstance(t,or.$type)}s(Qs,"isInfixRule");o(Qs,"isInfixRule");var pu={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function qy(t){return V.isInstance(t,pu.$type)}s(qy,"isInfixRuleOperatorList");o(qy,"isInfixRuleOperatorList");var Tp={$type:"InfixRuleOperators",precedences:"precedences"};function Uy(t){return V.isInstance(t,Tp.$type)}s(Uy,"isInfixRuleOperators");o(Uy,"isInfixRuleOperators");var Wo={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function gd(t){return V.isInstance(t,Wo.$type)}s(gd,"isInterface");o(gd,"isInterface");var Ho={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function mr(t){return V.isInstance(t,Ho.$type)}s(mr,"isKeyword");o(mr,"isKeyword");var Yo={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function Ky(t){return V.isInstance(t,Yo.$type)}s(Ky,"isNamedArgument");o(Ky,"isNamedArgument");var Yn={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function vd(t){return V.isInstance(t,Yn.$type)}s(vd,"isNegatedToken");o(vd,"isNegatedToken");var Rp={$type:"Negation",value:"value"};function Td(t){return V.isInstance(t,Rp.$type)}s(Td,"isNegation");o(Td,"isNegation");var $p={$type:"NumberLiteral",value:"value"};function Vy(t){return V.isInstance(t,$p.$type)}s(Vy,"isNumberLiteral");o(Vy,"isNumberLiteral");var Jo={$type:"Parameter",name:"name"};function By(t){return V.isInstance(t,Jo.$type)}s(By,"isParameter");o(By,"isParameter");var bp={$type:"ParameterReference",parameter:"parameter"};function Rd(t){return V.isInstance(t,bp.$type)}s(Rd,"isParameterReference");o(Rd,"isParameterReference");var Ht={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function it(t){return V.isInstance(t,Ht.$type)}s(it,"isParserRule");o(it,"isParserRule");var du={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function $d(t){return V.isInstance(t,du.$type)}s($d,"isReferenceType");o($d,"isReferenceType");var Jn={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function bd(t){return V.isInstance(t,Jn.$type)}s(bd,"isRegexToken");o(bd,"isRegexToken");var Cp={$type:"ReturnType",name:"name"};function Cd(t){return V.isInstance(t,Cp.$type)}s(Cd,"isReturnType");o(Cd,"isReturnType");var Xn={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function hr(t){return V.isInstance(t,Xn.$type)}s(hr,"isRuleCall");o(hr,"isRuleCall");var Xo={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Qu(t){return V.isInstance(t,Xo.$type)}s(Qu,"isSimpleType");o(Qu,"isSimpleType");var Ep={$type:"StringLiteral",value:"value"};function Wy(t){return V.isInstance(t,Ep.$type)}s(Wy,"isStringLiteral");o(Wy,"isStringLiteral");var Zn={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Ed(t){return V.isInstance(t,Zn.$type)}s(Ed,"isTerminalAlternatives");o(Ed,"isTerminalAlternatives");var ht={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Hy(t){return V.isInstance(t,ht.$type)}s(Hy,"isTerminalElement");o(Hy,"isTerminalElement");var Qn={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Ad(t){return V.isInstance(t,Qn.$type)}s(Ad,"isTerminalGroup");o(Ad,"isTerminalGroup");var Pr={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function xt(t){return V.isInstance(t,Pr.$type)}s(xt,"isTerminalRule");o(xt,"isTerminalRule");var ei={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function ec(t){return V.isInstance(t,ei.$type)}s(ec,"isTerminalRuleCall");o(ec,"isTerminalRuleCall");var fu={$type:"Type",name:"name",type:"type"};function tc(t){return V.isInstance(t,fu.$type)}s(tc,"isType");o(tc,"isType");var ti={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function Yy(t){return V.isInstance(t,ti.$type)}s(Yy,"isTypeAttribute");o(Yy,"isTypeAttribute");var ri={$type:"TypeDefinition"};function Jy(t){return V.isInstance(t,ri.$type)}s(Jy,"isTypeDefinition");o(Jy,"isTypeDefinition");var Ap={$type:"UnionType",types:"types"};function Sd(t){return V.isInstance(t,Ap.$type)}s(Sd,"isUnionType");o(Sd,"isUnionType");var mu={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function rc(t){return V.isInstance(t,mu.$type)}s(rc,"isUnorderedGroup");o(rc,"isUnorderedGroup");var ni={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function kd(t){return V.isInstance(t,ni.$type)}s(kd,"isUntilToken");o(kd,"isUntilToken");var ii={$type:"ValueLiteral"};function Xy(t){return V.isInstance(t,ii.$type)}s(Xy,"isValueLiteral");o(Xy,"isValueLiteral");var Zo={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Nd(t){return V.isInstance(t,Zo.$type)}s(Nd,"isWildcard");o(Nd,"isWildcard");var hi,Zy=(hi=class extends Py{constructor(){super(...arguments),this.types={AbstractElement:{name:mt.$type,properties:{cardinality:{name:mt.cardinality}},superTypes:[]},AbstractParserRule:{name:ou.$type,properties:{},superTypes:[Bo.$type,Et.$type]},AbstractRule:{name:Bo.$type,properties:{},superTypes:[]},AbstractType:{name:Et.$type,properties:{},superTypes:[]},Action:{name:Yr.$type,properties:{cardinality:{name:Yr.cardinality},feature:{name:Yr.feature},inferredType:{name:Yr.inferredType},operator:{name:Yr.operator},type:{name:Yr.type,referenceType:Et.$type}},superTypes:[mt.$type]},Alternatives:{name:lu.$type,properties:{cardinality:{name:lu.cardinality},elements:{name:lu.elements,defaultValue:[]}},superTypes:[mt.$type]},ArrayLiteral:{name:fp.$type,properties:{elements:{name:fp.elements,defaultValue:[]}},superTypes:[ii.$type]},ArrayType:{name:mp.$type,properties:{elementType:{name:mp.elementType}},superTypes:[ri.$type]},Assignment:{name:Jr.$type,properties:{cardinality:{name:Jr.cardinality},feature:{name:Jr.feature},operator:{name:Jr.operator},predicate:{name:Jr.predicate},terminal:{name:Jr.terminal}},superTypes:[mt.$type]},BooleanLiteral:{name:hp.$type,properties:{true:{name:hp.true,defaultValue:!1}},superTypes:[Zr.$type,ii.$type]},CharacterRange:{name:Xr.$type,properties:{cardinality:{name:Xr.cardinality},left:{name:Xr.left},lookahead:{name:Xr.lookahead},parenthesized:{name:Xr.parenthesized,defaultValue:!1},right:{name:Xr.right}},superTypes:[ht.$type]},Condition:{name:Zr.$type,properties:{},superTypes:[]},Conjunction:{name:uu.$type,properties:{left:{name:uu.left},right:{name:uu.right}},superTypes:[Zr.$type]},CrossReference:{name:Qr.$type,properties:{cardinality:{name:Qr.cardinality},deprecatedSyntax:{name:Qr.deprecatedSyntax,defaultValue:!1},isMulti:{name:Qr.isMulti,defaultValue:!1},terminal:{name:Qr.terminal},type:{name:Qr.type,referenceType:Et.$type}},superTypes:[mt.$type]},Disjunction:{name:cu.$type,properties:{left:{name:cu.left},right:{name:cu.right}},superTypes:[Zr.$type]},EndOfFile:{name:yp.$type,properties:{cardinality:{name:yp.cardinality}},superTypes:[mt.$type]},Grammar:{name:Ir.$type,properties:{imports:{name:Ir.imports,defaultValue:[]},interfaces:{name:Ir.interfaces,defaultValue:[]},isDeclared:{name:Ir.isDeclared,defaultValue:!1},name:{name:Ir.name},rules:{name:Ir.rules,defaultValue:[]},types:{name:Ir.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:gp.$type,properties:{path:{name:gp.path}},superTypes:[]},Group:{name:Hn.$type,properties:{cardinality:{name:Hn.cardinality},elements:{name:Hn.elements,defaultValue:[]},guardCondition:{name:Hn.guardCondition},predicate:{name:Hn.predicate}},superTypes:[mt.$type]},InferredType:{name:vp.$type,properties:{name:{name:vp.name}},superTypes:[Et.$type]},InfixRule:{name:or.$type,properties:{call:{name:or.call},dataType:{name:or.dataType},inferredType:{name:or.inferredType},name:{name:or.name},operators:{name:or.operators},parameters:{name:or.parameters,defaultValue:[]},returnType:{name:or.returnType,referenceType:Et.$type}},superTypes:[ou.$type]},InfixRuleOperatorList:{name:pu.$type,properties:{associativity:{name:pu.associativity},operators:{name:pu.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:Tp.$type,properties:{precedences:{name:Tp.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:Wo.$type,properties:{attributes:{name:Wo.attributes,defaultValue:[]},name:{name:Wo.name},superTypes:{name:Wo.superTypes,defaultValue:[],referenceType:Et.$type}},superTypes:[Et.$type]},Keyword:{name:Ho.$type,properties:{cardinality:{name:Ho.cardinality},predicate:{name:Ho.predicate},value:{name:Ho.value}},superTypes:[mt.$type]},NamedArgument:{name:Yo.$type,properties:{calledByName:{name:Yo.calledByName,defaultValue:!1},parameter:{name:Yo.parameter,referenceType:Jo.$type},value:{name:Yo.value}},superTypes:[]},NegatedToken:{name:Yn.$type,properties:{cardinality:{name:Yn.cardinality},lookahead:{name:Yn.lookahead},parenthesized:{name:Yn.parenthesized,defaultValue:!1},terminal:{name:Yn.terminal}},superTypes:[ht.$type]},Negation:{name:Rp.$type,properties:{value:{name:Rp.value}},superTypes:[Zr.$type]},NumberLiteral:{name:$p.$type,properties:{value:{name:$p.value}},superTypes:[ii.$type]},Parameter:{name:Jo.$type,properties:{name:{name:Jo.name}},superTypes:[]},ParameterReference:{name:bp.$type,properties:{parameter:{name:bp.parameter,referenceType:Jo.$type}},superTypes:[Zr.$type]},ParserRule:{name:Ht.$type,properties:{dataType:{name:Ht.dataType},definition:{name:Ht.definition},entry:{name:Ht.entry,defaultValue:!1},fragment:{name:Ht.fragment,defaultValue:!1},inferredType:{name:Ht.inferredType},name:{name:Ht.name},parameters:{name:Ht.parameters,defaultValue:[]},returnType:{name:Ht.returnType,referenceType:Et.$type}},superTypes:[ou.$type]},ReferenceType:{name:du.$type,properties:{isMulti:{name:du.isMulti,defaultValue:!1},referenceType:{name:du.referenceType}},superTypes:[ri.$type]},RegexToken:{name:Jn.$type,properties:{cardinality:{name:Jn.cardinality},lookahead:{name:Jn.lookahead},parenthesized:{name:Jn.parenthesized,defaultValue:!1},regex:{name:Jn.regex}},superTypes:[ht.$type]},ReturnType:{name:Cp.$type,properties:{name:{name:Cp.name}},superTypes:[]},RuleCall:{name:Xn.$type,properties:{arguments:{name:Xn.arguments,defaultValue:[]},cardinality:{name:Xn.cardinality},predicate:{name:Xn.predicate},rule:{name:Xn.rule,referenceType:Bo.$type}},superTypes:[mt.$type]},SimpleType:{name:Xo.$type,properties:{primitiveType:{name:Xo.primitiveType},stringType:{name:Xo.stringType},typeRef:{name:Xo.typeRef,referenceType:Et.$type}},superTypes:[ri.$type]},StringLiteral:{name:Ep.$type,properties:{value:{name:Ep.value}},superTypes:[ii.$type]},TerminalAlternatives:{name:Zn.$type,properties:{cardinality:{name:Zn.cardinality},elements:{name:Zn.elements,defaultValue:[]},lookahead:{name:Zn.lookahead},parenthesized:{name:Zn.parenthesized,defaultValue:!1}},superTypes:[ht.$type]},TerminalElement:{name:ht.$type,properties:{cardinality:{name:ht.cardinality},lookahead:{name:ht.lookahead},parenthesized:{name:ht.parenthesized,defaultValue:!1}},superTypes:[mt.$type]},TerminalGroup:{name:Qn.$type,properties:{cardinality:{name:Qn.cardinality},elements:{name:Qn.elements,defaultValue:[]},lookahead:{name:Qn.lookahead},parenthesized:{name:Qn.parenthesized,defaultValue:!1}},superTypes:[ht.$type]},TerminalRule:{name:Pr.$type,properties:{definition:{name:Pr.definition},fragment:{name:Pr.fragment,defaultValue:!1},hidden:{name:Pr.hidden,defaultValue:!1},name:{name:Pr.name},type:{name:Pr.type}},superTypes:[Bo.$type]},TerminalRuleCall:{name:ei.$type,properties:{cardinality:{name:ei.cardinality},lookahead:{name:ei.lookahead},parenthesized:{name:ei.parenthesized,defaultValue:!1},rule:{name:ei.rule,referenceType:Pr.$type}},superTypes:[ht.$type]},Type:{name:fu.$type,properties:{name:{name:fu.name},type:{name:fu.type}},superTypes:[Et.$type]},TypeAttribute:{name:ti.$type,properties:{defaultValue:{name:ti.defaultValue},isOptional:{name:ti.isOptional,defaultValue:!1},name:{name:ti.name},type:{name:ti.type}},superTypes:[]},TypeDefinition:{name:ri.$type,properties:{},superTypes:[]},UnionType:{name:Ap.$type,properties:{types:{name:Ap.types,defaultValue:[]}},superTypes:[ri.$type]},UnorderedGroup:{name:mu.$type,properties:{cardinality:{name:mu.cardinality},elements:{name:mu.elements,defaultValue:[]}},superTypes:[mt.$type]},UntilToken:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},lookahead:{name:ni.lookahead},parenthesized:{name:ni.parenthesized,defaultValue:!1},terminal:{name:ni.terminal}},superTypes:[ht.$type]},ValueLiteral:{name:ii.$type,properties:{},superTypes:[]},Wildcard:{name:Zo.$type,properties:{cardinality:{name:Zo.cardinality},lookahead:{name:Zo.lookahead},parenthesized:{name:Zo.parenthesized,defaultValue:!1}},superTypes:[ht.$type]}}}},s(hi,"LangiumGrammarAstReflection"),o(hi,"LangiumGrammarAstReflection"),hi),V=new Zy;function Qy(t){let e=t,r=!1;for(;e;){let n=mn(e.grammarSource,it);if(n&&n.dataType)e=e.container,r=!0;else return r?e:void 0}}s(Qy,"getDatatypeNode");o(Qy,"getDatatypeNode");function eo(t){return new cl(t,e=>dr(e)?e.content:[],{includeRoot:!0})}s(eo,"streamCst");o(eo,"streamCst");function eg(t){return eo(t).filter(fn)}s(eg,"flattenCst");o(eg,"flattenCst");function xd(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}s(xd,"isChildNode");o(xd,"isChildNode");function pl(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}s(pl,"tokenToRange");o(pl,"tokenToRange");function to(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}s(to,"toDocumentSegment");o(to,"toDocumentSegment");var ur;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(ur||(ur={}));function wd(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return ur.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return ur.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?ur.Inside:r?ur.OverlapBack:n?ur.OverlapFront:ur.Outside}s(wd,"compareRange");o(wd,"compareRange");function Id(t,e){return wd(t,e)>ur.After}s(Id,"inRange");o(Id,"inRange");var tg=/^[\w\p{L}]$/u;function rg(t,e,r=tg){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return nc(t,e)}}s(rg,"findDeclarationNodeAtOffset");o(rg,"findDeclarationNodeAtOffset");function Pd(t,e){if(t){let r=Ld(t,!0);if(r&&wu(r,e))return r;if(Ju(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(wu(a,e))return a}}}}s(Pd,"findCommentNode");o(Pd,"findCommentNode");function wu(t,e){return fn(t)&&e.includes(t.tokenType.name)}s(wu,"isCommentNode");o(wu,"isCommentNode");function nc(t,e){if(fn(t))return t;if(dr(t)){let r=Dd(t,e,!1);if(r)return nc(r,e)}}s(nc,"findLeafNodeAtOffset");o(nc,"findLeafNodeAtOffset");function _d(t,e){if(fn(t))return t;if(dr(t)){let r=Dd(t,e,!0);if(r)return _d(r,e)}}s(_d,"findLeafNodeBeforeOffset");o(_d,"findLeafNodeBeforeOffset");function Dd(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let l=Math.floor((n+i)/2),c=t.content[l];if(c.offset<=e&&c.end>e)return c;c.end<=e?(a=r?c:void 0,n=l+1):i=l-1}return a}s(Dd,"binarySearch");o(Dd,"binarySearch");function Ld(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}s(Ld,"getPreviousNode");o(Ld,"getPreviousNode");function ng(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n<i;){n++;let a=r.content[n];if(e||!a.hidden)return a}t=r}}s(ng,"getNextNode");o(ng,"getNextNode");function ig(t){if(t.range.start.character===0)return t;let e=t.range.start.line,r=t,n;for(;t.container;){let i=t.container,a=n??i.content.indexOf(t);if(a===0?(t=i,n=void 0):(n=a-1,t=i.content[n]),t.range.start.line!==e)break;r=t}return r}s(ig,"getStartlineNode");o(ig,"getStartlineNode");function ag(t,e){let r=sg(t,e);return r?r.parent.content.slice(r.a+1,r.b):[]}s(ag,"getInteriorNodes");o(ag,"getInteriorNodes");function sg(t,e){let r=Sp(t),n=Sp(e),i;for(let a=0;a<r.length&&a<n.length;a++){let l=r[a],c=n[a];if(l.parent===c.parent)i={parent:l.parent,a:l.index,b:c.index};else break}return i}s(sg,"getCommonParent");o(sg,"getCommonParent");function Sp(t){let e=[];for(;t.container;){let r=t.container,n=r.content.indexOf(t);e.push({parent:r,index:n}),t=r}return e.reverse()}s(Sp,"getParentChain");o(Sp,"getParentChain");var og={};dn(og,{findAssignment:s(()=>Yd,"findAssignment"),findNameAssignment:s(()=>uc,"findNameAssignment"),findNodeForKeyword:s(()=>Hd,"findNodeForKeyword"),findNodeForProperty:s(()=>sc,"findNodeForProperty"),findNodesForKeyword:s(()=>pg,"findNodesForKeyword"),findNodesForKeywordInternal:s(()=>lc,"findNodesForKeywordInternal"),findNodesForProperty:s(()=>Wd,"findNodesForProperty"),getActionAtElement:s(()=>Xd,"getActionAtElement"),getActionType:s(()=>Qd,"getActionType"),getAllReachableRules:s(()=>ac,"getAllReachableRules"),getAllRulesUsedForCrossReferences:s(()=>cg,"getAllRulesUsedForCrossReferences"),getCrossReferenceTerminal:s(()=>Vd,"getCrossReferenceTerminal"),getEntryRule:s(()=>qd,"getEntryRule"),getExplicitRuleType:s(()=>xl,"getExplicitRuleType"),getHiddenRules:s(()=>Ud,"getHiddenRules"),getRuleType:s(()=>ef,"getRuleType"),getRuleTypeName:s(()=>yg,"getRuleTypeName"),getTypeName:s(()=>on,"getTypeName"),isArrayCardinality:s(()=>fg,"isArrayCardinality"),isArrayOperator:s(()=>mg,"isArrayOperator"),isCommentTerminal:s(()=>Bd,"isCommentTerminal"),isDataType:s(()=>hg,"isDataType"),isDataTypeRule:s(()=>Nl,"isDataTypeRule"),isOptionalCardinality:s(()=>dg,"isOptionalCardinality"),terminalRegex:s(()=>wl,"terminalRegex")});var yi,Od=(yi=class extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}},s(yi,"ErrorWithLocation"),o(yi,"ErrorWithLocation"),yi);function qr(t,e="Error: Got unexpected value."){throw new Error(e)}s(qr,"assertUnreachable");o(qr,"assertUnreachable");function Md(t,e="Error: Condition is violated."){if(!t)throw new Error(e)}s(Md,"assertCondition");o(Md,"assertCondition");var lg={};dn(lg,{NEWLINE_REGEXP:s(()=>hN,"NEWLINE_REGEXP"),escapeRegExp:s(()=>so,"escapeRegExp"),getTerminalParts:s(()=>ug,"getTerminalParts"),isMultilineComment:s(()=>Fd,"isMultilineComment"),isWhitespace:s(()=>ic,"isWhitespace"),partialMatches:s(()=>Gd,"partialMatches"),partialRegExp:s(()=>zd,"partialRegExp"),whitespaceCharacters:s(()=>gN,"whitespaceCharacters")});function W(t){return t.charCodeAt(0)}s(W,"cc");o(W,"cc");function hu(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}s(hu,"insertToSet");o(hu,"insertToSet");function ai(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}s(ai,"addFlag");o(ai,"addFlag");function en(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}s(en,"ASSERT_EXISTS");o(en,"ASSERT_EXISTS");function Qo(){throw Error("Internal Error - Should never get here!")}s(Qo,"ASSERT_NEVER_REACH_HERE");o(Qo,"ASSERT_NEVER_REACH_HERE");function kp(t){return t.type==="Character"}s(kp,"isCharacter");o(kp,"isCharacter");var Np=[];for(let t=W("0");t<=W("9");t++)Np.push(t);var xp=[W("_")].concat(Np);for(let t=W("a");t<=W("z");t++)xp.push(t);for(let t=W("A");t<=W("Z");t++)xp.push(t);var TS=[W(" "),W("\f"),W(`
36
+ `),W("\r"),W(" "),W("\v"),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W("\u2028"),W("\u2029"),W(" "),W(" "),W(" "),W("\uFEFF")],MI=/[0-9a-fA-F]/,Dc=/[0-9]/,jI=/[1-9]/,gi,mN=(gi=class{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 r=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":ai(n,"global");break;case"i":ai(n,"ignoreCase");break;case"m":ai(n,"multiLine");break;case"u":ai(n,"unicode");break;case"y":ai(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){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 r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}en(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Qo()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;en(r);break}if(!(e===!0&&r===void 0)&&en(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),en(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Qo()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[W(`
37
+ `),W("\r"),W("\u2028"),W("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=Np;break;case"D":e=Np,r=!0;break;case"s":e=TS;break;case"S":e=TS,r=!0;break;case"w":e=xp;break;case"W":e=xp,r=!0;break}return en(e)?{type:"Set",value:e,complement:r}:Qo()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=W("\f");break;case"n":e=W(`
38
+ `);break;case"r":e=W("\r");break;case"t":e=W(" ");break;case"v":e=W("\v");break}return en(e)?{type:"Character",value:e}:Qo()}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:W("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:W(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
39
+ `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:W(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom();if(n.type,kp(n)&&this.isRangeDash()){this.consumeChar("-");let i=this.classAtom();if(i.type,kp(i)){if(i.value<n.value)throw Error("Range out of order in character class");e.push({from:n.value,to:i.value})}else hu(n.value,e),e.push(W("-")),hu(i.value,e)}else hu(n.value,e)}return this.consumeChar("]"),{type:"Set",complement:r,value:e}}classAtom(){switch(this.peekChar()){case"]":case`
40
+ `: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:W("\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++;break}let r=this.disjunction();this.consumeChar(")");let n={type:"Group",capturing:e,value:r};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();if(jI.test(e)===!1)throw Error("Expecting a positive integer");for(;Dc.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(Dc.test(e)===!1)throw Error("Expecting an integer");for(;Dc.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case`
41
+ `: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:W(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 Dc.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case`
42
+ `: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`
43
+ `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let r="";for(let n=0;n<e;n++){let i=this.popChar();if(MI.test(i)===!1)throw Error("Expecting a HexDecimal digits");r+=i}return{type:"Character",value:parseInt(r,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){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}}},s(gi,"RegExpParser"),o(gi,"RegExpParser"),gi),vi,jd=(vi=class{visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"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);break}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){}},s(vi,"BaseRegExpVisitor"),o(vi,"BaseRegExpVisitor"),vi),hN=/\r?\n/gm,yN=new mN,Ti,FI=(Ti=class extends jd{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 r=String.fromCharCode(e.value);if(!this.multiline&&r===`
44
+ `&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=so(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!`
45
+ `.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},s(Ti,"TerminalRegExpVisitor"),o(Ti,"TerminalRegExpVisitor"),Ti),oi=new FI;function ug(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=yN.pattern(t),r=[];for(let n of e.value.value)oi.reset(t),oi.visit(n),r.push({start:oi.startRegexp,end:oi.endRegex});return r}catch{return[]}}s(ug,"getTerminalParts");o(ug,"getTerminalParts");function Fd(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),oi.reset(t),oi.visit(yN.pattern(t)),oi.multiline}catch{return!1}}s(Fd,"isMultilineComment");o(Fd,"isMultilineComment");var gN=`\f
46
+ \r \v              \u2028\u2029   \uFEFF`.split("");function ic(t){let e=typeof t=="string"?new RegExp(t):t;return gN.some(r=>e.test(r))}s(ic,"isWhitespace");o(ic,"isWhitespace");function so(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}s(so,"escapeRegExp");o(so,"escapeRegExp");function Gd(t,e){let r=zd(t),n=e.match(r);return!!n&&n[0].length>0}s(Gd,"partialMatches");o(Gd,"partialMatches");function zd(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",l;function c(p){a+=r.substr(n,p),n+=p}s(c,"appendRaw"),o(c,"appendRaw");function u(p){a+="(?:"+r.substr(n,p)+"|$)",n+=p}for(s(u,"appendOptional"),o(u,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":u(3);break;case"x":u(4);break;case"u":e.unicode?r[n+2]==="{"?u(r.indexOf("}",n)-n+1):u(6):u(2);break;case"p":case"P":e.unicode?u(r.indexOf("}",n)-n+1):u(2);break;case"k":u(r.indexOf(">",n)-n+1);break;default:u(2);break}break;case"[":l=/\[(?:\\.|.)*?\]/g,l.lastIndex=n,l=l.exec(r)||[],u(l[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":c(1);break;case"{":l=/\{\d+,?\d*\}/g,l.lastIndex=n,l=l.exec(r),l?c(l[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":l=n,n+=3,i(),a+=r.substr(l,n-l);break;case"<":switch(r[n+3]){case"=":case"!":l=n,n+=4,i(),a+=r.substr(l,n-l);break;default:c(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else c(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return s(i,"process2"),o(i,"process"),new RegExp(i(),t.flags)}s(zd,"partialRegExp");o(zd,"partialRegExp");function qd(t){return t.rules.find(e=>it(e)&&e.entry)}s(qd,"getEntryRule");o(qd,"getEntryRule");function Ud(t){return t.rules.filter(e=>xt(e)&&e.hidden)}s(Ud,"getHiddenRules");o(Ud,"getHiddenRules");function ac(t,e){let r=new Set,n=qd(t);if(!n)return new Set(t.rules);let i=[n].concat(Ud(t));for(let l of i)Kd(l,r,e);let a=new Set;for(let l of t.rules)(r.has(l.name)||xt(l)&&l.hidden)&&a.add(l);return a}s(ac,"getAllReachableRules");o(ac,"getAllReachableRules");function Kd(t,e,r){e.add(t.name),vr(t).forEach(n=>{if(hr(n)||r&&ec(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Kd(i,e,r)}})}s(Kd,"ruleDfs");o(Kd,"ruleDfs");function cg(t){let e=new Set;return vr(t).forEach(r=>{yn(r)&&(it(r.type.ref)&&e.add(r.type.ref),kl(r.type.ref)&&it(r.type.ref.$container)&&e.add(r.type.ref.$container))}),e}s(cg,"getAllRulesUsedForCrossReferences");o(cg,"getAllRulesUsedForCrossReferences");function Vd(t){var e;if(t.terminal)return t.terminal;if(t.type.ref)return(e=uc(t.type.ref))==null?void 0:e.terminal}s(Vd,"getCrossReferenceTerminal");o(Vd,"getCrossReferenceTerminal");function Bd(t){return t.hidden&&!ic(wl(t))}s(Bd,"isCommentTerminal");o(Bd,"isCommentTerminal");function Wd(t,e){return!t||!e?[]:oc(t,e,t.astNode,!0)}s(Wd,"findNodesForProperty");o(Wd,"findNodesForProperty");function sc(t,e,r){if(!t||!e)return;let n=oc(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}s(sc,"findNodeForProperty");o(sc,"findNodeForProperty");function oc(t,e,r,n){if(!n){let i=mn(t.grammarSource,fr);if(i&&i.feature===e)return[t]}return dr(t)&&t.astNode===r?t.content.flatMap(i=>oc(i,e,r,!1)):[]}s(oc,"findNodesForPropertyInternal");o(oc,"findNodesForPropertyInternal");function pg(t,e){return t?lc(t,e,t==null?void 0:t.astNode):[]}s(pg,"findNodesForKeyword");o(pg,"findNodesForKeyword");function Hd(t,e,r){if(!t)return;let n=lc(t,e,t==null?void 0:t.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}s(Hd,"findNodeForKeyword");o(Hd,"findNodeForKeyword");function lc(t,e,r){if(t.astNode!==r)return[];if(mr(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=eo(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let l=i.value;l.astNode===r?mr(l.grammarSource)&&l.grammarSource.value===e&&a.push(l):n.prune()}while(!i.done);return a}s(lc,"findNodesForKeywordInternal");o(lc,"findNodesForKeywordInternal");function Yd(t){var r;let e=t.astNode;for(;e===((r=t.container)==null?void 0:r.astNode);){let n=mn(t.grammarSource,fr);if(n)return n;t=t.container}}s(Yd,"findAssignment");o(Yd,"findAssignment");function uc(t){let e=t;return kl(e)&&(Lr(e.$container)?e=e.$container.$container:hn(e.$container)?e=e.$container:qr(e.$container)),Jd(t,e,new Map)}s(uc,"findNameAssignment");o(uc,"findNameAssignment");function Jd(t,e,r){var i;function n(a,l){let c;return mn(a,fr)||(c=Jd(l,l,r)),r.set(t,c),c}if(s(n,"go"),o(n,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let a of vr(e)){if(fr(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if(hr(a)&&it(a.rule.ref))return n(a,a.rule.ref);if(Qu(a)&&((i=a.typeRef)!=null&&i.ref))return n(a,a.typeRef.ref)}}s(Jd,"findNameAssignmentInternal");o(Jd,"findNameAssignmentInternal");function Xd(t){let e=t.$container;if(gn(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Lr(a))return a;{let l=vr(r[i]).find(Lr);if(l)return l}}}if(Xu(e))return Xd(e)}s(Xd,"getActionAtElement");o(Xd,"getActionAtElement");function dg(t,e){return t==="?"||t==="*"||gn(e)&&!!e.guardCondition}s(dg,"isOptionalCardinality");o(dg,"isOptionalCardinality");function fg(t){return t==="*"||t==="+"}s(fg,"isArrayCardinality");o(fg,"isArrayCardinality");function mg(t){return t==="+="}s(mg,"isArrayOperator");o(mg,"isArrayOperator");function Nl(t){return Zd(t,new Set)}s(Nl,"isDataTypeRule");o(Nl,"isDataTypeRule");function Zd(t,e){if(e.has(t))return!0;e.add(t);for(let r of vr(t))if(hr(r)){if(!r.rule.ref||it(r.rule.ref)&&!Zd(r.rule.ref,e)||Qs(r.rule.ref))return!1}else if(fr(r)||Lr(r))return!1;return!!t.definition}s(Zd,"isDataTypeRuleInternal");o(Zd,"isDataTypeRuleInternal");function hg(t){return Iu(t.type,new Set)}s(hg,"isDataType");o(hg,"isDataType");function Iu(t,e){if(e.has(t))return!0;if(e.add(t),pd(t)||$d(t))return!1;if(Sd(t))return t.types.every(r=>Iu(r,e));if(Qu(t)){if(t.primitiveType!==void 0||t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return tc(r)?Iu(r.type,e):!1}else return!1}else return!1}s(Iu,"isDataTypeInternal");o(Iu,"isDataTypeInternal");function xl(t){if(!xt(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e)return e.name}}}s(xl,"getExplicitRuleType");o(xl,"getExplicitRuleType");function on(t){if(hn(t))return it(t)&&Nl(t)?t.name:xl(t)??t.name;if(gd(t)||tc(t)||Cd(t))return t.name;if(Lr(t)){let e=Qd(t);if(e)return e}else if(kl(t))return t.name;throw new Error("Cannot get name of Unknown Type")}s(on,"getTypeName");o(on,"getTypeName");function Qd(t){var e;if(t.inferredType)return t.inferredType.name;if((e=t.type)!=null&&e.ref)return on(t.type.ref)}s(Qd,"getActionType");o(Qd,"getActionType");function yg(t){var e;return xt(t)?((e=t.type)==null?void 0:e.name)??"string":it(t)&&Nl(t)?t.name:xl(t)??t.name}s(yg,"getRuleTypeName");o(yg,"getRuleTypeName");function ef(t){var e;return xt(t)?((e=t.type)==null?void 0:e.name)??"string":xl(t)??t.name}s(ef,"getRuleType");o(ef,"getRuleType");function wl(t){let e={s:!1,i:!1,u:!1},r=vn(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}s(wl,"terminalRegex");o(wl,"terminalRegex");var gg=/[\s\S]/.source;function vn(t,e){var r;if(Ed(t))return vg(t);if(Ad(t))return Tg(t);if(fd(t))return bg(t);if(ec(t)){let n=t.rule.ref;if(!n)throw new Error("Missing rule reference.");return Jt(vn(n.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(vd(t))return $g(t);if(kd(t))return Rg(t);if(bd(t)){let n=t.regex.lastIndexOf("/"),i=t.regex.substring(1,n),a=t.regex.substring(n+1);return e&&(e.i=a.includes("i"),e.s=a.includes("s"),e.u=a.includes("u")),Jt(i,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(Nd(t))return Jt(gg,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized});throw new Error(`Invalid terminal element: ${t==null?void 0:t.$type}, ${(r=t==null?void 0:t.$cstNode)==null?void 0:r.text}`)}}}s(vn,"abstractElementToRegex");o(vn,"abstractElementToRegex");function vg(t){return Jt(t.elements.map(e=>vn(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(vg,"terminalAlternativesToRegex");o(vg,"terminalAlternativesToRegex");function Tg(t){return Jt(t.elements.map(e=>vn(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(Tg,"terminalGroupToRegex");o(Tg,"terminalGroupToRegex");function Rg(t){return Jt(`${gg}*?${vn(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}s(Rg,"untilTokenToRegex");o(Rg,"untilTokenToRegex");function $g(t){return Jt(`(?!${vn(t.terminal)})${gg}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}s($g,"negateTokenToRegex");o($g,"negateTokenToRegex");function bg(t){return t.right?Jt(`[${yu(t.left)}-${yu(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):Jt(yu(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(bg,"characterRangeToRegex");o(bg,"characterRangeToRegex");function yu(t){return so(t.value)}s(yu,"keywordToRegex");o(yu,"keywordToRegex");function Jt(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}s(Jt,"withCardinality");o(Jt,"withCardinality");function tf(t){let e=[],r=t.Grammar;for(let n of r.rules)xt(n)&&Bd(n)&&Fd(wl(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:tg}}s(tf,"createGrammarConfig");o(tf,"createGrammarConfig");var GI=typeof global=="object"&&global&&global.Object===Object&&global,vN=GI,zI=typeof self=="object"&&self&&self.Object===Object&&self,qI=vN||zI||Function("return this")(),Tr=qI,UI=Tr.Symbol,zt=UI,TN=Object.prototype,KI=TN.hasOwnProperty,VI=TN.toString,zl=zt?zt.toStringTag:void 0;function Cg(t){var e=KI.call(t,zl),r=t[zl];try{t[zl]=void 0;var n=!0}catch{}var i=VI.call(t);return n&&(e?t[zl]=r:delete t[zl]),i}s(Cg,"getRawTag");o(Cg,"getRawTag");var BI=Cg,WI=Object.prototype,HI=WI.toString;function Eg(t){return HI.call(t)}s(Eg,"objectToString");o(Eg,"objectToString");var YI=Eg,JI="[object Null]",XI="[object Undefined]",RS=zt?zt.toStringTag:void 0;function Ag(t){return t==null?t===void 0?XI:JI:RS&&RS in Object(t)?BI(t):YI(t)}s(Ag,"baseGetTag");o(Ag,"baseGetTag");var Tn=Ag;function Sg(t){return t!=null&&typeof t=="object"}s(Sg,"isObjectLike");o(Sg,"isObjectLike");var Qt=Sg,ZI="[object Symbol]";function kg(t){return typeof t=="symbol"||Qt(t)&&Tn(t)==ZI}s(kg,"isSymbol");o(kg,"isSymbol");var rf=kg;function Ng(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}s(Ng,"arrayMap");o(Ng,"arrayMap");var cc=Ng,QI=Array.isArray,se=QI,$S=zt?zt.prototype:void 0,bS=$S?$S.toString:void 0;function nf(t){if(typeof t=="string")return t;if(se(t))return cc(t,nf)+"";if(rf(t))return bS?bS.call(t):"";var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}s(nf,"baseToString");o(nf,"baseToString");var eP=nf,tP=/\s/;function xg(t){for(var e=t.length;e--&&tP.test(t.charAt(e)););return e}s(xg,"trimmedEndIndex");o(xg,"trimmedEndIndex");var rP=xg,nP=/^\s+/;function wg(t){return t&&t.slice(0,rP(t)+1).replace(nP,"")}s(wg,"baseTrim");o(wg,"baseTrim");var iP=wg;function Ig(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}s(Ig,"isObject");o(Ig,"isObject");var qt=Ig,CS=NaN,aP=/^[-+]0x[0-9a-f]+$/i,sP=/^0b[01]+$/i,oP=/^0o[0-7]+$/i,lP=parseInt;function Pg(t){if(typeof t=="number")return t;if(rf(t))return CS;if(qt(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=qt(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=iP(t);var r=sP.test(t);return r||oP.test(t)?lP(t.slice(2),r?2:8):aP.test(t)?CS:+t}s(Pg,"toNumber");o(Pg,"toNumber");var uP=Pg,ES=1/0,cP=17976931348623157e292;function _g(t){if(!t)return t===0?t:0;if(t=uP(t),t===ES||t===-ES){var e=t<0?-1:1;return e*cP}return t===t?t:0}s(_g,"toFinite");o(_g,"toFinite");var pP=_g;function Dg(t){var e=pP(t),r=e%1;return e===e?r?e-r:e:0}s(Dg,"toInteger");o(Dg,"toInteger");var pc=Dg;function Lg(t){return t}s(Lg,"identity");o(Lg,"identity");var dl=Lg,dP="[object AsyncFunction]",fP="[object Function]",mP="[object GeneratorFunction]",hP="[object Proxy]";function Og(t){if(!qt(t))return!1;var e=Tn(t);return e==fP||e==mP||e==dP||e==hP}s(Og,"isFunction");o(Og,"isFunction");var Ur=Og,yP=Tr["__core-js_shared__"],wm=yP,AS=function(){var t=/[^.]+$/.exec(wm&&wm.keys&&wm.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Mg(t){return!!AS&&AS in t}s(Mg,"isMasked");o(Mg,"isMasked");var gP=Mg,vP=Function.prototype,TP=vP.toString;function jg(t){if(t!=null){try{return TP.call(t)}catch{}try{return t+""}catch{}}return""}s(jg,"toSource");o(jg,"toSource");var oo=jg,RP=/[\\^$.*+?()[\]{}|]/g,$P=/^\[object .+?Constructor\]$/,bP=Function.prototype,CP=Object.prototype,EP=bP.toString,AP=CP.hasOwnProperty,SP=RegExp("^"+EP.call(AP).replace(RP,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Fg(t){if(!qt(t)||gP(t))return!1;var e=Ur(t)?SP:$P;return e.test(oo(t))}s(Fg,"baseIsNative");o(Fg,"baseIsNative");var kP=Fg;function Gg(t,e){return t==null?void 0:t[e]}s(Gg,"getValue");o(Gg,"getValue");var NP=Gg;function zg(t,e){var r=NP(t,e);return kP(r)?r:void 0}s(zg,"getNative");o(zg,"getNative");var lo=zg,xP=lo(Tr,"WeakMap"),Qh=xP,SS=Object.create,wP=function(){function t(){}return s(t,"object"),o(t,"object"),function(e){if(!qt(e))return{};if(SS)return SS(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),IP=wP;function qg(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}s(qg,"apply");o(qg,"apply");var PP=qg;function Ug(){}s(Ug,"noop");o(Ug,"noop");var He=Ug;function Kg(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}s(Kg,"copyArray");o(Kg,"copyArray");var _P=Kg,DP=800,LP=16,OP=Date.now;function Vg(t){var e=0,r=0;return function(){var n=OP(),i=LP-(n-r);if(r=n,i>0){if(++e>=DP)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}s(Vg,"shortOut");o(Vg,"shortOut");var MP=Vg;function Bg(t){return function(){return t}}s(Bg,"constant");o(Bg,"constant");var jP=Bg,FP=function(){try{var t=lo(Object,"defineProperty");return t({},"",{}),t}catch{}}(),wp=FP,GP=wp?function(t,e){return wp(t,"toString",{configurable:!0,enumerable:!1,value:jP(e),writable:!0})}:dl,zP=GP,qP=MP(zP),UP=qP;function Wg(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}s(Wg,"arrayEach");o(Wg,"arrayEach");var RN=Wg;function Hg(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a<i;)if(e(t[a],a,t))return a;return-1}s(Hg,"baseFindIndex");o(Hg,"baseFindIndex");var $N=Hg;function Yg(t){return t!==t}s(Yg,"baseIsNaN");o(Yg,"baseIsNaN");var KP=Yg;function Jg(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}s(Jg,"strictIndexOf");o(Jg,"strictIndexOf");var VP=Jg;function Xg(t,e,r){return e===e?VP(t,e,r):$N(t,KP,r)}s(Xg,"baseIndexOf");o(Xg,"baseIndexOf");var Zg=Xg;function Qg(t,e){var r=t==null?0:t.length;return!!r&&Zg(t,e,0)>-1}s(Qg,"arrayIncludes");o(Qg,"arrayIncludes");var bN=Qg,BP=9007199254740991,WP=/^(?:0|[1-9]\d*)$/;function ev(t,e){var r=typeof t;return e=e??BP,!!e&&(r=="number"||r!="symbol"&&WP.test(t))&&t>-1&&t%1==0&&t<e}s(ev,"isIndex");o(ev,"isIndex");var af=ev;function tv(t,e,r){e=="__proto__"&&wp?wp(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}s(tv,"baseAssignValue");o(tv,"baseAssignValue");var rv=tv;function nv(t,e){return t===e||t!==t&&e!==e}s(nv,"eq");o(nv,"eq");var dc=nv,HP=Object.prototype,YP=HP.hasOwnProperty;function iv(t,e,r){var n=t[e];(!(YP.call(t,e)&&dc(n,r))||r===void 0&&!(e in t))&&rv(t,e,r)}s(iv,"assignValue");o(iv,"assignValue");var sf=iv;function av(t,e,r,n){var i=!r;r||(r={});for(var a=-1,l=e.length;++a<l;){var c=e[a],u=n?n(r[c],t[c],c,r,t):void 0;u===void 0&&(u=t[c]),i?rv(r,c,u):sf(r,c,u)}return r}s(av,"copyObject");o(av,"copyObject");var fc=av,kS=Math.max;function sv(t,e,r){return e=kS(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=kS(n.length-e,0),l=Array(a);++i<a;)l[i]=n[e+i];i=-1;for(var c=Array(e+1);++i<e;)c[i]=n[i];return c[e]=r(l),PP(t,this,c)}}s(sv,"overRest");o(sv,"overRest");var JP=sv;function ov(t,e){return UP(JP(t,e,dl),t+"")}s(ov,"baseRest");o(ov,"baseRest");var lv=ov,XP=9007199254740991;function uv(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=XP}s(uv,"isLength");o(uv,"isLength");var cv=uv;function pv(t){return t!=null&&cv(t.length)&&!Ur(t)}s(pv,"isArrayLike");o(pv,"isArrayLike");var Rr=pv;function dv(t,e,r){if(!qt(r))return!1;var n=typeof e;return(n=="number"?Rr(r)&&af(e,r.length):n=="string"&&e in r)?dc(r[e],t):!1}s(dv,"isIterateeCall");o(dv,"isIterateeCall");var of=dv;function fv(t){return lv(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,l=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,l&&of(r[0],r[1],l)&&(a=i<3?void 0:a,i=1),e=Object(e);++n<i;){var c=r[n];c&&t(e,c,n,a)}return e})}s(fv,"createAssigner");o(fv,"createAssigner");var ZP=fv,QP=Object.prototype;function mv(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||QP;return t===r}s(mv,"isPrototype");o(mv,"isPrototype");var mc=mv;function hv(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}s(hv,"baseTimes");o(hv,"baseTimes");var e_=hv,t_="[object Arguments]";function yv(t){return Qt(t)&&Tn(t)==t_}s(yv,"baseIsArguments");o(yv,"baseIsArguments");var NS=yv,CN=Object.prototype,r_=CN.hasOwnProperty,n_=CN.propertyIsEnumerable,i_=NS(function(){return arguments}())?NS:function(t){return Qt(t)&&r_.call(t,"callee")&&!n_.call(t,"callee")},lf=i_;function gv(){return!1}s(gv,"stubFalse");o(gv,"stubFalse");var a_=gv,EN=typeof exports=="object"&&exports&&!exports.nodeType&&exports,xS=EN&&typeof module=="object"&&module&&!module.nodeType&&module,s_=xS&&xS.exports===EN,wS=s_?Tr.Buffer:void 0,o_=wS?wS.isBuffer:void 0,l_=o_||a_,Pu=l_,u_="[object Arguments]",c_="[object Array]",p_="[object Boolean]",d_="[object Date]",f_="[object Error]",m_="[object Function]",h_="[object Map]",y_="[object Number]",g_="[object Object]",v_="[object RegExp]",T_="[object Set]",R_="[object String]",$_="[object WeakMap]",b_="[object ArrayBuffer]",C_="[object DataView]",E_="[object Float32Array]",A_="[object Float64Array]",S_="[object Int8Array]",k_="[object Int16Array]",N_="[object Int32Array]",x_="[object Uint8Array]",w_="[object Uint8ClampedArray]",I_="[object Uint16Array]",P_="[object Uint32Array]",xe={};xe[E_]=xe[A_]=xe[S_]=xe[k_]=xe[N_]=xe[x_]=xe[w_]=xe[I_]=xe[P_]=!0;xe[u_]=xe[c_]=xe[b_]=xe[p_]=xe[C_]=xe[d_]=xe[f_]=xe[m_]=xe[h_]=xe[y_]=xe[g_]=xe[v_]=xe[T_]=xe[R_]=xe[$_]=!1;function vv(t){return Qt(t)&&cv(t.length)&&!!xe[Tn(t)]}s(vv,"baseIsTypedArray");o(vv,"baseIsTypedArray");var __=vv;function Tv(t){return function(e){return t(e)}}s(Tv,"baseUnary");o(Tv,"baseUnary");var hc=Tv,AN=typeof exports=="object"&&exports&&!exports.nodeType&&exports,gu=AN&&typeof module=="object"&&module&&!module.nodeType&&module,D_=gu&&gu.exports===AN,Im=D_&&vN.process,L_=function(){try{var t=gu&&gu.require&&gu.require("util").types;return t||Im&&Im.binding&&Im.binding("util")}catch{}}(),ln=L_,IS=ln&&ln.isTypedArray,O_=IS?hc(IS):__,Rv=O_,M_=Object.prototype,j_=M_.hasOwnProperty;function $v(t,e){var r=se(t),n=!r&&lf(t),i=!r&&!n&&Pu(t),a=!r&&!n&&!i&&Rv(t),l=r||n||i||a,c=l?e_(t.length,String):[],u=c.length;for(var p in t)(e||j_.call(t,p))&&!(l&&(p=="length"||i&&(p=="offset"||p=="parent")||a&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||af(p,u)))&&c.push(p);return c}s($v,"arrayLikeKeys");o($v,"arrayLikeKeys");var SN=$v;function bv(t,e){return function(r){return t(e(r))}}s(bv,"overArg");o(bv,"overArg");var kN=bv,F_=kN(Object.keys,Object),G_=F_,z_=Object.prototype,q_=z_.hasOwnProperty;function Cv(t){if(!mc(t))return G_(t);var e=[];for(var r in Object(t))q_.call(t,r)&&r!="constructor"&&e.push(r);return e}s(Cv,"baseKeys");o(Cv,"baseKeys");var NN=Cv;function Ev(t){return Rr(t)?SN(t):NN(t)}s(Ev,"keys");o(Ev,"keys");var St=Ev,U_=Object.prototype,K_=U_.hasOwnProperty,V_=ZP(function(t,e){if(mc(e)||Rr(e)){fc(e,St(e),t);return}for(var r in e)K_.call(e,r)&&sf(t,r,e[r])}),kt=V_;function Av(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}s(Av,"nativeKeysIn");o(Av,"nativeKeysIn");var B_=Av,W_=Object.prototype,H_=W_.hasOwnProperty;function Sv(t){if(!qt(t))return B_(t);var e=mc(t),r=[];for(var n in t)n=="constructor"&&(e||!H_.call(t,n))||r.push(n);return r}s(Sv,"baseKeysIn");o(Sv,"baseKeysIn");var Y_=Sv;function kv(t){return Rr(t)?SN(t,!0):Y_(t)}s(kv,"keysIn");o(kv,"keysIn");var uf=kv,J_=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,X_=/^\w*$/;function Nv(t,e){if(se(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||rf(t)?!0:X_.test(t)||!J_.test(t)||e!=null&&t in Object(e)}s(Nv,"isKey");o(Nv,"isKey");var xv=Nv,Z_=lo(Object,"create"),_u=Z_;function wv(){this.__data__=_u?_u(null):{},this.size=0}s(wv,"hashClear");o(wv,"hashClear");var Q_=wv;function Iv(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}s(Iv,"hashDelete");o(Iv,"hashDelete");var eD=Iv,tD="__lodash_hash_undefined__",rD=Object.prototype,nD=rD.hasOwnProperty;function Pv(t){var e=this.__data__;if(_u){var r=e[t];return r===tD?void 0:r}return nD.call(e,t)?e[t]:void 0}s(Pv,"hashGet");o(Pv,"hashGet");var iD=Pv,aD=Object.prototype,sD=aD.hasOwnProperty;function _v(t){var e=this.__data__;return _u?e[t]!==void 0:sD.call(e,t)}s(_v,"hashHas");o(_v,"hashHas");var oD=_v,lD="__lodash_hash_undefined__";function Dv(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=_u&&e===void 0?lD:e,this}s(Dv,"hashSet");o(Dv,"hashSet");var uD=Dv;function Rn(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s(Rn,"Hash");o(Rn,"Hash");Rn.prototype.clear=Q_;Rn.prototype.delete=eD;Rn.prototype.get=iD;Rn.prototype.has=oD;Rn.prototype.set=uD;var PS=Rn;function Lv(){this.__data__=[],this.size=0}s(Lv,"listCacheClear");o(Lv,"listCacheClear");var cD=Lv;function Ov(t,e){for(var r=t.length;r--;)if(dc(t[r][0],e))return r;return-1}s(Ov,"assocIndexOf");o(Ov,"assocIndexOf");var cf=Ov,pD=Array.prototype,dD=pD.splice;function Mv(t){var e=this.__data__,r=cf(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():dD.call(e,r,1),--this.size,!0}s(Mv,"listCacheDelete");o(Mv,"listCacheDelete");var fD=Mv;function jv(t){var e=this.__data__,r=cf(e,t);return r<0?void 0:e[r][1]}s(jv,"listCacheGet");o(jv,"listCacheGet");var mD=jv;function Fv(t){return cf(this.__data__,t)>-1}s(Fv,"listCacheHas");o(Fv,"listCacheHas");var hD=Fv;function Gv(t,e){var r=this.__data__,n=cf(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}s(Gv,"listCacheSet");o(Gv,"listCacheSet");var yD=Gv;function $n(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s($n,"ListCache");o($n,"ListCache");$n.prototype.clear=cD;$n.prototype.delete=fD;$n.prototype.get=mD;$n.prototype.has=hD;$n.prototype.set=yD;var pf=$n,gD=lo(Tr,"Map"),Du=gD;function zv(){this.size=0,this.__data__={hash:new PS,map:new(Du||pf),string:new PS}}s(zv,"mapCacheClear");o(zv,"mapCacheClear");var vD=zv;function qv(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}s(qv,"isKeyable");o(qv,"isKeyable");var TD=qv;function Uv(t,e){var r=t.__data__;return TD(e)?r[typeof e=="string"?"string":"hash"]:r.map}s(Uv,"getMapData");o(Uv,"getMapData");var df=Uv;function Kv(t){var e=df(this,t).delete(t);return this.size-=e?1:0,e}s(Kv,"mapCacheDelete");o(Kv,"mapCacheDelete");var RD=Kv;function Vv(t){return df(this,t).get(t)}s(Vv,"mapCacheGet");o(Vv,"mapCacheGet");var $D=Vv;function Bv(t){return df(this,t).has(t)}s(Bv,"mapCacheHas");o(Bv,"mapCacheHas");var bD=Bv;function Wv(t,e){var r=df(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}s(Wv,"mapCacheSet");o(Wv,"mapCacheSet");var CD=Wv;function bn(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s(bn,"MapCache");o(bn,"MapCache");bn.prototype.clear=vD;bn.prototype.delete=RD;bn.prototype.get=$D;bn.prototype.has=bD;bn.prototype.set=CD;var ff=bn,ED="Expected a function";function yc(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(ED);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var l=t.apply(this,n);return r.cache=a.set(i,l)||a,l},"memoized");return r.cache=new(yc.Cache||ff),r}s(yc,"memoize");o(yc,"memoize");yc.Cache=ff;var AD=yc,SD=500;function Hv(t){var e=AD(t,function(n){return r.size===SD&&r.clear(),n}),r=e.cache;return e}s(Hv,"memoizeCapped");o(Hv,"memoizeCapped");var kD=Hv,ND=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,xD=/\\(\\)?/g,wD=kD(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(ND,function(r,n,i,a){e.push(i?a.replace(xD,"$1"):n||r)}),e}),ID=wD;function Yv(t){return t==null?"":eP(t)}s(Yv,"toString2");o(Yv,"toString");var PD=Yv;function Jv(t,e){return se(t)?t:xv(t,e)?[t]:ID(PD(t))}s(Jv,"castPath");o(Jv,"castPath");var mf=Jv;function Xv(t){if(typeof t=="string"||rf(t))return t;var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}s(Xv,"toKey");o(Xv,"toKey");var gc=Xv;function Zv(t,e){e=mf(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[gc(e[r++])];return r&&r==n?t:void 0}s(Zv,"baseGet");o(Zv,"baseGet");var Qv=Zv;function eT(t,e,r){var n=t==null?void 0:Qv(t,e);return n===void 0?r:n}s(eT,"get");o(eT,"get");var _D=eT;function tT(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}s(tT,"arrayPush");o(tT,"arrayPush");var rT=tT,_S=zt?zt.isConcatSpreadable:void 0;function nT(t){return se(t)||lf(t)||!!(_S&&t&&t[_S])}s(nT,"isFlattenable");o(nT,"isFlattenable");var DD=nT;function hf(t,e,r,n,i){var a=-1,l=t.length;for(r||(r=DD),i||(i=[]);++a<l;){var c=t[a];e>0&&r(c)?e>1?hf(c,e-1,r,n,i):rT(i,c):n||(i[i.length]=c)}return i}s(hf,"baseFlatten");o(hf,"baseFlatten");var iT=hf;function aT(t){var e=t==null?0:t.length;return e?iT(t,1):[]}s(aT,"flatten");o(aT,"flatten");var Xt=aT,LD=kN(Object.getPrototypeOf,Object),xN=LD;function sT(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n<i;)a[n]=t[n+e];return a}s(sT,"baseSlice");o(sT,"baseSlice");var wN=sT;function oT(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i<a;)r=e(r,t[i],i,t);return r}s(oT,"arrayReduce");o(oT,"arrayReduce");var OD=oT;function lT(){this.__data__=new pf,this.size=0}s(lT,"stackClear");o(lT,"stackClear");var MD=lT;function uT(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}s(uT,"stackDelete");o(uT,"stackDelete");var jD=uT;function cT(t){return this.__data__.get(t)}s(cT,"stackGet");o(cT,"stackGet");var FD=cT;function pT(t){return this.__data__.has(t)}s(pT,"stackHas");o(pT,"stackHas");var GD=pT,zD=200;function dT(t,e){var r=this.__data__;if(r instanceof pf){var n=r.__data__;if(!Du||n.length<zD-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new ff(n)}return r.set(t,e),this.size=r.size,this}s(dT,"stackSet");o(dT,"stackSet");var qD=dT;function Cn(t){var e=this.__data__=new pf(t);this.size=e.size}s(Cn,"Stack");o(Cn,"Stack");Cn.prototype.clear=MD;Cn.prototype.delete=jD;Cn.prototype.get=FD;Cn.prototype.has=GD;Cn.prototype.set=qD;var vu=Cn;function fT(t,e){return t&&fc(e,St(e),t)}s(fT,"baseAssign");o(fT,"baseAssign");var UD=fT;function mT(t,e){return t&&fc(e,uf(e),t)}s(mT,"baseAssignIn");o(mT,"baseAssignIn");var KD=mT,IN=typeof exports=="object"&&exports&&!exports.nodeType&&exports,DS=IN&&typeof module=="object"&&module&&!module.nodeType&&module,VD=DS&&DS.exports===IN,LS=VD?Tr.Buffer:void 0,OS=LS?LS.allocUnsafe:void 0;function hT(t,e){if(e)return t.slice();var r=t.length,n=OS?OS(r):new t.constructor(r);return t.copy(n),n}s(hT,"cloneBuffer");o(hT,"cloneBuffer");var BD=hT;function yT(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r<n;){var l=t[r];e(l,r,t)&&(a[i++]=l)}return a}s(yT,"arrayFilter");o(yT,"arrayFilter");var gT=yT;function vT(){return[]}s(vT,"stubArray");o(vT,"stubArray");var PN=vT,WD=Object.prototype,HD=WD.propertyIsEnumerable,MS=Object.getOwnPropertySymbols,YD=MS?function(t){return t==null?[]:(t=Object(t),gT(MS(t),function(e){return HD.call(t,e)}))}:PN,TT=YD;function RT(t,e){return fc(t,TT(t),e)}s(RT,"copySymbols");o(RT,"copySymbols");var JD=RT,XD=Object.getOwnPropertySymbols,ZD=XD?function(t){for(var e=[];t;)rT(e,TT(t)),t=xN(t);return e}:PN,_N=ZD;function $T(t,e){return fc(t,_N(t),e)}s($T,"copySymbolsIn");o($T,"copySymbolsIn");var QD=$T;function bT(t,e,r){var n=e(t);return se(t)?n:rT(n,r(t))}s(bT,"baseGetAllKeys");o(bT,"baseGetAllKeys");var DN=bT;function CT(t){return DN(t,St,TT)}s(CT,"getAllKeys");o(CT,"getAllKeys");var ey=CT;function ET(t){return DN(t,uf,_N)}s(ET,"getAllKeysIn");o(ET,"getAllKeysIn");var LN=ET,eL=lo(Tr,"DataView"),ty=eL,tL=lo(Tr,"Promise"),ry=tL,rL=lo(Tr,"Set"),rl=rL,jS="[object Map]",nL="[object Object]",FS="[object Promise]",GS="[object Set]",zS="[object WeakMap]",qS="[object DataView]",iL=oo(ty),aL=oo(Du),sL=oo(ry),oL=oo(rl),lL=oo(Qh),Un=Tn;(ty&&Un(new ty(new ArrayBuffer(1)))!=qS||Du&&Un(new Du)!=jS||ry&&Un(ry.resolve())!=FS||rl&&Un(new rl)!=GS||Qh&&Un(new Qh)!=zS)&&(Un=o(function(t){var e=Tn(t),r=e==nL?t.constructor:void 0,n=r?oo(r):"";if(n)switch(n){case iL:return qS;case aL:return jS;case sL:return FS;case oL:return GS;case lL:return zS}return e},"getTag"));var fl=Un,uL=Object.prototype,cL=uL.hasOwnProperty;function AT(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&cL.call(t,"index")&&(r.index=t.index,r.input=t.input),r}s(AT,"initCloneArray");o(AT,"initCloneArray");var pL=AT,dL=Tr.Uint8Array,Ip=dL;function ST(t){var e=new t.constructor(t.byteLength);return new Ip(e).set(new Ip(t)),e}s(ST,"cloneArrayBuffer");o(ST,"cloneArrayBuffer");var kT=ST;function NT(t,e){var r=e?kT(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}s(NT,"cloneDataView");o(NT,"cloneDataView");var fL=NT,mL=/\w*$/;function xT(t){var e=new t.constructor(t.source,mL.exec(t));return e.lastIndex=t.lastIndex,e}s(xT,"cloneRegExp");o(xT,"cloneRegExp");var hL=xT,US=zt?zt.prototype:void 0,KS=US?US.valueOf:void 0;function wT(t){return KS?Object(KS.call(t)):{}}s(wT,"cloneSymbol");o(wT,"cloneSymbol");var yL=wT;function IT(t,e){var r=e?kT(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}s(IT,"cloneTypedArray");o(IT,"cloneTypedArray");var gL=IT,vL="[object Boolean]",TL="[object Date]",RL="[object Map]",$L="[object Number]",bL="[object RegExp]",CL="[object Set]",EL="[object String]",AL="[object Symbol]",SL="[object ArrayBuffer]",kL="[object DataView]",NL="[object Float32Array]",xL="[object Float64Array]",wL="[object Int8Array]",IL="[object Int16Array]",PL="[object Int32Array]",_L="[object Uint8Array]",DL="[object Uint8ClampedArray]",LL="[object Uint16Array]",OL="[object Uint32Array]";function PT(t,e,r){var n=t.constructor;switch(e){case SL:return kT(t);case vL:case TL:return new n(+t);case kL:return fL(t,r);case NL:case xL:case wL:case IL:case PL:case _L:case DL:case LL:case OL:return gL(t,r);case RL:return new n;case $L:case EL:return new n(t);case bL:return hL(t);case CL:return new n;case AL:return yL(t)}}s(PT,"initCloneByTag");o(PT,"initCloneByTag");var ML=PT;function _T(t){return typeof t.constructor=="function"&&!mc(t)?IP(xN(t)):{}}s(_T,"initCloneObject");o(_T,"initCloneObject");var jL=_T,FL="[object Map]";function DT(t){return Qt(t)&&fl(t)==FL}s(DT,"baseIsMap");o(DT,"baseIsMap");var GL=DT,VS=ln&&ln.isMap,zL=VS?hc(VS):GL,qL=zL,UL="[object Set]";function LT(t){return Qt(t)&&fl(t)==UL}s(LT,"baseIsSet");o(LT,"baseIsSet");var KL=LT,BS=ln&&ln.isSet,VL=BS?hc(BS):KL,BL=VL,WL=1,HL=2,YL=4,ON="[object Arguments]",JL="[object Array]",XL="[object Boolean]",ZL="[object Date]",QL="[object Error]",MN="[object Function]",e0="[object GeneratorFunction]",t0="[object Map]",r0="[object Number]",jN="[object Object]",n0="[object RegExp]",i0="[object Set]",a0="[object String]",s0="[object Symbol]",o0="[object WeakMap]",l0="[object ArrayBuffer]",u0="[object DataView]",c0="[object Float32Array]",p0="[object Float64Array]",d0="[object Int8Array]",f0="[object Int16Array]",m0="[object Int32Array]",h0="[object Uint8Array]",y0="[object Uint8ClampedArray]",g0="[object Uint16Array]",v0="[object Uint32Array]",Ce={};Ce[ON]=Ce[JL]=Ce[l0]=Ce[u0]=Ce[XL]=Ce[ZL]=Ce[c0]=Ce[p0]=Ce[d0]=Ce[f0]=Ce[m0]=Ce[t0]=Ce[r0]=Ce[jN]=Ce[n0]=Ce[i0]=Ce[a0]=Ce[s0]=Ce[h0]=Ce[y0]=Ce[g0]=Ce[v0]=!0;Ce[QL]=Ce[MN]=Ce[o0]=!1;function nl(t,e,r,n,i,a){var l,c=e&WL,u=e&HL,p=e&YL;if(r&&(l=i?r(t,n,i,a):r(t)),l!==void 0)return l;if(!qt(t))return t;var d=se(t);if(d){if(l=pL(t),!c)return _P(t,l)}else{var f=fl(t),m=f==MN||f==e0;if(Pu(t))return BD(t,c);if(f==jN||f==ON||m&&!i){if(l=u||m?{}:jL(t),!c)return u?QD(t,KD(l,t)):JD(t,UD(l,t))}else{if(!Ce[f])return i?t:{};l=ML(t,f,c)}}a||(a=new vu);var g=a.get(t);if(g)return g;a.set(t,l),BL(t)?t.forEach(function(A){l.add(nl(A,e,r,A,t,a))}):qL(t)&&t.forEach(function(A,b){l.set(b,nl(A,e,r,b,t,a))});var y=p?u?LN:ey:u?uf:St,T=d?void 0:y(t);return RN(T||t,function(A,b){T&&(b=A,A=t[b]),sf(l,b,nl(A,e,r,b,t,a))}),l}s(nl,"baseClone");o(nl,"baseClone");var T0=nl,R0=4;function OT(t){return T0(t,R0)}s(OT,"clone");o(OT,"clone");var rt=OT;function MT(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e<r;){var a=t[e];a&&(i[n++]=a)}return i}s(MT,"compact");o(MT,"compact");var vc=MT,$0="__lodash_hash_undefined__";function jT(t){return this.__data__.set(t,$0),this}s(jT,"setCacheAdd");o(jT,"setCacheAdd");var b0=jT;function FT(t){return this.__data__.has(t)}s(FT,"setCacheHas");o(FT,"setCacheHas");var C0=FT;function ml(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new ff;++e<r;)this.add(t[e])}s(ml,"SetCache");o(ml,"SetCache");ml.prototype.add=ml.prototype.push=b0;ml.prototype.has=C0;var GT=ml;function zT(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}s(zT,"arraySome");o(zT,"arraySome");var FN=zT;function qT(t,e){return t.has(e)}s(qT,"cacheHas");o(qT,"cacheHas");var UT=qT,E0=1,A0=2;function KT(t,e,r,n,i,a){var l=r&E0,c=t.length,u=e.length;if(c!=u&&!(l&&u>c))return!1;var p=a.get(t),d=a.get(e);if(p&&d)return p==e&&d==t;var f=-1,m=!0,g=r&A0?new GT:void 0;for(a.set(t,e),a.set(e,t);++f<c;){var y=t[f],T=e[f];if(n)var A=l?n(T,y,f,e,t,a):n(y,T,f,t,e,a);if(A!==void 0){if(A)continue;m=!1;break}if(g){if(!FN(e,function(b,w){if(!UT(g,w)&&(y===b||i(y,b,r,n,a)))return g.push(w)})){m=!1;break}}else if(!(y===T||i(y,T,r,n,a))){m=!1;break}}return a.delete(t),a.delete(e),m}s(KT,"equalArrays");o(KT,"equalArrays");var GN=KT;function VT(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}s(VT,"mapToArray");o(VT,"mapToArray");var S0=VT;function BT(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}s(BT,"setToArray");o(BT,"setToArray");var WT=BT,k0=1,N0=2,x0="[object Boolean]",w0="[object Date]",I0="[object Error]",P0="[object Map]",_0="[object Number]",D0="[object RegExp]",L0="[object Set]",O0="[object String]",M0="[object Symbol]",j0="[object ArrayBuffer]",F0="[object DataView]",WS=zt?zt.prototype:void 0,Pm=WS?WS.valueOf:void 0;function HT(t,e,r,n,i,a,l){switch(r){case F0:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case j0:return!(t.byteLength!=e.byteLength||!a(new Ip(t),new Ip(e)));case x0:case w0:case _0:return dc(+t,+e);case I0:return t.name==e.name&&t.message==e.message;case D0:case O0:return t==e+"";case P0:var c=S0;case L0:var u=n&k0;if(c||(c=WT),t.size!=e.size&&!u)return!1;var p=l.get(t);if(p)return p==e;n|=N0,l.set(t,e);var d=GN(c(t),c(e),n,i,a,l);return l.delete(t),d;case M0:if(Pm)return Pm.call(t)==Pm.call(e)}return!1}s(HT,"equalByTag");o(HT,"equalByTag");var G0=HT,z0=1,q0=Object.prototype,U0=q0.hasOwnProperty;function YT(t,e,r,n,i,a){var l=r&z0,c=ey(t),u=c.length,p=ey(e),d=p.length;if(u!=d&&!l)return!1;for(var f=u;f--;){var m=c[f];if(!(l?m in e:U0.call(e,m)))return!1}var g=a.get(t),y=a.get(e);if(g&&y)return g==e&&y==t;var T=!0;a.set(t,e),a.set(e,t);for(var A=l;++f<u;){m=c[f];var b=t[m],w=e[m];if(n)var S=l?n(w,b,m,e,t,a):n(b,w,m,t,e,a);if(!(S===void 0?b===w||i(b,w,r,n,a):S)){T=!1;break}A||(A=m=="constructor")}if(T&&!A){var I=t.constructor,K=e.constructor;I!=K&&"constructor"in t&&"constructor"in e&&!(typeof I=="function"&&I instanceof I&&typeof K=="function"&&K instanceof K)&&(T=!1)}return a.delete(t),a.delete(e),T}s(YT,"equalObjects");o(YT,"equalObjects");var K0=YT,V0=1,HS="[object Arguments]",YS="[object Array]",Lc="[object Object]",B0=Object.prototype,JS=B0.hasOwnProperty;function JT(t,e,r,n,i,a){var l=se(t),c=se(e),u=l?YS:fl(t),p=c?YS:fl(e);u=u==HS?Lc:u,p=p==HS?Lc:p;var d=u==Lc,f=p==Lc,m=u==p;if(m&&Pu(t)){if(!Pu(e))return!1;l=!0,d=!1}if(m&&!d)return a||(a=new vu),l||Rv(t)?GN(t,e,r,n,i,a):G0(t,e,u,r,n,i,a);if(!(r&V0)){var g=d&&JS.call(t,"__wrapped__"),y=f&&JS.call(e,"__wrapped__");if(g||y){var T=g?t.value():t,A=y?e.value():e;return a||(a=new vu),i(T,A,r,n,a)}}return m?(a||(a=new vu),K0(t,e,r,n,i,a)):!1}s(JT,"baseIsEqualDeep");o(JT,"baseIsEqualDeep");var W0=JT;function yf(t,e,r,n,i){return t===e?!0:t==null||e==null||!Qt(t)&&!Qt(e)?t!==t&&e!==e:W0(t,e,r,n,yf,i)}s(yf,"baseIsEqual");o(yf,"baseIsEqual");var zN=yf,H0=1,Y0=2;function XT(t,e,r,n){var i=r.length,a=i,l=!n;if(t==null)return!a;for(t=Object(t);i--;){var c=r[i];if(l&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return!1}for(;++i<a;){c=r[i];var u=c[0],p=t[u],d=c[1];if(l&&c[2]){if(p===void 0&&!(u in t))return!1}else{var f=new vu;if(n)var m=n(p,d,u,t,e,f);if(!(m===void 0?zN(d,p,H0|Y0,n,f):m))return!1}}return!0}s(XT,"baseIsMatch");o(XT,"baseIsMatch");var J0=XT;function ZT(t){return t===t&&!qt(t)}s(ZT,"isStrictComparable");o(ZT,"isStrictComparable");var qN=ZT;function QT(t){for(var e=St(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,qN(i)]}return e}s(QT,"getMatchData");o(QT,"getMatchData");var X0=QT;function eR(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}s(eR,"matchesStrictComparable");o(eR,"matchesStrictComparable");var UN=eR;function tR(t){var e=X0(t);return e.length==1&&e[0][2]?UN(e[0][0],e[0][1]):function(r){return r===t||J0(r,t,e)}}s(tR,"baseMatches");o(tR,"baseMatches");var Z0=tR;function rR(t,e){return t!=null&&e in Object(t)}s(rR,"baseHasIn");o(rR,"baseHasIn");var Q0=rR;function nR(t,e,r){e=mf(e,t);for(var n=-1,i=e.length,a=!1;++n<i;){var l=gc(e[n]);if(!(a=t!=null&&r(t,l)))break;t=t[l]}return a||++n!=i?a:(i=t==null?0:t.length,!!i&&cv(i)&&af(l,i)&&(se(t)||lf(t)))}s(nR,"hasPath");o(nR,"hasPath");var KN=nR;function iR(t,e){return t!=null&&KN(t,e,Q0)}s(iR,"hasIn");o(iR,"hasIn");var eO=iR,tO=1,rO=2;function aR(t,e){return xv(t)&&qN(e)?UN(gc(t),e):function(r){var n=_D(r,t);return n===void 0&&n===e?eO(r,t):zN(e,n,tO|rO)}}s(aR,"baseMatchesProperty");o(aR,"baseMatchesProperty");var nO=aR;function sR(t){return function(e){return e==null?void 0:e[t]}}s(sR,"baseProperty");o(sR,"baseProperty");var iO=sR;function oR(t){return function(e){return Qv(e,t)}}s(oR,"basePropertyDeep");o(oR,"basePropertyDeep");var aO=oR;function lR(t){return xv(t)?iO(gc(t)):aO(t)}s(lR,"property");o(lR,"property");var sO=lR;function uR(t){return typeof t=="function"?t:t==null?dl:typeof t=="object"?se(t)?nO(t[0],t[1]):Z0(t):sO(t)}s(uR,"baseIteratee");o(uR,"baseIteratee");var $r=uR;function cR(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i<a;){var l=t[i];e(n,l,r(l),t)}return n}s(cR,"arrayAggregator");o(cR,"arrayAggregator");var oO=cR;function pR(t){return function(e,r,n){for(var i=-1,a=Object(e),l=n(e),c=l.length;c--;){var u=l[t?c:++i];if(r(a[u],u,a)===!1)break}return e}}s(pR,"createBaseFor");o(pR,"createBaseFor");var lO=pR,uO=lO(),cO=uO;function dR(t,e){return t&&cO(t,e,St)}s(dR,"baseForOwn");o(dR,"baseForOwn");var pO=dR;function fR(t,e){return function(r,n){if(r==null)return r;if(!Rr(r))return t(r,n);for(var i=r.length,a=e?i:-1,l=Object(r);(e?a--:++a<i)&&n(l[a],a,l)!==!1;);return r}}s(fR,"createBaseEach");o(fR,"createBaseEach");var dO=fR,fO=dO(pO),uo=fO;function mR(t,e,r,n){return uo(t,function(i,a,l){e(n,i,r(i),l)}),n}s(mR,"baseAggregator");o(mR,"baseAggregator");var mO=mR;function hR(t,e){return function(r,n){var i=se(r)?oO:mO,a=e?e():{};return i(r,t,$r(n),a)}}s(hR,"createAggregator");o(hR,"createAggregator");var hO=hR,VN=Object.prototype,yO=VN.hasOwnProperty,gO=lv(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&of(e[0],e[1],i)&&(n=1);++r<n;)for(var a=e[r],l=uf(a),c=-1,u=l.length;++c<u;){var p=l[c],d=t[p];(d===void 0||dc(d,VN[p])&&!yO.call(t,p))&&(t[p]=a[p])}return t}),yR=gO;function gR(t){return Qt(t)&&Rr(t)}s(gR,"isArrayLikeObject");o(gR,"isArrayLikeObject");var XS=gR;function vR(t,e,r){for(var n=-1,i=t==null?0:t.length;++n<i;)if(r(e,t[n]))return!0;return!1}s(vR,"arrayIncludesWith");o(vR,"arrayIncludesWith");var BN=vR,vO=200;function TR(t,e,r,n){var i=-1,a=bN,l=!0,c=t.length,u=[],p=e.length;if(!c)return u;r&&(e=cc(e,hc(r))),n?(a=BN,l=!1):e.length>=vO&&(a=UT,l=!1,e=new GT(e));e:for(;++i<c;){var d=t[i],f=r==null?d:r(d);if(d=n||d!==0?d:0,l&&f===f){for(var m=p;m--;)if(e[m]===f)continue e;u.push(d)}else a(e,f,n)||u.push(d)}return u}s(TR,"baseDifference");o(TR,"baseDifference");var TO=TR,RO=lv(function(t,e){return XS(t)?TO(t,iT(e,1,XS,!0)):[]}),gf=RO;function RR(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}s(RR,"last");o(RR,"last");var ro=RR;function $R(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:pc(e),wN(t,e<0?0:e,n)):[]}s($R,"drop");o($R,"drop");var et=$R;function bR(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:pc(e),e=n-e,wN(t,0,e<0?0:e)):[]}s(bR,"dropRight");o(bR,"dropRight");var Lu=bR;function CR(t){return typeof t=="function"?t:dl}s(CR,"castFunction");o(CR,"castFunction");var $O=CR;function ER(t,e){var r=se(t)?RN:uo;return r(t,$O(e))}s(ER,"forEach");o(ER,"forEach");var H=ER;function AR(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(!e(t[r],r,t))return!1;return!0}s(AR,"arrayEvery");o(AR,"arrayEvery");var bO=AR;function SR(t,e){var r=!0;return uo(t,function(n,i,a){return r=!!e(n,i,a),r}),r}s(SR,"baseEvery");o(SR,"baseEvery");var CO=SR;function kR(t,e,r){var n=se(t)?bO:CO;return r&&of(t,e,r)&&(e=void 0),n(t,$r(e))}s(kR,"every");o(kR,"every");var Zt=kR;function NR(t,e){var r=[];return uo(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}s(NR,"baseFilter");o(NR,"baseFilter");var WN=NR;function xR(t,e){var r=se(t)?gT:WN;return r(t,$r(e))}s(xR,"filter");o(xR,"filter");var Ut=xR;function wR(t){return function(e,r,n){var i=Object(e);if(!Rr(e)){var a=$r(r);e=St(e),r=o(function(c){return a(i[c],c,i)},"predicate")}var l=t(e,r,n);return l>-1?i[a?e[l]:l]:void 0}}s(wR,"createFind");o(wR,"createFind");var EO=wR,AO=Math.max;function IR(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:pc(r);return i<0&&(i=AO(n+i,0)),$N(t,$r(e),i)}s(IR,"findIndex");o(IR,"findIndex");var SO=IR,kO=EO(SO),hl=kO;function PR(t){return t&&t.length?t[0]:void 0}s(PR,"head");o(PR,"head");var er=PR;function _R(t,e){var r=-1,n=Rr(t)?Array(t.length):[];return uo(t,function(i,a,l){n[++r]=e(i,a,l)}),n}s(_R,"baseMap");o(_R,"baseMap");var NO=_R;function DR(t,e){var r=se(t)?cc:NO;return r(t,$r(e))}s(DR,"map");o(DR,"map");var U=DR;function LR(t,e){return iT(U(t,e),1)}s(LR,"flatMap");o(LR,"flatMap");var Gt=LR,xO=Object.prototype,wO=xO.hasOwnProperty,IO=hO(function(t,e,r){wO.call(t,r)?t[r].push(e):rv(t,r,[e])}),PO=IO,_O=Object.prototype,DO=_O.hasOwnProperty;function OR(t,e){return t!=null&&DO.call(t,e)}s(OR,"baseHas");o(OR,"baseHas");var LO=OR;function MR(t,e){return t!=null&&KN(t,e,LO)}s(MR,"has");o(MR,"has");var B=MR,OO="[object String]";function jR(t){return typeof t=="string"||!se(t)&&Qt(t)&&Tn(t)==OO}s(jR,"isString");o(jR,"isString");var yt=jR;function FR(t,e){return cc(e,function(r){return t[r]})}s(FR,"baseValues");o(FR,"baseValues");var MO=FR;function GR(t){return t==null?[]:MO(t,St(t))}s(GR,"values");o(GR,"values");var Ye=GR,jO=Math.max;function zR(t,e,r,n){t=Rr(t)?t:Ye(t),r=r&&!n?pc(r):0;var i=t.length;return r<0&&(r=jO(i+r,0)),yt(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&Zg(t,e,r)>-1}s(zR,"includes");o(zR,"includes");var ft=zR,FO=Math.max;function qR(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:pc(r);return i<0&&(i=FO(n+i,0)),Zg(t,e,i)}s(qR,"indexOf");o(qR,"indexOf");var ZS=qR,GO="[object Map]",zO="[object Set]",qO=Object.prototype,UO=qO.hasOwnProperty;function UR(t){if(t==null)return!0;if(Rr(t)&&(se(t)||typeof t=="string"||typeof t.splice=="function"||Pu(t)||Rv(t)||lf(t)))return!t.length;var e=fl(t);if(e==GO||e==zO)return!t.size;if(mc(t))return!NN(t).length;for(var r in t)if(UO.call(t,r))return!1;return!0}s(UR,"isEmpty");o(UR,"isEmpty");var Ae=UR,KO="[object RegExp]";function KR(t){return Qt(t)&&Tn(t)==KO}s(KR,"baseIsRegExp");o(KR,"baseIsRegExp");var VO=KR,QS=ln&&ln.isRegExp,BO=QS?hc(QS):VO,Or=BO;function VR(t){return t===void 0}s(VR,"isUndefined");o(VR,"isUndefined");var Mr=VR,WO="Expected a function";function BR(t){if(typeof t!="function")throw new TypeError(WO);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}s(BR,"negate");o(BR,"negate");var HO=BR;function WR(t,e,r,n){if(!qt(t))return t;e=mf(e,t);for(var i=-1,a=e.length,l=a-1,c=t;c!=null&&++i<a;){var u=gc(e[i]),p=r;if(u==="__proto__"||u==="constructor"||u==="prototype")return t;if(i!=l){var d=c[u];p=n?n(d,u,c):void 0,p===void 0&&(p=qt(d)?d:af(e[i+1])?[]:{})}sf(c,u,p),c=c[u]}return t}s(WR,"baseSet");o(WR,"baseSet");var YO=WR;function HR(t,e,r){for(var n=-1,i=e.length,a={};++n<i;){var l=e[n],c=Qv(t,l);r(c,l)&&YO(a,mf(l,t),c)}return a}s(HR,"basePickBy");o(HR,"basePickBy");var JO=HR;function YR(t,e){if(t==null)return{};var r=cc(LN(t),function(n){return[n]});return e=$r(e),JO(t,r,function(n,i){return e(n,i[0])})}s(YR,"pickBy");o(YR,"pickBy");var tr=YR;function JR(t,e,r,n,i){return i(t,function(a,l,c){r=n?(n=!1,a):e(r,a,l,c)}),r}s(JR,"baseReduce");o(JR,"baseReduce");var XO=JR;function XR(t,e,r){var n=se(t)?OD:XO,i=arguments.length<3;return n(t,$r(e),r,i,uo)}s(XR,"reduce");o(XR,"reduce");var Nt=XR;function ZR(t,e){var r=se(t)?gT:WN;return r(t,HO($r(e)))}s(ZR,"reject");o(ZR,"reject");var vf=ZR;function QR(t,e){var r;return uo(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}s(QR,"baseSome");o(QR,"baseSome");var ZO=QR;function e$(t,e,r){var n=se(t)?FN:ZO;return r&&of(t,e,r)&&(e=void 0),n(t,$r(e))}s(e$,"some");o(e$,"some");var HN=e$,QO=1/0,eM=rl&&1/WT(new rl([,-0]))[1]==QO?function(t){return new rl(t)}:He,tM=eM,rM=200;function t$(t,e,r){var n=-1,i=bN,a=t.length,l=!0,c=[],u=c;if(r)l=!1,i=BN;else if(a>=rM){var p=e?null:tM(t);if(p)return WT(p);l=!1,i=UT,u=new GT}else u=e?[]:c;e:for(;++n<a;){var d=t[n],f=e?e(d):d;if(d=r||d!==0?d:0,l&&f===f){for(var m=u.length;m--;)if(u[m]===f)continue e;e&&u.push(f),c.push(d)}else i(u,f,r)||(u!==c&&u.push(f),c.push(d))}return c}s(t$,"baseUniq");o(t$,"baseUniq");var nM=t$;function r$(t){return t&&t.length?nM(t):[]}s(r$,"uniq");o(r$,"uniq");var n$=r$;function Ou(t){console&&console.error&&console.error(`Error: ${t}`)}s(Ou,"PRINT_ERROR");o(Ou,"PRINT_ERROR");function Tf(t){console&&console.warn&&console.warn(`Warning: ${t}`)}s(Tf,"PRINT_WARNING");o(Tf,"PRINT_WARNING");function Rf(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}s(Rf,"timer");o(Rf,"timer");function $f(t){function e(){}s(e,"FakeConstructor"),o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return s(n,"fakeAccess"),o(n,"fakeAccess"),n(),n(),t}s($f,"toFastProperties");o($f,"toFastProperties");function i$(t){return a$(t)?t.LABEL:t.name}s(i$,"tokenLabel");o(i$,"tokenLabel");function a$(t){return yt(t.LABEL)&&t.LABEL!==""}s(a$,"hasTokenLabel");o(a$,"hasTokenLabel");var Ri,br=(Ri=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),H(this.definition,r=>{r.accept(e)})}},s(Ri,"AbstractProduction"),o(Ri,"AbstractProduction"),Ri),$i,ct=($i=class extends br{constructor(e){super([]),this.idx=1,kt(this,tr(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},s($i,"NonTerminal"),o($i,"NonTerminal"),$i),bi,Il=(bi=class extends br{constructor(e){super(e.definition),this.orgText="",kt(this,tr(e,r=>r!==void 0))}},s(bi,"Rule"),o(bi,"Rule"),bi),Ci,gt=(Ci=class extends br{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,kt(this,tr(e,r=>r!==void 0))}},s(Ci,"Alternative"),o(Ci,"Alternative"),Ci),Ei,tt=(Ei=class extends br{constructor(e){super(e.definition),this.idx=1,kt(this,tr(e,r=>r!==void 0))}},s(Ei,"Option"),o(Ei,"Option"),Ei),Ai,wt=(Ai=class extends br{constructor(e){super(e.definition),this.idx=1,kt(this,tr(e,r=>r!==void 0))}},s(Ai,"RepetitionMandatory"),o(Ai,"RepetitionMandatory"),Ai),Si,It=(Si=class extends br{constructor(e){super(e.definition),this.idx=1,kt(this,tr(e,r=>r!==void 0))}},s(Si,"RepetitionMandatoryWithSeparator"),o(Si,"RepetitionMandatoryWithSeparator"),Si),ki,Fe=(ki=class extends br{constructor(e){super(e.definition),this.idx=1,kt(this,tr(e,r=>r!==void 0))}},s(ki,"Repetition"),o(ki,"Repetition"),ki),Ni,vt=(Ni=class extends br{constructor(e){super(e.definition),this.idx=1,kt(this,tr(e,r=>r!==void 0))}},s(Ni,"RepetitionWithSeparator"),o(Ni,"RepetitionWithSeparator"),Ni),xi,Tt=(xi=class extends br{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,kt(this,tr(e,r=>r!==void 0))}},s(xi,"Alternation"),o(xi,"Alternation"),xi),wi,Ie=(wi=class{constructor(e){this.idx=1,kt(this,tr(e,r=>r!==void 0))}accept(e){e.visit(this)}},s(wi,"Terminal"),o(wi,"Terminal"),wi);function s$(t){return U(t,il)}s(s$,"serializeGrammar");o(s$,"serializeGrammar");function il(t){function e(r){return U(r,il)}if(s(e,"convertDefinition"),o(e,"convertDefinition"),t instanceof ct){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return yt(t.label)&&(r.label=t.label),r}else{if(t instanceof gt)return{type:"Alternative",definition:e(t.definition)};if(t instanceof tt)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof wt)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof It)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:il(new Ie({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof vt)return{type:"RepetitionWithSeparator",idx:t.idx,separator:il(new Ie({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Fe)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Tt)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Ie){let r={type:"Terminal",name:t.terminalType.name,label:i$(t.terminalType),idx:t.idx};yt(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Or(n)?n.source:n),r}else{if(t instanceof Il)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}s(il,"serializeProduction");o(il,"serializeProduction");var Ii,Pl=(Ii=class{visit(e){let r=e;switch(r.constructor){case ct:return this.visitNonTerminal(r);case gt:return this.visitAlternative(r);case tt:return this.visitOption(r);case wt:return this.visitRepetitionMandatory(r);case It:return this.visitRepetitionMandatoryWithSeparator(r);case vt:return this.visitRepetitionWithSeparator(r);case Fe:return this.visitRepetition(r);case Tt:return this.visitAlternation(r);case Ie:return this.visitTerminal(r);case Il:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}},s(Ii,"GAstVisitor"),o(Ii,"GAstVisitor"),Ii);function o$(t){return t instanceof gt||t instanceof tt||t instanceof Fe||t instanceof wt||t instanceof It||t instanceof vt||t instanceof Ie||t instanceof Il}s(o$,"isSequenceProd");o(o$,"isSequenceProd");function yl(t,e=[]){return t instanceof tt||t instanceof Fe||t instanceof vt?!0:t instanceof Tt?HN(t.definition,r=>yl(r,e)):t instanceof ct&&ft(e,t)?!1:t instanceof br?(t instanceof ct&&e.push(t),Zt(t.definition,r=>yl(r,e))):!1}s(yl,"isOptionalProd");o(yl,"isOptionalProd");function l$(t){return t instanceof Tt}s(l$,"isBranchingProd");o(l$,"isBranchingProd");function Lt(t){if(t instanceof ct)return"SUBRULE";if(t instanceof tt)return"OPTION";if(t instanceof Tt)return"OR";if(t instanceof wt)return"AT_LEAST_ONE";if(t instanceof It)return"AT_LEAST_ONE_SEP";if(t instanceof vt)return"MANY_SEP";if(t instanceof Fe)return"MANY";if(t instanceof Ie)return"CONSUME";throw Error("non exhaustive match")}s(Lt,"getProductionDslName");o(Lt,"getProductionDslName");var Pi,bf=(Pi=class{walk(e,r=[]){H(e.definition,(n,i)=>{let a=et(e.definition,i+1);if(n instanceof ct)this.walkProdRef(n,a,r);else if(n instanceof Ie)this.walkTerminal(n,a,r);else if(n instanceof gt)this.walkFlat(n,a,r);else if(n instanceof tt)this.walkOption(n,a,r);else if(n instanceof wt)this.walkAtLeastOne(n,a,r);else if(n instanceof It)this.walkAtLeastOneSep(n,a,r);else if(n instanceof vt)this.walkManySep(n,a,r);else if(n instanceof Fe)this.walkMany(n,a,r);else if(n instanceof Tt)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new tt({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=Pp(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new tt({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=Pp(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);H(e.definition,a=>{let l=new gt({definition:[a]});this.walk(l,i)})}},s(Pi,"RestWalker"),o(Pi,"RestWalker"),Pi);function Pp(t,e,r){return[new tt({definition:[new Ie({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}s(Pp,"restForRepetitionWithSeparator");o(Pp,"restForRepetitionWithSeparator");function co(t){if(t instanceof ct)return co(t.referencedRule);if(t instanceof Ie)return p$(t);if(o$(t))return u$(t);if(l$(t))return c$(t);throw Error("non exhaustive match")}s(co,"first");o(co,"first");function u$(t){let e=[],r=t.definition,n=0,i=r.length>n,a,l=!0;for(;i&&l;)a=r[n],l=yl(a),e=e.concat(co(a)),n=n+1,i=r.length>n;return n$(e)}s(u$,"firstForSequence");o(u$,"firstForSequence");function c$(t){let e=U(t.definition,r=>co(r));return n$(Xt(e))}s(c$,"firstForBranching");o(c$,"firstForBranching");function p$(t){return[t.terminalType]}s(p$,"firstForTerminal");o(p$,"firstForTerminal");var YN="_~IN~_",_i,iM=(_i=class extends bf{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=f$(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),l=new gt({definition:a}),c=co(l);this.follows[i]=c}},s(_i,"ResyncFollowsWalker"),o(_i,"ResyncFollowsWalker"),_i);function d$(t){let e={};return H(t,r=>{let n=new iM(r).startWalking();kt(e,n)}),e}s(d$,"computeAllProdsFollows");o(d$,"computeAllProdsFollows");function f$(t,e){return t.name+e+YN}s(f$,"buildBetweenProdsFollowPrefix");o(f$,"buildBetweenProdsFollowPrefix");var ap={},aM=new mN;function _l(t){let e=t.toString();if(ap.hasOwnProperty(e))return ap[e];{let r=aM.pattern(e);return ap[e]=r,r}}s(_l,"getRegExpAst");o(_l,"getRegExpAst");function m$(){ap={}}s(m$,"clearRegExpParserCache");o(m$,"clearRegExpParserCache");var JN="Complement Sets are not supported for first char optimization",_p=`Unable to use "first char" lexer optimizations:
47
+ `;function h$(t,e=!1){try{let r=_l(t);return Mu(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===JN)e&&Tf(`${_p} Unable to optimize: < ${t.toString()} >
48
+ Complement Sets cannot be automatically optimized.
49
+ This will disable the lexer's first char optimizations.
50
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=`
51
+ This will disable the lexer's first char optimizations.
52
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Ou(`${_p}
53
+ Failed parsing: < ${t.toString()} >
54
+ Using the @chevrotain/regexp-to-ast library
55
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}s(h$,"getOptimizedStartCodesIndices");o(h$,"getOptimizedStartCodesIndices");function Mu(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i<t.value.length;i++)Mu(t.value[i],e,r);break;case"Alternative":let n=t.value;for(let i=0;i<n.length;i++){let a=n[i];switch(a.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let l=a;switch(l.type){case"Character":el(l.value,e,r);break;case"Set":if(l.complement===!0)throw Error(JN);H(l.value,u=>{if(typeof u=="number")el(u,e,r);else{let p=u;if(r===!0)for(let d=p.from;d<=p.to;d++)el(d,e,r);else{for(let d=p.from;d<=p.to&&d<iu;d++)el(d,e,r);if(p.to>=iu){let d=p.from>=iu?p.from:iu,f=p.to,m=yr(d),g=yr(f);for(let y=m;y<=g;y++)e[y]=y}}}});break;case"Group":Mu(l.value,e,r);break;default:throw Error("Non Exhaustive Match")}let c=l.quantifier!==void 0&&l.quantifier.atLeast===0;if(l.type==="Group"&&ju(l)===!1||l.type!=="Group"&&c===!1)break}break;default:throw Error("non exhaustive match!")}return Ye(e)}s(Mu,"firstCharOptimizedIndices");o(Mu,"firstCharOptimizedIndices");function el(t,e,r){let n=yr(t);e[n]=n,r===!0&&y$(t,e)}s(el,"addOptimizedIdxToResult");o(el,"addOptimizedIdxToResult");function y$(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=yr(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=yr(i.charCodeAt(0));e[a]=a}}}s(y$,"handleIgnoreCase");o(y$,"handleIgnoreCase");function Dp(t,e){return hl(t.value,r=>{if(typeof r=="number")return ft(e,r);{let n=r;return hl(e,i=>n.from<=i&&i<=n.to)!==void 0}})}s(Dp,"findCode");o(Dp,"findCode");function ju(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?se(t.value)?Zt(t.value,ju):ju(t.value):!1}s(ju,"isWholeOptional");o(ju,"isWholeOptional");var Di,sM=(Di=class extends jd{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){ft(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Dp(e,this.targetCharCodes)===void 0&&(this.found=!0):Dp(e,this.targetCharCodes)!==void 0&&(this.found=!0)}},s(Di,"CharCodeFinder"),o(Di,"CharCodeFinder"),Di);function Tc(t,e){if(e instanceof RegExp){let r=_l(e),n=new sM(t);return n.visit(r),n.found}else return hl(e,r=>ft(t,r.charCodeAt(0)))!==void 0}s(Tc,"canMatchCharCode");o(Tc,"canMatchCharCode");var no="PATTERN",nu="defaultMode",Oc="modes",XN=typeof new RegExp("(?:)").sticky=="boolean";function g$(t,e){e=yR(e,{useSticky:XN,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
56
+ `],tracer:o((w,S)=>S(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{j$()});let n;r("Reject Lexer.NA",()=>{n=vf(t,w=>w[no]===ut.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=U(n,w=>{let S=w[no];if(Or(S)){let I=S.source;return I.length===1&&I!=="^"&&I!=="$"&&I!=="."&&!S.ignoreCase?I:I.length===2&&I[0]==="\\"&&!ft(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],I[1])?I[1]:e.useSticky?Op(S):Lp(S)}else{if(Ur(S))return i=!0,{exec:S};if(typeof S=="object")return i=!0,S;if(typeof S=="string"){if(S.length===1)return S;{let I=S.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),K=new RegExp(I);return e.useSticky?Op(K):Lp(K)}}else throw Error("non exhaustive match")}})});let l,c,u,p,d;r("misc mapping",()=>{l=U(n,w=>w.tokenTypeIdx),c=U(n,w=>{let S=w.GROUP;if(S!==ut.SKIPPED){if(yt(S))return S;if(Mr(S))return!1;throw Error("non exhaustive match")}}),u=U(n,w=>{let S=w.LONGER_ALT;if(S)return se(S)?U(S,I=>ZS(n,I)):[ZS(n,S)]}),p=U(n,w=>w.PUSH_MODE),d=U(n,w=>B(w,"POP_MODE"))});let f;r("Line Terminator Handling",()=>{let w=Af(e.lineTerminatorCharacters);f=U(n,S=>!1),e.positionTracking!=="onlyOffset"&&(f=U(n,S=>B(S,"LINE_BREAKS")?!!S.LINE_BREAKS:Ef(S,w)===!1&&Tc(w,S.PATTERN)))});let m,g,y,T;r("Misc Mapping #2",()=>{m=U(n,Cf),g=U(a,O$),y=Nt(n,(w,S)=>{let I=S.GROUP;return yt(I)&&I!==ut.SKIPPED&&(w[I]=[]),w},{}),T=U(a,(w,S)=>({pattern:a[S],longerAlt:u[S],canLineTerminator:f[S],isCustom:m[S],short:g[S],group:c[S],push:p[S],pop:d[S],tokenTypeIdx:l[S],tokenType:n[S]}))});let A=!0,b=[];return e.safeMode||r("First Char Optimization",()=>{b=Nt(n,(w,S,I)=>{if(typeof S.PATTERN=="string"){let K=S.PATTERN.charCodeAt(0),ie=yr(K);Tu(w,ie,T[I])}else if(se(S.START_CHARS_HINT)){let K;H(S.START_CHARS_HINT,ie=>{let X=typeof ie=="string"?ie.charCodeAt(0):ie,Te=yr(X);K!==Te&&(K=Te,Tu(w,Te,T[I]))})}else if(Or(S.PATTERN))if(S.PATTERN.unicode)A=!1,e.ensureOptimizations&&Ou(`${_p} Unable to analyze < ${S.PATTERN.toString()} > pattern.
57
+ The regexp unicode flag is not currently supported by the regexp-to-ast library.
58
+ This will disable the lexer's first char optimizations.
59
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let K=h$(S.PATTERN,e.ensureOptimizations);Ae(K)&&(A=!1),H(K,ie=>{Tu(w,ie,T[I])})}else e.ensureOptimizations&&Ou(`${_p} TokenType: <${S.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
60
+ This will disable the lexer's first char optimizations.
61
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),A=!1;return w},[])}),{emptyGroups:y,patternIdxToConfig:T,charCodeToPatternIdxToConfig:b,hasCustom:i,canBeOptimized:A}}s(g$,"analyzeTokenTypes");o(g$,"analyzeTokenTypes");function v$(t,e){let r=[],n=R$(t);r=r.concat(n.errors);let i=$$(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(T$(a)),r=r.concat(k$(a)),r=r.concat(N$(a,e)),r=r.concat(x$(a)),r}s(v$,"validatePatterns");o(v$,"validatePatterns");function T$(t){let e=[],r=Ut(t,n=>Or(n[no]));return e=e.concat(b$(r)),e=e.concat(E$(r)),e=e.concat(A$(r)),e=e.concat(S$(r)),e=e.concat(C$(r)),e}s(T$,"validateRegExpPattern");o(T$,"validateRegExpPattern");function R$(t){let e=Ut(t,i=>!B(i,no)),r=U(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Ge.MISSING_PATTERN,tokenTypes:[i]})),n=gf(t,e);return{errors:r,valid:n}}s(R$,"findMissingPatterns");o(R$,"findMissingPatterns");function $$(t){let e=Ut(t,i=>{let a=i[no];return!Or(a)&&!Ur(a)&&!B(a,"exec")&&!yt(a)}),r=U(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Ge.INVALID_PATTERN,tokenTypes:[i]})),n=gf(t,e);return{errors:r,valid:n}}s($$,"findInvalidPatterns");o($$,"findInvalidPatterns");var oM=/[^\\][$]/;function b$(t){const n=class n extends jd{constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}};s(n,"EndAnchorFinder"),o(n,"EndAnchorFinder");let e=n,r=Ut(t,i=>{let a=i.PATTERN;try{let l=_l(a),c=new e;return c.visit(l),c.found}catch{return oM.test(a.source)}});return U(r,i=>({message:`Unexpected RegExp Anchor Error:
62
+ Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
63
+ See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ge.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}s(b$,"findEndOfInputAnchor");o(b$,"findEndOfInputAnchor");function C$(t){let e=Ut(t,r=>r.PATTERN.test(""));return U(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' must not match an empty string",type:Ge.EMPTY_MATCH_PATTERN,tokenTypes:[r]}))}s(C$,"findEmptyMatchRegExps");o(C$,"findEmptyMatchRegExps");var lM=/[^\\[][\^]|^\^/;function E$(t){const n=class n extends jd{constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}};s(n,"StartAnchorFinder"),o(n,"StartAnchorFinder");let e=n,r=Ut(t,i=>{let a=i.PATTERN;try{let l=_l(a),c=new e;return c.visit(l),c.found}catch{return lM.test(a.source)}});return U(r,i=>({message:`Unexpected RegExp Anchor Error:
64
+ Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
65
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ge.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}s(E$,"findStartOfInputAnchor");o(E$,"findStartOfInputAnchor");function A$(t){let e=Ut(t,r=>{let n=r[no];return n instanceof RegExp&&(n.multiline||n.global)});return U(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Ge.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[r]}))}s(A$,"findUnsupportedFlags");o(A$,"findUnsupportedFlags");function S$(t){let e=[],r=U(t,i=>Nt(t,(a,l)=>(i.PATTERN.source===l.PATTERN.source&&!ft(e,l)&&l.PATTERN!==ut.NA&&(e.push(l),a.push(l)),a),[]));r=vc(r);let n=Ut(r,i=>i.length>1);return U(n,i=>{let a=U(i,l=>l.name);return{message:`The same RegExp pattern ->${er(i).PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:Ge.DUPLICATE_PATTERNS_FOUND,tokenTypes:i}})}s(S$,"findDuplicatePatterns");o(S$,"findDuplicatePatterns");function k$(t){let e=Ut(t,r=>{if(!B(r,"GROUP"))return!1;let n=r.GROUP;return n!==ut.SKIPPED&&n!==ut.NA&&!yt(n)});return U(e,r=>({message:"Token Type: ->"+r.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Ge.INVALID_GROUP_TYPE_FOUND,tokenTypes:[r]}))}s(k$,"findInvalidGroupType");o(k$,"findInvalidGroupType");function N$(t,e){let r=Ut(t,n=>n.PUSH_MODE!==void 0&&!ft(e,n.PUSH_MODE));return U(r,n=>({message:`Token Type: ->${n.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${n.PUSH_MODE}<-which does not exist`,type:Ge.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[n]}))}s(N$,"findModesThatDoNotExist");o(N$,"findModesThatDoNotExist");function x$(t){let e=[],r=Nt(t,(n,i,a)=>{let l=i.PATTERN;return l===ut.NA||(yt(l)?n.push({str:l,idx:a,tokenType:i}):Or(l)&&I$(l)&&n.push({str:l.source,idx:a,tokenType:i})),n},[]);return H(t,(n,i)=>{H(r,({str:a,idx:l,tokenType:c})=>{if(i<l&&w$(a,n.PATTERN)){let u=`Token: ->${c.name}<- can never be matched.
66
+ Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition.
67
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:Ge.UNREACHABLE_PATTERN,tokenTypes:[n,c]})}})}),e}s(x$,"findUnreachablePatterns");o(x$,"findUnreachablePatterns");function w$(t,e){if(Or(e)){if(P$(e))return!1;let r=e.exec(t);return r!==null&&r.index===0}else{if(Ur(e))return e(t,0,[],{});if(B(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}s(w$,"tryToMatchStrToPattern");o(w$,"tryToMatchStrToPattern");function I$(t){return hl([".","\\","[","]","|","^","$","(",")","?","*","+","{"],e=>t.source.indexOf(e)!==-1)===void 0}s(I$,"noMetaChar");o(I$,"noMetaChar");function P$(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(t.source)}s(P$,"usesLookAheadOrBehind");o(P$,"usesLookAheadOrBehind");function Lp(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}s(Lp,"addStartOfInput");o(Lp,"addStartOfInput");function Op(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}s(Op,"addStickyFlag");o(Op,"addStickyFlag");function _$(t,e,r){let n=[];return B(t,nu)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+nu+`> property in its definition
68
+ `,type:Ge.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),B(t,Oc)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Oc+`> property in its definition
69
+ `,type:Ge.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),B(t,Oc)&&B(t,nu)&&!B(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${nu}: <${t.defaultMode}>which does not exist
70
+ `,type:Ge.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),B(t,Oc)&&H(t.modes,(i,a)=>{H(i,(l,c)=>{if(Mr(l))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${c}>
71
+ `,type:Ge.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(B(l,"LONGER_ALT")){let u=se(l.LONGER_ALT)?l.LONGER_ALT:[l.LONGER_ALT];H(u,p=>{!Mr(p)&&!ft(i,p)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${p.name}> on token <${l.name}> outside of mode <${a}>
72
+ `,type:Ge.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}s(_$,"performRuntimeChecks");o(_$,"performRuntimeChecks");function D$(t,e,r){let n=[],i=!1,a=vc(Xt(Ye(t.modes))),l=vf(a,u=>u[no]===ut.NA),c=Af(r);return e&&H(l,u=>{let p=Ef(u,c);if(p!==!1){let d={message:M$(u,p),type:p.issue,tokenType:u};n.push(d)}else B(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):Tc(c,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found.
73
+ This Lexer has been defined to track line and column information,
74
+ But none of the Token Types can be identified as matching a line terminator.
75
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
76
+ for details.`,type:Ge.NO_LINE_BREAKS_FLAGS}),n}s(D$,"performWarningRuntimeChecks");o(D$,"performWarningRuntimeChecks");function L$(t){let e={},r=St(t);return H(r,n=>{let i=t[n];if(se(i))e[n]=[];else throw Error("non exhaustive match")}),e}s(L$,"cloneEmptyGroups");o(L$,"cloneEmptyGroups");function Cf(t){let e=t.PATTERN;if(Or(e))return!1;if(Ur(e)||B(e,"exec"))return!0;if(yt(e))return!1;throw Error("non exhaustive match")}s(Cf,"isCustomPattern");o(Cf,"isCustomPattern");function O$(t){return yt(t)&&t.length===1?t.charCodeAt(0):!1}s(O$,"isShortPattern");o(O$,"isShortPattern");var uM={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r<e;r++){let n=t.charCodeAt(r);if(n===10)return this.lastIndex=r+1,!0;if(n===13)return t.charCodeAt(r+1)===10?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function Ef(t,e){if(B(t,"LINE_BREAKS"))return!1;if(Or(t.PATTERN)){try{Tc(e,t.PATTERN)}catch(r){return{issue:Ge.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(yt(t.PATTERN))return!1;if(Cf(t))return{issue:Ge.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}s(Ef,"checkLineBreaksIssues");o(Ef,"checkLineBreaksIssues");function M$(t,e){if(e.issue===Ge.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
77
+ The problem is in the <${t.name}> Token Type
78
+ Root cause: ${e.errMsg}.
79
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Ge.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
80
+ The problem is in the <${t.name}> Token Type
81
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}s(M$,"buildLineBreakIssueMessage");o(M$,"buildLineBreakIssueMessage");function Af(t){return U(t,e=>yt(e)?e.charCodeAt(0):e)}s(Af,"getCharCodes");o(Af,"getCharCodes");function Tu(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}s(Tu,"addToMapOfArrays");o(Tu,"addToMapOfArrays");var iu=256,sp=[];function yr(t){return t<iu?t:sp[t]}s(yr,"charCodeToOptimizedIndex");o(yr,"charCodeToOptimizedIndex");function j$(){if(Ae(sp)){sp=new Array(65536);for(let t=0;t<65536;t++)sp[t]=t>255?255+~~(t/255):t}}s(j$,"initCharCodeToOptimizedIndexMap");o(j$,"initCharCodeToOptimizedIndexMap");function po(t,e){let r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}s(po,"tokenStructuredMatcher");o(po,"tokenStructuredMatcher");function gl(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}s(gl,"tokenStructuredMatcherNoCategories");o(gl,"tokenStructuredMatcherNoCategories");var ek=1,ZN={};function fo(t){let e=F$(t);G$(e),q$(e),z$(e),H(e,r=>{r.isParent=r.categoryMatches.length>0})}s(fo,"augmentTokenTypes");o(fo,"augmentTokenTypes");function F$(t){let e=rt(t),r=t,n=!0;for(;n;){r=vc(Xt(U(r,a=>a.CATEGORIES)));let i=gf(r,e);e=e.concat(i),Ae(i)?n=!1:r=i}return e}s(F$,"expandCategories");o(F$,"expandCategories");function G$(t){H(t,e=>{kf(e)||(ZN[ek]=e,e.tokenTypeIdx=ek++),Mp(e)&&!se(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Mp(e)||(e.CATEGORIES=[]),U$(e)||(e.categoryMatches=[]),K$(e)||(e.categoryMatchesMap={})})}s(G$,"assignTokenDefaultProps");o(G$,"assignTokenDefaultProps");function z$(t){H(t,e=>{e.categoryMatches=[],H(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(ZN[n].tokenTypeIdx)})})}s(z$,"assignCategoriesTokensProp");o(z$,"assignCategoriesTokensProp");function q$(t){H(t,e=>{Sf([],e)})}s(q$,"assignCategoriesMapProp");o(q$,"assignCategoriesMapProp");function Sf(t,e){H(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),H(e.CATEGORIES,r=>{let n=t.concat(e);ft(n,r)||Sf(n,r)})}s(Sf,"singleAssignCategoriesToksMap");o(Sf,"singleAssignCategoriesToksMap");function kf(t){return B(t,"tokenTypeIdx")}s(kf,"hasShortKeyProperty");o(kf,"hasShortKeyProperty");function Mp(t){return B(t,"CATEGORIES")}s(Mp,"hasCategoriesProperty");o(Mp,"hasCategoriesProperty");function U$(t){return B(t,"categoryMatches")}s(U$,"hasExtendingTokensTypesProperty");o(U$,"hasExtendingTokensTypesProperty");function K$(t){return B(t,"categoryMatchesMap")}s(K$,"hasExtendingTokensTypesMapProperty");o(K$,"hasExtendingTokensTypesMapProperty");function V$(t){return B(t,"tokenTypeIdx")}s(V$,"isTokenType");o(V$,"isTokenType");var ny={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i,a){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}},Ge;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Ge||(Ge={}));var au={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
82
+ `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:ny,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(au);var Li,ut=(Li=class{constructor(e,r=au){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let l=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${l}--> <${i}>`);let{time:c,value:u}=Rf(a),p=c>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&p(`${l}<-- <${i}> time: ${c}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
83
+ a boolean 2nd argument is no longer supported`);this.config=kt({},au,r);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 i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===au.lineTerminatorsPattern)this.config.lineTerminatorsPattern=uM;else if(this.config.lineTerminatorCharacters===au.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
84
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),se(e)?i={modes:{defaultMode:rt(e)},defaultMode:nu}:(a=!1,i=rt(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(_$(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(D$(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},H(i.modes,(c,u)=>{i.modes[u]=vf(c,p=>Mr(p))});let l=St(i.modes);if(H(i.modes,(c,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(v$(c,l))}),Ae(this.lexerDefinitionErrors)){fo(c);let p;this.TRACE_INIT("analyzeTokenTypes",()=>{p=g$(c,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=p.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=p.charCodeToPatternIdxToConfig,this.emptyGroups=kt({},this.emptyGroups,p.emptyGroups),this.hasCustom=p.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=p.canBeOptimized}})}),this.defaultMode=i.defaultMode,!Ae(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let c=U(this.lexerDefinitionErrors,u=>u.message).join(`-----------------------
85
+ `);throw new Error(`Errors detected in definition of Lexer:
86
+ `+c)}H(this.lexerDefinitionWarning,c=>{Tf(c.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(XN?(this.chopInput=dl,this.match=this.matchWithTest):(this.updateLastIndex=He,this.match=this.matchWithExec),a&&(this.handleModes=He),this.trackStartLines===!1&&(this.computeNewColumn=dl),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=He),/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 c=Nt(this.canModeBeOptimized,(u,p,d)=>(p===!1&&u.push(d),u),[]);if(r.ensureOptimizations&&!Ae(c))throw Error(`Lexer Modes: < ${c.join(", ")} > cannot be optimized.
87
+ Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
88
+ Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{m$()}),this.TRACE_INIT("toFastProperties",()=>{$f(this)})})}tokenize(e,r=this.defaultMode){if(!Ae(this.lexerDefinitionErrors)){let n=U(this.lexerDefinitionErrors,i=>i.message).join(`-----------------------
89
+ `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
90
+ `+n)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,l,c,u,p,d,f,m,g,y,T,A,b,w=e,S=w.length,I=0,K=0,ie=this.hasCustom?0:Math.floor(e.length/10),X=new Array(ie),Te=[],Se=this.trackStartLines?1:void 0,_e=this.trackStartLines?1:void 0,le=L$(this.emptyGroups),Xe=this.trackStartLines,_=this.config.lineTerminatorsPattern,N=0,R=[],k=[],$=[],C=[];Object.freeze(C);let x;function D(){return R}s(D,"getPossiblePatternsSlow"),o(D,"getPossiblePatternsSlow");function M(q){let te=yr(q),de=k[te];return de===void 0?C:de}s(M,"getPossiblePatternsOptimized"),o(M,"getPossiblePatternsOptimized");let L=o(q=>{if($.length===1&&q.tokenType.PUSH_MODE===void 0){let te=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(q);Te.push({offset:q.startOffset,line:q.startLine,column:q.startColumn,length:q.image.length,message:te})}else{$.pop();let te=ro($);R=this.patternIdxToConfig[te],k=this.charCodeToPatternIdxToConfig[te],N=R.length;let de=this.canModeBeOptimized[te]&&this.config.safeMode===!1;k&&de?x=M:x=D}},"pop_mode");function G(q){$.push(q),k=this.charCodeToPatternIdxToConfig[q],R=this.patternIdxToConfig[q],N=R.length,N=R.length;let te=this.canModeBeOptimized[q]&&this.config.safeMode===!1;k&&te?x=M:x=D}s(G,"push_mode"),o(G,"push_mode"),G.call(this,r);let F,re=this.config.recoveryEnabled;for(;I<S;){u=null;let q=w.charCodeAt(I),te=x(q),de=te.length;for(n=0;n<de;n++){F=te[n];let fe=F.pattern;p=null;let me=F.short;if(me!==!1?q===me&&(u=fe):F.isCustom===!0?(b=fe.exec(w,I,X,le),b!==null?(u=b[0],b.payload!==void 0&&(p=b.payload)):u=null):(this.updateLastIndex(fe,I),u=this.match(fe,e,I)),u!==null){if(c=F.longerAlt,c!==void 0){let ye=c.length;for(a=0;a<ye;a++){let ke=R[c[a]],he=ke.pattern;if(d=null,ke.isCustom===!0?(b=he.exec(w,I,X,le),b!==null?(l=b[0],b.payload!==void 0&&(d=b.payload)):l=null):(this.updateLastIndex(he,I),l=this.match(he,e,I)),l&&l.length>u.length){u=l,p=d,F=ke;break}}}break}}if(u!==null){if(f=u.length,m=F.group,m!==void 0&&(g=F.tokenTypeIdx,y=this.createTokenInstance(u,I,g,F.tokenType,Se,_e,f),this.handlePayload(y,p),m===!1?K=this.addToken(X,K,y):le[m].push(y)),e=this.chopInput(e,f),I=I+f,_e=this.computeNewColumn(_e,f),Xe===!0&&F.canLineTerminator===!0){let fe=0,me,ye;_.lastIndex=0;do me=_.test(u),me===!0&&(ye=_.lastIndex-1,fe++);while(me===!0);fe!==0&&(Se=Se+fe,_e=f-ye,this.updateTokenEndLineColumnLocation(y,m,ye,fe,Se,_e,f))}this.handleModes(F,L,G,y)}else{let fe=I,me=Se,ye=_e,ke=re===!1;for(;ke===!1&&I<S;)for(e=this.chopInput(e,1),I++,i=0;i<N;i++){let he=R[i],Z=he.pattern,ze=he.short;if(ze!==!1?w.charCodeAt(I)===ze&&(ke=!0):he.isCustom===!0?ke=Z.exec(w,I,X,le)!==null:(this.updateLastIndex(Z,I),ke=Z.exec(e)!==null),ke===!0)break}if(T=I-fe,_e=this.computeNewColumn(_e,T),A=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(w,fe,T,me,ye,ro($)),Te.push({offset:fe,line:me,column:ye,length:T,message:A}),re===!1)break}}return this.hasCustom||(X.length=K),{tokens:X,groups:le,errors:Te}}handleModes(e,r,n,i){if(e.pop===!0){let a=e.push;r(i),a!==void 0&&n.call(this,a)}else e.push!==void 0&&n.call(this,e.push)}chopInput(e,r){return e.substring(r)}updateLastIndex(e,r){e.lastIndex=r}updateTokenEndLineColumnLocation(e,r,n,i,a,l,c){let u,p;r!==void 0&&(u=n===c-1,p=u?-1:0,i===1&&u===!0||(e.endLine=a+p,e.endColumn=l-1+-p))}computeNewColumn(e,r){return e+r}createOffsetOnlyToken(e,r,n,i){return{image:e,startOffset:r,tokenTypeIdx:n,tokenType:i}}createStartOnlyToken(e,r,n,i,a,l){return{image:e,startOffset:r,startLine:a,startColumn:l,tokenTypeIdx:n,tokenType:i}}createFullToken(e,r,n,i,a,l,c){return{image:e,startOffset:r,endOffset:r+c-1,startLine:a,endLine:a,startColumn:l,endColumn:l+c-1,tokenTypeIdx:n,tokenType:i}}addTokenUsingPush(e,r,n){return e.push(n),r}addTokenUsingMemberAccess(e,r,n){return e[r]=n,r++,r}handlePayloadNoCustom(e,r){}handlePayloadWithCustom(e,r){r!==null&&(e.payload=r)}matchWithTest(e,r,n){return e.test(r)===!0?r.substring(n,e.lastIndex):null}matchWithExec(e,r){let n=e.exec(r);return n!==null?n[0]:null}},s(Li,"Lexer"),o(Li,"Lexer"),Li);ut.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.";ut.NA=/NOT_APPLICABLE/;function nn(t){return Nf(t)?t.LABEL:t.name}s(nn,"tokenLabel2");o(nn,"tokenLabel");function Nf(t){return yt(t.LABEL)&&t.LABEL!==""}s(Nf,"hasTokenLabel2");o(Nf,"hasTokenLabel");var cM="parent",tk="categories",rk="label",nk="group",ik="push_mode",ak="pop_mode",sk="longer_alt",ok="line_breaks",lk="start_chars_hint";function pi(t){return B$(t)}s(pi,"createToken");o(pi,"createToken");function B$(t){let e=t.pattern,r={};if(r.name=t.name,Mr(e)||(r.PATTERN=e),B(t,cM))throw`The parent property is no longer supported.
91
+ See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return B(t,tk)&&(r.CATEGORIES=t[tk]),fo([r]),B(t,rk)&&(r.LABEL=t[rk]),B(t,nk)&&(r.GROUP=t[nk]),B(t,ak)&&(r.POP_MODE=t[ak]),B(t,ik)&&(r.PUSH_MODE=t[ik]),B(t,sk)&&(r.LONGER_ALT=t[sk]),B(t,ok)&&(r.LINE_BREAKS=t[ok]),B(t,lk)&&(r.START_CHARS_HINT=t[lk]),r}s(B$,"createTokenInternal");o(B$,"createTokenInternal");var un=pi({name:"EOF",pattern:ut.NA});fo([un]);function Dl(t,e,r,n,i,a,l,c){return{image:e,startOffset:r,endOffset:n,startLine:i,endLine:a,startColumn:l,endColumn:c,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}s(Dl,"createTokenInstance");o(Dl,"createTokenInstance");function xf(t,e){return po(t,e)}s(xf,"tokenMatcher");o(xf,"tokenMatcher");var tl={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${Nf(t)?`--> ${nn(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=`
92
+ but found: '`+er(e).image+"'";if(n)return a+n+l;{let c=Nt(t,(d,f)=>d.concat(f),[]),u=U(c,d=>`[${U(d,f=>nn(f)).join(", ")}]`),p=`one of these possible Token sequences:
93
+ ${U(u,(d,f)=>` ${f+1}. ${d}`).join(`
94
+ `)}`;return a+p+l}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",a=`
95
+ but found: '`+er(e).image+"'";if(r)return i+r+a;{let l=`expecting at least one iteration which starts with one of these possible Token sequences::
96
+ <${U(t,c=>`[${U(c,u=>nn(u)).join(",")}]`).join(" ,")}>`;return i+l+a}}};Object.freeze(tl);var pM={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
97
+ inside top level rule: ->`+t.name+"<-"}},li={buildDuplicateFoundError(t,e){function r(d){return d instanceof Ie?d.terminalType.name:d instanceof ct?d.nonTerminalName:""}s(r,"getExtraProductionArgument2"),o(r,"getExtraProductionArgument");let n=t.name,i=er(e),a=i.idx,l=Lt(i),c=r(i),u=a>0,p=`->${l}${u?a:""}<- ${c?`with argument: ->${c}<-`:""}
98
+ appears more than once (${e.length} times) in the top level rule: ->${n}<-.
99
+ For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
100
+ `;return p=p.replace(/[ \t]+/g," "),p=p.replace(/\s\s+/g,`
101
+ `),p},buildNamespaceConflictError(t){return`Namespace conflict found in grammar.
102
+ The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>.
103
+ To resolve this make sure each Terminal and Non-Terminal names are unique
104
+ This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
105
+ and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=U(t.prefixPath,n=>nn(n)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix
106
+ in <OR${r}> inside <${t.topLevelRule.name}> Rule,
107
+ <${e}> may appears as a prefix path in all these alternatives.
108
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
109
+ For Further details.`},buildAlternationAmbiguityError(t){let e=U(t.prefixPath,i=>nn(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${r}> inside <${t.topLevelRule.name}> Rule,
110
+ <${e}> may appears as a prefix path in all these alternatives.
111
+ `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
112
+ For Further details.`,n},buildEmptyRepetitionError(t){let e=Lt(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens.
113
+ This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
114
+ Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives:
115
+ <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
116
+ has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=U(t.leftRecursionPath,i=>i.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
117
+ rule: <${e}> can be invoked from itself (directly or indirectly)
118
+ without consuming any Tokens. The grammar path that causes this is:
119
+ ${n}
120
+ To fix this refactor your grammar to remove the left recursion.
121
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof Il?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function W$(t,e){let r=new dM(t,e);return r.resolveRefs(),r.errors}s(W$,"resolveGrammar");o(W$,"resolveGrammar");var Oi,dM=(Oi=class extends Pl{constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){H(Ye(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:pt.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},s(Oi,"GastRefResolverVisitor"),o(Oi,"GastRefResolverVisitor"),Oi),Mi,fM=(Mi=class extends bf{constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=rt(this.path.ruleStack).reverse(),this.occurrenceStack=rt(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){Ae(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},s(Mi,"AbstractNextPossibleTokensWalker"),o(Mi,"AbstractNextPossibleTokensWalker"),Mi),ji,mM=(ji=class extends fM{constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new gt({definition:i});this.possibleTokTypes=co(a),this.found=!0}}},s(ji,"NextAfterTokenWalker"),o(ji,"NextAfterTokenWalker"),ji),Fi,wf=(Fi=class extends bf{constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},s(Fi,"AbstractNextTerminalAfterProductionWalker"),o(Fi,"AbstractNextTerminalAfterProductionWalker"),Fi),Gi,hM=(Gi=class extends wf{walkMany(e,r,n){if(e.idx===this.occurrence){let i=er(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ie&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},s(Gi,"NextTerminalAfterManyWalker"),o(Gi,"NextTerminalAfterManyWalker"),Gi),zi,uk=(zi=class extends wf{walkManySep(e,r,n){if(e.idx===this.occurrence){let i=er(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ie&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},s(zi,"NextTerminalAfterManySepWalker"),o(zi,"NextTerminalAfterManySepWalker"),zi),qi,yM=(qi=class extends wf{walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=er(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ie&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},s(qi,"NextTerminalAfterAtLeastOneWalker"),o(qi,"NextTerminalAfterAtLeastOneWalker"),qi),Ui,ck=(Ui=class extends wf{walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=er(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ie&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}},s(Ui,"NextTerminalAfterAtLeastOneSepWalker"),o(Ui,"NextTerminalAfterAtLeastOneSepWalker"),Ui);function Fu(t,e,r=[]){r=rt(r);let n=[],i=0;function a(c){return c.concat(et(t,i+1))}s(a,"remainingPathWith"),o(a,"remainingPathWith");function l(c){let u=Fu(a(c),e,r);return n.concat(u)}for(s(l,"getAlternativesForProd"),o(l,"getAlternativesForProd");r.length<e&&i<t.length;){let c=t[i];if(c instanceof gt||c instanceof ct)return l(c.definition);if(c instanceof tt)n=l(c.definition);else if(c instanceof wt){let u=c.definition.concat([new Fe({definition:c.definition})]);return l(u)}else if(c instanceof It){let u=[new gt({definition:c.definition}),new Fe({definition:[new Ie({terminalType:c.separator})].concat(c.definition)})];return l(u)}else if(c instanceof vt){let u=c.definition.concat([new Fe({definition:[new Ie({terminalType:c.separator})].concat(c.definition)})]);n=l(u)}else if(c instanceof Fe){let u=c.definition.concat([new Fe({definition:c.definition})]);n=l(u)}else{if(c instanceof Tt)return H(c.definition,u=>{Ae(u.definition)===!1&&(n=l(u.definition))}),n;if(c instanceof Ie)r.push(c.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:et(t,i)}),n}s(Fu,"possiblePathsFrom");o(Fu,"possiblePathsFrom");function If(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],l="EXIT_ALTERNATIVE",c=!1,u=e.length,p=u-n-1,d=[],f=[];for(f.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!Ae(f);){let m=f.pop();if(m===l){c&&ro(f).idx<=p&&f.pop();continue}let g=m.def,y=m.idx,T=m.ruleStack,A=m.occurrenceStack;if(Ae(g))continue;let b=g[0];if(b===i){let w={idx:y,def:et(g),ruleStack:Lu(T),occurrenceStack:Lu(A)};f.push(w)}else if(b instanceof Ie)if(y<u-1){let w=y+1,S=e[w];if(r(S,b.terminalType)){let I={idx:w,def:et(g),ruleStack:T,occurrenceStack:A};f.push(I)}}else if(y===u-1)d.push({nextTokenType:b.terminalType,nextTokenOccurrence:b.idx,ruleStack:T,occurrenceStack:A}),c=!0;else throw Error("non exhaustive match");else if(b instanceof ct){let w=rt(T);w.push(b.nonTerminalName);let S=rt(A);S.push(b.idx);let I={idx:y,def:b.definition.concat(a,et(g)),ruleStack:w,occurrenceStack:S};f.push(I)}else if(b instanceof tt){let w={idx:y,def:et(g),ruleStack:T,occurrenceStack:A};f.push(w),f.push(l);let S={idx:y,def:b.definition.concat(et(g)),ruleStack:T,occurrenceStack:A};f.push(S)}else if(b instanceof wt){let w=new Fe({definition:b.definition,idx:b.idx}),S=b.definition.concat([w],et(g)),I={idx:y,def:S,ruleStack:T,occurrenceStack:A};f.push(I)}else if(b instanceof It){let w=new Ie({terminalType:b.separator}),S=new Fe({definition:[w].concat(b.definition),idx:b.idx}),I=b.definition.concat([S],et(g)),K={idx:y,def:I,ruleStack:T,occurrenceStack:A};f.push(K)}else if(b instanceof vt){let w={idx:y,def:et(g),ruleStack:T,occurrenceStack:A};f.push(w),f.push(l);let S=new Ie({terminalType:b.separator}),I=new Fe({definition:[S].concat(b.definition),idx:b.idx}),K=b.definition.concat([I],et(g)),ie={idx:y,def:K,ruleStack:T,occurrenceStack:A};f.push(ie)}else if(b instanceof Fe){let w={idx:y,def:et(g),ruleStack:T,occurrenceStack:A};f.push(w),f.push(l);let S=new Fe({definition:b.definition,idx:b.idx}),I=b.definition.concat([S],et(g)),K={idx:y,def:I,ruleStack:T,occurrenceStack:A};f.push(K)}else if(b instanceof Tt)for(let w=b.definition.length-1;w>=0;w--){let S=b.definition[w],I={idx:y,def:S.definition.concat(et(g)),ruleStack:T,occurrenceStack:A};f.push(I),f.push(l)}else if(b instanceof gt)f.push({idx:y,def:b.definition.concat(et(g)),ruleStack:T,occurrenceStack:A});else if(b instanceof Il)f.push(H$(b,y,T,A));else throw Error("non exhaustive match")}return d}s(If,"nextPossibleTokensAfter");o(If,"nextPossibleTokensAfter");function H$(t,e,r,n){let i=rt(r);i.push(t.name);let a=rt(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}s(H$,"expandTopLevelRule");o(H$,"expandTopLevelRule");var Le;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(Le||(Le={}));function Rc(t){if(t instanceof tt||t==="Option")return Le.OPTION;if(t instanceof Fe||t==="Repetition")return Le.REPETITION;if(t instanceof wt||t==="RepetitionMandatory")return Le.REPETITION_MANDATORY;if(t instanceof It||t==="RepetitionMandatoryWithSeparator")return Le.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof vt||t==="RepetitionWithSeparator")return Le.REPETITION_WITH_SEPARATOR;if(t instanceof Tt||t==="Alternation")return Le.ALTERNATION;throw Error("non exhaustive match")}s(Rc,"getProdType");o(Rc,"getProdType");function jp(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=Rc(n);return a===Le.ALTERNATION?Ll(e,r,i):Ol(e,r,a,i)}s(jp,"getLookaheadPaths");o(jp,"getLookaheadPaths");function Y$(t,e,r,n,i,a){let l=Ll(t,e,r),c=_f(l)?gl:po;return a(l,n,c,i)}s(Y$,"buildLookaheadFuncForOr");o(Y$,"buildLookaheadFuncForOr");function J$(t,e,r,n,i,a){let l=Ol(t,e,i,r),c=_f(l)?gl:po;return a(l[0],c,n)}s(J$,"buildLookaheadFuncForOptionalProd");o(J$,"buildLookaheadFuncForOptionalProd");function X$(t,e,r,n){let i=t.length,a=Zt(t,l=>Zt(l,c=>c.length===1));if(e)return function(l){let c=U(l,u=>u.GATE);for(let u=0;u<i;u++){let p=t[u],d=p.length,f=c[u];if(!(f!==void 0&&f.call(this)===!1))e:for(let m=0;m<d;m++){let g=p[m],y=g.length;for(let T=0;T<y;T++){let A=this.LA(T+1);if(r(A,g[T])===!1)continue e}return u}}};if(a&&!n){let l=U(t,u=>Xt(u)),c=Nt(l,(u,p,d)=>(H(p,f=>{B(u,f.tokenTypeIdx)||(u[f.tokenTypeIdx]=d),H(f.categoryMatches,m=>{B(u,m)||(u[m]=d)})}),u),{});return function(){let u=this.LA(1);return c[u.tokenTypeIdx]}}else return function(){for(let l=0;l<i;l++){let c=t[l],u=c.length;e:for(let p=0;p<u;p++){let d=c[p],f=d.length;for(let m=0;m<f;m++){let g=this.LA(m+1);if(r(g,d[m])===!1)continue e}return l}}}}s(X$,"buildAlternativesLookAheadFunc");o(X$,"buildAlternativesLookAheadFunc");function Z$(t,e,r){let n=Zt(t,a=>a.length===1),i=t.length;if(n&&!r){let a=Xt(t);if(a.length===1&&Ae(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let l=Nt(a,(c,u,p)=>(c[u.tokenTypeIdx]=!0,H(u.categoryMatches,d=>{c[d]=!0}),c),[]);return function(){let c=this.LA(1);return l[c.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;a<i;a++){let l=t[a],c=l.length;for(let u=0;u<c;u++){let p=this.LA(u+1);if(e(p,l[u])===!1)continue e}return!0}return!1}}s(Z$,"buildSingleAlternativeLookaheadFunction");o(Z$,"buildSingleAlternativeLookaheadFunction");var Ki,gM=(Ki=class extends bf{constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,Le.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,Le.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,Le.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,Le.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,Le.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},s(Ki,"RestDefinitionFinderWalker"),o(Ki,"RestDefinitionFinderWalker"),Ki),Vi,QN=(Vi=class extends Pl{constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,Le.OPTION)}visitRepetition(e){this.checkIsTarget(e,Le.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Le.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Le.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Le.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Le.ALTERNATION)}},s(Vi,"InsideDefinitionFinderVisitor"),o(Vi,"InsideDefinitionFinderVisitor"),Vi);function Fp(t){let e=new Array(t);for(let r=0;r<t;r++)e[r]=[];return e}s(Fp,"initializeArrayOfArrays");o(Fp,"initializeArrayOfArrays");function Ru(t){let e=[""];for(let r=0;r<t.length;r++){let n=t[r],i=[];for(let a=0;a<e.length;a++){let l=e[a];i.push(l+"_"+n.tokenTypeIdx);for(let c=0;c<n.categoryMatches.length;c++){let u="_"+n.categoryMatches[c];i.push(l+u)}}e=i}return e}s(Ru,"pathToHashKeys");o(Ru,"pathToHashKeys");function Q$(t,e,r){for(let n=0;n<t.length;n++){if(n===r)continue;let i=t[n];for(let a=0;a<e.length;a++){let l=e[a];if(i[l]===!0)return!1}}return!0}s(Q$,"isUniquePrefixHash");o(Q$,"isUniquePrefixHash");function Pf(t,e){let r=U(t,l=>Fu([l],1)),n=Fp(r.length),i=U(r,l=>{let c={};return H(l,u=>{let p=Ru(u.partialPath);H(p,d=>{c[d]=!0})}),c}),a=r;for(let l=1;l<=e;l++){let c=a;a=Fp(c.length);for(let u=0;u<c.length;u++){let p=c[u];for(let d=0;d<p.length;d++){let f=p[d].partialPath,m=p[d].suffixDef,g=Ru(f);if(Q$(i,g,u)||Ae(m)||f.length===e){let y=n[u];if(Gu(y,f)===!1){y.push(f);for(let T=0;T<g.length;T++){let A=g[T];i[u][A]=!0}}}else{let y=Fu(m,l+1,f);a[u]=a[u].concat(y),H(y,T=>{let A=Ru(T.partialPath);H(A,b=>{i[u][b]=!0})})}}}}return n}s(Pf,"lookAheadSequenceFromAlternatives");o(Pf,"lookAheadSequenceFromAlternatives");function Ll(t,e,r,n){let i=new QN(t,Le.ALTERNATION,n);return e.accept(i),Pf(i.result,r)}s(Ll,"getLookaheadPathsForOr");o(Ll,"getLookaheadPathsForOr");function Ol(t,e,r,n){let i=new QN(t,r);e.accept(i);let a=i.result,l=new gM(e,t,r).startWalking(),c=new gt({definition:a}),u=new gt({definition:l});return Pf([c,u],n)}s(Ol,"getLookaheadPathsForOptionalProd");o(Ol,"getLookaheadPathsForOptionalProd");function Gu(t,e){e:for(let r=0;r<t.length;r++){let n=t[r];if(n.length===e.length){for(let i=0;i<n.length;i++){let a=e[i],l=n[i];if(!(a===l||l.categoryMatchesMap[a.tokenTypeIdx]!==void 0))continue e}return!0}}return!1}s(Gu,"containsPath");o(Gu,"containsPath");function eb(t,e){return t.length<e.length&&Zt(t,(r,n)=>{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}s(eb,"isStrictPrefixOfPath");o(eb,"isStrictPrefixOfPath");function _f(t){return Zt(t,e=>Zt(e,r=>Zt(r,n=>Ae(n.categoryMatches))))}s(_f,"areTokenCategoriesNotUsed");o(_f,"areTokenCategoriesNotUsed");function tb(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return U(e,r=>Object.assign({type:pt.CUSTOM_LOOKAHEAD_VALIDATION},r))}s(tb,"validateLookahead");o(tb,"validateLookahead");function rb(t,e,r,n){let i=Gt(t,u=>nb(u,r)),a=mb(t,e,r),l=Gt(t,u=>cb(u,r)),c=Gt(t,u=>ab(u,t,n,r));return i.concat(a,l,c)}s(rb,"validateGrammar");o(rb,"validateGrammar");function nb(t,e){let r=new vM;t.accept(r);let n=r.allProductions,i=PO(n,ib),a=tr(i,l=>l.length>1);return U(Ye(a),l=>{let c=er(l),u=e.buildDuplicateFoundError(t,l),p=Lt(c),d={message:u,type:pt.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:p,occurrence:c.idx},f=Df(c);return f&&(d.parameter=f),d})}s(nb,"validateDuplicateProductions");o(nb,"validateDuplicateProductions");function ib(t){return`${Lt(t)}_#_${t.idx}_#_${Df(t)}`}s(ib,"identifyProductionForDuplicates");o(ib,"identifyProductionForDuplicates");function Df(t){return t instanceof Ie?t.terminalType.name:t instanceof ct?t.nonTerminalName:""}s(Df,"getExtraProductionArgument");o(Df,"getExtraProductionArgument");var Bi,vM=(Bi=class extends Pl{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)}},s(Bi,"OccurrenceValidationCollector"),o(Bi,"OccurrenceValidationCollector"),Bi);function ab(t,e,r,n){let i=[];if(Nt(e,(a,l)=>l.name===t.name?a+1:a,0)>1){let a=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:a,type:pt.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}s(ab,"validateRuleDoesNotAlreadyExist");o(ab,"validateRuleDoesNotAlreadyExist");function sb(t,e,r){let n=[],i;return ft(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:pt.INVALID_RULE_OVERRIDE,ruleName:t})),n}s(sb,"validateRuleIsOverridden");o(sb,"validateRuleIsOverridden");function Lf(t,e,r,n=[]){let i=[],a=al(e.definition);if(Ae(a))return[];{let l=t.name;ft(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:pt.LEFT_RECURSION,ruleName:l});let c=gf(a,n.concat([t])),u=Gt(c,p=>{let d=rt(n);return d.push(p),Lf(t,p,r,d)});return i.concat(u)}}s(Lf,"validateNoLeftRecursion");o(Lf,"validateNoLeftRecursion");function al(t){let e=[];if(Ae(t))return e;let r=er(t);if(r instanceof ct)e.push(r.referencedRule);else if(r instanceof gt||r instanceof tt||r instanceof wt||r instanceof It||r instanceof vt||r instanceof Fe)e=e.concat(al(r.definition));else if(r instanceof Tt)e=Xt(U(r.definition,a=>al(a.definition)));else if(!(r instanceof Ie))throw Error("non exhaustive match");let n=yl(r),i=t.length>1;if(n&&i){let a=et(t);return e.concat(al(a))}else return e}s(al,"getFirstNoneTerminal");o(al,"getFirstNoneTerminal");var Wi,ob=(Wi=class extends Pl{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}},s(Wi,"OrCollector"),o(Wi,"OrCollector"),Wi);function lb(t,e){let r=new ob;t.accept(r);let n=r.alternations;return Gt(n,i=>{let a=Lu(i.definition);return Gt(a,(l,c)=>{let u=If([l],[],po,1);return Ae(u)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:i,emptyChoiceIdx:c}),type:pt.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:i.idx,alternative:c+1}]:[]})})}s(lb,"validateEmptyOrAlternative");o(lb,"validateEmptyOrAlternative");function ub(t,e,r){let n=new ob;t.accept(n);let i=n.alternations;return i=vf(i,a=>a.ignoreAmbiguities===!0),Gt(i,a=>{let l=a.idx,c=a.maxLookahead||e,u=Ll(l,t,c,a),p=db(u,a,t,r),d=fb(u,a,t,r);return p.concat(d)})}s(ub,"validateAmbiguousAlternationAlternatives");o(ub,"validateAmbiguousAlternationAlternatives");var Hi,TM=(Hi=class extends Pl{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)}},s(Hi,"RepetitionCollector"),o(Hi,"RepetitionCollector"),Hi);function cb(t,e){let r=new ob;t.accept(r);let n=r.alternations;return Gt(n,i=>i.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:i}),type:pt.TOO_MANY_ALTS,ruleName:t.name,occurrence:i.idx}]:[])}s(cb,"validateTooManyAlts");o(cb,"validateTooManyAlts");function pb(t,e,r){let n=[];return H(t,i=>{let a=new TM;i.accept(a);let l=a.allProductions;H(l,c=>{let u=Rc(c),p=c.maxLookahead||e,d=c.idx,f=Ol(d,i,u,p)[0];if(Ae(Xt(f))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:c});n.push({message:m,type:pt.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}s(pb,"validateSomeNonEmptyLookaheadPath");o(pb,"validateSomeNonEmptyLookaheadPath");function db(t,e,r,n){let i=[],a=Nt(t,(l,c,u)=>(e.definition[u].ignoreAmbiguities===!0||H(c,p=>{let d=[u];H(t,(f,m)=>{u!==m&&Gu(f,p)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!Gu(i,p)&&(i.push(p),l.push({alts:d,path:p}))}),l),[]);return U(a,l=>{let c=U(l.alts,u=>u+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:c,prefixPath:l.path}),type:pt.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}s(db,"checkAlternativesAmbiguities");o(db,"checkAlternativesAmbiguities");function fb(t,e,r,n){let i=Nt(t,(a,l,c)=>{let u=U(l,p=>({idx:c,path:p}));return a.concat(u)},[]);return vc(Gt(i,a=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];let l=a.idx,c=a.path,u=Ut(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx<l&&eb(p.path,c));return U(u,p=>{let d=[p.idx+1,l+1],f=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:d,prefixPath:p.path}),type:pt.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:f,alternatives:d}})}))}s(fb,"checkPrefixAlternativesAmbiguities");o(fb,"checkPrefixAlternativesAmbiguities");function mb(t,e,r){let n=[],i=U(e,a=>a.name);return H(t,a=>{let l=a.name;if(ft(i,l)){let c=r.buildNamespaceConflictError(a);n.push({message:c,type:pt.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:l})}}),n}s(mb,"checkTerminalAndNoneTerminalsNameSpace");o(mb,"checkTerminalAndNoneTerminalsNameSpace");function hb(t){let e=yR(t,{errMsgProvider:pM}),r={};return H(t.rules,n=>{r[n.name]=n}),W$(r,e.errMsgProvider)}s(hb,"resolveGrammar2");o(hb,"resolveGrammar");function yb(t){return t=yR(t,{errMsgProvider:li}),rb(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}s(yb,"validateGrammar2");o(yb,"validateGrammar");var ex="MismatchedTokenException",tx="NoViableAltException",rx="EarlyExitException",nx="NotAllInputParsedException",ix=[ex,tx,rx,nx];Object.freeze(ix);function vl(t){return ft(ix,t.name)}s(vl,"isRecognitionException");o(vl,"isRecognitionException");var Yi,Of=(Yi=class extends Error{constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},s(Yi,"RecognitionException"),o(Yi,"RecognitionException"),Yi),Ji,ax=(Ji=class extends Of{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=ex}},s(Ji,"MismatchedTokenException"),o(Ji,"MismatchedTokenException"),Ji),Xi,RM=(Xi=class extends Of{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=tx}},s(Xi,"NoViableAltException"),o(Xi,"NoViableAltException"),Xi),Zi,$M=(Zi=class extends Of{constructor(e,r){super(e,r),this.name=nx}},s(Zi,"NotAllInputParsedException"),o(Zi,"NotAllInputParsedException"),Zi),Qi,bM=(Qi=class extends Of{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=rx}},s(Qi,"EarlyExitException"),o(Qi,"EarlyExitException"),Qi),_m={},sx="InRuleRecoveryException",ea,CM=(ea=class extends Error{constructor(e){super(e),this.name=sx}},s(ea,"InRuleRecoveryException"),o(ea,"InRuleRecoveryException"),ea),ta,EM=(ta=class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=B(e,"recoveryEnabled")?e.recoveryEnabled:jr.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=gb)}getTokenToInsert(e){let r=Dl(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),l=this.exportLexerState(),c=[],u=!1,p=this.LA(1),d=this.LA(1),f=o(()=>{let m=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:p,previous:m,ruleName:this.getCurrRuleFullName()}),y=new ax(g,p,this.LA(0));y.resyncedTokens=Lu(c),this.SAVE_ERROR(y)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(d,i)){f();return}else if(n.call(this)){f(),e.apply(this,r);return}else this.tokenMatcher(d,a)?u=!0:(d=this.SKIP_TOKEN(),this.addToResyncTokens(d,c));this.importLexerState(l)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new CM("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||Ae(r))return!1;let n=this.LA(1);return hl(r,i=>this.tokenMatcher(n,i))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return ft(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=hl(e,a=>xf(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return _m;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return U(e,(n,i)=>i===0?_m:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=U(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Xt(e)}getFollowSetFromFollowKey(e){if(e===_m)return[un];let r=e.ruleName+e.idxInCallingRule+YN+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,un)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Lu(r)}attemptInRepetitionRecovery(e,r,n,i,a,l,c){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=rt(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return U(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}},s(ta,"Recoverable"),o(ta,"Recoverable"),ta);function gb(t,e,r,n,i,a,l){let c=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[c];if(u===void 0){let m=this.getCurrRuleFullName(),g=this.getGAstProductions()[m];u=new a(g,i).startWalking(),this.firstAfterRepMap[c]=u}let p=u.token,d=u.occurrence,f=u.isEndOfRule;this.RULE_STACK.length===1&&f&&p===void 0&&(p=un,d=1),!(p===void 0||d===void 0)&&this.shouldInRepetitionRecoveryBeTried(p,d,l)&&this.tryInRepetitionRecovery(t,e,r,p)}s(gb,"attemptInRepetitionRecovery");o(gb,"attemptInRepetitionRecovery");var AM=4,En=8,ox=1<<En,lx=2<<En,iy=3<<En,ay=4<<En,sy=5<<En,op=6<<En;function $u(t,e,r){return r|e|t}s($u,"getKeyForAutomaticLookahead");o($u,"getKeyForAutomaticLookahead");var ra,vb=(ra=class{constructor(e){var r;this.maxLookahead=(r=e==null?void 0:e.maxLookahead)!==null&&r!==void 0?r:jr.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(Ae(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return Gt(e,r=>Lf(r,r,li))}validateEmptyOrAlternatives(e){return Gt(e,r=>lb(r,li))}validateAmbiguousAlternationAlternatives(e,r){return Gt(e,n=>ub(n,r,li))}validateSomeNonEmptyLookaheadPath(e,r){return pb(e,r,li)}buildLookaheadForAlternation(e){return Y$(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,X$)}buildLookaheadForOptional(e){return J$(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,Rc(e.prodType),Z$)}},s(ra,"LLkLookaheadStrategy"),o(ra,"LLkLookaheadStrategy"),ra),na,SM=(na=class{initLooksAhead(e){this.dynamicTokensEnabled=B(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:jr.dynamicTokensEnabled,this.maxLookahead=B(e,"maxLookahead")?e.maxLookahead:jr.maxLookahead,this.lookaheadStrategy=B(e,"lookaheadStrategy")?e.lookaheadStrategy:new vb({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){H(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:l,repetitionMandatoryWithSeparator:c,repetitionWithSeparator:u}=Tb(r);H(n,p=>{let d=p.idx===0?"":p.idx;this.TRACE_INIT(`${Lt(p)}${d}`,()=>{let f=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:p.idx,rule:r,maxLookahead:p.maxLookahead||this.maxLookahead,hasPredicates:p.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),m=$u(this.fullRuleNameToShort[r.name],ox,p.idx);this.setLaFuncCache(m,f)})}),H(i,p=>{this.computeLookaheadFunc(r,p.idx,iy,"Repetition",p.maxLookahead,Lt(p))}),H(a,p=>{this.computeLookaheadFunc(r,p.idx,lx,"Option",p.maxLookahead,Lt(p))}),H(l,p=>{this.computeLookaheadFunc(r,p.idx,ay,"RepetitionMandatory",p.maxLookahead,Lt(p))}),H(c,p=>{this.computeLookaheadFunc(r,p.idx,op,"RepetitionMandatoryWithSeparator",p.maxLookahead,Lt(p))}),H(u,p=>{this.computeLookaheadFunc(r,p.idx,sy,"RepetitionWithSeparator",p.maxLookahead,Lt(p))})})})}computeLookaheadFunc(e,r,n,i,a,l){this.TRACE_INIT(`${l}${r===0?"":r}`,()=>{let c=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=$u(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,c)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return $u(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},s(na,"LooksAhead"),o(na,"LooksAhead"),na),ia,kM=(ia=class extends Pl{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)}},s(ia,"DslMethodsCollectorVisitor"),o(ia,"DslMethodsCollectorVisitor"),ia),Mc=new kM;function Tb(t){Mc.reset(),t.accept(Mc);let e=Mc.dslMethods;return Mc.reset(),e}s(Tb,"collectMethods");o(Tb,"collectMethods");function Gp(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}s(Gp,"setNodeLocationOnlyOffset");o(Gp,"setNodeLocationOnlyOffset");function zp(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.startColumn=e.startColumn,t.startLine=e.startLine,t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine)}s(zp,"setNodeLocationFull");o(zp,"setNodeLocationFull");function Rb(t,e,r){t.children[r]===void 0?t.children[r]=[e]:t.children[r].push(e)}s(Rb,"addTerminalToCst");o(Rb,"addTerminalToCst");function $b(t,e,r){t.children[e]===void 0?t.children[e]=[r]:t.children[e].push(r)}s($b,"addNoneTerminalToCst");o($b,"addNoneTerminalToCst");var NM="name";function Mf(t,e){Object.defineProperty(t,NM,{enumerable:!1,configurable:!0,writable:!1,value:e})}s(Mf,"defineNameProp");o(Mf,"defineNameProp");function bb(t,e){let r=St(t),n=r.length;for(let i=0;i<n;i++){let a=r[i],l=t[a],c=l.length;for(let u=0;u<c;u++){let p=l[u];p.tokenTypeIdx===void 0&&this[p.name](p.children,e)}}}s(bb,"defaultVisit");o(bb,"defaultVisit");function Cb(t,e){let r=o(function(){},"derivedConstructor");Mf(r,t+"BaseSemantics");let n={visit:o(function(i,a){if(se(i)&&(i=i[0]),!Mr(i))return this[i.name](i.children,a)},"visit"),validateVisitor:o(function(){let i=Ab(this,e);if(!Ae(i)){let a=U(i,l=>l.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
122
+ ${a.join(`
123
+
124
+ `).replace(/\n/g,`
125
+ `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}s(Cb,"createBaseSemanticVisitorConstructor");o(Cb,"createBaseSemanticVisitorConstructor");function Eb(t,e,r){let n=o(function(){},"derivedConstructor");Mf(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return H(e,a=>{i[a]=bb}),n.prototype=i,n.prototype.constructor=n,n}s(Eb,"createBaseVisitorConstructorWithDefaults");o(Eb,"createBaseVisitorConstructorWithDefaults");var oy;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(oy||(oy={}));function Ab(t,e){return Sb(t,e)}s(Ab,"validateVisitor");o(Ab,"validateVisitor");function Sb(t,e){let r=Ut(e,i=>Ur(t[i])===!1),n=U(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:oy.MISSING_METHOD,methodName:i}));return vc(n)}s(Sb,"validateMissingCstMethods");o(Sb,"validateMissingCstMethods");var aa,xM=(aa=class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=B(e,"nodeLocationTracking")?e.nodeLocationTracking:jr.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=He,this.cstFinallyStateUpdate=He,this.cstPostTerminal=He,this.cstPostNonTerminal=He,this.cstPostRule=He;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=zp,this.setNodeLocationFromNode=zp,this.cstPostRule=He,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=He,this.setNodeLocationFromNode=He,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Gp,this.setNodeLocationFromNode=Gp,this.cstPostRule=He,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=He,this.setNodeLocationFromNode=He,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=He,this.setNodeLocationFromNode=He,this.cstPostRule=He,this.setInitialNodeLocation=He;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Rb(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];$b(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(Mr(this.baseCstVisitorConstructor)){let e=Cb(this.className,St(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(Mr(this.baseCstVisitorWithDefaultsConstructor)){let e=Eb(this.className,St(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},s(aa,"TreeBuilder"),o(aa,"TreeBuilder"),aa),sa,wM=(sa=class{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):Up}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?Up:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},s(sa,"LexerAdapter"),o(sa,"LexerAdapter"),sa),oa,IM=(oa=class{ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=Kp){if(ft(this.definedRulesNames,e)){let a={message:li.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:pt.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(a)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=Kp){let i=sb(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(vl(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return s$(Ye(this.gastProductionsCache))}},s(oa,"RecognizerApi"),o(oa,"RecognizerApi"),oa),la,PM=(la=class{initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=gl,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},B(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
126
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
127
+ For Further details.`);if(se(e)){if(Ae(e))throw Error(`A Token Vocabulary cannot be empty.
128
+ Note that the first argument for the parser constructor
129
+ 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.
130
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
131
+ For Further details.`)}if(se(e))this.tokensMap=Nt(e,(a,l)=>(a[l.name]=l,a),{});else if(B(e,"modes")&&Zt(Xt(Ye(e.modes)),V$)){let a=Xt(Ye(e.modes)),l=n$(a);this.tokensMap=Nt(l,(c,u)=>(c[u.name]=u,c),{})}else if(qt(e))this.tokensMap=rt(e);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=un;let n=B(e,"modes")?Xt(Ye(e.modes)):Ye(e),i=Zt(n,a=>Ae(a.categoryMatches));this.tokenMatcher=i?gl:po,fo(Ye(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
132
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=B(n,"resyncEnabled")?n.resyncEnabled:Kp.resyncEnabled,a=B(n,"recoveryValueFunc")?n.recoveryValueFunc:Kp.recoveryValueFunc,l=this.ruleShortNameIdx<<AM+En;this.ruleShortNameIdx++,this.shortRuleNameToFull[l]=e,this.fullRuleNameToShort[e]=l;let c;return this.outputCst===!0?c=o(s(function(...u){try{this.ruleInvocationStateUpdate(l,e,this.subruleIdx),r.apply(this,u);let p=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(p),p}catch(p){return this.invokeRuleCatch(p,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry2"),"invokeRuleWithTry"):c=o(s(function(...u){try{return this.ruleInvocationStateUpdate(l,e,this.subruleIdx),r.apply(this,u)}catch(p){return this.invokeRuleCatch(p,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),"invokeRuleWithTryCst"),Object.assign(c,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(vl(e)){let l=e;if(a){let c=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(c))if(l.resyncedTokens=this.reSyncTo(c),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,l.partialCstResult=u}throw l}}else{if(i)return this.moveToTerminatedState(),n(e);throw l}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(lx,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let l=e.GATE;if(l!==void 0){let c=i;i=o(()=>l.call(this)&&c.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(ay,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let c=i;i=o(()=>l.call(this)&&c.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let l=this.doSingleRepetition(a);for(;i.call(this)===!0&&l===!0;)l=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,Le.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,ay,e,yM)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(op,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,ck],l,op,e,ck)}else throw this.raiseEarlyExitException(e,Le.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(iy,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let c=r.GATE;if(c!==void 0){let u=i;i=o(()=>c.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let l=!0;for(;i.call(this)===!0&&l===!0;)l=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,iy,e,hM,l)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(sy,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,uk],l,sy,e,uk)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,op,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(ox,r),i=se(e)?e:e.DEF,a=this.getLaFuncFromCache(n).call(this,i);if(a!==void 0)return i[a].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new $M(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw vl(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new ax(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===sx?n:a}}else throw n}saveRecogState(){let e=this.errors,r=rt(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),un)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},s(la,"RecognizerEngine"),o(la,"RecognizerEngine"),la),ua,_M=(ua=class{initErrorHandler(e){this._errors=[],this.errorMessageProvider=B(e,"errorMessageProvider")?e.errorMessageProvider:jr.errorMessageProvider}SAVE_ERROR(e){if(vl(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:rt(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return rt(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=Ol(e,a,r,this.maxLookahead)[0],c=[];for(let p=1;p<=this.maxLookahead;p++)c.push(this.LA(p));let u=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:c,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new bM(u,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=Ll(e,i,this.maxLookahead),l=[];for(let p=1;p<=this.maxLookahead;p++)l.push(this.LA(p));let c=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:l,previous:c,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new RM(u,this.LA(1),c))}},s(ua,"ErrorHandler"),o(ua,"ErrorHandler"),ua),ca,DM=(ca=class{initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(Mr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return If([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=er(e.ruleStack),n=this.getGAstProductions()[r];return new mM(n,e).startWalking()}},s(ca,"ContentAssist"),o(ca,"ContentAssist"),ca),jf={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(jf);var pk=!0,dk=Math.pow(2,En)-1,ux=pi({name:"RECORDING_PHASE_TOKEN",pattern:ut.NA});fo([ux]);var cx=Dl(ux,`This IToken indicates the Parser is in Recording Phase
133
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(cx);var LM={name:`This CSTNode indicates the Parser is in Recording Phase
134
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},pa,OM=(pa=class{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 r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return Up}topLevelRuleRecord(e,r){try{let n=new Il({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
135
+ This error was thrown during the "grammar recording phase" For more info see:
136
+ https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return si.call(this,tt,e,r)}atLeastOneInternalRecord(e,r){si.call(this,wt,r,e)}atLeastOneSepFirstInternalRecord(e,r){si.call(this,It,r,e,pk)}manyInternalRecord(e,r){si.call(this,Fe,r,e)}manySepFirstInternalRecord(e,r){si.call(this,vt,r,e,pk)}orInternalRecord(e,r){return kb.call(this,e,r)}subruleInternalRecord(e,r,n){if(Tl(r),!e||B(e,"ruleName")===!1){let c=new Error(`<SUBRULE${qp(r)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
137
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw c.KNOWN_RECORDER_ERROR=!0,c}let i=ro(this.recordingProdStack),a=e.ruleName,l=new ct({idx:r,nonTerminalName:a,label:n==null?void 0:n.LABEL,referencedRule:void 0});return i.definition.push(l),this.outputCst?LM:jf}consumeInternalRecord(e,r,n){if(Tl(r),!kf(e)){let l=new Error(`<CONSUME${qp(r)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
138
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=ro(this.recordingProdStack),a=new Ie({idx:r,terminalType:e,label:n==null?void 0:n.LABEL});return i.definition.push(a),cx}},s(pa,"GastRecorder"),o(pa,"GastRecorder"),pa);function si(t,e,r,n=!1){Tl(r);let i=ro(this.recordingProdStack),a=Ur(e)?e:e.DEF,l=new t({definition:[],idx:r});return n&&(l.separator=e.SEP),B(e,"MAX_LOOKAHEAD")&&(l.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(l),a.call(this),i.definition.push(l),this.recordingProdStack.pop(),jf}s(si,"recordProd");o(si,"recordProd");function kb(t,e){Tl(e);let r=ro(this.recordingProdStack),n=se(t)===!1,i=n===!1?t:t.DEF,a=new Tt({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});B(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let l=HN(i,c=>Ur(c.GATE));return a.hasPredicates=l,r.definition.push(a),H(i,c=>{let u=new gt({definition:[]});a.definition.push(u),B(c,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=c.IGNORE_AMBIGUITIES:B(c,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),c.ALT.call(this),this.recordingProdStack.pop()}),jf}s(kb,"recordOrProd");o(kb,"recordOrProd");function qp(t){return t===0?"":`${t}`}s(qp,"getIdxSuffix");o(qp,"getIdxSuffix");function Tl(t){if(t<0||t>dk){let e=new Error(`Invalid DSL Method idx value: <${t}>
139
+ Idx value must be a none negative value smaller than ${dk+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}s(Tl,"assertMethodIdxIsValid");o(Tl,"assertMethodIdxIsValid");var da,MM=(da=class{initPerformanceTracer(e){if(B(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=jr.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);let{time:i,value:a}=Rf(r),l=i>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&l(`${n}<-- <${e}> time: ${i}ms`),this.traceInitIndent--,a}else return r()}},s(da,"PerformanceTracer"),o(da,"PerformanceTracer"),da);function Nb(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}s(Nb,"applyMixins");o(Nb,"applyMixins");var Up=Dl(un,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Up);var jr=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:tl,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Kp=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0}),pt;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(pt||(pt={}));function Vp(t=void 0){return function(){return t}}s(Vp,"EMPTY_ALT");o(Vp,"EMPTY_ALT");var an,xb=(an=class{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{$f(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),H(this.definedRulesNames,i=>{let a=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,a)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=hb({rules:Ye(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(Ae(n)&&this.skipValidations===!1){let i=yb({rules:Ye(this.gastProductionsCache),tokenTypes:Ye(this.tokensMap),errMsgProvider:li,grammarName:r}),a=tb({lookaheadStrategy:this.lookaheadStrategy,rules:Ye(this.gastProductionsCache),tokenTypes:Ye(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),Ae(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=d$(Ye(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:Ye(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Ye(this.gastProductionsCache))})),!an.DEFER_DEFINITION_ERRORS_HANDLING&&!Ae(this.definitionErrors))throw e=U(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected:
140
+ ${e.join(`
141
+ -------------------------------
142
+ `)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),B(r,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
143
+ Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
144
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
145
+ For further details.`);this.skipValidations=B(r,"skipValidations")?r.skipValidations:jr.skipValidations}},s(an,"_Parser"),o(an,"Parser"),an);xb.DEFER_DEFINITION_ERRORS_HANDLING=!1;Nb(xb,[EM,SM,xM,wM,PM,IM,_M,DM,OM,MM]);var fa,jM=(fa=class extends xb{constructor(e,r=jr){let n=rt(r);n.outputCst=!1,super(e,n)}},s(fa,"EmbeddedActionsParser"),o(fa,"EmbeddedActionsParser"),fa);function wb(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}s(wb,"arrayMap2");o(wb,"arrayMap");var px=wb;function Ib(){this.__data__=[],this.size=0}s(Ib,"listCacheClear2");o(Ib,"listCacheClear");var FM=Ib;function Pb(t,e){return t===e||t!==t&&e!==e}s(Pb,"eq2");o(Pb,"eq");var dx=Pb;function _b(t,e){for(var r=t.length;r--;)if(dx(t[r][0],e))return r;return-1}s(_b,"assocIndexOf2");o(_b,"assocIndexOf");var Ff=_b,GM=Array.prototype,zM=GM.splice;function Db(t){var e=this.__data__,r=Ff(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():zM.call(e,r,1),--this.size,!0}s(Db,"listCacheDelete2");o(Db,"listCacheDelete");var qM=Db;function Lb(t){var e=this.__data__,r=Ff(e,t);return r<0?void 0:e[r][1]}s(Lb,"listCacheGet2");o(Lb,"listCacheGet");var UM=Lb;function Ob(t){return Ff(this.__data__,t)>-1}s(Ob,"listCacheHas2");o(Ob,"listCacheHas");var KM=Ob;function Mb(t,e){var r=this.__data__,n=Ff(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}s(Mb,"listCacheSet2");o(Mb,"listCacheSet");var VM=Mb;function An(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s(An,"ListCache2");o(An,"ListCache");An.prototype.clear=FM;An.prototype.delete=qM;An.prototype.get=UM;An.prototype.has=KM;An.prototype.set=VM;var Gf=An;function jb(){this.__data__=new Gf,this.size=0}s(jb,"stackClear2");o(jb,"stackClear");var BM=jb;function Fb(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}s(Fb,"stackDelete2");o(Fb,"stackDelete");var WM=Fb;function Gb(t){return this.__data__.get(t)}s(Gb,"stackGet2");o(Gb,"stackGet");var HM=Gb;function zb(t){return this.__data__.has(t)}s(zb,"stackHas2");o(zb,"stackHas");var YM=zb,JM=typeof global=="object"&&global&&global.Object===Object&&global,fx=JM,XM=typeof self=="object"&&self&&self.Object===Object&&self,ZM=fx||XM||Function("return this")(),Kr=ZM,QM=Kr.Symbol,gr=QM,mx=Object.prototype,e1=mx.hasOwnProperty,t1=mx.toString,ql=gr?gr.toStringTag:void 0;function qb(t){var e=e1.call(t,ql),r=t[ql];try{t[ql]=void 0;var n=!0}catch{}var i=t1.call(t);return n&&(e?t[ql]=r:delete t[ql]),i}s(qb,"getRawTag2");o(qb,"getRawTag");var r1=qb,n1=Object.prototype,i1=n1.toString;function Ub(t){return i1.call(t)}s(Ub,"objectToString2");o(Ub,"objectToString");var a1=Ub,s1="[object Null]",o1="[object Undefined]",fk=gr?gr.toStringTag:void 0;function Kb(t){return t==null?t===void 0?o1:s1:fk&&fk in Object(t)?r1(t):a1(t)}s(Kb,"baseGetTag2");o(Kb,"baseGetTag");var Ml=Kb;function Vb(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}s(Vb,"isObject2");o(Vb,"isObject");var Bb=Vb,l1="[object AsyncFunction]",u1="[object Function]",c1="[object GeneratorFunction]",p1="[object Proxy]";function Wb(t){if(!Bb(t))return!1;var e=Ml(t);return e==u1||e==c1||e==l1||e==p1}s(Wb,"isFunction2");o(Wb,"isFunction");var hx=Wb,d1=Kr["__core-js_shared__"],Dm=d1,mk=function(){var t=/[^.]+$/.exec(Dm&&Dm.keys&&Dm.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Hb(t){return!!mk&&mk in t}s(Hb,"isMasked2");o(Hb,"isMasked");var f1=Hb,m1=Function.prototype,h1=m1.toString;function Yb(t){if(t!=null){try{return h1.call(t)}catch{}try{return t+""}catch{}}return""}s(Yb,"toSource2");o(Yb,"toSource");var mo=Yb,y1=/[\\^$.*+?()[\]{}|]/g,g1=/^\[object .+?Constructor\]$/,v1=Function.prototype,T1=Object.prototype,R1=v1.toString,$1=T1.hasOwnProperty,b1=RegExp("^"+R1.call($1).replace(y1,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Jb(t){if(!Bb(t)||f1(t))return!1;var e=hx(t)?b1:g1;return e.test(mo(t))}s(Jb,"baseIsNative2");o(Jb,"baseIsNative");var C1=Jb;function Xb(t,e){return t==null?void 0:t[e]}s(Xb,"getValue2");o(Xb,"getValue");var E1=Xb;function Zb(t,e){var r=E1(t,e);return C1(r)?r:void 0}s(Zb,"getNative2");o(Zb,"getNative");var jl=Zb,A1=jl(Kr,"Map"),zu=A1,S1=jl(Object,"create"),qu=S1;function Qb(){this.__data__=qu?qu(null):{},this.size=0}s(Qb,"hashClear2");o(Qb,"hashClear");var k1=Qb;function eC(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}s(eC,"hashDelete2");o(eC,"hashDelete");var N1=eC,x1="__lodash_hash_undefined__",w1=Object.prototype,I1=w1.hasOwnProperty;function tC(t){var e=this.__data__;if(qu){var r=e[t];return r===x1?void 0:r}return I1.call(e,t)?e[t]:void 0}s(tC,"hashGet2");o(tC,"hashGet");var P1=tC,_1=Object.prototype,D1=_1.hasOwnProperty;function rC(t){var e=this.__data__;return qu?e[t]!==void 0:D1.call(e,t)}s(rC,"hashHas2");o(rC,"hashHas");var L1=rC,O1="__lodash_hash_undefined__";function nC(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=qu&&e===void 0?O1:e,this}s(nC,"hashSet2");o(nC,"hashSet");var M1=nC;function Sn(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s(Sn,"Hash2");o(Sn,"Hash");Sn.prototype.clear=k1;Sn.prototype.delete=N1;Sn.prototype.get=P1;Sn.prototype.has=L1;Sn.prototype.set=M1;var hk=Sn;function iC(){this.size=0,this.__data__={hash:new hk,map:new(zu||Gf),string:new hk}}s(iC,"mapCacheClear2");o(iC,"mapCacheClear");var j1=iC;function aC(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}s(aC,"isKeyable2");o(aC,"isKeyable");var F1=aC;function sC(t,e){var r=t.__data__;return F1(e)?r[typeof e=="string"?"string":"hash"]:r.map}s(sC,"getMapData2");o(sC,"getMapData");var zf=sC;function oC(t){var e=zf(this,t).delete(t);return this.size-=e?1:0,e}s(oC,"mapCacheDelete2");o(oC,"mapCacheDelete");var G1=oC;function lC(t){return zf(this,t).get(t)}s(lC,"mapCacheGet2");o(lC,"mapCacheGet");var z1=lC;function uC(t){return zf(this,t).has(t)}s(uC,"mapCacheHas2");o(uC,"mapCacheHas");var q1=uC;function cC(t,e){var r=zf(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}s(cC,"mapCacheSet2");o(cC,"mapCacheSet");var U1=cC;function kn(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}s(kn,"MapCache2");o(kn,"MapCache");kn.prototype.clear=j1;kn.prototype.delete=G1;kn.prototype.get=z1;kn.prototype.has=q1;kn.prototype.set=U1;var qf=kn,K1=200;function pC(t,e){var r=this.__data__;if(r instanceof Gf){var n=r.__data__;if(!zu||n.length<K1-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new qf(n)}return r.set(t,e),this.size=r.size,this}s(pC,"stackSet2");o(pC,"stackSet");var V1=pC;function Nn(t){var e=this.__data__=new Gf(t);this.size=e.size}s(Nn,"Stack2");o(Nn,"Stack");Nn.prototype.clear=BM;Nn.prototype.delete=WM;Nn.prototype.get=HM;Nn.prototype.has=YM;Nn.prototype.set=V1;var lp=Nn,B1="__lodash_hash_undefined__";function dC(t){return this.__data__.set(t,B1),this}s(dC,"setCacheAdd2");o(dC,"setCacheAdd");var W1=dC;function fC(t){return this.__data__.has(t)}s(fC,"setCacheHas2");o(fC,"setCacheHas");var H1=fC;function Rl(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new qf;++e<r;)this.add(t[e])}s(Rl,"SetCache2");o(Rl,"SetCache");Rl.prototype.add=Rl.prototype.push=W1;Rl.prototype.has=H1;var yx=Rl;function mC(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}s(mC,"arraySome2");o(mC,"arraySome");var Y1=mC;function hC(t,e){return t.has(e)}s(hC,"cacheHas2");o(hC,"cacheHas");var gx=hC,J1=1,X1=2;function yC(t,e,r,n,i,a){var l=r&J1,c=t.length,u=e.length;if(c!=u&&!(l&&u>c))return!1;var p=a.get(t),d=a.get(e);if(p&&d)return p==e&&d==t;var f=-1,m=!0,g=r&X1?new yx:void 0;for(a.set(t,e),a.set(e,t);++f<c;){var y=t[f],T=e[f];if(n)var A=l?n(T,y,f,e,t,a):n(y,T,f,t,e,a);if(A!==void 0){if(A)continue;m=!1;break}if(g){if(!Y1(e,function(b,w){if(!gx(g,w)&&(y===b||i(y,b,r,n,a)))return g.push(w)})){m=!1;break}}else if(!(y===T||i(y,T,r,n,a))){m=!1;break}}return a.delete(t),a.delete(e),m}s(yC,"equalArrays2");o(yC,"equalArrays");var vx=yC,Z1=Kr.Uint8Array,yk=Z1;function gC(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}s(gC,"mapToArray2");o(gC,"mapToArray");var Q1=gC;function vC(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}s(vC,"setToArray2");o(vC,"setToArray");var TC=vC,ej=1,tj=2,rj="[object Boolean]",nj="[object Date]",ij="[object Error]",aj="[object Map]",sj="[object Number]",oj="[object RegExp]",lj="[object Set]",uj="[object String]",cj="[object Symbol]",pj="[object ArrayBuffer]",dj="[object DataView]",gk=gr?gr.prototype:void 0,Lm=gk?gk.valueOf:void 0;function RC(t,e,r,n,i,a,l){switch(r){case dj:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case pj:return!(t.byteLength!=e.byteLength||!a(new yk(t),new yk(e)));case rj:case nj:case sj:return dx(+t,+e);case ij:return t.name==e.name&&t.message==e.message;case oj:case uj:return t==e+"";case aj:var c=Q1;case lj:var u=n&ej;if(c||(c=TC),t.size!=e.size&&!u)return!1;var p=l.get(t);if(p)return p==e;n|=tj,l.set(t,e);var d=vx(c(t),c(e),n,i,a,l);return l.delete(t),d;case cj:if(Lm)return Lm.call(t)==Lm.call(e)}return!1}s(RC,"equalByTag2");o(RC,"equalByTag");var fj=RC;function $C(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}s($C,"arrayPush2");o($C,"arrayPush");var Tx=$C,mj=Array.isArray,dt=mj;function bC(t,e,r){var n=e(t);return dt(t)?n:Tx(n,r(t))}s(bC,"baseGetAllKeys2");o(bC,"baseGetAllKeys");var hj=bC;function CC(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r<n;){var l=t[r];e(l,r,t)&&(a[i++]=l)}return a}s(CC,"arrayFilter2");o(CC,"arrayFilter");var Rx=CC;function EC(){return[]}s(EC,"stubArray2");o(EC,"stubArray");var yj=EC,gj=Object.prototype,vj=gj.propertyIsEnumerable,vk=Object.getOwnPropertySymbols,Tj=vk?function(t){return t==null?[]:(t=Object(t),Rx(vk(t),function(e){return vj.call(t,e)}))}:yj,Rj=Tj;function AC(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}s(AC,"baseTimes2");o(AC,"baseTimes");var $j=AC;function SC(t){return t!=null&&typeof t=="object"}s(SC,"isObjectLike2");o(SC,"isObjectLike");var $l=SC,bj="[object Arguments]";function kC(t){return $l(t)&&Ml(t)==bj}s(kC,"baseIsArguments2");o(kC,"baseIsArguments");var Tk=kC,$x=Object.prototype,Cj=$x.hasOwnProperty,Ej=$x.propertyIsEnumerable,Aj=Tk(function(){return arguments}())?Tk:function(t){return $l(t)&&Cj.call(t,"callee")&&!Ej.call(t,"callee")},Uf=Aj;function NC(){return!1}s(NC,"stubFalse2");o(NC,"stubFalse");var Sj=NC,bx=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Rk=bx&&typeof module=="object"&&module&&!module.nodeType&&module,kj=Rk&&Rk.exports===bx,$k=kj?Kr.Buffer:void 0,Nj=$k?$k.isBuffer:void 0,xj=Nj||Sj,Bp=xj,wj=9007199254740991,Ij=/^(?:0|[1-9]\d*)$/;function xC(t,e){var r=typeof t;return e=e??wj,!!e&&(r=="number"||r!="symbol"&&Ij.test(t))&&t>-1&&t%1==0&&t<e}s(xC,"isIndex2");o(xC,"isIndex");var Cx=xC,Pj=9007199254740991;function wC(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Pj}s(wC,"isLength2");o(wC,"isLength");var IC=wC,_j="[object Arguments]",Dj="[object Array]",Lj="[object Boolean]",Oj="[object Date]",Mj="[object Error]",jj="[object Function]",Fj="[object Map]",Gj="[object Number]",zj="[object Object]",qj="[object RegExp]",Uj="[object Set]",Kj="[object String]",Vj="[object WeakMap]",Bj="[object ArrayBuffer]",Wj="[object DataView]",Hj="[object Float32Array]",Yj="[object Float64Array]",Jj="[object Int8Array]",Xj="[object Int16Array]",Zj="[object Int32Array]",Qj="[object Uint8Array]",eF="[object Uint8ClampedArray]",tF="[object Uint16Array]",rF="[object Uint32Array]",we={};we[Hj]=we[Yj]=we[Jj]=we[Xj]=we[Zj]=we[Qj]=we[eF]=we[tF]=we[rF]=!0;we[_j]=we[Dj]=we[Bj]=we[Lj]=we[Wj]=we[Oj]=we[Mj]=we[jj]=we[Fj]=we[Gj]=we[zj]=we[qj]=we[Uj]=we[Kj]=we[Vj]=!1;function PC(t){return $l(t)&&IC(t.length)&&!!we[Ml(t)]}s(PC,"baseIsTypedArray2");o(PC,"baseIsTypedArray");var nF=PC;function _C(t){return function(e){return t(e)}}s(_C,"baseUnary2");o(_C,"baseUnary");var iF=_C,Ex=typeof exports=="object"&&exports&&!exports.nodeType&&exports,bu=Ex&&typeof module=="object"&&module&&!module.nodeType&&module,aF=bu&&bu.exports===Ex,Om=aF&&fx.process,sF=function(){try{var t=bu&&bu.require&&bu.require("util").types;return t||Om&&Om.binding&&Om.binding("util")}catch{}}(),bk=sF,Ck=bk&&bk.isTypedArray,oF=Ck?iF(Ck):nF,DC=oF,lF=Object.prototype,uF=lF.hasOwnProperty;function LC(t,e){var r=dt(t),n=!r&&Uf(t),i=!r&&!n&&Bp(t),a=!r&&!n&&!i&&DC(t),l=r||n||i||a,c=l?$j(t.length,String):[],u=c.length;for(var p in t)(e||uF.call(t,p))&&!(l&&(p=="length"||i&&(p=="offset"||p=="parent")||a&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||Cx(p,u)))&&c.push(p);return c}s(LC,"arrayLikeKeys2");o(LC,"arrayLikeKeys");var cF=LC,pF=Object.prototype;function OC(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||pF;return t===r}s(OC,"isPrototype2");o(OC,"isPrototype");var Ax=OC;function MC(t,e){return function(r){return t(e(r))}}s(MC,"overArg2");o(MC,"overArg");var dF=MC,fF=dF(Object.keys,Object),mF=fF,hF=Object.prototype,yF=hF.hasOwnProperty;function jC(t){if(!Ax(t))return mF(t);var e=[];for(var r in Object(t))yF.call(t,r)&&r!="constructor"&&e.push(r);return e}s(jC,"baseKeys2");o(jC,"baseKeys");var Sx=jC;function FC(t){return t!=null&&IC(t.length)&&!hx(t)}s(FC,"isArrayLike2");o(FC,"isArrayLike");var Kf=FC;function GC(t){return Kf(t)?cF(t):Sx(t)}s(GC,"keys2");o(GC,"keys");var zC=GC;function qC(t){return hj(t,zC,Rj)}s(qC,"getAllKeys2");o(qC,"getAllKeys");var Ek=qC,gF=1,vF=Object.prototype,TF=vF.hasOwnProperty;function UC(t,e,r,n,i,a){var l=r&gF,c=Ek(t),u=c.length,p=Ek(e),d=p.length;if(u!=d&&!l)return!1;for(var f=u;f--;){var m=c[f];if(!(l?m in e:TF.call(e,m)))return!1}var g=a.get(t),y=a.get(e);if(g&&y)return g==e&&y==t;var T=!0;a.set(t,e),a.set(e,t);for(var A=l;++f<u;){m=c[f];var b=t[m],w=e[m];if(n)var S=l?n(w,b,m,e,t,a):n(b,w,m,t,e,a);if(!(S===void 0?b===w||i(b,w,r,n,a):S)){T=!1;break}A||(A=m=="constructor")}if(T&&!A){var I=t.constructor,K=e.constructor;I!=K&&"constructor"in t&&"constructor"in e&&!(typeof I=="function"&&I instanceof I&&typeof K=="function"&&K instanceof K)&&(T=!1)}return a.delete(t),a.delete(e),T}s(UC,"equalObjects2");o(UC,"equalObjects");var RF=UC,$F=jl(Kr,"DataView"),ly=$F,bF=jl(Kr,"Promise"),uy=bF,CF=jl(Kr,"Set"),sl=CF,EF=jl(Kr,"WeakMap"),cy=EF,Ak="[object Map]",AF="[object Object]",Sk="[object Promise]",kk="[object Set]",Nk="[object WeakMap]",xk="[object DataView]",SF=mo(ly),kF=mo(zu),NF=mo(uy),xF=mo(sl),wF=mo(cy),Kn=Ml;(ly&&Kn(new ly(new ArrayBuffer(1)))!=xk||zu&&Kn(new zu)!=Ak||uy&&Kn(uy.resolve())!=Sk||sl&&Kn(new sl)!=kk||cy&&Kn(new cy)!=Nk)&&(Kn=o(function(t){var e=Ml(t),r=e==AF?t.constructor:void 0,n=r?mo(r):"";if(n)switch(n){case SF:return xk;case kF:return Ak;case NF:return Sk;case xF:return kk;case wF:return Nk}return e},"getTag"));var py=Kn,IF=1,wk="[object Arguments]",Ik="[object Array]",jc="[object Object]",PF=Object.prototype,Pk=PF.hasOwnProperty;function KC(t,e,r,n,i,a){var l=dt(t),c=dt(e),u=l?Ik:py(t),p=c?Ik:py(e);u=u==wk?jc:u,p=p==wk?jc:p;var d=u==jc,f=p==jc,m=u==p;if(m&&Bp(t)){if(!Bp(e))return!1;l=!0,d=!1}if(m&&!d)return a||(a=new lp),l||DC(t)?vx(t,e,r,n,i,a):fj(t,e,u,r,n,i,a);if(!(r&IF)){var g=d&&Pk.call(t,"__wrapped__"),y=f&&Pk.call(e,"__wrapped__");if(g||y){var T=g?t.value():t,A=y?e.value():e;return a||(a=new lp),i(T,A,r,n,a)}}return m?(a||(a=new lp),RF(t,e,r,n,i,a)):!1}s(KC,"baseIsEqualDeep2");o(KC,"baseIsEqualDeep");var _F=KC;function Vf(t,e,r,n,i){return t===e?!0:t==null||e==null||!$l(t)&&!$l(e)?t!==t&&e!==e:_F(t,e,r,n,Vf,i)}s(Vf,"baseIsEqual2");o(Vf,"baseIsEqual");var kx=Vf,DF=1,LF=2;function VC(t,e,r,n){var i=r.length,a=i,l=!n;if(t==null)return!a;for(t=Object(t);i--;){var c=r[i];if(l&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return!1}for(;++i<a;){c=r[i];var u=c[0],p=t[u],d=c[1];if(l&&c[2]){if(p===void 0&&!(u in t))return!1}else{var f=new lp;if(n)var m=n(p,d,u,t,e,f);if(!(m===void 0?kx(d,p,DF|LF,n,f):m))return!1}}return!0}s(VC,"baseIsMatch2");o(VC,"baseIsMatch");var OF=VC;function BC(t){return t===t&&!Bb(t)}s(BC,"isStrictComparable2");o(BC,"isStrictComparable");var Nx=BC;function WC(t){for(var e=zC(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,Nx(i)]}return e}s(WC,"getMatchData2");o(WC,"getMatchData");var MF=WC;function HC(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}s(HC,"matchesStrictComparable2");o(HC,"matchesStrictComparable");var xx=HC;function YC(t){var e=MF(t);return e.length==1&&e[0][2]?xx(e[0][0],e[0][1]):function(r){return r===t||OF(r,t,e)}}s(YC,"baseMatches2");o(YC,"baseMatches");var jF=YC,FF="[object Symbol]";function JC(t){return typeof t=="symbol"||$l(t)&&Ml(t)==FF}s(JC,"isSymbol2");o(JC,"isSymbol");var Bf=JC,GF=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,zF=/^\w*$/;function XC(t,e){if(dt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||Bf(t)?!0:zF.test(t)||!GF.test(t)||e!=null&&t in Object(e)}s(XC,"isKey2");o(XC,"isKey");var ZC=XC,qF="Expected a function";function $c(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(qF);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var l=t.apply(this,n);return r.cache=a.set(i,l)||a,l},"memoized");return r.cache=new($c.Cache||qf),r}s($c,"memoize2");o($c,"memoize");$c.Cache=qf;var UF=$c,KF=500;function QC(t){var e=UF(t,function(n){return r.size===KF&&r.clear(),n}),r=e.cache;return e}s(QC,"memoizeCapped2");o(QC,"memoizeCapped");var VF=QC,BF=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,WF=/\\(\\)?/g,HF=VF(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(BF,function(r,n,i,a){e.push(i?a.replace(WF,"$1"):n||r)}),e}),YF=HF,_k=gr?gr.prototype:void 0,Dk=_k?_k.toString:void 0;function Wf(t){if(typeof t=="string")return t;if(dt(t))return px(t,Wf)+"";if(Bf(t))return Dk?Dk.call(t):"";var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}s(Wf,"baseToString2");o(Wf,"baseToString");var JF=Wf;function eE(t){return t==null?"":JF(t)}s(eE,"toString3");o(eE,"toString");var XF=eE;function tE(t,e){return dt(t)?t:ZC(t,e)?[t]:YF(XF(t))}s(tE,"castPath2");o(tE,"castPath");var wx=tE;function rE(t){if(typeof t=="string"||Bf(t))return t;var e=t+"";return e=="0"&&1/t==-1/0?"-0":e}s(rE,"toKey2");o(rE,"toKey");var Hf=rE;function nE(t,e){e=wx(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[Hf(e[r++])];return r&&r==n?t:void 0}s(nE,"baseGet2");o(nE,"baseGet");var Ix=nE;function iE(t,e,r){var n=t==null?void 0:Ix(t,e);return n===void 0?r:n}s(iE,"get2");o(iE,"get");var ZF=iE;function aE(t,e){return t!=null&&e in Object(t)}s(aE,"baseHasIn2");o(aE,"baseHasIn");var QF=aE;function sE(t,e,r){e=wx(e,t);for(var n=-1,i=e.length,a=!1;++n<i;){var l=Hf(e[n]);if(!(a=t!=null&&r(t,l)))break;t=t[l]}return a||++n!=i?a:(i=t==null?0:t.length,!!i&&IC(i)&&Cx(l,i)&&(dt(t)||Uf(t)))}s(sE,"hasPath2");o(sE,"hasPath");var eG=sE;function oE(t,e){return t!=null&&eG(t,e,QF)}s(oE,"hasIn2");o(oE,"hasIn");var tG=oE,rG=1,nG=2;function lE(t,e){return ZC(t)&&Nx(e)?xx(Hf(t),e):function(r){var n=ZF(r,t);return n===void 0&&n===e?tG(r,t):kx(e,n,rG|nG)}}s(lE,"baseMatchesProperty2");o(lE,"baseMatchesProperty");var iG=lE;function uE(t){return t}s(uE,"identity2");o(uE,"identity");var cE=uE;function pE(t){return function(e){return e==null?void 0:e[t]}}s(pE,"baseProperty2");o(pE,"baseProperty");var aG=pE;function dE(t){return function(e){return Ix(e,t)}}s(dE,"basePropertyDeep2");o(dE,"basePropertyDeep");var sG=dE;function fE(t){return ZC(t)?aG(Hf(t)):sG(t)}s(fE,"property2");o(fE,"property");var oG=fE;function mE(t){return typeof t=="function"?t:t==null?cE:typeof t=="object"?dt(t)?iG(t[0],t[1]):jF(t):oG(t)}s(mE,"baseIteratee2");o(mE,"baseIteratee");var Yf=mE;function hE(t){return function(e,r,n){for(var i=-1,a=Object(e),l=n(e),c=l.length;c--;){var u=l[t?c:++i];if(r(a[u],u,a)===!1)break}return e}}s(hE,"createBaseFor2");o(hE,"createBaseFor");var lG=hE,uG=lG(),cG=uG;function yE(t,e){return t&&cG(t,e,zC)}s(yE,"baseForOwn2");o(yE,"baseForOwn");var pG=yE;function gE(t,e){return function(r,n){if(r==null)return r;if(!Kf(r))return t(r,n);for(var i=r.length,a=e?i:-1,l=Object(r);(e?a--:++a<i)&&n(l[a],a,l)!==!1;);return r}}s(gE,"createBaseEach2");o(gE,"createBaseEach");var dG=gE,fG=dG(pG),Jf=fG;function vE(t,e){var r=-1,n=Kf(t)?Array(t.length):[];return Jf(t,function(i,a,l){n[++r]=e(i,a,l)}),n}s(vE,"baseMap2");o(vE,"baseMap");var mG=vE;function TE(t,e){var r=dt(t)?px:mG;return r(t,Yf(e))}s(TE,"map2");o(TE,"map");var _r=TE;function RE(t,e){var r=[];return Jf(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}s(RE,"baseFilter2");o(RE,"baseFilter");var hG=RE;function $E(t,e){var r=dt(t)?Rx:hG;return r(t,Yf(e))}s($E,"filter2");o($E,"filter");var yG=$E;function cn(t,e,r){return`${t.name}_${e}_${r}`}s(cn,"buildATNKey");o(cn,"buildATNKey");var pn=1,gG=2,Px=4,_x=5,bc=7,vG=8,TG=9,RG=10,$G=11,Dx=12,ma,bE=(ma=class{constructor(e){this.target=e}isEpsilon(){return!1}},s(ma,"AbstractTransition"),o(ma,"AbstractTransition"),ma),ha,CE=(ha=class extends bE{constructor(e,r){super(e),this.tokenType=r}},s(ha,"AtomTransition"),o(ha,"AtomTransition"),ha),ya,Lx=(ya=class extends bE{constructor(e){super(e)}isEpsilon(){return!0}},s(ya,"EpsilonTransition"),o(ya,"EpsilonTransition"),ya),ga,EE=(ga=class extends bE{constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}},s(ga,"RuleTransition"),o(ga,"RuleTransition"),ga);function AE(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};SE(e,t);let r=t.length;for(let n=0;n<r;n++){let i=t[n],a=Vr(e,i,i);a!==void 0&&ME(e,i,a)}return e}s(AE,"createATN");o(AE,"createATN");function SE(t,e){let r=e.length;for(let n=0;n<r;n++){let i=e[n],a=Ve(t,i,void 0,{type:gG}),l=Ve(t,i,void 0,{type:bc});a.stop=l,t.ruleToStartState.set(i,a),t.ruleToStopState.set(i,l)}}s(SE,"createRuleStartAndStopATNStates");o(SE,"createRuleStartAndStopATNStates");function Xf(t,e,r){return r instanceof Ie?Cc(t,e,r.terminalType,r):r instanceof ct?OE(t,e,r):r instanceof Tt?IE(t,e,r):r instanceof tt?PE(t,e,r):r instanceof Fe?kE(t,e,r):r instanceof vt?NE(t,e,r):r instanceof wt?xE(t,e,r):r instanceof It?wE(t,e,r):Vr(t,e,r)}s(Xf,"atom");o(Xf,"atom");function kE(t,e,r){let n=Ve(t,e,r,{type:_x});Cr(t,n);let i=xn(t,e,n,r,Vr(t,e,r));return Qf(t,e,r,i)}s(kE,"repetition");o(kE,"repetition");function NE(t,e,r){let n=Ve(t,e,r,{type:_x});Cr(t,n);let i=xn(t,e,n,r,Vr(t,e,r)),a=Cc(t,e,r.separator,r);return Qf(t,e,r,i,a)}s(NE,"repetitionSep");o(NE,"repetitionSep");function xE(t,e,r){let n=Ve(t,e,r,{type:Px});Cr(t,n);let i=xn(t,e,n,r,Vr(t,e,r));return Zf(t,e,r,i)}s(xE,"repetitionMandatory");o(xE,"repetitionMandatory");function wE(t,e,r){let n=Ve(t,e,r,{type:Px});Cr(t,n);let i=xn(t,e,n,r,Vr(t,e,r)),a=Cc(t,e,r.separator,r);return Zf(t,e,r,i,a)}s(wE,"repetitionMandatorySep");o(wE,"repetitionMandatorySep");function IE(t,e,r){let n=Ve(t,e,r,{type:pn});Cr(t,n);let i=_r(r.definition,a=>Xf(t,e,a));return xn(t,e,n,r,...i)}s(IE,"alternation");o(IE,"alternation");function PE(t,e,r){let n=Ve(t,e,r,{type:pn});Cr(t,n);let i=xn(t,e,n,r,Vr(t,e,r));return _E(t,e,r,i)}s(PE,"option");o(PE,"option");function Vr(t,e,r){let n=yG(_r(r.definition,i=>Xf(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:LE(t,n)}s(Vr,"block");o(Vr,"block");function Zf(t,e,r,n,i){let a=n.left,l=n.right,c=Ve(t,e,r,{type:$G});Cr(t,c);let u=Ve(t,e,r,{type:Dx});return a.loopback=c,u.loopback=c,t.decisionMap[cn(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=c,je(l,c),i===void 0?(je(c,a),je(c,u)):(je(c,u),je(c,i.left),je(i.right,a)),{left:a,right:u}}s(Zf,"plus");o(Zf,"plus");function Qf(t,e,r,n,i){let a=n.left,l=n.right,c=Ve(t,e,r,{type:RG});Cr(t,c);let u=Ve(t,e,r,{type:Dx}),p=Ve(t,e,r,{type:TG});return c.loopback=p,u.loopback=p,je(c,a),je(c,u),je(l,p),i!==void 0?(je(p,u),je(p,i.left),je(i.right,a)):je(p,c),t.decisionMap[cn(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=c,{left:c,right:u}}s(Qf,"star");o(Qf,"star");function _E(t,e,r,n){let i=n.left,a=n.right;return je(i,a),t.decisionMap[cn(e,"Option",r.idx)]=i,n}s(_E,"optional");o(_E,"optional");function Cr(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}s(Cr,"defineDecisionState");o(Cr,"defineDecisionState");function xn(t,e,r,n,...i){let a=Ve(t,e,n,{type:vG,start:r});r.end=a;for(let c of i)c!==void 0?(je(r,c.left),je(c.right,a)):je(r,a);let l={left:r,right:a};return t.decisionMap[cn(e,DE(n),n.idx)]=r,l}s(xn,"makeAlts");o(xn,"makeAlts");function DE(t){if(t instanceof Tt)return"Alternation";if(t instanceof tt)return"Option";if(t instanceof Fe)return"Repetition";if(t instanceof vt)return"RepetitionWithSeparator";if(t instanceof wt)return"RepetitionMandatory";if(t instanceof It)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}s(DE,"getProdType2");o(DE,"getProdType");function LE(t,e){let r=e.length;for(let a=0;a<r-1;a++){let l=e[a],c;l.left.transitions.length===1&&(c=l.left.transitions[0]);let u=c instanceof EE,p=c,d=e[a+1].left;l.left.type===pn&&l.right.type===pn&&c!==void 0&&(u&&p.followState===l.right||c.target===l.right)?(u?p.followState=d:c.target=d,jE(t,l.right)):je(l.right,d)}let n=e[0],i=e[r-1];return{left:n.left,right:i.right}}s(LE,"makeBlock");o(LE,"makeBlock");function Cc(t,e,r,n){let i=Ve(t,e,n,{type:pn}),a=Ve(t,e,n,{type:pn});return Ec(i,new CE(a,r)),{left:i,right:a}}s(Cc,"tokenRef");o(Cc,"tokenRef");function OE(t,e,r){let n=r.referencedRule,i=t.ruleToStartState.get(n),a=Ve(t,e,r,{type:pn}),l=Ve(t,e,r,{type:pn}),c=new EE(i,n,l);return Ec(a,c),{left:a,right:l}}s(OE,"ruleRef");o(OE,"ruleRef");function ME(t,e,r){let n=t.ruleToStartState.get(e);je(n,r.left);let i=t.ruleToStopState.get(e);return je(r.right,i),{left:n,right:i}}s(ME,"buildRuleHandle");o(ME,"buildRuleHandle");function je(t,e){let r=new Lx(e);Ec(t,r)}s(je,"epsilon");o(je,"epsilon");function Ve(t,e,r,n){let i=Object.assign({atn:t,production:r,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:t.states.length},n);return t.states.push(i),i}s(Ve,"newState");o(Ve,"newState");function Ec(t,e){t.transitions.length===0&&(t.epsilonOnlyTransitions=e.isEpsilon()),t.transitions.push(e)}s(Ec,"addTransition");o(Ec,"addTransition");function jE(t,e){t.states.splice(t.states.indexOf(e),1)}s(jE,"removeState");o(jE,"removeState");var Wp={},va,dy=(va=class{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=em(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return _r(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}},s(va,"ATNConfigSet"),o(va,"ATNConfigSet"),va);function em(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}s(em,"getATNConfigKey");o(em,"getATNConfigKey");function FE(t,e,r){for(var n=-1,i=t.length;++n<i;){var a=t[n],l=e(a);if(l!=null&&(c===void 0?l===l&&!Bf(l):r(l,c)))var c=l,u=a}return u}s(FE,"baseExtremum");o(FE,"baseExtremum");var bG=FE;function GE(t,e){return t<e}s(GE,"baseLt");o(GE,"baseLt");var CG=GE;function zE(t){return t&&t.length?bG(t,cE,CG):void 0}s(zE,"min");o(zE,"min");var EG=zE,Lk=gr?gr.isConcatSpreadable:void 0;function qE(t){return dt(t)||Uf(t)||!!(Lk&&t&&t[Lk])}s(qE,"isFlattenable2");o(qE,"isFlattenable");var AG=qE;function tm(t,e,r,n,i){var a=-1,l=t.length;for(r||(r=AG),i||(i=[]);++a<l;){var c=t[a];e>0&&r(c)?e>1?tm(c,e-1,r,n,i):Tx(i,c):n||(i[i.length]=c)}return i}s(tm,"baseFlatten2");o(tm,"baseFlatten");var Ox=tm;function UE(t,e){return Ox(_r(t,e),1)}s(UE,"flatMap2");o(UE,"flatMap");var SG=UE;function KE(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a<i;)if(e(t[a],a,t))return a;return-1}s(KE,"baseFindIndex2");o(KE,"baseFindIndex");var kG=KE;function VE(t){return t!==t}s(VE,"baseIsNaN2");o(VE,"baseIsNaN");var NG=VE;function BE(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}s(BE,"strictIndexOf2");o(BE,"strictIndexOf");var xG=BE;function WE(t,e,r){return e===e?xG(t,e,r):kG(t,NG,r)}s(WE,"baseIndexOf2");o(WE,"baseIndexOf");var wG=WE;function HE(t,e){var r=t==null?0:t.length;return!!r&&wG(t,e,0)>-1}s(HE,"arrayIncludes2");o(HE,"arrayIncludes");var IG=HE;function YE(t,e,r){for(var n=-1,i=t==null?0:t.length;++n<i;)if(r(e,t[n]))return!0;return!1}s(YE,"arrayIncludesWith2");o(YE,"arrayIncludesWith");var PG=YE;function JE(){}s(JE,"noop2");o(JE,"noop");var _G=JE,DG=1/0,LG=sl&&1/TC(new sl([,-0]))[1]==DG?function(t){return new sl(t)}:_G,OG=LG,MG=200;function XE(t,e,r){var n=-1,i=IG,a=t.length,l=!0,c=[],u=c;if(r)l=!1,i=PG;else if(a>=MG){var p=e?null:OG(t);if(p)return TC(p);l=!1,i=gx,u=new yx}else u=e?[]:c;e:for(;++n<a;){var d=t[n],f=e?e(d):d;if(d=r||d!==0?d:0,l&&f===f){for(var m=u.length;m--;)if(u[m]===f)continue e;e&&u.push(f),c.push(d)}else i(u,f,r)||(u!==c&&u.push(f),c.push(d))}return c}s(XE,"baseUniq2");o(XE,"baseUniq");var jG=XE;function ZE(t,e){return t&&t.length?jG(t,Yf(e)):[]}s(ZE,"uniqBy");o(ZE,"uniqBy");var FG=ZE;function QE(t){var e=t==null?0:t.length;return e?Ox(t,1):[]}s(QE,"flatten2");o(QE,"flatten");var GG=QE;function eA(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}s(eA,"arrayEach2");o(eA,"arrayEach");var zG=eA;function tA(t){return typeof t=="function"?t:cE}s(tA,"castFunction2");o(tA,"castFunction");var qG=tA;function rA(t,e){var r=dt(t)?zG:Jf;return r(t,qG(e))}s(rA,"forEach2");o(rA,"forEach");var Mm=rA,UG="[object Map]",KG="[object Set]",VG=Object.prototype,BG=VG.hasOwnProperty;function nA(t){if(t==null)return!0;if(Kf(t)&&(dt(t)||typeof t=="string"||typeof t.splice=="function"||Bp(t)||DC(t)||Uf(t)))return!t.length;var e=py(t);if(e==UG||e==KG)return!t.size;if(Ax(t))return!Sx(t).length;for(var r in t)if(BG.call(t,r))return!1;return!0}s(nA,"isEmpty2");o(nA,"isEmpty");var WG=nA;function iA(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i<a;)r=e(r,t[i],i,t);return r}s(iA,"arrayReduce2");o(iA,"arrayReduce");var HG=iA;function aA(t,e,r,n,i){return i(t,function(a,l,c){r=n?(n=!1,a):e(r,a,l,c)}),r}s(aA,"baseReduce2");o(aA,"baseReduce");var YG=aA;function sA(t,e,r){var n=dt(t)?HG:YG,i=arguments.length<3;return n(t,Yf(e),r,i,Jf)}s(sA,"reduce2");o(sA,"reduce");var Ok=sA;function oA(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}s(oA,"createDFACache");o(oA,"createDFACache");var Ta,Mx=(Ta=class{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;n<r;n++)e+=this.predicates[n]===!0?"1":"0";return e}},s(Ta,"PredicateSet"),o(Ta,"PredicateSet"),Ta),Mk=new Mx,Ra,JG=(Ra=class extends vb{constructor(e){var r;super(),this.logging=(r=e==null?void 0:e.logging)!==null&&r!==void 0?r:n=>console.log(n)}initialize(e){this.atn=AE(e.rules),this.dfas=lA(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,l=this.dfas,c=this.logging,u=cn(n,"Alternation",r),p=this.atn.decisionMap[u].decision,d=_r(jp({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),f=>_r(f,m=>m[0]));if(Hp(d,!1)&&!a){let f=Ok(d,(m,g,y)=>(Mm(g,T=>{T&&(m[T.tokenTypeIdx]=y,Mm(T.categoryMatches,A=>{m[A]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),T=f[y.tokenTypeIdx];if(m!==void 0&&T!==void 0){let A=(g=m[T])===null||g===void 0?void 0:g.GATE;if(A!==void 0&&A.call(this)===!1)return}return T}:function(){let m=this.LA(1);return f[m.tokenTypeIdx]}}else return i?function(f){let m=new Mx,g=f===void 0?0:f.length;for(let T=0;T<g;T++){let A=f==null?void 0:f[T].GATE;m.set(T,A===void 0||A.call(this))}let y=Cu.call(this,l,p,m,c);return typeof y=="number"?y:void 0}:function(){let f=Cu.call(this,l,p,Mk,c);return typeof f=="number"?f:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:r,rule:n,prodType:i,dynamicTokensEnabled:a}=e,l=this.dfas,c=this.logging,u=cn(n,i,r),p=this.atn.decisionMap[u].decision,d=_r(jp({maxLookahead:1,occurrence:r,prodType:i,rule:n}),f=>_r(f,m=>m[0]));if(Hp(d)&&d[0][0]&&!a){let f=d[0],m=GG(f);if(m.length===1&&WG(m[0].categoryMatches)){let g=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===g}}else{let g=Ok(m,(y,T)=>(T!==void 0&&(y[T.tokenTypeIdx]=!0,Mm(T.categoryMatches,A=>{y[A]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let f=Cu.call(this,l,p,Mk,c);return typeof f=="object"?!1:f===0}}},s(Ra,"LLStarLookaheadStrategy"),o(Ra,"LLStarLookaheadStrategy"),Ra);function Hp(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let l=[a.tokenTypeIdx].concat(a.categoryMatches);for(let c of l)if(r.has(c)){if(!i.has(c))return!1}else r.add(c),i.add(c)}}return!0}s(Hp,"isLL1Sequence");o(Hp,"isLL1Sequence");function lA(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;n<e;n++)r[n]=oA(t.decisionStates[n],n);return r}s(lA,"initATNSimulator");o(lA,"initATNSimulator");function Cu(t,e,r,n){let i=t[e](r),a=i.start;if(a===void 0){let l=TA(i.atnStartState);a=nm(i,rm(l)),i.start=a}return uA.apply(this,[i,a,r,n])}s(Cu,"adaptivePredict");o(Cu,"adaptivePredict");function uA(t,e,r,n){let i=e,a=1,l=[],c=this.LA(a++);for(;;){let u=hA(i,c);if(u===void 0&&(u=cA.apply(this,[t,i,c,a,r,n])),u===Wp)return mA(l,i,c);if(u.isAcceptState===!0)return u.prediction;i=u,l.push(c),c=this.LA(a++)}}s(uA,"performLookahead");o(uA,"performLookahead");function cA(t,e,r,n,i,a){let l=yA(e.configs,r,i);if(l.size===0)return Yp(t,e,r,Wp),Wp;let c=rm(l),u=vA(l,i);if(u!==void 0)c.isAcceptState=!0,c.prediction=u,c.configs.uniqueAlt=u;else if(CA(l)){let p=EG(l.alts);c.isAcceptState=!0,c.prediction=p,c.configs.uniqueAlt=p,pA.apply(this,[t,n,l.alts,a])}return c=Yp(t,e,r,c),c}s(cA,"computeLookaheadTarget");o(cA,"computeLookaheadTarget");function pA(t,e,r,n){let i=[];for(let p=1;p<=e;p++)i.push(this.LA(p).tokenType);let a=t.atnStartState,l=a.rule,c=a.production,u=dA({topLevelRule:l,ambiguityIndices:r,production:c,prefixPath:i});n(u)}s(pA,"reportLookaheadAmbiguity");o(pA,"reportLookaheadAmbiguity");function dA(t){let e=_r(t.prefixPath,i=>nn(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${fA(t.production)}${r}> inside <${t.topLevelRule.name}> Rule,
146
+ <${e}> may appears as a prefix path in all these alternatives.
147
+ `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
148
+ For Further details.`,n}s(dA,"buildAmbiguityError");o(dA,"buildAmbiguityError");function fA(t){if(t instanceof ct)return"SUBRULE";if(t instanceof tt)return"OPTION";if(t instanceof Tt)return"OR";if(t instanceof wt)return"AT_LEAST_ONE";if(t instanceof It)return"AT_LEAST_ONE_SEP";if(t instanceof vt)return"MANY_SEP";if(t instanceof Fe)return"MANY";if(t instanceof Ie)return"CONSUME";throw Error("non exhaustive match")}s(fA,"getProductionDslName2");o(fA,"getProductionDslName");function mA(t,e,r){let n=SG(e.configs.elements,a=>a.state.transitions),i=FG(n.filter(a=>a instanceof CE).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}s(mA,"buildAdaptivePredictError");o(mA,"buildAdaptivePredictError");function hA(t,e){return t.edges[e.tokenTypeIdx]}s(hA,"getExistingTargetState");o(hA,"getExistingTargetState");function yA(t,e,r){let n=new dy,i=[];for(let l of t.elements){if(r.is(l.alt)===!1)continue;if(l.state.type===bc){i.push(l);continue}let c=l.state.transitions.length;for(let u=0;u<c;u++){let p=l.state.transitions[u],d=gA(p,e);d!==void 0&&n.add({state:d,alt:l.alt,stack:l.stack})}}let a;if(i.length===0&&n.size===1&&(a=n),a===void 0){a=new dy;for(let l of n.elements)bl(l,a)}if(i.length>0&&!$A(a))for(let l of i)a.add(l);return a}s(yA,"computeReachSet");o(yA,"computeReachSet");function gA(t,e){if(t instanceof CE&&xf(e,t.tokenType))return t.target}s(gA,"getReachableTarget");o(gA,"getReachableTarget");function vA(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}s(vA,"getUniqueAlt");o(vA,"getUniqueAlt");function rm(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}s(rm,"newDFAState");o(rm,"newDFAState");function Yp(t,e,r,n){return n=nm(t,n),e.edges[r.tokenTypeIdx]=n,n}s(Yp,"addDFAEdge");o(Yp,"addDFAEdge");function nm(t,e){if(e===Wp)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}s(nm,"addDFAState");o(nm,"addDFAState");function TA(t){let e=new dy,r=t.transitions.length;for(let n=0;n<r;n++){let i={state:t.transitions[n].target,alt:n,stack:[]};bl(i,e)}return e}s(TA,"computeStartState");o(TA,"computeStartState");function bl(t,e){let r=t.state;if(r.type===bc){if(t.stack.length>0){let i=[...t.stack],a={state:i.pop(),alt:t.alt,stack:i};bl(a,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i<n;i++){let a=r.transitions[i],l=RA(t,a);l!==void 0&&bl(l,e)}}s(bl,"closure");o(bl,"closure");function RA(t,e){if(e instanceof Lx)return{state:e.target,alt:t.alt,stack:t.stack};if(e instanceof EE){let r=[...t.stack,e.followState];return{state:e.target,alt:t.alt,stack:r}}}s(RA,"getEpsilonTarget");o(RA,"getEpsilonTarget");function $A(t){for(let e of t.elements)if(e.state.type===bc)return!0;return!1}s($A,"hasConfigInRuleStopState");o($A,"hasConfigInRuleStopState");function bA(t){for(let e of t.elements)if(e.state.type!==bc)return!1;return!0}s(bA,"allConfigsInRuleStopStates");o(bA,"allConfigsInRuleStopStates");function CA(t){if(bA(t))return!0;let e=EA(t.elements);return AA(e)&&!SA(e)}s(CA,"hasConflictTerminatingPrediction");o(CA,"hasConflictTerminatingPrediction");function EA(t){let e=new Map;for(let r of t){let n=em(r,!1),i=e.get(n);i===void 0&&(i={},e.set(n,i)),i[r.alt]=!0}return e}s(EA,"getConflictingAltSets");o(EA,"getConflictingAltSets");function AA(t){for(let e of Array.from(t.values()))if(Object.keys(e).length>1)return!0;return!1}s(AA,"hasConflictingAltSet");o(AA,"hasConflictingAltSet");function SA(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}s(SA,"hasStateAssociatedWithOneAlt");o(SA,"hasStateAssociatedWithOneAlt");Hu();var $a,jx=($a=class{constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new NA(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new im;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new Jp(e.startOffset,e.image.length,pl(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let a of e){let l=new Jp(a.startOffset,a.image.length,pl(a),a.tokenType,!0);l.root=this.rootNode,r.push(l)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let a=n.container.content.indexOf(n);if(a>0){n.container.content.splice(a,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&!e.$infix&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();(n==null?void 0:n.content.length)===0&&this.removeNode(n)}},s($a,"CstNodeBuilder"),o($a,"CstNodeBuilder"),$a),ba,kA=(ba=class{get hidden(){return!1}get astNode(){var r,n;let e=typeof((r=this._astNode)==null?void 0:r.$type)=="string"?this._astNode:(n=this.container)==null?void 0:n.astNode;if(!e)throw new Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},s(ba,"AbstractCstNode"),o(ba,"AbstractCstNode"),ba),Ca,Jp=(Ca=class extends kA{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,a=!1){super(),this._hidden=a,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},s(Ca,"LeafCstNodeImpl"),o(Ca,"LeafCstNodeImpl"),Ca),Ea,im=(Ea=class extends kA{constructor(){super(...arguments),this.content=new XG(this)}get offset(){var e;return((e=this.firstNonHiddenNode)==null?void 0:e.offset)??0}get length(){return this.end-this.offset}get end(){var e;return((e=this.lastNonHiddenNode)==null?void 0:e.end)??0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line<n.start.line?n.start:i.end}}return this._rangeCache}else return{start:oe.create(0,0),end:oe.create(0,0)}}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 r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},s(Ea,"CompositeCstNodeImpl"),o(Ea,"CompositeCstNodeImpl"),Ea),sn,XG=(sn=class extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,sn.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},s(sn,"_CstNodeContainer"),o(sn,"CstNodeContainer"),sn),Aa,NA=(Aa=class extends im{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},s(Aa,"RootCstNodeImpl"),o(Aa,"RootCstNodeImpl"),Aa),Xp=Symbol("Datatype");function Eu(t){return t.$type===Xp}s(Eu,"isDataTypeNode");o(Eu,"isDataTypeNode");var jk="​",Fx=o(t=>t.endsWith(jk)?t:t+jk,"withRuleSuffix"),Sa,xA=(Sa=class{constructor(e){var i;this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";(i=e.shared.profilers.LangiumProfiler)!=null&&i.isActive("parsing")?this.wrapper=new QG(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new Ux(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider})}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},s(Sa,"AbstractLangiumParser"),o(Sa,"AbstractLangiumParser"),Sa),ka,Gx=(ka=class extends xA{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new jx,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,r){let n=this.computeRuleType(e),i;Qs(e)&&(i=e.name,this.registerPrecedenceMap(e));let a=this.wrapper.DEFINE_RULE(Fx(e.name),this.startImplementation(n,i,r).bind(this));return this.allRules.set(e.name,a),it(e)&&e.entry&&(this.mainRule=a),a}registerPrecedenceMap(e){let r=e.name,n=new Map;for(let i=0;i<e.operators.precedences.length;i++){let a=e.operators.precedences[i];for(let l of a.operators)n.set(l.value,{precedence:i,rightAssoc:a.associativity==="right"})}this.operatorPrecedence.set(r,n)}computeRuleType(e){return Qs(e)?on(e):e.fragment?void 0:Nl(e)?Xp:on(e)}parse(e,r={}){this.nodeBuilder.buildRootNode(e);let n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;let i=r.rule?this.allRules.get(r.rule):this.mainRule;if(!i)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");let a=this.doParse(i);return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,Xs(a,{deep:!0}),{value:a,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}doParse(e){let r=this.wrapper.rule(e);if(this.stack.length>0&&(r=this.construct()),r===void 0)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return r}startImplementation(e,r,n){return i=>{let a=!this.isRecording()&&e!==void 0;if(a){let l={$type:e};this.stack.push(l),e===Xp?l.value="":r!==void 0&&(l.$infixName=r)}return n(i),a?this.construct():void 0}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;i<r.length;i++)if(r[i].startOffset>n)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(a);let l=this.nodeBuilder.buildLeafNode(i,n),{assignment:c,crossRef:u}=this.getAssignment(n),p=this.current;if(c){let d=mr(n)?i.image:this.converter.convert(i.image,l);this.assign(c.operator,c.feature,d,l,u)}else if(Eu(p)){let d=i.image;mr(n)||(d=this.converter.convert(d,l).toString()),p.value+=d}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,a){let l;!this.isRecording()&&!n&&(l=this.nodeBuilder.buildCompositeNode(i));let c;try{c=this.wrapper.wrapSubrule(e,r,a)}finally{this.isRecording()||(c===void 0&&!n&&(c=this.construct()),c!==void 0&&l&&l.length>0&&this.performSubruleAssignment(c,i,l))}}performSubruleAssignment(e,r,n){let{assignment:i,crossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let l=this.current;if(Eu(l))l.value+=e.toString();else if(typeof e=="object"&&e){let c=this.assignWithoutOverride(e,l);this.stack.pop(),this.stack.push(c)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let i={$type:e};this.stack.push(i),this.assign(r.operator,r.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)):Eu(e)?this.converter.convert(e.value,e.$cstNode):(ud(this.astReflection,e),e)}constructInfix(e,r){let n=e.parts;if(!Array.isArray(n)||n.length===0)return;let i=e.operators;if(!Array.isArray(i)||n.length<2)return n[0];let a=0,l=-1;for(let T=0;T<i.length;T++){let A=i[T],b=r.get(A)??{precedence:1/0,rightAssoc:!1};b.precedence>l?(l=b.precedence,a=T):b.precedence===l&&(b.rightAssoc||(a=T))}let c=i.slice(0,a),u=i.slice(a+1),p=n.slice(0,a+1),d=n.slice(a+1),f={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:p,operators:c},m={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:d,operators:u},g=this.constructInfix(f,r),y=this.constructInfix(m,r);return{$type:e.$type,$cstNode:e.$cstNode,left:g,operator:i[a],right:y}}getAssignment(e){if(!this.assignmentMap.has(e)){let r=mn(e,fr);this.assignmentMap.set(e,{assignment:r,crossRef:r&&yn(r.terminal)?r.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let l=this.current,c;switch(a==="single"&&typeof n=="string"?c=this.linker.buildReference(l,r,i,n):a==="multi"&&typeof n=="string"?c=this.linker.buildMultiReference(l,r,i,n):c=n,e){case"=":{l[r]=c;break}case"?=":{l[r]=!0;break}case"+=":Array.isArray(l[r])||(l[r]=[]),l[r].push(c)}}assignWithoutOverride(e,r){for(let[i,a]of Object.entries(r)){let l=e[i];l===void 0?e[i]=a:Array.isArray(l)&&Array.isArray(a)&&(a.push(...l),e[i]=a)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},s(ka,"LangiumParser"),o(ka,"LangiumParser"),ka),Na,zx=(Na=class{buildMismatchTokenMessage(e){return tl.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return tl.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return tl.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return tl.buildEarlyExitMessage(e)}},s(Na,"AbstractParserErrorMessageProvider"),o(Na,"AbstractParserErrorMessageProvider"),Na),xa,wA=(xa=class extends zx{buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},s(xa,"LangiumParserErrorMessageProvider"),o(xa,"LangiumParserErrorMessageProvider"),xa),wa,qx=(wa=class extends xA{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(Fx(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}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,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,a){this.before(i),this.wrapper.wrapSubrule(e,r,a),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},s(wa,"LangiumCompletionParser"),o(wa,"LangiumCompletionParser"),wa),ZG={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new wA},Ia,Ux=(Ia=class extends jM{constructor(e,r){let n=r&&"maxLookahead"in r;super(e,{...ZG,lookaheadStrategy:n?new vb({maxLookahead:r.maxLookahead}):new JG({logging:r.skipValidations?()=>{}:void 0}),...r})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r,n){return this.RULE(e,r,n)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r,void 0)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}rule(e){return e.call(this,{})}},s(Ia,"ChevrotainWrapper"),o(Ia,"ChevrotainWrapper"),Ia),Pa,QG=(Pa=class extends Ux{constructor(e,r,n){super(e,r),this.task=n}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,r,n){this.task.startSubTask(this.ruleName(r));try{return super.subrule(e,r,n)}finally{this.task.stopSubTask(this.ruleName(r))}}},s(Pa,"ProfilerWrapper"),o(Pa,"ProfilerWrapper"),Pa);function Ac(t,e,r){return IA({parser:e,tokens:r,ruleNames:new Map},t),e}s(Ac,"createParser");o(Ac,"createParser");function IA(t,e){let r=ac(e,!1),n=ce(e.rules).filter(it).filter(a=>r.has(a));for(let a of n){let l={...t,consume:1,optional:1,subrule:1,many:1,or:1};t.parser.rule(a,Fr(l,a.definition))}let i=ce(e.rules).filter(Qs).filter(a=>r.has(a));for(let a of i)t.parser.rule(a,PA(t,a))}s(IA,"buildRules");o(IA,"buildRules");function PA(t,e){let r=e.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(xt(r))throw new Error("Cannot use terminal rule in infix expression");let n=e.operators.precedences.flatMap(f=>f.operators),i={$type:"Group",elements:[]},a={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},l={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(a,l);let c={$container:l,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},u={...a,$container:l};l.elements.push(c,u);let p=n.map(f=>t.tokens[f.value]).map((f,m)=>({ALT:o(()=>t.parser.consume(m,f,c),"ALT")})),d;return f=>{d??(d=Sc(t,r)),t.parser.subrule(0,d,!1,a,f),t.parser.many(0,{DEF:o(()=>{t.parser.alternatives(0,p),t.parser.subrule(1,d,!1,u,f)},"DEF")})}}s(PA,"buildInfixRule");o(PA,"buildInfixRule");function Fr(t,e,r=!1){let n;if(mr(e))n=FA(t,e);else if(Lr(e))n=_A(t,e);else if(fr(e))n=Fr(t,e.terminal);else if(yn(e))n=am(t,e);else if(hr(e))n=DA(t,e);else if(Zu(e))n=OA(t,e);else if(rc(e))n=MA(t,e);else if(gn(e))n=jA(t,e);else if(yd(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,un,e),"method")}else throw new Od(e.$cstNode,`Unexpected element type: ${e.$type}`);return sm(t,r?void 0:Cl(e),n,e.cardinality)}s(Fr,"buildElement");o(Fr,"buildElement");function _A(t,e){let r=on(e);return()=>t.parser.action(r,e)}s(_A,"buildAction");o(_A,"buildAction");function DA(t,e){let r=e.rule.ref;if(hn(r)){let n=t.subrule++,i=it(r)&&r.fragment,a=e.arguments.length>0?LA(r,e.arguments):()=>({}),l;return c=>{l??(l=Sc(t,r)),t.parser.subrule(n,l,i,e,a(c))}}else if(xt(r)){let n=t.consume++,i=Uu(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)qr();else throw new Od(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}s(DA,"buildRuleCall");o(DA,"buildRuleCall");function LA(t,e){if(e.some(r=>r.calledByName)){let r=e.map(n=>{var i,a;return{parameterName:(a=(i=n.parameter)==null?void 0:i.ref)==null?void 0:a.name,predicate:Ot(n.value)}});return n=>{let i={};for(let{parameterName:a,predicate:l}of r)a&&(i[a]=l(n));return i}}else{let r=e.map(n=>Ot(n.value));return n=>{let i={};for(let a=0;a<r.length;a++)if(a<t.parameters.length){let l=t.parameters[a].name,c=r[a];i[l]=c(n)}return i}}}s(LA,"buildRuleCallPredicate");o(LA,"buildRuleCallPredicate");function Ot(t){if(hd(t)){let e=Ot(t.left),r=Ot(t.right);return n=>e(n)||r(n)}else if(md(t)){let e=Ot(t.left),r=Ot(t.right);return n=>e(n)&&r(n)}else if(Td(t)){let e=Ot(t.value);return r=>!e(r)}else if(Rd(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(dd(t)){let e=!!t.true;return()=>e}qr()}s(Ot,"buildPredicate");o(Ot,"buildPredicate");function OA(t,e){if(e.elements.length===1)return Fr(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:Fr(t,i,!0)},l=Cl(i);l&&(a.GATE=Ot(l)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let l={ALT:o(()=>a.ALT(i),"ALT")},c=a.GATE;return c&&(l.GATE=()=>c(i)),l}))}}s(OA,"buildAlternatives");o(OA,"buildAlternatives");function MA(t,e){if(e.elements.length===1)return Fr(t,e.elements[0]);let r=[];for(let c of e.elements){let u={ALT:Fr(t,c,!0)},p=Cl(c);p&&(u.GATE=Ot(p)),r.push(u)}let n=t.or++,i=o((c,u)=>{let p=u.getRuleStack().join("-");return`uGroup_${c}_${p}`},"idFunc"),a=o(c=>t.parser.alternatives(n,r.map((u,p)=>{let d={ALT:o(()=>!0,"ALT")},f=t.parser;d.ALT=()=>{if(u.ALT(c),!f.isRecording()){let g=i(n,f);f.unorderedGroups.get(g)||f.unorderedGroups.set(g,[]);let y=f.unorderedGroups.get(g);typeof(y==null?void 0:y[p])>"u"&&(y[p]=!0)}};let m=u.GATE;return m?d.GATE=()=>m(c):d.GATE=()=>{var g;return!((g=f.unorderedGroups.get(i(n,f)))!=null&&g[p])},d})),"alternatives"),l=sm(t,Cl(e),a,"*");return c=>{l(c),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}s(MA,"buildUnorderedGroup");o(MA,"buildUnorderedGroup");function jA(t,e){let r=e.elements.map(n=>Fr(t,n));return n=>r.forEach(i=>i(n))}s(jA,"buildGroup");o(jA,"buildGroup");function Cl(t){if(gn(t))return t.guardCondition}s(Cl,"getGuardCondition");o(Cl,"getGuardCondition");function am(t,e,r=e.terminal){var n;if(r)if(hr(r)&&it(r.rule.ref)){let i=r.rule.ref,a=t.subrule++,l;return c=>{l??(l=Sc(t,i)),t.parser.subrule(a,l,!1,e,c)}}else if(hr(r)&&xt(r.rule.ref)){let i=t.consume++,a=Uu(t,r.rule.ref.name);return()=>t.parser.consume(i,a,e)}else if(mr(r)){let i=t.consume++,a=Uu(t,r.value);return()=>t.parser.consume(i,a,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let i=(n=uc(e.type.ref))==null?void 0:n.terminal;if(!i)throw new Error("Could not find name assignment for type: "+on(e.type.ref));return am(t,e,i)}}s(am,"buildCrossReference");o(am,"buildCrossReference");function FA(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}s(FA,"buildKeyword");o(FA,"buildKeyword");function sm(t,e,r,n){let i=e&&Ot(e);if(!n)if(i){let a=t.or++;return l=>t.parser.alternatives(a,[{ALT:o(()=>r(l),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:Vp(),GATE:o(()=>!i(l),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return l=>t.parser.many(a,{DEF:o(()=>r(l),"DEF"),GATE:i?()=>i(l):void 0})}else if(n==="+"){let a=t.many++;if(i){let l=t.or++;return c=>t.parser.alternatives(l,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(c),"DEF")}),"ALT"),GATE:o(()=>i(c),"GATE")},{ALT:Vp(),GATE:o(()=>!i(c),"GATE")}])}else return l=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")})}else if(n==="?"){let a=t.optional++;return l=>t.parser.optional(a,{DEF:o(()=>r(l),"DEF"),GATE:i?()=>i(l):void 0})}else qr()}s(sm,"wrap");o(sm,"wrap");function Sc(t,e){let r=GA(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}s(Sc,"getRule");o(Sc,"getRule");function GA(t,e){if(hn(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!it(n);)(gn(n)||Zu(n)||rc(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}s(GA,"getRuleName");o(GA,"getRuleName");function Uu(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}s(Uu,"getToken");o(Uu,"getToken");function om(t){let e=t.Grammar,r=t.parser.Lexer,n=new qx(t);return Ac(e,n,r.definition),n.finalize(),n}s(om,"createCompletionParser");o(om,"createCompletionParser");function lm(t){let e=um(t);return e.finalize(),e}s(lm,"createLangiumParser");o(lm,"createLangiumParser");function um(t){let e=t.Grammar,r=t.parser.Lexer,n=new Gx(t);return Ac(e,n,r.definition)}s(um,"prepareLangiumParser");o(um,"prepareLangiumParser");var _a,cm=(_a=class{constructor(){this.diagnostics=[]}buildTokens(e,r){let n=ce(ac(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return a.push(...i),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(xt).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=wl(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=ic(r)?ut.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(hn).flatMap(i=>vr(i).filter(mr)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!(n!=null&&n.caseInsensitive)))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),a={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,r){return r?new RegExp(so(e.value),"i"):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i==null?void 0:i.PATTERN;return a!=null&&a.source&&Gd("^"+a.source+"$",e.value)&&n.push(i),n},[])}},s(_a,"DefaultTokenBuilder"),o(_a,"DefaultTokenBuilder"),_a),Da,zA=(Da=class{convert(e,r){let n=r.grammarSource;if(yn(n)&&(n=Vd(n)),hr(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return lr.convertInt(r);case"STRING":return lr.convertString(r);case"ID":return lr.convertID(r)}switch((i=ef(e))==null?void 0:i.toLowerCase()){case"number":return lr.convertNumber(r);case"boolean":return lr.convertBoolean(r);case"bigint":return lr.convertBigint(r);case"date":return lr.convertDate(r);default:return r}}},s(Da,"DefaultValueConverter"),o(Da,"DefaultValueConverter"),Da),lr;(function(t){function e(p){let d="";for(let f=1;f<p.length-1;f++){let m=p.charAt(f);if(m==="\\"){let g=p.charAt(++f);d+=r(g)}else d+=m}return d}s(e,"convertString"),o(e,"convertString"),t.convertString=e;function r(p){switch(p){case"b":return"\b";case"f":return"\f";case"n":return`
149
+ `;case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return p}}s(r,"convertEscapeCharacter"),o(r,"convertEscapeCharacter");function n(p){return p.charAt(0)==="^"?p.substring(1):p}s(n,"convertID"),o(n,"convertID"),t.convertID=n;function i(p){return parseInt(p)}s(i,"convertInt"),o(i,"convertInt"),t.convertInt=i;function a(p){return BigInt(p)}s(a,"convertBigint"),o(a,"convertBigint"),t.convertBigint=a;function l(p){return new Date(p)}s(l,"convertDate"),o(l,"convertDate"),t.convertDate=l;function c(p){return Number(p)}s(c,"convertNumber"),o(c,"convertNumber"),t.convertNumber=c;function u(p){return p.toLowerCase()==="true"}s(u,"convertBoolean"),o(u,"convertBoolean"),t.convertBoolean=u})(lr||(lr={}));var Ee={};ad(Ee,Ny(od(),1));function kc(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}s(kc,"delayNextTick");o(kc,"delayNextTick");var up=0,Kx=10;function Nc(){return up=performance.now(),new Ee.CancellationTokenSource}s(Nc,"startCancelableOperation");o(Nc,"startCancelableOperation");function pm(t){Kx=t}s(pm,"setInterruptionPeriod");o(pm,"setInterruptionPeriod");var pr=Symbol("OperationCancelled");function wn(t){return t===pr}s(wn,"isOperationCancelled");o(wn,"isOperationCancelled");async function Je(t){if(t===Ee.CancellationToken.None)return;let e=performance.now();if(e-up>=Kx&&(up=e,await kc(),up=performance.now()),t.isCancellationRequested)throw pr}s(Je,"interruptAndCheck");o(Je,"interruptAndCheck");var La,Gr=(La=class{constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}},s(La,"Deferred"),o(La,"Deferred"),La),Dr,Fk=(Dr=class{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(Dr.isIncremental(n)){let i=fm(n.range),a=this.offsetAt(i.start),l=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(l,this._content.length);let c=Math.max(i.start.line,0),u=Math.max(i.end.line,0),p=this._lineOffsets,d=Qp(n.text,!1,a);if(u-c===d.length)for(let m=0,g=d.length;m<g;m++)p[m+c+1]=d[m];else d.length<1e4?p.splice(c+1,u-c,...d):this._lineOffsets=p=p.slice(0,c+1).concat(d,p.slice(u+1));let f=n.text.length-(l-a);if(f!==0)for(let m=c+1+d.length,g=p.length;m<g;m++)p[m]=p[m]+f}else if(Dr.isFull(n))this._content=n.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=r}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Qp(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return{line:0,character:e};for(;n<i;){let l=Math.floor((n+i)/2);r[l]>e?i=l:n=l+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1<r.length?r[e.line+1]:this._content.length,a=Math.min(n+e.character,i);return this.ensureBeforeEOL(a,n)}ensureBeforeEOL(e,r){for(;e>r&&dm(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},s(Dr,"_FullTextDocument"),o(Dr,"FullTextDocument"),Dr),Zp;(function(t){function e(i,a,l,c){return new Fk(i,a,l,c)}s(e,"create"),o(e,"create"),t.create=e;function r(i,a,l){if(i instanceof Fk)return i.update(a,l),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}s(r,"update"),o(r,"update"),t.update=r;function n(i,a){let l=i.getText(),c=Ku(a.map(qA),(d,f)=>{let m=d.range.start.line-f.range.start.line;return m===0?d.range.start.character-f.range.start.character:m}),u=0,p=[];for(let d of c){let f=i.offsetAt(d.range.start);if(f<u)throw new Error("Overlapping edit");f>u&&p.push(l.substring(u,f)),d.newText.length&&p.push(d.newText),u=i.offsetAt(d.range.end)}return p.push(l.substr(u)),p.join("")}s(n,"applyEdits"),o(n,"applyEdits"),t.applyEdits=n})(Zp||(Zp={}));function Ku(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);Ku(n,e),Ku(i,e);let a=0,l=0,c=0;for(;a<n.length&&l<i.length;)e(n[a],i[l])<=0?t[c++]=n[a++]:t[c++]=i[l++];for(;a<n.length;)t[c++]=n[a++];for(;l<i.length;)t[c++]=i[l++];return t}s(Ku,"mergeSort");o(Ku,"mergeSort");function Qp(t,e,r=0){let n=e?[r]:[];for(let i=0;i<t.length;i++){let a=t.charCodeAt(i);dm(a)&&(a===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,n.push(r+i+1))}return n}s(Qp,"computeLineOffsets");o(Qp,"computeLineOffsets");function dm(t){return t===13||t===10}s(dm,"isEOL");o(dm,"isEOL");function fm(t){let e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}s(fm,"getWellformedRange");o(fm,"getWellformedRange");function qA(t){let e=fm(t.range);return e!==t.range?{newText:t.newText,range:e}:t}s(qA,"getWellformedEdit");o(qA,"getWellformedEdit");var Vx;(()=>{var t={975:_=>{function N($){if(typeof $!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify($))}s(N,"e2"),o(N,"e");function R($,C){for(var x,D="",M=0,L=-1,G=0,F=0;F<=$.length;++F){if(F<$.length)x=$.charCodeAt(F);else{if(x===47)break;x=47}if(x===47){if(!(L===F-1||G===1))if(L!==F-1&&G===2){if(D.length<2||M!==2||D.charCodeAt(D.length-1)!==46||D.charCodeAt(D.length-2)!==46){if(D.length>2){var re=D.lastIndexOf("/");if(re!==D.length-1){re===-1?(D="",M=0):M=(D=D.slice(0,re)).length-1-D.lastIndexOf("/"),L=F,G=0;continue}}else if(D.length===2||D.length===1){D="",M=0,L=F,G=0;continue}}C&&(D.length>0?D+="/..":D="..",M=2)}else D.length>0?D+="/"+$.slice(L+1,F):D=$.slice(L+1,F),M=F-L-1;L=F,G=0}else x===46&&G!==-1?++G:G=-1}return D}s(R,"r2"),o(R,"r");var k={resolve:o(function(){for(var $,C="",x=!1,D=arguments.length-1;D>=-1&&!x;D--){var M;D>=0?M=arguments[D]:($===void 0&&($=process.cwd()),M=$),N(M),M.length!==0&&(C=M+"/"+C,x=M.charCodeAt(0)===47)}return C=R(C,!x),x?C.length>0?"/"+C:"/":C.length>0?C:"."},"resolve"),normalize:o(function($){if(N($),$.length===0)return".";var C=$.charCodeAt(0)===47,x=$.charCodeAt($.length-1)===47;return($=R($,!C)).length!==0||C||($="."),$.length>0&&x&&($+="/"),C?"/"+$:$},"normalize"),isAbsolute:o(function($){return N($),$.length>0&&$.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var $,C=0;C<arguments.length;++C){var x=arguments[C];N(x),x.length>0&&($===void 0?$=x:$+="/"+x)}return $===void 0?".":k.normalize($)},"join"),relative:o(function($,C){if(N($),N(C),$===C||($=k.resolve($))===(C=k.resolve(C)))return"";for(var x=1;x<$.length&&$.charCodeAt(x)===47;++x);for(var D=$.length,M=D-x,L=1;L<C.length&&C.charCodeAt(L)===47;++L);for(var G=C.length-L,F=M<G?M:G,re=-1,q=0;q<=F;++q){if(q===F){if(G>F){if(C.charCodeAt(L+q)===47)return C.slice(L+q+1);if(q===0)return C.slice(L+q)}else M>F&&($.charCodeAt(x+q)===47?re=q:q===0&&(re=0));break}var te=$.charCodeAt(x+q);if(te!==C.charCodeAt(L+q))break;te===47&&(re=q)}var de="";for(q=x+re+1;q<=D;++q)q!==D&&$.charCodeAt(q)!==47||(de.length===0?de+="..":de+="/..");return de.length>0?de+C.slice(L+re):(L+=re,C.charCodeAt(L)===47&&++L,C.slice(L))},"relative"),_makeLong:o(function($){return $},"_makeLong"),dirname:o(function($){if(N($),$.length===0)return".";for(var C=$.charCodeAt(0),x=C===47,D=-1,M=!0,L=$.length-1;L>=1;--L)if((C=$.charCodeAt(L))===47){if(!M){D=L;break}}else M=!1;return D===-1?x?"/":".":x&&D===1?"//":$.slice(0,D)},"dirname"),basename:o(function($,C){if(C!==void 0&&typeof C!="string")throw new TypeError('"ext" argument must be a string');N($);var x,D=0,M=-1,L=!0;if(C!==void 0&&C.length>0&&C.length<=$.length){if(C.length===$.length&&C===$)return"";var G=C.length-1,F=-1;for(x=$.length-1;x>=0;--x){var re=$.charCodeAt(x);if(re===47){if(!L){D=x+1;break}}else F===-1&&(L=!1,F=x+1),G>=0&&(re===C.charCodeAt(G)?--G==-1&&(M=x):(G=-1,M=F))}return D===M?M=F:M===-1&&(M=$.length),$.slice(D,M)}for(x=$.length-1;x>=0;--x)if($.charCodeAt(x)===47){if(!L){D=x+1;break}}else M===-1&&(L=!1,M=x+1);return M===-1?"":$.slice(D,M)},"basename"),extname:o(function($){N($);for(var C=-1,x=0,D=-1,M=!0,L=0,G=$.length-1;G>=0;--G){var F=$.charCodeAt(G);if(F!==47)D===-1&&(M=!1,D=G+1),F===46?C===-1?C=G:L!==1&&(L=1):C!==-1&&(L=-1);else if(!M){x=G+1;break}}return C===-1||D===-1||L===0||L===1&&C===D-1&&C===x+1?"":$.slice(C,D)},"extname"),format:o(function($){if($===null||typeof $!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof $);return function(C,x){var D=x.dir||x.root,M=x.base||(x.name||"")+(x.ext||"");return D?D===x.root?D+M:D+"/"+M:M}(0,$)},"format"),parse:o(function($){N($);var C={root:"",dir:"",base:"",ext:"",name:""};if($.length===0)return C;var x,D=$.charCodeAt(0),M=D===47;M?(C.root="/",x=1):x=0;for(var L=-1,G=0,F=-1,re=!0,q=$.length-1,te=0;q>=x;--q)if((D=$.charCodeAt(q))!==47)F===-1&&(re=!1,F=q+1),D===46?L===-1?L=q:te!==1&&(te=1):L!==-1&&(te=-1);else if(!re){G=q+1;break}return L===-1||F===-1||te===0||te===1&&L===F-1&&L===G+1?F!==-1&&(C.base=C.name=G===0&&M?$.slice(1,F):$.slice(G,F)):(G===0&&M?(C.name=$.slice(1,L),C.base=$.slice(1,F)):(C.name=$.slice(G,L),C.base=$.slice(G,F)),C.ext=$.slice(L,F)),G>0?C.dir=$.slice(0,G-1):M&&(C.dir="/"),C},"parse"),sep:"/",delimiter:":",win32:null,posix:null};k.posix=k,_.exports=k}},e={};function r(_){var N=e[_];if(N!==void 0)return N.exports;var R=e[_]={exports:{}};return t[_](R,R.exports,r),R.exports}s(r,"r"),o(r,"r"),r.d=(_,N)=>{for(var R in N)r.o(N,R)&&!r.o(_,R)&&Object.defineProperty(_,R,{enumerable:!0,get:N[R]})},r.o=(_,N)=>Object.prototype.hasOwnProperty.call(_,N),r.r=_=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var n={};let i;r.r(n),r.d(n,{URI:o(()=>m,"URI"),Utils:o(()=>_e,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;function u(_,N){if(!_.scheme&&N)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${_.authority}", path: "${_.path}", query: "${_.query}", fragment: "${_.fragment}"}`);if(_.scheme&&!a.test(_.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(_.path){if(_.authority){if(!l.test(_.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(_.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}s(u,"a"),o(u,"a");let p="",d="/",f=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;const le=class le{constructor(N,R,k,$,C,x=!1){Wr(this,"scheme");Wr(this,"authority");Wr(this,"path");Wr(this,"query");Wr(this,"fragment");typeof N=="object"?(this.scheme=N.scheme||p,this.authority=N.authority||p,this.path=N.path||p,this.query=N.query||p,this.fragment=N.fragment||p):(this.scheme=function(D,M){return D||M?D:"file"}(N,x),this.authority=R||p,this.path=function(D,M){switch(D){case"https":case"http":case"file":M?M[0]!==d&&(M=d+M):M=d}return M}(this.scheme,k||p),this.query=$||p,this.fragment=C||p,u(this,x))}static isUri(N){return N instanceof le||!!N&&typeof N.authority=="string"&&typeof N.fragment=="string"&&typeof N.path=="string"&&typeof N.query=="string"&&typeof N.scheme=="string"&&typeof N.fsPath=="string"&&typeof N.with=="function"&&typeof N.toString=="function"}get fsPath(){return w(this,!1)}with(N){if(!N)return this;let{scheme:R,authority:k,path:$,query:C,fragment:x}=N;return R===void 0?R=this.scheme:R===null&&(R=p),k===void 0?k=this.authority:k===null&&(k=p),$===void 0?$=this.path:$===null&&($=p),C===void 0?C=this.query:C===null&&(C=p),x===void 0?x=this.fragment:x===null&&(x=p),R===this.scheme&&k===this.authority&&$===this.path&&C===this.query&&x===this.fragment?this:new y(R,k,$,C,x)}static parse(N,R=!1){let k=f.exec(N);return k?new y(k[2]||p,ie(k[4]||p),ie(k[5]||p),ie(k[7]||p),ie(k[9]||p),R):new y(p,p,p,p,p)}static file(N){let R=p;if(i&&(N=N.replace(/\\/g,d)),N[0]===d&&N[1]===d){let k=N.indexOf(d,2);k===-1?(R=N.substring(2),N=d):(R=N.substring(2,k),N=N.substring(k)||d)}return new y("file",R,N,p,p)}static from(N){let R=new y(N.scheme,N.authority,N.path,N.query,N.fragment);return u(R,!0),R}toString(N=!1){return S(this,N)}toJSON(){return this}static revive(N){if(N){if(N instanceof le)return N;{let R=new y(N);return R._formatted=N.external,R._fsPath=N._sep===g?N.fsPath:null,R}}return N}};s(le,"l"),o(le,"l");let m=le,g=i?1:void 0;const Xe=class Xe extends m{constructor(){super(...arguments);Wr(this,"_formatted",null);Wr(this,"_fsPath",null)}get fsPath(){return this._fsPath||(this._fsPath=w(this,!1)),this._fsPath}toString(R=!1){return R?S(this,!0):(this._formatted||(this._formatted=S(this,!1)),this._formatted)}toJSON(){let R={$mid:1};return this._fsPath&&(R.fsPath=this._fsPath,R._sep=g),this._formatted&&(R.external=this._formatted),this.path&&(R.path=this.path),this.scheme&&(R.scheme=this.scheme),this.authority&&(R.authority=this.authority),this.query&&(R.query=this.query),this.fragment&&(R.fragment=this.fragment),R}};s(Xe,"d"),o(Xe,"d");let y=Xe,T={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 A(_,N,R){let k,$=-1;for(let C=0;C<_.length;C++){let x=_.charCodeAt(C);if(x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===45||x===46||x===95||x===126||N&&x===47||R&&x===91||R&&x===93||R&&x===58)$!==-1&&(k+=encodeURIComponent(_.substring($,C)),$=-1),k!==void 0&&(k+=_.charAt(C));else{k===void 0&&(k=_.substr(0,C));let D=T[x];D!==void 0?($!==-1&&(k+=encodeURIComponent(_.substring($,C)),$=-1),k+=D):$===-1&&($=C)}}return $!==-1&&(k+=encodeURIComponent(_.substring($))),k!==void 0?k:_}s(A,"m"),o(A,"m");function b(_){let N;for(let R=0;R<_.length;R++){let k=_.charCodeAt(R);k===35||k===63?(N===void 0&&(N=_.substr(0,R)),N+=T[k]):N!==void 0&&(N+=_[R])}return N!==void 0?N:_}s(b,"y"),o(b,"y");function w(_,N){let R;return R=_.authority&&_.path.length>1&&_.scheme==="file"?`//${_.authority}${_.path}`:_.path.charCodeAt(0)===47&&(_.path.charCodeAt(1)>=65&&_.path.charCodeAt(1)<=90||_.path.charCodeAt(1)>=97&&_.path.charCodeAt(1)<=122)&&_.path.charCodeAt(2)===58?N?_.path.substr(1):_.path[1].toLowerCase()+_.path.substr(2):_.path,i&&(R=R.replace(/\//g,"\\")),R}s(w,"v"),o(w,"v");function S(_,N){let R=N?b:A,k="",{scheme:$,authority:C,path:x,query:D,fragment:M}=_;if($&&(k+=$,k+=":"),(C||$==="file")&&(k+=d,k+=d),C){let L=C.indexOf("@");if(L!==-1){let G=C.substr(0,L);C=C.substr(L+1),L=G.lastIndexOf(":"),L===-1?k+=R(G,!1,!1):(k+=R(G.substr(0,L),!1,!1),k+=":",k+=R(G.substr(L+1),!1,!0)),k+="@"}C=C.toLowerCase(),L=C.lastIndexOf(":"),L===-1?k+=R(C,!1,!0):(k+=R(C.substr(0,L),!1,!0),k+=C.substr(L))}if(x){if(x.length>=3&&x.charCodeAt(0)===47&&x.charCodeAt(2)===58){let L=x.charCodeAt(1);L>=65&&L<=90&&(x=`/${String.fromCharCode(L+32)}:${x.substr(3)}`)}else if(x.length>=2&&x.charCodeAt(1)===58){let L=x.charCodeAt(0);L>=65&&L<=90&&(x=`${String.fromCharCode(L+32)}:${x.substr(2)}`)}k+=R(x,!0,!1)}return D&&(k+="?",k+=R(D,!1,!1)),M&&(k+="#",k+=N?M:A(M,!1,!1)),k}s(S,"b"),o(S,"b");function I(_){try{return decodeURIComponent(_)}catch{return _.length>3?_.substr(0,3)+I(_.substr(3)):_}}s(I,"C"),o(I,"C");let K=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ie(_){return _.match(K)?_.replace(K,N=>I(N)):_}s(ie,"w"),o(ie,"w");var X=r(975);let Te=X.posix||X,Se="/";var _e;(function(_){_.joinPath=function(N,...R){return N.with({path:Te.join(N.path,...R)})},_.resolvePath=function(N,...R){let k=N.path,$=!1;k[0]!==Se&&(k=Se+k,$=!0);let C=Te.resolve(k,...R);return $&&C[0]===Se&&!N.authority&&(C=C.substring(1)),N.with({path:C})},_.dirname=function(N){if(N.path.length===0||N.path===Se)return N;let R=Te.dirname(N.path);return R.length===1&&R.charCodeAt(0)===46&&(R=""),N.with({path:R})},_.basename=function(N){return Te.basename(N.path)},_.extname=function(N){return Te.extname(N.path)}})(_e||(_e={})),Vx=n})();var{URI:At,Utils:Ul}=Vx,lt;(function(t){t.basename=Ul.basename,t.dirname=Ul.dirname,t.extname=Ul.extname,t.joinPath=Ul.joinPath,t.resolvePath=Ul.resolvePath;let e=typeof process=="object"&&(process==null?void 0:process.platform)==="win32";function r(l,c){return(l==null?void 0:l.toString())===(c==null?void 0:c.toString())}s(r,"equals"),o(r,"equals"),t.equals=r;function n(l,c){let u=typeof l=="string"?At.parse(l).path:l.path,p=typeof c=="string"?At.parse(c).path:c.path,d=u.split("/").filter(T=>T.length>0),f=p.split("/").filter(T=>T.length>0);if(e){let T=/^[A-Z]:$/;if(d[0]&&T.test(d[0])&&(d[0]=d[0].toLowerCase()),f[0]&&T.test(f[0])&&(f[0]=f[0].toLowerCase()),d[0]!==f[0])return p.substring(1)}let m=0;for(;m<d.length&&d[m]===f[m];m++);let g="../".repeat(d.length-m),y=f.slice(m).join("/");return g+y}s(n,"relative"),o(n,"relative"),t.relative=n;function i(l){return At.parse(l.toString()).toString()}s(i,"normalize"),o(i,"normalize"),t.normalize=i;function a(l,c){let u=typeof l=="string"?l:l.path,p=typeof c=="string"?c:c.path;return p.charAt(p.length-1)==="/"&&(p=p.slice(0,-1)),u.charAt(u.length-1)==="/"&&(u=u.slice(0,-1)),p===u?!0:p.length<u.length||p.charAt(u.length)!=="/"?!1:p.startsWith(u)}s(a,"contains"),o(a,"contains"),t.contains=a})(lt||(lt={}));var Oa,UA=(Oa=class{constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return lt.normalize(e)}clear(){this.root.children.clear()}insert(e,r){let n=this.getNode(this.normalizeUri(e),!0);n.element=r}delete(e){let r=this.getNode(this.normalizeUri(e),!1);r!=null&&r.parent&&r.parent.children.delete(r.name)}has(e){var r;return((r=this.getNode(this.normalizeUri(e),!1))==null?void 0:r.element)!==void 0}hasNode(e){return this.getNode(this.normalizeUri(e),!1)!==void 0}find(e){var r;return(r=this.getNode(this.normalizeUri(e),!1))==null?void 0:r.element}findNode(e){let r=this.normalizeUri(e),n=this.getNode(r,!1);if(n)return{name:n.name,uri:lt.joinPath(At.parse(r),n.name).toString(),element:n.element}}findChildren(e){let r=this.normalizeUri(e),n=this.getNode(r,!1);return n?Array.from(n.children.values()).map(i=>({name:i.name,uri:lt.joinPath(At.parse(r),i.name).toString(),element:i.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let r=this.getNode(lt.normalize(e),!1);return r?this.collectValues(r):[]}getNode(e,r){let n=e.split("/");e.charAt(e.length-1)==="/"&&n.pop();let i=this.root;for(let a of n){let l=i.children.get(a);if(!l)if(r)l={name:a,children:new Map,parent:i},i.children.set(a,l);else return;i=l}return i}collectValues(e){let r=[];e.element&&r.push(e.element);for(let n of e.children.values())r.push(...this.collectValues(n));return r}},s(Oa,"UriTrie"),o(Oa,"UriTrie"),Oa),ee;(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(ee||(ee={}));var Ma,Bx=(Ma=class{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=Ee.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??At.parse(e.uri),Ee.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return Ee.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:ee.Parsed,references:[],textDocument:n};else{let l=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:ee.Parsed,references:[],get textDocument(){return l()}}}return e.value.$document=a,a}async update(e,r){var l,c;let n=(l=e.parseResult.value.$cstNode)==null?void 0:l.root.fullText,i=(c=this.textDocuments)==null?void 0:c.get(e.uri.toString()),a=i?i.getText():await this.fileSystemProvider.readFile(e.uri);if(i)Object.defineProperty(e,"textDocument",{value:i});else{let u=this.createTextDocumentGetter(e.uri,a);Object.defineProperty(e,"textDocument",{get:u})}return n!==a&&(e.parseResult=await this.parseAsync(e.uri,a,r),e.parseResult.value.$document=e),e.state=ee.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=Zp.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},s(Ma,"DefaultLangiumDocumentFactory"),o(Ma,"DefaultLangiumDocumentFactory"),Ma),ja,Wx=(ja=class{constructor(e){this.documentTrie=new UA,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return ce(this.documentTrie.all())}addDocument(e){let r=e.uri.toString();if(this.documentTrie.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentTrie.insert(r,e)}getDocument(e){let r=e.toString();return this.documentTrie.find(r)}getDocuments(e){let r=e.toString();return this.documentTrie.findAll(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&this.documentBuilder().resetToState(n,ee.Changed),n}deleteDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&(n.state=ee.Changed,this.documentTrie.delete(r)),n}deleteDocuments(e){let r=e.toString(),n=this.documentTrie.findAll(r);for(let i of n)i.state=ee.Changed;return this.documentTrie.delete(r),n}},s(ja,"DefaultLangiumDocuments"),o(ja,"DefaultLangiumDocuments"),ja),Vn=Symbol("RefResolving"),Fa,Hx=(Fa=class{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async link(e,r=Ee.CancellationToken.None){var n;if((n=this.profiler)!=null&&n.isActive("linking")){let i=this.profiler.createTask("linking",this.languageId);i.start();try{for(let a of Ft(e.parseResult.value))await Je(r),Zs(a).forEach(l=>{let c=`${a.$type}:${l.property}`;i.startSubTask(c);try{this.doLink(l,e)}finally{i.stopSubTask(c)}})}finally{i.stop()}}else for(let i of Ft(e.parseResult.value))await Je(r),Zs(i).forEach(a=>this.doLink(a,e))}doLink(e,r){let n=e.reference;if("_ref"in n&&n._ref===void 0){n._ref=Vn;try{let i=this.getCandidate(e);if(tn(i))n._ref=i;else{n._nodeDescription=i;let a=this.loadAstNode(i);n._ref=a??this.createLinkingError(e,i)}}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let a=i.message??String(i);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${a}`}}r.references.push(n)}else if("_items"in n&&n._items===void 0){n._items=Vn;try{let i=this.getCandidates(e),a=[];if(tn(i))n._linkingError=i;else for(let l of i){let c=this.loadAstNode(l);c&&a.push({ref:c,$nodeDescription:l})}n._items=a}catch(i){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${i}`},n._items=[]}r.references.push(n)}}unlink(e){for(let r of e.references)"_ref"in r?(r._ref=void 0,delete r._nodeDescription):"_items"in r&&(r._items=void 0,delete r._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let r=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(n=>`${n.documentUri}#${n.path}`).toArray();return r.length>0?r:this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,l={$refNode:n,$refText:i,_ref:void 0,get ref(){if(Ke(this._ref))return this._ref;if(ld(this._nodeDescription)){let c=a.loadAstNode(this._nodeDescription);this._ref=c??a.createLinkingError({reference:l,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=Vn;let c=ci(e).$document,u=a.getLinkedNode({reference:l,container:e,property:r});if(u.error&&c&&c.state<ee.ComputedScopes)return this._ref=void 0;this._ref=u.node??u.error,this._nodeDescription=u.descr,c==null||c.references.push(this)}else this._ref===Vn&&a.throwCyclicReferenceError(e,r,i);return Ke(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return tn(this._ref)?this._ref:void 0}};return l}buildMultiReference(e,r,n,i){let a=this,l={$refNode:n,$refText:i,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(this._items===void 0){this._items=Vn;let c=ci(e).$document,u=a.getCandidates({reference:l,container:e,property:r}),p=[];if(tn(u))this._linkingError=u;else for(let d of u){let f=a.loadAstNode(d);f&&p.push({ref:f,$nodeDescription:d})}this._items=p,c==null||c.references.push(this)}else this._items===Vn&&a.throwCyclicReferenceError(e,r,i);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(!(this.items.length>0))return this._linkingError=a.createLinkingError({reference:l,container:e,property:r})}};return l}throwCyclicReferenceError(e,r,n){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${n}')`)}getLinkedNode(e){try{let r=this.getCandidate(e);if(tn(r))return{error:r};let n=this.loadAstNode(r);return n?{node:n,descr:r}:{descr:r,error:this.createLinkingError(e,r)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let n=r.message??String(r);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 r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){let n=ci(e.container).$document;n&&n.state<ee.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`);let i=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${i} named '${e.reference.$refText}'.`,targetDescription:r}}},s(Fa,"DefaultLinker"),o(Fa,"DefaultLinker"),Fa);function mm(t){return typeof t.name=="string"}s(mm,"isNamed");o(mm,"isNamed");var Ga,Yx=(Ga=class{getName(e){if(mm(e))return e.name}getNameNode(e){return sc(e.$cstNode,"name")}},s(Ga,"DefaultNameProvider"),o(Ga,"DefaultNameProvider"),Ga),za,Jx=(za=class{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=Ft(e.Grammar).some(r=>yn(r)&&r.isMulti)}findDeclarations(e){if(e){let r=Yd(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(nt(i)||Yt(i))return ku(i);if(Array.isArray(i)){for(let a of i)if((nt(a)||Yt(a))&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return ku(a)}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||xd(e,i)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(r.head());if(n){for(let i of Zs(n))if(Yt(i.reference)&&i.reference.items.some(a=>a.ref===e))return i.reference.items.map(a=>a.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;let r=this.documents.getDocument(e.sourceUri);if(r)return this.nodeLocator.getAstNode(r.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let r=this.findDeclarations(e),n=[];for(let i of r){let a=this.nameProvider.getNameNode(i)??i.$cstNode;a&&n.push(a)}return n}findReferences(e,r){let n=[];r.includeDeclaration&&n.push(...this.getSelfReferences(e));let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>lt.equals(a.sourceUri,r.documentUri))),n.push(...i),ce(n)}getSelfReferences(e){let r=this.getSelfNodes(e),n=[];for(let i of r){let a=this.nameProvider.getNameNode(i);if(a){let l=jt(i),c=this.nodeLocator.getAstNodePath(i);n.push({sourceUri:l.uri,sourcePath:c,targetUri:l.uri,targetPath:c,segment:to(a),local:!0})}}return n}},s(za,"DefaultReferences"),o(za,"DefaultReferences"),za),qa,zr=(qa=class{constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return Su.sum(ce(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let r=this.map.get(e);return r?ce(r):ul}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return ce(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return ce(this.map.keys())}values(){return ce(this.map.values()).flat()}entriesGroupedByKey(){return ce(this.map.entries())}},s(qa,"MultiMap"),o(qa,"MultiMap"),qa),Ua,ed=(Ua=class{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}},s(Ua,"BiMap"),o(Ua,"BiMap"),Ua),Ka,Xx=(Ka=class{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,r=Ee.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,r)}async collectExportedSymbolsForNode(e,r,n=Sl,i=Ee.CancellationToken.None){let a=[];this.addExportedSymbol(e,a,r);for(let l of n(e))await Je(i),this.addExportedSymbol(l,a,r);return a}addExportedSymbol(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async collectLocalSymbols(e,r=Ee.CancellationToken.None){let n=e.parseResult.value,i=new zr;for(let a of vr(n))await Je(r),this.addLocalSymbol(a,e,i);return i}addLocalSymbol(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}},s(Ka,"DefaultScopeComputation"),o(Ka,"DefaultScopeComputation"),Ka),Va,fy=(Va=class{constructor(e,r,n){this.elements=e,this.outerScope=r,this.caseInsensitive=(n==null?void 0:n.caseInsensitive)??!1,this.concatOuterScope=(n==null?void 0:n.concatOuterScope)??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(i=>i.name.toLowerCase()===r):this.elements.find(i=>i.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(i=>i.name.toLowerCase()===r):this.elements.filter(i=>i.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},s(Va,"StreamScope"),o(Va,"StreamScope"),Va),Ba,ez=(Ba=class{constructor(e,r,n){this.elements=new Map,this.caseInsensitive=(n==null?void 0:n.caseInsensitive)??!1,this.concatOuterScope=(n==null?void 0:n.concatOuterScope)??!0;for(let i of e){let a=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.set(a,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r),i=n?[n]:[];return(this.concatOuterScope||i.length>0)&&this.outerScope?ce(i).concat(this.outerScope.getElements(e)):ce(i)}getAllElements(){let e=ce(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},s(Ba,"MapScope"),o(Ba,"MapScope"),Ba),Wa,Zx=(Wa=class{constructor(e,r,n){this.elements=new zr,this.caseInsensitive=(n==null?void 0:n.caseInsensitive)??!1,this.concatOuterScope=(n==null?void 0:n.concatOuterScope)??!0;for(let i of e){let a=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.add(a,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r)[0];if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);return(this.concatOuterScope||n.length===0)&&this.outerScope?ce(n).concat(this.outerScope.getElements(e)):ce(n)}getAllElements(){let e=ce(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},s(Wa,"MultiMapScope"),o(Wa,"MultiMapScope"),Wa),tz={getElement(){},getElements(){return ul},getAllElements(){return ul}},Ha,hm=(Ha=class{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},s(Ha,"DisposableCache"),o(Ha,"DisposableCache"),Ha),Ya,KA=(Ya=class extends hm{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},s(Ya,"SimpleCache"),o(Ya,"SimpleCache"),Ya),Ja,ym=(Ja=class extends hm{constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},s(Ja,"ContextCache"),o(Ja,"ContextCache"),Ja),Xa,Qx=(Xa=class extends ym{constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let a of i)this.clear(a)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let a=n.concat(i);for(let l of a)this.clear(l)}))}},s(Xa,"DocumentCache"),o(Xa,"DocumentCache"),Xa),Za,VA=(Za=class extends KA{constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},s(Za,"WorkspaceCache"),o(Za,"WorkspaceCache"),Za),Qa,ew=(Qa=class{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 VA(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=jt(e.container).localSymbols;if(i){let l=e.container;do i.has(l)&&r.push(i.getStream(l).filter(c=>this.reflection.isSubtype(c.type,n))),l=l.$container;while(l)}let a=this.getGlobalScope(n,e);for(let l=r.length-1;l>=0;l--)a=this.createScope(r[l],a);return a}createScope(e,r,n){return new fy(ce(e),r,n)}createScopeForNodes(e,r,n){let i=ce(e).map(a=>{let l=this.nameProvider.getName(a);if(l)return this.descriptions.createDescription(a,l)}).nonNullable();return new fy(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new Zx(this.indexManager.allElements(e)))}},s(Qa,"DefaultScopeProvider"),o(Qa,"DefaultScopeProvider"),Qa);function gm(t){return typeof t.$comment=="string"}s(gm,"isAstNodeWithComment");o(gm,"isAstNodeWithComment");function td(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}s(td,"isIntermediateReference");o(td,"isIntermediateReference");var es,tw=(es=class{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r==null?void 0:r.replacer,a=o((c,u)=>this.replacer(c,u,n),"defaultReplacer"),l=i?(c,u)=>i(c,u,a):a;try{return this.currentDocument=jt(e),JSON.stringify(e,l,r==null?void 0:r.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:l,uriConverter:c}){var u,p,d;if(!this.ignoreProperties.has(e))if(nt(r)){let f=r.ref,m=n?r.$refText:void 0;if(f){let g=jt(f),y="";this.currentDocument&&this.currentDocument!==g&&(c?y=c(g.uri,f):y=g.uri.toString());let T=this.astNodeLocator.getAstNodePath(f);return{$ref:`${y}#${T}`,$refText:m}}else return{$error:((u=r.error)==null?void 0:u.message)??"Could not resolve reference",$refText:m}}else if(Yt(r)){let f=n?r.$refText:void 0,m=[];for(let g of r.items){let y=g.ref,T=jt(g.ref),A="";this.currentDocument&&this.currentDocument!==T&&(c?A=c(T.uri,y):A=T.uri.toString());let b=this.astNodeLocator.getAstNodePath(y);m.push(`${A}#${b}`)}return{$refs:m,$refText:f}}else if(Ke(r)){let f;if(a&&(f=this.addAstNodeRegionWithAssignmentsTo({...r}),(!e||r.$document)&&(f!=null&&f.$textRegion)&&(f.$textRegion.documentURI=(p=this.currentDocument)==null?void 0:p.uri.toString())),i&&!e&&(f??(f={...r}),f.$sourceText=(d=r.$cstNode)==null?void 0:d.text),l){f??(f={...r});let m=this.commentProvider.getComment(r);m&&(f.$comment=m.replace(/\r/g,""))}return f??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let l=Wd(e.$cstNode,a).map(r);l.length!==0&&(i[a]=l)}),e}}linkNode(e,r,n,i,a,l){for(let[u,p]of Object.entries(e))if(Array.isArray(p))for(let d=0;d<p.length;d++){let f=p[d];td(f)?p[d]=this.reviveReference(e,u,r,f,n):Ke(f)&&this.linkNode(f,r,n,e,u,d)}else td(p)?e[u]=this.reviveReference(e,u,r,p,n):Ke(p)&&this.linkNode(p,r,n,e,u);let c=e;c.$container=i,c.$containerProperty=a,c.$containerIndex=l}reviveReference(e,r,n,i,a){let l=i.$refText,c=i.$error,u;if(i.$ref){let p=this.getRefNode(n,i.$ref,a.uriConverter);if(Ke(p))return l||(l=this.nameProvider.getName(p)),{$refText:l??"",ref:p};c=p}else if(i.$refs){let p=[];for(let d of i.$refs){let f=this.getRefNode(n,d,a.uriConverter);Ke(f)&&p.push({ref:f})}if(p.length===0)u={$refText:l??"",items:p},c??(c="Could not resolve multi-reference");else return{$refText:l??"",items:p}}if(c)return u??(u={$refText:l??"",ref:void 0}),u.error={info:{container:e,property:r,reference:u},message:c},u}getRefNode(e,r,n){try{let i=r.indexOf("#");if(i===0)return this.astNodeLocator.getAstNode(e,r.substring(1))||"Could not resolve path: "+r;if(i<0){let u=n?n(r):At.parse(r),p=this.langiumDocuments.getDocument(u);return p?p.parseResult.value:"Could not find document for URI: "+r}let a=n?n(r.substring(0,i)):At.parse(r.substring(0,i)),l=this.langiumDocuments.getDocument(a);return l?i===r.length-1?l.parseResult.value:this.astNodeLocator.getAstNode(l.parseResult.value,r.substring(i+1))||"Could not resolve URI: "+r:"Could not find document for URI: "+r}catch(i){return String(i)}}},s(es,"DefaultJsonSerializer"),o(es,"DefaultJsonSerializer"),es),ts,rw=(ts=class{get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e==null?void 0:e.workspace.TextDocuments}register(e){let r=e.LanguageMetaData;for(let n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);if(r.fileNames)for(let n of r.fileNames)this.fileNameMap.has(n)&&console.warn(`The file name ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileNameMap.set(n,e);this.languageIdMap.set(r.languageId,e)}getServices(e){var l,c;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let r=(c=(l=this.textDocuments)==null?void 0:l.get(e))==null?void 0:c.languageId;if(r!==void 0){let u=this.languageIdMap.get(r);if(u)return u}let n=lt.extname(e),i=lt.basename(e),a=this.fileNameMap.get(i)??this.fileExtensionMap.get(n);if(!a)throw r?new Error(`The service registry contains no services for the extension '${n}' for language '${r}'.`):new Error(`The service registry contains no services for the extension '${n}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}},s(ts,"DefaultServiceRegistry"),o(ts,"DefaultServiceRegistry"),ts);function rn(t){return{code:t}}s(rn,"diagnosticData");o(rn,"diagnosticData");var rd;(function(t){t.defaults=["fast","slow","built-in"],t.all=t.defaults})(rd||(rd={}));var rs,nw=(rs=class{constructor(e){this.entries=new zr,this.knownCategories=new Set(rd.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(n);for(let[i,a]of Object.entries(e)){let l=a;if(Array.isArray(l))for(let c of l){let u={check:this.wrapValidationException(c,r),category:n};this.addEntry(i,u)}else if(typeof l=="function"){let c={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,c)}else qr()}}wrapValidationException(e,r){return async(n,i,a)=>{await this.handleException(()=>e.call(r,n,i,a),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(a){if(wn(a))throw a;console.error(`${r}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let l=a instanceof Error?a.message:String(a);n("error",`${r}: ${l}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=ce(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,a,l,c)=>{await this.handleException(()=>e.call(n,i,a,l,c),r,a,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},s(rs,"ValidationRegistry"),o(rs,"ValidationRegistry"),rs),iw=Object.freeze({validateNode:!0,validateChildren:!0}),ns,aw=(ns=class{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,r={},n=Ee.CancellationToken.None){let i=e.parseResult,a=[];if(await Je(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(l=>{var c;return((c=l.data)==null?void 0:c.code)===Mt.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(l=>{var c;return((c=l.data)==null?void 0:c.code)===Mt.ParsingError}))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(l=>{var c;return((c=l.data)==null?void 0:c.code)===Mt.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(l){if(wn(l))throw l;console.error("An error occurred during validation:",l)}return await Je(n),a}processLexingErrors(e,r,n){var a;let i=[...e.lexerErrors,...((a=e.lexerReport)==null?void 0:a.diagnostics)??[]];for(let l of i){let c=l.severity??"error",u={severity:ol(c),range:{start:{line:l.line-1,character:l.column-1},end:{line:l.line-1,character:l.column+l.length-1}},message:l.message,data:Tm(c),source:this.getSource()};r.push(u)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let l=i.previousToken;if(isNaN(l.startOffset)){let c={line:0,character:0};a={start:c,end:c}}else{let c={line:l.endLine-1,character:l.endColumn};a={start:c,end:c}}}}else a=pl(i.token);if(a){let l={severity:ol("error"),range:a,message:i.message,data:rn(Mt.ParsingError),source:this.getSource()};r.push(l)}}}processLinkingErrors(e,r,n){var i;for(let a of e.references){let l=a.error;if(l){let c={node:l.info.container,range:(i=a.$refNode)==null?void 0:i.range,property:l.info.property,index:l.info.index,data:{code:Mt.LinkingError,containerType:l.info.container.$type,property:l.info.property,refText:l.info.reference.$refText}};r.push(this.toDiagnostic("error",l.message,c))}}}async validateAst(e,r,n=Ee.CancellationToken.None){let i=[],a=o((l,c,u)=>{i.push(this.toDiagnostic(l,c,u))},"acceptor");return await this.validateAstBefore(e,r,a,n),await this.validateAstNodes(e,r,a,n),await this.validateAstAfter(e,r,a,n),i}async validateAstBefore(e,r,n,i=Ee.CancellationToken.None){let a=this.validationRegistry.checksBefore;for(let l of a)await Je(i),await l(e,n,r.categories??[],i)}async validateAstNodes(e,r,n,i=Ee.CancellationToken.None){var a;if((a=this.profiler)!=null&&a.isActive("validating")){let l=this.profiler.createTask("validating",this.languageId);l.start();try{let c=Ft(e).iterator();for(let u of c){l.startSubTask(u.$type);let p=this.validateSingleNodeOptions(u,r);if(p.validateNode)try{let d=this.validationRegistry.getChecks(u.$type,r.categories);for(let f of d)await f(u,n,i)}finally{l.stopSubTask(u.$type)}p.validateChildren||c.prune()}}finally{l.stop()}}else{let l=Ft(e).iterator();for(let c of l){await Je(i);let u=this.validateSingleNodeOptions(c,r);if(u.validateNode){let p=this.validationRegistry.getChecks(c.$type,r.categories);for(let d of p)await d(c,n,i)}u.validateChildren||l.prune()}}}validateSingleNodeOptions(e,r){return iw}async validateAstAfter(e,r,n,i=Ee.CancellationToken.None){let a=this.validationRegistry.checksAfter;for(let l of a)await Je(i),await l(e,n,r.categories??[],i)}toDiagnostic(e,r,n){return{message:r,range:vm(n),severity:ol(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}},s(ns,"DefaultDocumentValidator"),o(ns,"DefaultDocumentValidator"),ns);function vm(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=sc(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=Hd(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}s(vm,"getDiagnosticRange");o(vm,"getDiagnosticRange");function ol(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}s(ol,"toDiagnosticSeverity");o(ol,"toDiagnosticSeverity");function Tm(t){switch(t){case"error":return rn(Mt.LexingError);case"warning":return rn(Mt.LexingWarning);case"info":return rn(Mt.LexingInfo);case"hint":return rn(Mt.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}s(Tm,"toDiagnosticData");o(Tm,"toDiagnosticData");var Mt;(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(Mt||(Mt={}));var is,sw=(is=class{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??jt(e);r??(r=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${a} has no name.`);let l,c=o(()=>l??(l=to(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return c()},selectionSegment:to(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},s(is,"DefaultAstNodeDescriptionProvider"),o(is,"DefaultAstNodeDescriptionProvider"),is),as,ow=(as=class{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=Ee.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of Ft(i))await Je(r),Zs(a).forEach(l=>{l.reference.error||n.push(...this.createInfoDescriptions(l))});return n}createInfoDescriptions(e){let r=e.reference;if(r.error||!r.$refNode)return[];let n=[];nt(r)&&r.$nodeDescription?n=[r.$nodeDescription]:Yt(r)&&(n=r.items.map(u=>u.$nodeDescription).filter(u=>u!==void 0));let i=jt(e.container).uri,a=this.nodeLocator.getAstNodePath(e.container),l=[],c=to(r.$refNode);for(let u of n)l.push({sourceUri:i,sourcePath:a,targetUri:u.documentUri,targetPath:u.path,segment:c,local:lt.equals(u.documentUri,i)});return l}},s(as,"DefaultReferenceDescriptionProvider"),o(as,"DefaultReferenceDescriptionProvider"),as),ss,lw=(ss=class{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((n,i)=>{var l;if(!n||i.length===0)return n;let a=i.indexOf(this.indexSeparator);if(a>0){let c=i.substring(0,a),u=parseInt(i.substring(a+1));return(l=n[c])==null?void 0:l[u]}return n[i]},e)}},s(ss,"DefaultAstNodeLocator"),o(ss,"DefaultAstNodeLocator"),ss),Rm={};ad(Rm,Ny(El(),1));var os,uw=(os=class{constructor(e){this._ready=new Gr,this.onConfigurationSectionUpdateEmitter=new Rm.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r;this.workspaceConfig=((r=e.capabilities.workspace)==null?void 0:r.configuration)??!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([r,n])=>{this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},s(os,"DefaultConfigurationProvider"),o(os,"DefaultConfigurationProvider"),os),Fc=Ny(LI(),1),di;(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}s(e,"create"),o(e,"create"),t.create=e})(di||(di={}));var ls,cw=(ls=class{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new zr,this.documentPhaseListeners=new zr,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=ee.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,r={},n=Ee.CancellationToken.None){var i;for(let a of e){let l=a.uri.toString();if(a.state===ee.Validated){if(typeof r.validation=="boolean"&&r.validation)this.resetToState(a,ee.IndexedReferences);else if(typeof r.validation=="object"){let c=this.findMissingValidationCategories(a,r);c.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:{categories:c}},result:(i=this.buildState.get(l))==null?void 0:i.result}),a.state=ee.IndexedReferences)}}else this.buildState.delete(l)}this.currentState=ee.Changed,await this.emitUpdate(e.map(a=>a.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=Ee.CancellationToken.None){this.currentState=ee.Changed;let i=[];for(let u of r){let p=this.langiumDocuments.deleteDocuments(u);for(let d of p)i.push(d.uri),this.cleanUpDeleted(d)}let a=(await Promise.all(e.map(u=>this.findChangedUris(u)))).flat();for(let u of a){let p=this.langiumDocuments.getDocument(u);p===void 0&&(p=this.langiumDocumentFactory.fromModel({$type:"INVALID"},u),p.state=ee.Changed,this.langiumDocuments.addDocument(p)),this.resetToState(p,ee.Changed)}let l=ce(a).concat(i).map(u=>u.toString()).toSet();this.langiumDocuments.all.filter(u=>!l.has(u.uri.toString())&&this.shouldRelink(u,l)).forEach(u=>this.resetToState(u,ee.ComputedScopes)),await this.emitUpdate(a,i),await Je(n);let c=this.sortDocuments(this.langiumDocuments.all.filter(u=>{var p;return u.state<ee.Validated||!((p=this.buildState.get(u.uri.toString()))!=null&&p.completed)||this.resultsAreIncomplete(u,this.updateBuildOptions)}).toArray());await this.buildDocuments(c,this.updateBuildOptions,n)}resultsAreIncomplete(e,r){return this.findMissingValidationCategories(e,r).length>=1}findMissingValidationCategories(e,r){var c,u;let n=this.buildState.get(e.uri.toString()),i=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),a=(c=n==null?void 0:n.result)!=null&&c.validationChecks?new Set((u=n==null?void 0:n.result)==null?void 0:u.validationChecks):n!=null&&n.completed?i:new Set,l=r===void 0||r.validation===!0?i:typeof r.validation=="object"?r.validation.categories??i:[];return ce(l).filter(p=>!a.has(p)).toArray()}async findChangedUris(e){var r;if(this.langiumDocuments.getDocument(e)??((r=this.textDocuments)==null?void 0:r.get(e)))return[e];try{let n=await this.fileSystemProvider.stat(e);if(n.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(n))return[e]}catch{}return[]}async emitUpdate(e,r){await Promise.all(this.updateListeners.map(n=>n(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r<n;){for(;r<e.length&&this.hasTextDocument(e[r]);)r++;for(;n>=0&&!this.hasTextDocument(e[n]);)n--;r<n&&([e[r],e[n]]=[e[n],e[r]])}return e}hasTextDocument(e){var r;return!!((r=this.textDocuments)!=null&&r.get(e.uri))}shouldRelink(e,r){return e.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),di.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}resetToState(e,r){switch(r){case ee.Changed:case ee.Parsed:this.indexManager.removeContent(e.uri);case ee.IndexedContent:e.localSymbols=void 0;case ee.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case ee.Linked:this.indexManager.removeReferences(e.uri);case ee.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case ee.Validated:}e.state>r&&(e.state=r)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=ee.Changed}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,ee.Parsed,n,l=>this.langiumDocumentFactory.update(l,n)),await this.runCancelable(e,ee.IndexedContent,n,l=>this.indexManager.updateContent(l,n)),await this.runCancelable(e,ee.ComputedScopes,n,async l=>{let c=this.serviceRegistry.getServices(l.uri).references.ScopeComputation;l.localSymbols=await c.collectLocalSymbols(l,n)});let i=e.filter(l=>this.shouldLink(l));await this.runCancelable(i,ee.Linked,n,l=>this.serviceRegistry.getServices(l.uri).references.Linker.link(l,n)),await this.runCancelable(i,ee.IndexedReferences,n,l=>this.indexManager.updateReferences(l,n));let a=e.filter(l=>this.shouldValidate(l)?!0:(this.markAsCompleted(l),!1));await this.runCancelable(a,ee.Validated,n,async l=>{await this.validate(l,n),this.markAsCompleted(l)})}markAsCompleted(e){let r=this.buildState.get(e.uri.toString());r&&(r.completed=!0)}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a==null?void 0:a.result})}}async runCancelable(e,r,n,i){for(let l of e)l.state<r&&(await Je(n),await i(l),l.state=r,await this.notifyDocumentPhase(l,r,n));let a=e.filter(l=>l.state===r);await this.notifyBuildPhase(a,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),di.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),di.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;return r&&"path"in r?i=r:n=r,n??(n=Ee.CancellationToken.None),i?this.awaitDocumentState(e,i,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,r,n){let i=this.langiumDocuments.getDocument(r);if(i){if(i.state>=e)return Promise.resolve(r);if(n.isCancellationRequested)return Promise.reject(pr);if(this.currentState>=e&&e>i.state)return Promise.reject(new Fc.ResponseError(Fc.LSPErrorCodes.RequestFailed,`Document state of ${r.toString()} is ${ee[i.state]}, requiring ${ee[e]}, but workspace state is already ${ee[this.currentState]}. Returning undefined.`))}else return Promise.reject(new Fc.ResponseError(Fc.LSPErrorCodes.ServerCancelled,`No document found for URI: ${r.toString()}`));return new Promise((a,l)=>{let c=this.onDocumentPhase(e,p=>{lt.equals(p.uri,r)&&(c.dispose(),u.dispose(),a(p.uri))}),u=n.onCancellationRequested(()=>{c.dispose(),u.dispose(),l(pr)})})}awaitBuilderState(e,r){return this.currentState>=e?Promise.resolve():r.isCancellationRequested?Promise.reject(pr):new Promise((n,i)=>{let a=this.onBuildPhase(e,()=>{a.dispose(),l.dispose(),n()}),l=r.onCancellationRequested(()=>{a.dispose(),l.dispose(),i(pr)})})}async notifyDocumentPhase(e,r,n){let i=this.documentPhaseListeners.get(r).slice();for(let a of i)try{await Je(n),await a(e,n)}catch(l){if(!wn(l))throw l}}async notifyBuildPhase(e,r,n){if(e.length===0)return;let i=this.buildPhaseListeners.get(r).slice();for(let a of i)await Je(n),await a(e,n)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e),a=typeof i.validation=="object"?{...i.validation}:{};a.categories=this.findMissingValidationCategories(e,i);let l=await n.validateDocument(e,a,r);e.diagnostics?e.diagnostics.push(...l):e.diagnostics=l;let c=this.buildState.get(e.uri.toString());c&&(c.result??(c.result={}),c.result.validationChecks?c.result.validationChecks=ce(c.result.validationChecks).concat(a.categories).distinct().toArray():c.result.validationChecks=[...a.categories])}getBuildOptions(e){var r;return((r=this.buildState.get(e.uri.toString()))==null?void 0:r.options)??{}}},s(ls,"DefaultDocumentBuilder"),o(ls,"DefaultDocumentBuilder"),ls),us,pw=(us=class{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new ym,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=jt(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(l=>{lt.equals(l.targetUri,n)&&l.targetPath===r&&i.push(l)})}),ce(i)}allElements(e,r){let n=ce(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){return r?this.symbolByTypeIndex.get(e,r,()=>(this.symbolIndex.get(e)??[]).filter(n=>this.astReflection.isSubtype(n.type,r))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r)}removeReferences(e){let r=e.toString();this.referenceIndex.delete(r)}async updateContent(e,r=Ee.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,r),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,r=Ee.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}},s(us,"DefaultIndexManager"),o(us,"DefaultIndexManager"),us),cs,dw=(cs=class{constructor(e){this.initialBuildOptions={},this._ready=new Gr,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(r=>this.initializeWorkspace(this.folders??[],r))}async initializeWorkspace(e,r=Ee.CancellationToken.None){let n=await this.performStartup(e);await Je(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=[],n=o(l=>{r.push(l),this.langiumDocuments.hasDocument(l.uri)||this.langiumDocuments.addDocument(l)},"collector");await this.loadAdditionalDocuments(e,n);let i=[];await Promise.all(e.map(l=>this.getRootFolder(l)).map(async l=>this.traverseFolder(l,i)));let a=ce(i).distinct(l=>l.toString()).filter(l=>!this.langiumDocuments.hasDocument(l));return await this.loadWorkspaceDocuments(a,n),this._ready.resolve(),r}async loadWorkspaceDocuments(e,r){await Promise.all(e.map(async n=>{let i=await this.langiumDocuments.getOrCreateDocument(n);r(i)}))}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return At.parse(e.uri)}async traverseFolder(e,r){try{let n=await this.fileSystemProvider.readDirectory(e);await Promise.all(n.map(async i=>{this.shouldIncludeEntry(i)&&(i.isDirectory?await this.traverseFolder(i.uri,r):i.isFile&&r.push(i.uri))}))}catch(n){console.error("Failure to read directory content of "+e.toString(!0),n)}}async searchFolder(e){let r=[];return await this.traverseFolder(e,r),r}shouldIncludeEntry(e){let r=lt.basename(e.uri);return r.startsWith(".")?!1:e.isDirectory?r!=="node_modules"&&r!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}},s(cs,"DefaultWorkspaceManager"),o(cs,"DefaultWorkspaceManager"),cs),ps,fw=(ps=class{buildUnexpectedCharactersMessage(e,r,n,i,a){return ny.buildUnexpectedCharactersMessage(e,r,n,i,a)}buildUnableToPopLexerModeMessage(e){return ny.buildUnableToPopLexerModeMessage(e)}},s(ps,"DefaultLexerErrorMessageProvider"),o(ps,"DefaultLexerErrorMessageProvider"),ps),BA={mode:"full"},ds,WA=(ds=class{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=Vu(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new ut(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=BA){var i,a;let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:(a=(i=this.tokenBuilder).flushLexingReport)==null?void 0:a.call(i,e)}}toTokenTypeDictionary(e){if(Vu(e))return e;let r=wc(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}},s(ds,"DefaultLexer"),o(ds,"DefaultLexer"),ds);function xc(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}s(xc,"isTokenTypeArray");o(xc,"isTokenTypeArray");function wc(t){return t&&"modes"in t&&"defaultMode"in t}s(wc,"isIMultiModeLexerDefinition");o(wc,"isIMultiModeLexerDefinition");function Vu(t){return!xc(t)&&!wc(t)}s(Vu,"isTokenTypeDictionary");o(Vu,"isTokenTypeDictionary");Hu();function $m(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=oe.create(0,0));let a=Cm(t),l=Ic(n),c=HA({lines:a,position:i,options:l});return XA({index:0,tokens:c,position:i})}s($m,"parseJSDoc");o($m,"parseJSDoc");function bm(t,e){let r=Ic(e),n=Cm(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],l=r.start,c=r.end;return!!(l!=null&&l.exec(i))&&!!(c!=null&&c.exec(a))}s(bm,"isJSDoc");o(bm,"isJSDoc");function Cm(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(hN)}s(Cm,"getLines");o(Cm,"getLines");var Gk=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,rz=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function HA(t){var i,a,l;let e=[],r=t.position.line,n=t.position.character;for(let c=0;c<t.lines.length;c++){let u=c===0,p=c===t.lines.length-1,d=t.lines[c],f=0;if(u&&t.options.start){let m=(i=t.options.start)==null?void 0:i.exec(d);m&&(f=m.index+m[0].length)}else{let m=(a=t.options.line)==null?void 0:a.exec(d);m&&(f=m.index+m[0].length)}if(p){let m=(l=t.options.end)==null?void 0:l.exec(d);m&&(d=d.substring(0,m.index))}if(d=d.substring(0,JA(d)),Bu(d,f)>=d.length){if(e.length>0){let m=oe.create(r,n);e.push({type:"break",content:"",range:ne.create(m,m)})}}else{Gk.lastIndex=f;let m=Gk.exec(d);if(m){let g=m[0],y=m[1],T=oe.create(r,n+f),A=oe.create(r,n+f+g.length);e.push({type:"tag",content:y,range:ne.create(T,A)}),f+=g.length,f=Bu(d,f)}if(f<d.length){let g=d.substring(f),y=Array.from(g.matchAll(rz));e.push(...YA(y,g,r,n+f))}}r++,n=0}return e.length>0&&e[e.length-1].type==="break"?e.slice(0,-1):e}s(HA,"tokenize");o(HA,"tokenize");function YA(t,e,r,n){let i=[];if(t.length===0){let a=oe.create(r,n),l=oe.create(r,n+e.length);i.push({type:"text",content:e,range:ne.create(a,l)})}else{let a=0;for(let c of t){let u=c.index,p=e.substring(a,u);p.length>0&&i.push({type:"text",content:e.substring(a,u),range:ne.create(oe.create(r,a+n),oe.create(r,u+n))});let d=p.length+1,f=c[1];if(i.push({type:"inline-tag",content:f,range:ne.create(oe.create(r,a+d+n),oe.create(r,a+d+f.length+n))}),d+=f.length,c.length===4){d+=c[2].length;let m=c[3];i.push({type:"text",content:m,range:ne.create(oe.create(r,a+d+n),oe.create(r,a+d+m.length+n))})}else i.push({type:"text",content:"",range:ne.create(oe.create(r,a+d+n),oe.create(r,a+d+n))});a=u+c[0].length}let l=e.substring(a);l.length>0&&i.push({type:"text",content:l,range:ne.create(oe.create(r,a+n),oe.create(r,a+n+l.length))})}return i}s(YA,"buildInlineTokens");o(YA,"buildInlineTokens");var nz=/\S/,iz=/\s*$/;function Bu(t,e){let r=t.substring(e).match(nz);return r?e+r.index:t.length}s(Bu,"skipWhitespace");o(Bu,"skipWhitespace");function JA(t){let e=t.match(iz);if(e&&typeof e.index=="number")return e.index}s(JA,"lastCharacter");o(JA,"lastCharacter");function XA(t){var a,l;let e=oe.create(t.position.line,t.position.character);if(t.tokens.length===0)return new zk([],ne.create(e,e));let r=[];for(;t.index<t.tokens.length;){let c=ZA(t,r[r.length-1]);c&&r.push(c)}let n=((a=r[0])==null?void 0:a.range.start)??e,i=((l=r[r.length-1])==null?void 0:l.range.end)??e;return new zk(r,ne.create(n,i))}s(XA,"parseJSDocComment");o(XA,"parseJSDocComment");function ZA(t,e){let r=t.tokens[t.index];if(r.type==="tag")return Am(t,!1);if(r.type==="text"||r.type==="inline-tag")return Em(t);QA(r,e),t.index++}s(ZA,"parseJSDocElement");o(ZA,"parseJSDocElement");function QA(t,e){if(e){let r=new mw("",t.range);"inlines"in e?e.inlines.push(r):e.content.inlines.push(r)}}s(QA,"appendEmptyLine");o(QA,"appendEmptyLine");function Em(t){let e=t.tokens[t.index],r=e,n=e,i=[];for(;e&&e.type!=="break"&&e.type!=="tag";)i.push(eS(t)),n=e,e=t.tokens[t.index];return new my(i,ne.create(r.range.start,n.range.end))}s(Em,"parseJSDocText");o(Em,"parseJSDocText");function eS(t){return t.tokens[t.index].type==="inline-tag"?Am(t,!0):Sm(t)}s(eS,"parseJSDocInline");o(eS,"parseJSDocInline");function Am(t,e){var i;let r=t.tokens[t.index++],n=r.content.substring(1);if(((i=t.tokens[t.index])==null?void 0:i.type)==="text")if(e){let a=Sm(t);return new jm(n,new my([a],a.range),e,ne.create(r.range.start,a.range.end))}else{let a=Em(t);return new jm(n,a,e,ne.create(r.range.start,a.range.end))}else{let a=r.range;return new jm(n,new my([],a),e,a)}}s(Am,"parseJSDocTag");o(Am,"parseJSDocTag");function Sm(t){let e=t.tokens[t.index++];return new mw(e.content,e.range)}s(Sm,"parseJSDocLine");o(Sm,"parseJSDocLine");function Ic(t){if(!t)return Ic({start:"/**",end:"*/",line:"*"});let{start:e,end:r,line:n}=t;return{start:Au(e,!0),end:Au(r,!1),line:Au(n,!0)}}s(Ic,"normalizeOptions");o(Ic,"normalizeOptions");function Au(t,e){if(typeof t=="string"||typeof t=="object"){let r=typeof t=="string"?so(t):t.source;return e?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}else return t}s(Au,"normalizeOption");o(Au,"normalizeOption");var fs,zk=(fs=class{constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=nd(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=nd(r)+i}return r.trim()}},s(fs,"JSDocCommentImpl"),o(fs,"JSDocCommentImpl"),fs),ms,jm=(ms=class{constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e}
150
+ ${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r;return((r=e==null?void 0:e.renderTag)==null?void 0:r.call(e,this))??this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=tS(this.name,r,e??{});if(typeof a=="string")return a}let n="";(e==null?void 0:e.tag)==="italic"||(e==null?void 0:e.tag)===void 0?n="*":(e==null?void 0:e.tag)==="bold"?n="**":(e==null?void 0:e.tag)==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} — ${r}`:this.content.inlines.length>1&&(i=`${i}
151
+ ${r}`),this.inline?`{${i}}`:i}},s(ms,"JSDocTagImpl"),o(ms,"JSDocTagImpl"),ms);function tS(t,e,r){var n;if(t==="linkplain"||t==="linkcode"||t==="link"){let i=e.indexOf(" "),a=e;if(i>0){let l=Bu(e,i);a=e.substring(l),e=e.substring(0,i)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(a=`\`${a}\``),((n=r.renderLink)==null?void 0:n.call(r,e,a))??rS(e,a)}}s(tS,"renderInlineTag");o(tS,"renderInlineTag");function rS(t,e){try{return At.parse(t,!0),`[${e}](${t})`}catch{return t}}s(rS,"renderLinkDefault");o(rS,"renderLinkDefault");var hs,my=(hs=class{constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];e+=n.toString(),i&&i.range.start.line>n.range.start.line&&(e+=`
152
+ `)}return e}toMarkdown(e){let r="";for(let n=0;n<this.inlines.length;n++){let i=this.inlines[n],a=this.inlines[n+1];r+=i.toMarkdown(e),a&&a.range.start.line>i.range.start.line&&(r+=`
153
+ `)}return r}},s(hs,"JSDocTextImpl"),o(hs,"JSDocTextImpl"),hs),ys,mw=(ys=class{constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}},s(ys,"JSDocLineImpl"),o(ys,"JSDocLineImpl"),ys);function nd(t){return t.endsWith(`
154
+ `)?`
155
+ `:`
156
+
157
+ `}s(nd,"fillNewlines");o(nd,"fillNewlines");var gs,hw=(gs=class{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&bm(r))return $m(r).toMarkdown({renderLink:o((n,i)=>this.documentationLinkRenderer(e,n,i),"renderLink"),renderTag:o(n=>this.documentationTagRenderer(e,n),"renderTag")})}documentationLinkRenderer(e,r,n){let i=this.findNameInLocalSymbols(e,r)??this.findNameInGlobalScope(e,r);if(i&&i.nameSegment){let a=i.nameSegment.range.start.line+1,l=i.nameSegment.range.start.character+1,c=i.documentUri.with({fragment:`L${a},${l}`});return`[${n}](${c.toString()})`}else return}documentationTagRenderer(e,r){}findNameInLocalSymbols(e,r){let n=jt(e).localSymbols;if(!n)return;let i=e;do{let a=n.getStream(i).find(l=>l.name===r);if(a)return a;i=i.$container}while(i)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(n=>n.name===r)}},s(gs,"JSDocDocumentationProvider"),o(gs,"JSDocDocumentationProvider"),gs),vs,yw=(vs=class{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return gm(e)?e.$comment:(r=Pd(e.$cstNode,this.grammarConfig().multilineCommentRules))==null?void 0:r.text}},s(vs,"DefaultCommentProvider"),o(vs,"DefaultCommentProvider"),vs),Ts,gw=(Ts=class{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},s(Ts,"DefaultAsyncParser"),o(Ts,"DefaultAsyncParser"),Ts),Rs,az=(Rs=class{constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let e=this.createWorker();e.onReady(()=>{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new Gr,a,l=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(c=>{let u=this.hydrator.hydrate(c);i.resolve(u)}).catch(c=>{i.reject(c)}).finally(()=>{l.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new Gr;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(pr)}),this.queue.push(r),r.promise}},s(Rs,"AbstractThreadedAsyncParser"),o(Rs,"AbstractThreadedAsyncParser"),Rs),$s,sz=($s=class{get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new Rm.Emitter,this.deferred=new Gr,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let l=a;this.deferred.resolve(l),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(pr),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new Gr,this.sendMessage(e),this.deferred.promise}},s($s,"ParserWorker"),o($s,"ParserWorker"),$s),bs,vw=(bs=class{constructor(){this.previousTokenSource=new Ee.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=Nc();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=Ee.CancellationToken.None){let i=new Gr,a={action:r,deferred:i,cancellationToken:n};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){wn(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},s(bs,"DefaultWorkspaceLock"),o(bs,"DefaultWorkspaceLock"),bs),Cs,Tw=(Cs=class{constructor(e){this.grammarElementIdMap=new ed,this.tokenTypeIdMap=new ed,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>({...r,message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of Ft(e))r.set(i,{});if(e.$cstNode)for(let i of eo(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let l=[];n[i]=l;for(let c of a)Ke(c)?l.push(this.dehydrateAstNode(c,r)):nt(c)?l.push(this.dehydrateReference(c,r)):l.push(c)}else Ke(a)?n[i]=this.dehydrateAstNode(a,r):nt(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return Ju(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),dr(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):fn(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of Ft(e))r.set(a,{});let i;if(e.$cstNode)for(let a of eo(e.$cstNode)){let l;"fullText"in a?(l=new NA(a.fullText),i=l):"content"in a?l=new im:"tokenType"in a&&(l=this.hydrateCstLeafNode(a)),l&&(n.set(a,l),l.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let l=[];n[i]=l;for(let c of a)Ke(c)?l.push(this.setParent(this.hydrateAstNode(c,r),n)):nt(c)?l.push(this.hydrateReference(c,n,i,r)):l.push(c)}else Ke(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):nt(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),dr(i))for(let a of e.content){let l=this.hydrateCstNode(a,r,n++);i.content.push(l)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,l=e.startColumn,c=e.endLine,u=e.endColumn,p=e.hidden;return new Jp(n,i,{start:{line:a,character:l},end:{line:c,character:u}},r,p)}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 r of Ft(this.grammar))Xu(r)&&this.grammarElementIdMap.set(r,e++)}},s(Cs,"DefaultHydrator"),o(Cs,"DefaultHydrator"),Cs);function Rt(t){return{documentation:{CommentProvider:o(e=>new yw(e),"CommentProvider"),DocumentationProvider:o(e=>new hw(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new gw(e),"AsyncParser"),GrammarConfig:o(e=>tf(e),"GrammarConfig"),LangiumParser:o(e=>lm(e),"LangiumParser"),CompletionParser:o(e=>om(e),"CompletionParser"),ValueConverter:o(()=>new zA,"ValueConverter"),TokenBuilder:o(()=>new cm,"TokenBuilder"),Lexer:o(e=>new WA(e),"Lexer"),ParserErrorMessageProvider:o(()=>new wA,"ParserErrorMessageProvider"),LexerErrorMessageProvider:o(()=>new fw,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new lw,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new sw(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new ow(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new Hx(e),"Linker"),NameProvider:o(()=>new Yx,"NameProvider"),ScopeProvider:o(e=>new ew(e),"ScopeProvider"),ScopeComputation:o(e=>new Xx(e),"ScopeComputation"),References:o(e=>new Jx(e),"References")},serializer:{Hydrator:o(e=>new Tw(e),"Hydrator"),JsonSerializer:o(e=>new tw(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new aw(e),"DocumentValidator"),ValidationRegistry:o(e=>new nw(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}s(Rt,"createDefaultCoreModule");o(Rt,"createDefaultCoreModule");function $t(t){return{ServiceRegistry:o(e=>new rw(e),"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new Wx(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new Bx(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new cw(e),"DocumentBuilder"),IndexManager:o(e=>new pw(e),"IndexManager"),WorkspaceManager:o(e=>new dw(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new vw,"WorkspaceLock"),ConfigurationProvider:o(e=>new uw(e),"ConfigurationProvider")},profilers:{}}}s($t,"createDefaultSharedCoreModule");o($t,"createDefaultSharedCoreModule");var hy;(function(t){t.merge=(e,r)=>io(io({},e),r)})(hy||(hy={}));function Pe(t,e,r,n,i,a,l,c,u){let p=[t,e,r,n,i,a,l,c,u].reduce(io,{});return Nm(p)}s(Pe,"inject");o(Pe,"inject");var Rw=Symbol("isProxy");function km(t){if(t&&t[Rw])for(let e of Object.values(t))km(e);return t}s(km,"eagerLoad");o(km,"eagerLoad");function Nm(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),set:o(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:o((n,i)=>i===Rw?!0:id(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(id(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}s(Nm,"_inject");o(Nm,"_inject");var qk=Symbol();function id(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+t[e]);if(t[e]===qk)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=qk;try{t[e]=typeof i=="function"?i(n):Nm(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}s(id,"_resolve");o(id,"_resolve");function io(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!=null)if(typeof n=="object"){let i=t[r];typeof i=="object"&&i!==null?t[r]=io(i,n):t[r]=io({},n)}else t[r]=n}return t}s(io,"_merge");o(io,"_merge");var yy={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]},ui;(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(ui||(ui={}));var Es,$w=(Es=class extends cm{constructor(e=yy){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...yy,...e},this.indentTokenType=pi({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=pi({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!xc(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:a,whitespaceTokenName:l,ignoreIndentationDelimiters:c}=this.options,u,p,d,f=[];for(let m of n){for(let[g,y]of c)m.name===g?m.PUSH_MODE=ui.IGNORE_INDENTATION:m.name===y&&(m.POP_MODE=!0);m.name===a?u=m:m.name===i?p=m:m.name===l?d=m:f.push(m)}if(!u||!p||!d)throw new Error("Some indentation/whitespace tokens not found!");return c.length>0?{modes:{[ui.REGULAR]:[u,p,...f,d],[ui.IGNORE_INDENTATION]:[...f,d]},defaultMode:ui.REGULAR}:[u,p,d,...f]}flushLexingReport(e){return{...super.flushLexingReport(e),remainingDedents:this.flushRemainingDedents(e)}}isStartOfLine(e,r){return r===0||`\r
158
+ `.includes(e[r-1])}matchWhitespace(e,r,n,i){this.whitespaceRegExp.lastIndex=r;let a=this.whitespaceRegExp.exec(e);return{currIndentLevel:(a==null?void 0:a[0].length)??0,prevIndentLevel:this.indentationStack.at(-1),match:a}}createIndentationTokenInstance(e,r,n,i){let a=this.getLineNumber(r,i);return Dl(e,n,i,i+n.length,a,a,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:l,match:c}=this.matchWhitespace(e,r,n,i);return a<=l?null:(this.indentationStack.push(a),c)}dedentMatcher(e,r,n,i){var f,m;if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:l,match:c}=this.matchWhitespace(e,r,n,i);if(a>=l)return null;let u=this.indentationStack.lastIndexOf(a);if(u===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${a} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:((f=c==null?void 0:c[0])==null?void 0:f.length)??0,line:this.getLineNumber(e,r),column:1}),null;let p=this.indentationStack.length-u-1,d=((m=e.substring(0,r).match(/[\r\n]+$/))==null?void 0:m[0].length)??1;for(let g=0;g<p;g++){let y=this.createIndentationTokenInstance(this.dedentTokenType,e,"",r-(d-1));n.push(y),this.indentationStack.pop()}return null}buildTerminalToken(e){let r=super.buildTerminalToken(e),{indentTokenName:n,dedentTokenName:i,whitespaceTokenName:a}=this.options;return r.name===n?this.indentTokenType:r.name===i?this.dedentTokenType:r.name===a?pi({name:a,pattern:this.whitespaceRegExp,group:ut.SKIPPED}):r}flushRemainingDedents(e){let r=[];for(;this.indentationStack.length>1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},s(Es,"IndentationAwareTokenBuilder"),o(Es,"IndentationAwareTokenBuilder"),Es),As,oz=(As=class extends WA{constructor(e){if(super(e),e.parser.TokenBuilder instanceof $w)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=BA){let n=super.tokenize(e),i=n.report;(r==null?void 0:r.mode)==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:a,dedentTokenType:l}=this.indentationTokenBuilder,c=a.tokenTypeIdx,u=l.tokenTypeIdx,p=[],d=n.tokens.length-1;for(let f=0;f<d;f++){let m=n.tokens[f],g=n.tokens[f+1];if(m.tokenTypeIdx===c&&g.tokenTypeIdx===u){f++;continue}p.push(m)}return d>=0&&p.push(n.tokens[d]),n.tokens=p,n}},s(As,"IndentationAwareLexer"),o(As,"IndentationAwareLexer"),As),nS={};dn(nS,{AstUtils:s(()=>Dy,"AstUtils"),BiMap:s(()=>ed,"BiMap"),Cancellation:s(()=>Ee,"Cancellation"),ContextCache:s(()=>ym,"ContextCache"),CstUtils:s(()=>Iy,"CstUtils"),DONE_RESULT:s(()=>ot,"DONE_RESULT"),Deferred:s(()=>Gr,"Deferred"),Disposable:s(()=>di,"Disposable"),DisposableCache:s(()=>hm,"DisposableCache"),DocumentCache:s(()=>Qx,"DocumentCache"),EMPTY_STREAM:s(()=>ul,"EMPTY_STREAM"),ErrorWithLocation:s(()=>Od,"ErrorWithLocation"),GrammarUtils:s(()=>og,"GrammarUtils"),MultiMap:s(()=>zr,"MultiMap"),OperationCancelled:s(()=>pr,"OperationCancelled"),Reduction:s(()=>Su,"Reduction"),RegExpUtils:s(()=>lg,"RegExpUtils"),SimpleCache:s(()=>KA,"SimpleCache"),StreamImpl:s(()=>cr,"StreamImpl"),TreeStreamImpl:s(()=>cl,"TreeStreamImpl"),URI:s(()=>At,"URI"),UriTrie:s(()=>UA,"UriTrie"),UriUtils:s(()=>lt,"UriUtils"),WorkspaceCache:s(()=>VA,"WorkspaceCache"),assertCondition:s(()=>Md,"assertCondition"),assertUnreachable:s(()=>qr,"assertUnreachable"),delayNextTick:s(()=>kc,"delayNextTick"),interruptAndCheck:s(()=>Je,"interruptAndCheck"),isOperationCancelled:s(()=>wn,"isOperationCancelled"),loadGrammarFromJson:s(()=>bt,"loadGrammarFromJson"),setInterruptionPeriod:s(()=>pm,"setInterruptionPeriod"),startCancelableOperation:s(()=>Nc,"startCancelableOperation"),stream:s(()=>ce,"stream")});ad(nS,Rm);var Ss,bw=(Ss=class{stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},s(Ss,"EmptyFileSystemProvider"),o(Ss,"EmptyFileSystemProvider"),Ss),Kt={fileSystemProvider:o(()=>new bw,"fileSystemProvider")},lz={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},uz={AstReflection:o(()=>new Zy,"AstReflection")};function iS(){let t=Pe($t(Kt),uz),e=Pe(Rt({shared:t}),lz);return t.ServiceRegistry.register(e),e}s(iS,"createMinimalGrammarServices");o(iS,"createMinimalGrammarServices");function bt(t){let e=iS(),r=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(r,At.parse(`memory:/${r.name??"grammar"}.langium`)),r}s(bt,"loadGrammarFromJson");o(bt,"loadGrammarFromJson");ad(dN,nS);var ks,cz=(ks=class{constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new zr}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(r=>this.activeCategories.add(r)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(r=>this.activeCategories.delete(r)):this.activeCategories.clear()}createTask(e,r){if(!this.isActive(e))throw new Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${r}'.`),new Cw(n=>this.records.add(e,this.dumpRecord(e,n)),r)}dumpRecord(e,r){console.info(`Task ${e}.${r.identifier} executed in ${r.duration.toFixed(2)}ms and ended at ${r.date.toISOString()}`);let n=[];for(let l of r.entries.keys()){let c=r.entries.get(l),u=c.reduce((p,d)=>p+d);n.push({name:`${r.identifier}.${l}`,count:c.length,duration:u})}let i=r.duration-n.map(l=>l.duration).reduce((l,c)=>l+c,0);n.push({name:r.identifier,count:1,duration:i}),n.sort((l,c)=>c.duration-l.duration);function a(l){return Math.round(100*l)/100}return s(a,"Round"),o(a,"Round"),console.table(n.map(l=>({Element:l.name,Count:l.count,"Self %":a(100*l.duration/r.duration),"Time (ms)":a(l.duration)}))),r}getRecords(...e){return e.length===0?this.records.values():this.records.entries().filter(r=>e.some(n=>n===r[0])).flatMap(r=>r[1])}},s(ks,"DefaultLangiumProfiler"),o(ks,"DefaultLangiumProfiler"),ks),Ns,Cw=(Ns=class{constructor(e,r){this.stack=[],this.entries=new zr,this.addRecord=e,this.identifier=r}start(){if(this.startTime!==void 0)throw new Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw new Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw new Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(r=>r.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let r=this.stack.pop();if(!r)throw new Error(`Task "${this.identifier}.${e}" was not started.`);if(r.id!==e)throw new Error(`Sub-Task "${r.id}" is not already stopped.`);let n=performance.now()-r.start;this.stack.at(-1)!==void 0&&(this.stack[this.stack.length-1].content+=n);let i=n-r.content;this.entries.add(e,i)}},s(Ns,"ProfilingTask"),o(Ns,"ProfilingTask"),Ns),gy;(t=>{t.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[\w ]+)\]/}})(gy||(gy={}));var vy;(t=>{t.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]*/}})(vy||(vy={}));var Ty;(t=>{t.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])?/}})(Ty||(Ty={}));var Ry;(t=>{t.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]*/}})(Ry||(Ry={}));var $y;(t=>{t.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]*/}})($y||($y={}));var by;(t=>{t.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]*/}})(by||(by={}));var Cy;(t=>{t.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]*/}})(Cy||(Cy={}));var Ey;(t=>{t.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:/"[^"]*"|'[^']*'/}})(Ey||(Ey={}));var Ay;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,STRING2:/"[^"]*"|'[^']*'/}})(Ay||(Ay={}));var Sy;(t=>{t.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]*/}})(Sy||(Sy={}));({...gy.Terminals,...vy.Terminals,...Ty.Terminals,...Ry.Terminals,...$y.Terminals,...by.Terminals,...Cy.Terminals,...Ay.Terminals,...Ey.Terminals,...Sy.Terminals});var Gc={$type:"Accelerator",name:"name",x:"x",y:"y"},zc={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},Kl={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},Fm={$type:"Annotations",x:"x",y:"y"},xr={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function Ew(t){return Pt.isInstance(t,xr.$type)}s(Ew,"isArchitecture");o(Ew,"isArchitecture");var qc={$type:"Axis",label:"label",name:"name"},cp={$type:"Branch",name:"name",order:"order"};function Aw(t){return Pt.isInstance(t,cp.$type)}s(Aw,"isBranch");o(Aw,"isBranch");var Uk={$type:"Checkout",branch:"branch"},Uc={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},Gm={$type:"ClassDefStatement",className:"className",styleText:"styleText"},zo={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function Sw(t){return Pt.isInstance(t,zo.$type)}s(Sw,"isCommit");o(Sw,"isCommit");var Kc={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},Mn={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},Vc={$type:"Curve",entries:"entries",label:"label",name:"name"},Bc={$type:"Deaccelerator",name:"name",x:"x",y:"y"},Kk={$type:"Decorator",strategy:"strategy"},_o={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},ar={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},Do={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},jn={$type:"EmFrame"},Vl={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},Vk={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},zm={$type:"EmModelEntity",name:"name"};function kw(t){return t==="rmo"||t==="readmodel"||t==="ui"||t==="cmd"||t==="command"||t==="evt"||t==="event"||t==="pcr"||t==="processor"}s(kw,"isEmModelEntityType");o(kw,"isEmModelEntityType");var Wc={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},wr={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};function Nw(t){return Pt.isInstance(t,wr.$type)}s(Nw,"isEmResetFrame");o(Nw,"isEmResetFrame");var Hr={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},qm={$type:"Entry",axis:"axis",value:"value"},kr={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},Bk={$type:"Evolution",stages:"stages"},Hc={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},Um={$type:"Evolve",component:"component",target:"target"},Bn={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function xw(t){return Pt.isInstance(t,Bn.$type)}s(xw,"isGitGraph");o(xw,"isGitGraph");var Bl={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},su={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function ww(t){return Pt.isInstance(t,su.$type)}s(ww,"isInfo");o(ww,"isInfo");var Wl={$type:"Item",classSelector:"classSelector",name:"name"},Km={$type:"Junction",id:"id",in:"in"},Hl={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},Yc={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},Fn={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},qo={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function Iw(t){return Pt.isInstance(t,qo.$type)}s(Iw,"isMerge");o(Iw,"isMerge");var Jc={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},Vm={$type:"Option",name:"name",value:"value"},Uo={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function Pw(t){return Pt.isInstance(t,Uo.$type)}s(Pw,"isPacket");o(Pw,"isPacket");var Ko={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function _w(t){return Pt.isInstance(t,Ko.$type)}s(_w,"isPacketBlock");o(_w,"isPacketBlock");var Wn={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function Dw(t){return Pt.isInstance(t,Wn.$type)}s(Dw,"isPie");o(Dw,"isPie");var pp={$type:"PieSection",label:"label",value:"value"};function Lw(t){return Pt.isInstance(t,pp.$type)}s(Lw,"isPieSection");o(Lw,"isPieSection");var Bm={$type:"Pipeline",components:"components",parent:"parent"},Xc={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},Gn={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},Wm={$type:"Section",classSelector:"classSelector",name:"name"},Lo={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},Hm={$type:"Size",height:"height",width:"width"},Oo={$type:"Statement"},Vo={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function Ow(t){return Pt.isInstance(t,Vo.$type)}s(Ow,"isTreemap");o(Ow,"isTreemap");var Ym={$type:"TreemapRow",indent:"indent",item:"item"},Jm={$type:"TreeNode",indent:"indent",name:"name"},Yl={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},Qe={$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 Mw(t){return Pt.isInstance(t,Qe.$type)}s(Mw,"isWardley");o(Mw,"isWardley");var xs,jw=(xs=class extends Py{constructor(){super(...arguments),this.types={Accelerator:{name:Gc.$type,properties:{name:{name:Gc.name},x:{name:Gc.x},y:{name:Gc.y}},superTypes:[]},Anchor:{name:zc.$type,properties:{evolution:{name:zc.evolution},name:{name:zc.name},visibility:{name:zc.visibility}},superTypes:[]},Annotation:{name:Kl.$type,properties:{number:{name:Kl.number},text:{name:Kl.text},x:{name:Kl.x},y:{name:Kl.y}},superTypes:[]},Annotations:{name:Fm.$type,properties:{x:{name:Fm.x},y:{name:Fm.y}},superTypes:[]},Architecture:{name:xr.$type,properties:{accDescr:{name:xr.accDescr},accTitle:{name:xr.accTitle},edges:{name:xr.edges,defaultValue:[]},groups:{name:xr.groups,defaultValue:[]},junctions:{name:xr.junctions,defaultValue:[]},services:{name:xr.services,defaultValue:[]},title:{name:xr.title}},superTypes:[]},Axis:{name:qc.$type,properties:{label:{name:qc.label},name:{name:qc.name}},superTypes:[]},Branch:{name:cp.$type,properties:{name:{name:cp.name},order:{name:cp.order}},superTypes:[Oo.$type]},Checkout:{name:Uk.$type,properties:{branch:{name:Uk.branch}},superTypes:[Oo.$type]},CherryPicking:{name:Uc.$type,properties:{id:{name:Uc.id},parent:{name:Uc.parent},tags:{name:Uc.tags,defaultValue:[]}},superTypes:[Oo.$type]},ClassDefStatement:{name:Gm.$type,properties:{className:{name:Gm.className},styleText:{name:Gm.styleText}},superTypes:[]},Commit:{name:zo.$type,properties:{id:{name:zo.id},message:{name:zo.message},tags:{name:zo.tags,defaultValue:[]},type:{name:zo.type}},superTypes:[Oo.$type]},Common:{name:Kc.$type,properties:{accDescr:{name:Kc.accDescr},accTitle:{name:Kc.accTitle},title:{name:Kc.title}},superTypes:[]},Component:{name:Mn.$type,properties:{decorator:{name:Mn.decorator},evolution:{name:Mn.evolution},inertia:{name:Mn.inertia,defaultValue:!1},label:{name:Mn.label},name:{name:Mn.name},visibility:{name:Mn.visibility}},superTypes:[]},Curve:{name:Vc.$type,properties:{entries:{name:Vc.entries,defaultValue:[]},label:{name:Vc.label},name:{name:Vc.name}},superTypes:[]},Deaccelerator:{name:Bc.$type,properties:{name:{name:Bc.name},x:{name:Bc.x},y:{name:Bc.y}},superTypes:[]},Decorator:{name:Kk.$type,properties:{strategy:{name:Kk.strategy}},superTypes:[]},Direction:{name:_o.$type,properties:{accDescr:{name:_o.accDescr},accTitle:{name:_o.accTitle},dir:{name:_o.dir},statements:{name:_o.statements,defaultValue:[]},title:{name:_o.title}},superTypes:[Bn.$type]},Edge:{name:ar.$type,properties:{lhsDir:{name:ar.lhsDir},lhsGroup:{name:ar.lhsGroup,defaultValue:!1},lhsId:{name:ar.lhsId},lhsInto:{name:ar.lhsInto,defaultValue:!1},rhsDir:{name:ar.rhsDir},rhsGroup:{name:ar.rhsGroup,defaultValue:!1},rhsId:{name:ar.rhsId},rhsInto:{name:ar.rhsInto,defaultValue:!1},title:{name:ar.title}},superTypes:[]},EmDataEntity:{name:Do.$type,properties:{dataBlockValue:{name:Do.dataBlockValue},dataType:{name:Do.dataType},name:{name:Do.name}},superTypes:[]},EmFrame:{name:jn.$type,properties:{},superTypes:[]},EmGwt:{name:Vl.$type,properties:{givenStatements:{name:Vl.givenStatements,defaultValue:[]},sourceFrame:{name:Vl.sourceFrame,referenceType:jn.$type},thenStatements:{name:Vl.thenStatements,defaultValue:[]},whenStatements:{name:Vl.whenStatements,defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:Vk.$type,properties:{entityIdentifier:{name:Vk.entityIdentifier,referenceType:zm.$type}},superTypes:[]},EmModelEntity:{name:zm.$type,properties:{name:{name:zm.name}},superTypes:[]},EmNoteEntity:{name:Wc.$type,properties:{dataBlockValue:{name:Wc.dataBlockValue},dataType:{name:Wc.dataType},sourceFrame:{name:Wc.sourceFrame,referenceType:jn.$type}},superTypes:[]},EmResetFrame:{name:wr.$type,properties:{dataInlineValue:{name:wr.dataInlineValue},dataReference:{name:wr.dataReference,referenceType:Do.$type},dataType:{name:wr.dataType},entityIdentifier:{name:wr.entityIdentifier},modelEntityType:{name:wr.modelEntityType},name:{name:wr.name},sourceFrames:{name:wr.sourceFrames,defaultValue:[],referenceType:jn.$type}},superTypes:[jn.$type]},EmTimeFrame:{name:Hr.$type,properties:{dataInlineValue:{name:Hr.dataInlineValue},dataReference:{name:Hr.dataReference,referenceType:Do.$type},dataType:{name:Hr.dataType},entityIdentifier:{name:Hr.entityIdentifier},modelEntityType:{name:Hr.modelEntityType},name:{name:Hr.name},sourceFrames:{name:Hr.sourceFrames,defaultValue:[],referenceType:jn.$type}},superTypes:[jn.$type]},Entry:{name:qm.$type,properties:{axis:{name:qm.axis,referenceType:qc.$type},value:{name:qm.value}},superTypes:[]},EventModel:{name:kr.$type,properties:{accDescr:{name:kr.accDescr},accTitle:{name:kr.accTitle},dataEntities:{name:kr.dataEntities,defaultValue:[]},frames:{name:kr.frames,defaultValue:[]},gwtEntities:{name:kr.gwtEntities,defaultValue:[]},modelEntities:{name:kr.modelEntities,defaultValue:[]},noteEntities:{name:kr.noteEntities,defaultValue:[]},title:{name:kr.title}},superTypes:[]},Evolution:{name:Bk.$type,properties:{stages:{name:Bk.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:Hc.$type,properties:{boundary:{name:Hc.boundary},name:{name:Hc.name},secondName:{name:Hc.secondName}},superTypes:[]},Evolve:{name:Um.$type,properties:{component:{name:Um.component},target:{name:Um.target}},superTypes:[]},GitGraph:{name:Bn.$type,properties:{accDescr:{name:Bn.accDescr},accTitle:{name:Bn.accTitle},statements:{name:Bn.statements,defaultValue:[]},title:{name:Bn.title}},superTypes:[]},Group:{name:Bl.$type,properties:{icon:{name:Bl.icon},id:{name:Bl.id},in:{name:Bl.in},title:{name:Bl.title}},superTypes:[]},Info:{name:su.$type,properties:{accDescr:{name:su.accDescr},accTitle:{name:su.accTitle},title:{name:su.title}},superTypes:[]},Item:{name:Wl.$type,properties:{classSelector:{name:Wl.classSelector},name:{name:Wl.name}},superTypes:[]},Junction:{name:Km.$type,properties:{id:{name:Km.id},in:{name:Km.in}},superTypes:[]},Label:{name:Hl.$type,properties:{negX:{name:Hl.negX,defaultValue:!1},negY:{name:Hl.negY,defaultValue:!1},offsetX:{name:Hl.offsetX},offsetY:{name:Hl.offsetY}},superTypes:[]},Leaf:{name:Yc.$type,properties:{classSelector:{name:Yc.classSelector},name:{name:Yc.name},value:{name:Yc.value}},superTypes:[Wl.$type]},Link:{name:Fn.$type,properties:{arrow:{name:Fn.arrow},from:{name:Fn.from},fromPort:{name:Fn.fromPort},linkLabel:{name:Fn.linkLabel},to:{name:Fn.to},toPort:{name:Fn.toPort}},superTypes:[]},Merge:{name:qo.$type,properties:{branch:{name:qo.branch},id:{name:qo.id},tags:{name:qo.tags,defaultValue:[]},type:{name:qo.type}},superTypes:[Oo.$type]},Note:{name:Jc.$type,properties:{evolution:{name:Jc.evolution},text:{name:Jc.text},visibility:{name:Jc.visibility}},superTypes:[]},Option:{name:Vm.$type,properties:{name:{name:Vm.name},value:{name:Vm.value,defaultValue:!1}},superTypes:[]},Packet:{name:Uo.$type,properties:{accDescr:{name:Uo.accDescr},accTitle:{name:Uo.accTitle},blocks:{name:Uo.blocks,defaultValue:[]},title:{name:Uo.title}},superTypes:[]},PacketBlock:{name:Ko.$type,properties:{bits:{name:Ko.bits},end:{name:Ko.end},label:{name:Ko.label},start:{name:Ko.start}},superTypes:[]},Pie:{name:Wn.$type,properties:{accDescr:{name:Wn.accDescr},accTitle:{name:Wn.accTitle},sections:{name:Wn.sections,defaultValue:[]},showData:{name:Wn.showData,defaultValue:!1},title:{name:Wn.title}},superTypes:[]},PieSection:{name:pp.$type,properties:{label:{name:pp.label},value:{name:pp.value}},superTypes:[]},Pipeline:{name:Bm.$type,properties:{components:{name:Bm.components,defaultValue:[]},parent:{name:Bm.parent}},superTypes:[]},PipelineComponent:{name:Xc.$type,properties:{evolution:{name:Xc.evolution},label:{name:Xc.label},name:{name:Xc.name}},superTypes:[]},Radar:{name:Gn.$type,properties:{accDescr:{name:Gn.accDescr},accTitle:{name:Gn.accTitle},axes:{name:Gn.axes,defaultValue:[]},curves:{name:Gn.curves,defaultValue:[]},options:{name:Gn.options,defaultValue:[]},title:{name:Gn.title}},superTypes:[]},Section:{name:Wm.$type,properties:{classSelector:{name:Wm.classSelector},name:{name:Wm.name}},superTypes:[Wl.$type]},Service:{name:Lo.$type,properties:{icon:{name:Lo.icon},iconText:{name:Lo.iconText},id:{name:Lo.id},in:{name:Lo.in},title:{name:Lo.title}},superTypes:[]},Size:{name:Hm.$type,properties:{height:{name:Hm.height},width:{name:Hm.width}},superTypes:[]},Statement:{name:Oo.$type,properties:{},superTypes:[]},TreeNode:{name:Jm.$type,properties:{indent:{name:Jm.indent},name:{name:Jm.name}},superTypes:[]},TreeView:{name:Yl.$type,properties:{accDescr:{name:Yl.accDescr},accTitle:{name:Yl.accTitle},nodes:{name:Yl.nodes,defaultValue:[]},title:{name:Yl.title}},superTypes:[]},Treemap:{name:Vo.$type,properties:{accDescr:{name:Vo.accDescr},accTitle:{name:Vo.accTitle},title:{name:Vo.title},TreemapRows:{name:Vo.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Ym.$type,properties:{indent:{name:Ym.indent},item:{name:Ym.item}},superTypes:[]},Wardley:{name:Qe.$type,properties:{accDescr:{name:Qe.accDescr},accelerators:{name:Qe.accelerators,defaultValue:[]},accTitle:{name:Qe.accTitle},anchors:{name:Qe.anchors,defaultValue:[]},annotation:{name:Qe.annotation,defaultValue:[]},annotations:{name:Qe.annotations,defaultValue:[]},components:{name:Qe.components,defaultValue:[]},deaccelerators:{name:Qe.deaccelerators,defaultValue:[]},evolution:{name:Qe.evolution},evolves:{name:Qe.evolves,defaultValue:[]},links:{name:Qe.links,defaultValue:[]},notes:{name:Qe.notes,defaultValue:[]},pipelines:{name:Qe.pipelines,defaultValue:[]},size:{name:Qe.size},title:{name:Qe.title}},superTypes:[]}}}},s(xs,"MermaidAstReflection"),o(xs,"MermaidAstReflection"),xs),Pt=new jw,Wk,pz=o(()=>Wk??(Wk=bt(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),Hk,dz=o(()=>Hk??(Hk=bt('{"$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"),Yk,fz=o(()=>Yk??(Yk=bt(`{"$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"),Jk,mz=o(()=>Jk??(Jk=bt(`{"$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"),Xk,hz=o(()=>Xk??(Xk=bt(`{"$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"),Zk,yz=o(()=>Zk??(Zk=bt(`{"$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"),Qk,gz=o(()=>Qk??(Qk=bt(`{"$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"),eN,vz=o(()=>eN??(eN=bt(`{"$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"),tN,Tz=o(()=>tN??(tN=bt(`{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@9"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n * Converted from treemap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}`)),"TreeViewGrammarGrammar"),rN,Rz=o(()=>rN??(rN=bt(`{"$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"),$z={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},bz={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Cz={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Ez={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Az={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Sz={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},kz={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Nz={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},xz={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},wz={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Er={AstReflection:o(()=>new jw,"AstReflection")},Iz={Grammar:o(()=>pz(),"Grammar"),LanguageMetaData:o(()=>$z,"LanguageMetaData"),parser:{}},Pz={Grammar:o(()=>dz(),"Grammar"),LanguageMetaData:o(()=>bz,"LanguageMetaData"),parser:{}},_z={Grammar:o(()=>fz(),"Grammar"),LanguageMetaData:o(()=>Cz,"LanguageMetaData"),parser:{}},Dz={Grammar:o(()=>mz(),"Grammar"),LanguageMetaData:o(()=>Ez,"LanguageMetaData"),parser:{}},Lz={Grammar:o(()=>hz(),"Grammar"),LanguageMetaData:o(()=>Az,"LanguageMetaData"),parser:{}},Oz={Grammar:o(()=>yz(),"Grammar"),LanguageMetaData:o(()=>Sz,"LanguageMetaData"),parser:{}},Mz={Grammar:o(()=>gz(),"Grammar"),LanguageMetaData:o(()=>kz,"LanguageMetaData"),parser:{}},jz={Grammar:o(()=>vz(),"Grammar"),LanguageMetaData:o(()=>Nz,"LanguageMetaData"),parser:{}},Fz={Grammar:o(()=>Tz(),"Grammar"),LanguageMetaData:o(()=>xz,"LanguageMetaData"),parser:{}},Gz={Grammar:o(()=>Rz(),"Grammar"),LanguageMetaData:o(()=>wz,"LanguageMetaData"),parser:{}},zz=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,qz=/accTitle[\t ]*:([^\n\r]*)/,Uz=/title([\t ][^\n\r]*|)/,Kz={ACC_DESCR:zz,ACC_TITLE:qz,TITLE:Uz},ws,Fl=(ws=class extends zA{runConverter(e,r,n){let i=this.runCommonConverter(e,r,n);return i===void 0&&(i=this.runCustomConverter(e,r,n)),i===void 0?super.runConverter(e,r,n):i}runCommonConverter(e,r,n){let i=Kz[e.name];if(i===void 0)return;let a=i.exec(r);if(a!==null){if(a[1]!==void 0)return a[1].trim().replace(/[\t ]{2,}/gm," ");if(a[2]!==void 0)return a[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
159
+ `)}}},s(ws,"AbstractMermaidValueConverter"),o(ws,"AbstractMermaidValueConverter"),ws),Is,Pc=(Is=class extends Fl{runCustomConverter(e,r,n){}},s(Is,"CommonValueConverter"),o(Is,"CommonValueConverter"),Is),Ps,Ar=(Ps=class extends cm{constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,r,n){let i=super.buildKeywordTokens(e,r,n);return i.forEach(a=>{this.keywords.has(a.name)&&a.PATTERN!==void 0&&(a.PATTERN=new RegExp(a.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),i}},s(Ps,"AbstractMermaidTokenBuilder"),o(Ps,"AbstractMermaidTokenBuilder"),Ps),_s;_s=class extends Ar{},s(_s,"CommonTokenBuilder"),o(_s,"CommonTokenBuilder");/*! Bundled license information:
160
+
161
+ lodash-es/lodash.js:
162
+ (**
163
+ * @license
164
+ * Lodash (Custom Build) <https://lodash.com/>
165
+ * Build: `lodash modularize exports="es" -o ./`
166
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
167
+ * Released under MIT license <https://lodash.com/license>
168
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
169
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
170
+ *)
171
+ */var Dt={},Vz={info:o(async()=>{let{createInfoServices:t}=await ir(()=>Promise.resolve().then(()=>cq),void 0),e=t().Info.parser.LangiumParser;Dt.info=e},"info"),packet:o(async()=>{let{createPacketServices:t}=await ir(()=>Promise.resolve().then(()=>pq),void 0),e=t().Packet.parser.LangiumParser;Dt.packet=e},"packet"),pie:o(async()=>{let{createPieServices:t}=await ir(()=>Promise.resolve().then(()=>dq),void 0),e=t().Pie.parser.LangiumParser;Dt.pie=e},"pie"),treeView:o(async()=>{let{createTreeViewServices:t}=await ir(()=>Promise.resolve().then(()=>fq),void 0),e=t().TreeView.parser.LangiumParser;Dt.treeView=e},"treeView"),architecture:o(async()=>{let{createArchitectureServices:t}=await ir(()=>Promise.resolve().then(()=>mq),void 0),e=t().Architecture.parser.LangiumParser;Dt.architecture=e},"architecture"),gitGraph:o(async()=>{let{createGitGraphServices:t}=await ir(()=>Promise.resolve().then(()=>hq),void 0),e=t().GitGraph.parser.LangiumParser;Dt.gitGraph=e},"gitGraph"),eventmodeling:o(async()=>{let{createEventModelingServices:t}=await ir(()=>Promise.resolve().then(()=>yq),void 0),e=t().EventModel.parser.LangiumParser;Dt.eventmodeling=e},"eventmodeling"),radar:o(async()=>{let{createRadarServices:t}=await ir(()=>Promise.resolve().then(()=>gq),void 0),e=t().Radar.parser.LangiumParser;Dt.radar=e},"radar"),treemap:o(async()=>{let{createTreemapServices:t}=await ir(()=>Promise.resolve().then(()=>vq),void 0),e=t().Treemap.parser.LangiumParser;Dt.treemap=e},"treemap"),wardley:o(async()=>{let{createWardleyServices:t}=await ir(()=>Promise.resolve().then(()=>Tq),void 0),e=t().Wardley.parser.LangiumParser;Dt.wardley=e},"wardley")};async function Fw(t,e){let r=Vz[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);Dt[t]||await r();let n=Dt[t].parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new Bz(n);return n.value}s(Fw,"parse");o(Fw,"parse");var Ds,Bz=(Ds=class extends Error{constructor(e){let r=e.lexerErrors.map(i=>{let a=i.line!==void 0&&!isNaN(i.line)?i.line:"?",l=i.column!==void 0&&!isNaN(i.column)?i.column:"?";return`Lexer error on line ${a}, column ${l}: ${i.message}`}).join(`
172
+ `),n=e.parserErrors.map(i=>{let a=i.token.startLine!==void 0&&!isNaN(i.token.startLine)?i.token.startLine:"?",l=i.token.startColumn!==void 0&&!isNaN(i.token.startColumn)?i.token.startColumn:"?";return`Parse error on line ${a}, column ${l}: ${i.message}`}).join(`
173
+ `);super(`Parsing failed: ${r} ${n}`),this.result=e}},s(Ds,"MermaidParseError"),o(Ds,"MermaidParseError"),Ds),Ls,Wz=(Ls=class extends Fl{runCustomConverter(e,r,n){switch(e.name.toUpperCase()){case"LINK_LABEL":return r.substring(1).trim();default:return}}},s(Ls,"WardleyValueConverter"),o(Ls,"WardleyValueConverter"),Ls),Gw={parser:{ValueConverter:o(()=>new Wz,"ValueConverter")}};function aS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Gz,Gw);return e.ServiceRegistry.register(r),{shared:e,Wardley:r}}s(aS,"createWardleyServices");o(aS,"createWardleyServices");var Os,Hz=(Os=class extends Ar{constructor(){super(["packet"])}},s(Os,"PacketTokenBuilder"),o(Os,"PacketTokenBuilder"),Os),zw={parser:{TokenBuilder:o(()=>new Hz,"TokenBuilder"),ValueConverter:o(()=>new Pc,"ValueConverter")}};function sS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Lz,zw);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}s(sS,"createPacketServices");o(sS,"createPacketServices");var Ms,Yz=(Ms=class extends Ar{constructor(){super(["pie","showData"])}},s(Ms,"PieTokenBuilder"),o(Ms,"PieTokenBuilder"),Ms),js,Jz=(js=class extends Fl{runCustomConverter(e,r,n){if(e.name==="PIE_SECTION_LABEL")return r.replace(/"/g,"").trim()}},s(js,"PieValueConverter"),o(js,"PieValueConverter"),js),qw={parser:{TokenBuilder:o(()=>new Yz,"TokenBuilder"),ValueConverter:o(()=>new Jz,"ValueConverter")}};function oS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Oz,qw);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}s(oS,"createPieServices");o(oS,"createPieServices");var Fs,Xz=(Fs=class extends Fl{runCustomConverter(e,r,n){if(e.name==="INDENTATION")return(r==null?void 0:r.length)||0;if(e.name==="STRING2")return r.substring(1,r.length-1)}},s(Fs,"TreeViewValueConverter"),o(Fs,"TreeViewValueConverter"),Fs),Gs,Zz=(Gs=class extends Ar{constructor(){super(["treeView-beta"])}},s(Gs,"TreeViewTokenBuilder"),o(Gs,"TreeViewTokenBuilder"),Gs),Uw={parser:{TokenBuilder:o(()=>new Zz,"TokenBuilder"),ValueConverter:o(()=>new Xz,"ValueConverter")}};function lS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Fz,Uw);return e.ServiceRegistry.register(r),{shared:e,TreeView:r}}s(lS,"createTreeViewServices");o(lS,"createTreeViewServices");var zs,Qz=(zs=class extends Ar{constructor(){super(["architecture"])}},s(zs,"ArchitectureTokenBuilder"),o(zs,"ArchitectureTokenBuilder"),zs),qs,eq=(qs=class extends Fl{runCustomConverter(e,r,n){if(e.name==="ARCH_ICON")return r.replace(/[()]/g,"").trim();if(e.name==="ARCH_TEXT_ICON")return r.replace(/["()]/g,"");if(e.name==="ARCH_TITLE"){let i=r.replace(/^\[|]$/g,"").trim();return(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))&&(i=i.slice(1,-1),i=i.replace(/\\"/g,'"').replace(/\\'/g,"'")),i.trim()}}},s(qs,"ArchitectureValueConverter"),o(qs,"ArchitectureValueConverter"),qs),Kw={parser:{TokenBuilder:o(()=>new Qz,"TokenBuilder"),ValueConverter:o(()=>new eq,"ValueConverter")}};function uS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Iz,Kw);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}s(uS,"createArchitectureServices");o(uS,"createArchitectureServices");var Us,tq=(Us=class extends Ar{constructor(){super(["gitGraph"])}},s(Us,"GitGraphTokenBuilder"),o(Us,"GitGraphTokenBuilder"),Us),Vw={parser:{TokenBuilder:o(()=>new tq,"TokenBuilder"),ValueConverter:o(()=>new Pc,"ValueConverter")}};function cS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),_z,Vw);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}s(cS,"createGitGraphServices");o(cS,"createGitGraphServices");var Ks,rq=(Ks=class extends Ar{constructor(){super(["eventmodeling"])}},s(Ks,"EventModelingTokenBuilder"),o(Ks,"EventModelingTokenBuilder"),Ks),nN=new Set(["cmd","command"]),iN=new Set(["evt","event"]),Xm=new Set(["rmo","readmodel"]),aN=new Set(["pcr","processor"]),sN=new Set(["ui"]);function pS(t){let e=t.validation.EventModelingValidator,r=t.validation.ValidationRegistry;if(r){let n={EmTimeFrame:e.checkSourceFrameTypes.bind(e),EmResetFrame:e.checkSourceFrameTypes.bind(e)};r.register(n,e)}}s(pS,"registerValidationChecks");o(pS,"registerValidationChecks");var Vs,nq=(Vs=class{checkSourceFrameTypes(e,r){e.sourceFrames.length!==0&&(nN.has(e.modelEntityType)?this.validateSources(e,new Set([...sN,...aN]),"command","ui or processor",r):iN.has(e.modelEntityType)?this.validateSources(e,nN,"event","command",r):Xm.has(e.modelEntityType)?this.validateSources(e,iN,"read model","event",r):aN.has(e.modelEntityType)?this.validateSources(e,Xm,"processor","read model",r):sN.has(e.modelEntityType)&&this.validateSources(e,Xm,"ui","read model",r))}validateSources(e,r,n,i,a){for(let l of e.sourceFrames){let c=l.ref;c!==void 0&&!r.has(c.modelEntityType)&&a("error",`A ${n} can only receive input from a ${i}, not from '${c.modelEntityType}'.`,{node:e,property:"sourceFrames"})}}},s(Vs,"EventModelingValidator"),o(Vs,"EventModelingValidator"),Vs),Bw={parser:{TokenBuilder:o(()=>new rq,"TokenBuilder"),ValueConverter:o(()=>new Pc,"ValueConverter")},validation:{EventModelingValidator:o(()=>new nq,"EventModelingValidator")}};function dS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Pz,Bw);return e.ServiceRegistry.register(r),pS(r),{shared:e,EventModel:r}}s(dS,"createEventModelingServices");o(dS,"createEventModelingServices");var Bs,iq=(Bs=class extends Ar{constructor(){super(["radar-beta"])}},s(Bs,"RadarTokenBuilder"),o(Bs,"RadarTokenBuilder"),Bs),Ww={parser:{TokenBuilder:o(()=>new iq,"TokenBuilder"),ValueConverter:o(()=>new Pc,"ValueConverter")}};function fS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Mz,Ww);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}s(fS,"createRadarServices");o(fS,"createRadarServices");var Ws,aq=(Ws=class extends Ar{constructor(){super(["treemap"])}},s(Ws,"TreemapTokenBuilder"),o(Ws,"TreemapTokenBuilder"),Ws),sq=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,Hs,oq=(Hs=class extends Fl{runCustomConverter(e,r,n){if(e.name==="NUMBER2")return parseFloat(r.replace(/,/g,""));if(e.name==="SEPARATOR"||e.name==="STRING2")return r.substring(1,r.length-1);if(e.name==="INDENTATION")return r.length;if(e.name==="ClassDef"){if(typeof r!="string")return r;let i=sq.exec(r);if(i)return{$type:"ClassDefStatement",className:i[1],styleText:i[2]||void 0}}}},s(Hs,"TreemapValueConverter"),o(Hs,"TreemapValueConverter"),Hs);function mS(t){let e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){let n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}s(mS,"registerValidationChecks");o(mS,"registerValidationChecks");var Ys,lq=(Ys=class{checkSingleRoot(e,r){let n;for(let i of e.TreemapRows)i.item&&(n===void 0&&i.indent===void 0?n=0:i.indent===void 0?r("error","Multiple root nodes are not allowed in a treemap.",{node:i,property:"item"}):n!==void 0&&n>=parseInt(i.indent,10)&&r("error","Multiple root nodes are not allowed in a treemap.",{node:i,property:"item"}))}},s(Ys,"TreemapValidator"),o(Ys,"TreemapValidator"),Ys),Hw={parser:{TokenBuilder:o(()=>new aq,"TokenBuilder"),ValueConverter:o(()=>new oq,"ValueConverter")},validation:{TreemapValidator:o(()=>new lq,"TreemapValidator")}};function hS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),jz,Hw);return e.ServiceRegistry.register(r),mS(r),{shared:e,Treemap:r}}s(hS,"createTreemapServices");o(hS,"createTreemapServices");var Js,uq=(Js=class extends Ar{constructor(){super(["info","showInfo"])}},s(Js,"InfoTokenBuilder"),o(Js,"InfoTokenBuilder"),Js),Yw={parser:{TokenBuilder:o(()=>new uq,"TokenBuilder"),ValueConverter:o(()=>new Pc,"ValueConverter")}};function yS(t=Kt){let e=Pe($t(t),Er),r=Pe(Rt({shared:e}),Dz,Yw);return e.ServiceRegistry.register(r),{shared:e,Info:r}}s(yS,"createInfoServices");o(yS,"createInfoServices");const cq=Object.freeze(Object.defineProperty({__proto__:null,InfoModule:Yw,createInfoServices:yS},Symbol.toStringTag,{value:"Module"})),pq=Object.freeze(Object.defineProperty({__proto__:null,PacketModule:zw,createPacketServices:sS},Symbol.toStringTag,{value:"Module"})),dq=Object.freeze(Object.defineProperty({__proto__:null,PieModule:qw,createPieServices:oS},Symbol.toStringTag,{value:"Module"})),fq=Object.freeze(Object.defineProperty({__proto__:null,TreeViewModule:Uw,createTreeViewServices:lS},Symbol.toStringTag,{value:"Module"})),mq=Object.freeze(Object.defineProperty({__proto__:null,ArchitectureModule:Kw,createArchitectureServices:uS},Symbol.toStringTag,{value:"Module"})),hq=Object.freeze(Object.defineProperty({__proto__:null,GitGraphModule:Vw,createGitGraphServices:cS},Symbol.toStringTag,{value:"Module"})),yq=Object.freeze(Object.defineProperty({__proto__:null,EventModelingModule:Bw,createEventModelingServices:dS},Symbol.toStringTag,{value:"Module"})),gq=Object.freeze(Object.defineProperty({__proto__:null,RadarModule:Ww,createRadarServices:fS},Symbol.toStringTag,{value:"Module"})),vq=Object.freeze(Object.defineProperty({__proto__:null,TreemapModule:Hw,createTreemapServices:hS},Symbol.toStringTag,{value:"Module"})),Tq=Object.freeze(Object.defineProperty({__proto__:null,WardleyModule:Gw,createWardleyServices:aS},Symbol.toStringTag,{value:"Module"}));export{Fw as d,Nw as z};