@hamak/smart-data-dico 1.13.0 → 1.14.1

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 (86) hide show
  1. package/README.md +13 -1
  2. package/backend/dist/server.mjs +4792 -2589
  3. package/bin/cli.js +21 -0
  4. package/frontend/dist/assets/abnfDiagram-VRR7QNED-70fc3d21.js +1 -0
  5. package/frontend/dist/assets/arc-603e8de6.js +1 -0
  6. package/frontend/dist/assets/architecture-TIHT7OUA-d5d177f8.js +1 -0
  7. package/frontend/dist/assets/architectureDiagram-ZJ3FMSHR-7423317d.js +36 -0
  8. package/frontend/dist/assets/blockDiagram-677ZJIJ3-70e39d4b.js +132 -0
  9. package/frontend/dist/assets/c4Diagram-LMCZKHZV-363658e1.js +10 -0
  10. package/frontend/dist/assets/channel-7a5a812f.js +1 -0
  11. package/frontend/dist/assets/chunk-2Q5K7J3B-3ac20838.js +1 -0
  12. package/frontend/dist/assets/chunk-32BRIVSS-5f6cd67c.js +1 -0
  13. package/frontend/dist/assets/chunk-5VM5RSS4-453e1bf0.js +15 -0
  14. package/frontend/dist/assets/chunk-EX3LRPZG-5fab1640.js +231 -0
  15. package/frontend/dist/assets/chunk-JWPE2WC7-171800a5.js +1 -0
  16. package/frontend/dist/assets/chunk-MOJQB5TN-b4699227.js +88 -0
  17. package/frontend/dist/assets/chunk-PUDLZKDR-714a5a96.js +156 -0
  18. package/frontend/dist/assets/chunk-RYQCIY6F-0304211a.js +1 -0
  19. package/frontend/dist/assets/chunk-V7JOEXUC-c7e3acef.js +206 -0
  20. package/frontend/dist/assets/chunk-VR4S4FIN-6df67b0e.js +1 -0
  21. package/frontend/dist/assets/chunk-XXDRQBXY-78399895.js +1 -0
  22. package/frontend/dist/assets/classDiagram-OUVF2IWQ-a02d7b45.js +1 -0
  23. package/frontend/dist/assets/classDiagram-v2-EOCWNBFH-a02d7b45.js +1 -0
  24. package/frontend/dist/assets/cose-bilkent-JH36ORCC-5dfb032f.js +1 -0
  25. package/frontend/dist/assets/cynefin-VYW2F7L2-69957a6c.js +1 -0
  26. package/frontend/dist/assets/cynefinDiagram-TSTJHNR4-85050760.js +62 -0
  27. package/frontend/dist/assets/dagre-VKFMJZFB-b10fa223.js +4 -0
  28. package/frontend/dist/assets/defaultLocale-52cfb4e1.js +1 -0
  29. package/frontend/dist/assets/diagram-FQU43EPY-a67f0419.js +3 -0
  30. package/frontend/dist/assets/diagram-G47NLZAW-9d70f0c6.js +24 -0
  31. package/frontend/dist/assets/diagram-NH7WQ7WH-ff1fb9bc.js +24 -0
  32. package/frontend/dist/assets/diagram-OA4YK3LP-9af92be3.js +30 -0
  33. package/frontend/dist/assets/diagram-WEI45ONY-0f05126c.js +41 -0
  34. package/frontend/dist/assets/ebnfDiagram-CCIWWBDH-9a42df74.js +1 -0
  35. package/frontend/dist/assets/erDiagram-Q63AITRT-1a036d2c.js +85 -0
  36. package/frontend/dist/assets/eventmodeling-45OFAUF4-bf8d119c.js +1 -0
  37. package/frontend/dist/assets/flowDiagram-23GEKE2U-6512167a.js +1 -0
  38. package/frontend/dist/assets/ganttDiagram-NO4QXBWP-ea1e8d6a.js +292 -0
  39. package/frontend/dist/assets/gitGraph-TEB2WS4Q-9ae1b586.js +1 -0
  40. package/frontend/dist/assets/gitGraphDiagram-IHSO6WYX-1d038664.js +106 -0
  41. package/frontend/dist/assets/graph-7008991d.js +1 -0
  42. package/frontend/dist/assets/{index-695409aa.css → index-042bd23d.css} +1 -1
  43. package/frontend/dist/assets/index-67d0461e.js +547 -0
  44. package/frontend/dist/assets/info-DKCQHKI2-80cda47a.js +1 -0
  45. package/frontend/dist/assets/infoDiagram-FWYZ7A6U-a77c504b.js +2 -0
  46. package/frontend/dist/assets/init-77b53fdd.js +1 -0
  47. package/frontend/dist/assets/ishikawaDiagram-FXEZZL3T-25ad2319.js +70 -0
  48. package/frontend/dist/assets/journeyDiagram-5HDEW3XC-1326ed77.js +139 -0
  49. package/frontend/dist/assets/kanban-definition-HUTT4EX6-773deb40.js +89 -0
  50. package/frontend/dist/assets/katex-0cba7652.js +257 -0
  51. package/frontend/dist/assets/layout-47dc10e6.js +1 -0
  52. package/frontend/dist/assets/linear-c6bca77a.js +1 -0
  53. package/frontend/dist/assets/map-338884f0.js +1 -0
  54. package/frontend/dist/assets/mermaid-parser.core-d7e77279.js +178 -0
  55. package/frontend/dist/assets/mermaid.core-441ab06d.js +313 -0
  56. package/frontend/dist/assets/mindmap-definition-LN4V7U3C-894fceb9.js +96 -0
  57. package/frontend/dist/assets/ordinal-ba9b4969.js +1 -0
  58. package/frontend/dist/assets/packet-7NZHBO7P-210a82b7.js +1 -0
  59. package/frontend/dist/assets/pegDiagram-2B236MQR-7d480941.js +1 -0
  60. package/frontend/dist/assets/pie-RZYD4A2V-73eec97d.js +1 -0
  61. package/frontend/dist/assets/pieDiagram-ENE6RG2P-e367c012.js +39 -0
  62. package/frontend/dist/assets/quadrantDiagram-ABIIQ3AL-01c7204b.js +7 -0
  63. package/frontend/dist/assets/radar-I7S5WNFK-c5c9960b.js +1 -0
  64. package/frontend/dist/assets/railroad-3IZDKUUU-feac18dd.js +1 -0
  65. package/frontend/dist/assets/railroad-abnf-AHOZXSZD-4c0ebd35.js +1 -0
  66. package/frontend/dist/assets/railroad-ebnf-EBAXGLYW-ff768dd6.js +1 -0
  67. package/frontend/dist/assets/railroad-peg-LSFZ7HO6-1635744c.js +1 -0
  68. package/frontend/dist/assets/railroadDiagram-RFXS5EU6-514ec967.js +1 -0
  69. package/frontend/dist/assets/requirementDiagram-TGXJPOKE-4e594139.js +84 -0
  70. package/frontend/dist/assets/sankeyDiagram-HTMAVEWB-14be14a2.js +40 -0
  71. package/frontend/dist/assets/sequenceDiagram-DBY2YBRQ-a0eb53f7.js +162 -0
  72. package/frontend/dist/assets/sizeCapture-X5ZJPWSS-5730f7e3.js +1 -0
  73. package/frontend/dist/assets/stateDiagram-2N3HPSRC-9c66b34e.js +1 -0
  74. package/frontend/dist/assets/stateDiagram-v2-6OUMAXLB-4d44c9c9.js +1 -0
  75. package/frontend/dist/assets/swimlanes-5IMT3BWC-c6e518b2.js +1 -0
  76. package/frontend/dist/assets/swimlanesDiagram-G3AALYLV-fef29b15.js +8 -0
  77. package/frontend/dist/assets/timeline-definition-FHXFAJF6-1a63b00e.js +120 -0
  78. package/frontend/dist/assets/treeView-QDETBFTQ-43fc69f6.js +1 -0
  79. package/frontend/dist/assets/treemap-6X3UGDF4-d8139088.js +1 -0
  80. package/frontend/dist/assets/vennDiagram-L72KCM5P-a2983d62.js +34 -0
  81. package/frontend/dist/assets/wardley-OPB4EBWU-39974587.js +1 -0
  82. package/frontend/dist/assets/wardleyDiagram-EHGQE667-d7e8c3d4.js +78 -0
  83. package/frontend/dist/assets/xychartDiagram-FW5EYKEG-cacf6bc4.js +7 -0
  84. package/frontend/dist/index.html +2 -2
  85. package/package.json +1 -1
  86. package/frontend/dist/assets/index-86a17ce3.js +0 -543
@@ -0,0 +1,178 @@
1
+ var xP=Object.defineProperty;var MP=(t,e,r)=>e in t?xP(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var Br=(t,e,r)=>(MP(t,typeof e!="symbol"?e+"":e,r),r);import{_ as ut}from"./index-67d0461e.js";var GP=Object.create,Du=Object.defineProperty,FP=Object.getOwnPropertyDescriptor,$h=Object.getOwnPropertyNames,zP=Object.getPrototypeOf,jP=Object.prototype.hasOwnProperty,s=(t,e)=>Du(t,"name",{value:e,configurable:!0}),BP=(t,e)=>function(){return t&&(e=(0,t[$h(t)[0]])(t=0)),e},Y=(t,e)=>function(){return e||(0,t[$h(t)[0]])((e={exports:{}}).exports,e),e.exports},en=(t,e)=>{for(var r in e)Du(t,r,{get:e[r],enumerable:!0})},Wc=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of $h(e))!jP.call(t,a)&&a!==r&&Du(t,a,{get:()=>e[a],enumerable:!(n=FP(e,a))||n.enumerable});return t},Lf=(t,e,r)=>(Wc(t,e,"default"),r&&Wc(r,e,"default")),Rh=(t,e,r)=>(r=t!=null?GP(zP(t)):{},Wc(e||!t||!t.__esModule?Du(r,"default",{value:t,enumerable:!0}):r,t)),Ah=t=>Wc(Du({},"__esModule",{value:!0}),t),Df={};en(Df,{AnnotatedTextEdit:()=>Ar,ChangeAnnotation:()=>pn,ChangeAnnotationIdentifier:()=>Qe,CodeAction:()=>em,CodeActionContext:()=>Qp,CodeActionKind:()=>Zp,CodeActionTriggerKind:()=>rs,CodeDescription:()=>Np,CodeLens:()=>tm,Color:()=>Ec,ColorInformation:()=>Cp,ColorPresentation:()=>bp,Command:()=>dn,CompletionItem:()=>zp,CompletionItemKind:()=>Lp,CompletionItemLabelDetails:()=>Fp,CompletionItemTag:()=>xp,CompletionList:()=>jp,CreateFile:()=>Ca,DeleteFile:()=>_a,Diagnostic:()=>Zi,DiagnosticRelatedInformation:()=>Cc,DiagnosticSeverity:()=>wp,DiagnosticTag:()=>Ip,DocumentHighlight:()=>qp,DocumentHighlightKind:()=>Wp,DocumentLink:()=>nm,DocumentSymbol:()=>Jp,DocumentUri:()=>Rp,EOL:()=>M$,FoldingRange:()=>Sp,FoldingRangeKind:()=>_p,FormattingOptions:()=>rm,Hover:()=>Bp,InlayHint:()=>dm,InlayHintKind:()=>Sc,InlayHintLabelPart:()=>wc,InlineCompletionContext:()=>vm,InlineCompletionItem:()=>mm,InlineCompletionList:()=>hm,InlineCompletionTriggerKind:()=>ym,InlineValueContext:()=>fm,InlineValueEvaluatableExpression:()=>cm,InlineValueText:()=>lm,InlineValueVariableLookup:()=>um,InsertReplaceEdit:()=>Mp,InsertTextFormat:()=>Dp,InsertTextMode:()=>Gp,Location:()=>Ji,LocationLink:()=>Ep,MarkedString:()=>ts,MarkupContent:()=>Sa,MarkupKind:()=>_c,OptionalVersionedTextDocumentIdentifier:()=>es,ParameterInformation:()=>Up,Position:()=>oe,Range:()=>ee,RenameFile:()=>ba,SelectedCompletionInfo:()=>gm,SelectionRange:()=>am,SemanticTokenModifiers:()=>sm,SemanticTokenTypes:()=>im,SemanticTokens:()=>om,SignatureInformation:()=>Kp,StringValue:()=>pm,SymbolInformation:()=>Yp,SymbolKind:()=>Vp,SymbolTag:()=>Hp,TextDocument:()=>$m,TextDocumentEdit:()=>Qi,TextDocumentIdentifier:()=>Pp,TextDocumentItem:()=>Op,TextEdit:()=>ar,URI:()=>Ac,VersionedTextDocumentIdentifier:()=>kp,WorkspaceChange:()=>x$,WorkspaceEdit:()=>bc,WorkspaceFolder:()=>Tm,WorkspaceSymbol:()=>Xp,integer:()=>Ap,uinteger:()=>Xi});var Rp,Ac,Ap,Xi,oe,ee,Ji,Ep,Ec,Cp,bp,_p,Sp,Cc,wp,Ip,Np,Zi,dn,ar,pn,Qe,Ar,Qi,Ca,ba,_a,bc,Gi,Kd,x$,Pp,kp,es,Op,_c,Sa,Lp,Dp,xp,Mp,Gp,Fp,zp,jp,ts,Bp,Up,Kp,Wp,qp,Vp,Hp,Yp,Xp,Jp,Zp,rs,Qp,em,tm,rm,nm,am,im,sm,om,lm,um,cm,fm,Sc,wc,dm,pm,mm,hm,ym,gm,vm,Tm,M$,$m,iv,C,xu=BP({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var t,e,r,n;(function(a){function i(o){return typeof o=="string"}s(i,"is"),a.is=i})(Rp||(Rp={})),function(a){function i(o){return typeof o=="string"}s(i,"is"),a.is=i}(Ac||(Ac={})),function(a){a.MIN_VALUE=-2147483648,a.MAX_VALUE=2147483647;function i(o){return typeof o=="number"&&a.MIN_VALUE<=o&&o<=a.MAX_VALUE}s(i,"is"),a.is=i}(Ap||(Ap={})),function(a){a.MIN_VALUE=0,a.MAX_VALUE=2147483647;function i(o){return typeof o=="number"&&a.MIN_VALUE<=o&&o<=a.MAX_VALUE}s(i,"is"),a.is=i}(Xi||(Xi={})),function(a){function i(u,l){return u===Number.MAX_VALUE&&(u=Xi.MAX_VALUE),l===Number.MAX_VALUE&&(l=Xi.MAX_VALUE),{line:u,character:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.objectLiteral(l)&&C.uinteger(l.line)&&C.uinteger(l.character)}s(o,"is"),a.is=o}(oe||(oe={})),function(a){function i(u,l,c,f){if(C.uinteger(u)&&C.uinteger(l)&&C.uinteger(c)&&C.uinteger(f))return{start:oe.create(u,l),end:oe.create(c,f)};if(oe.is(u)&&oe.is(l))return{start:u,end:l};throw new Error(`Range#create called with invalid arguments[${u}, ${l}, ${c}, ${f}]`)}s(i,"create"),a.create=i;function o(u){let l=u;return C.objectLiteral(l)&&oe.is(l.start)&&oe.is(l.end)}s(o,"is"),a.is=o}(ee||(ee={})),function(a){function i(u,l){return{uri:u,range:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.objectLiteral(l)&&ee.is(l.range)&&(C.string(l.uri)||C.undefined(l.uri))}s(o,"is"),a.is=o}(Ji||(Ji={})),function(a){function i(u,l,c,f){return{targetUri:u,targetRange:l,targetSelectionRange:c,originSelectionRange:f}}s(i,"create"),a.create=i;function o(u){let l=u;return C.objectLiteral(l)&&ee.is(l.targetRange)&&C.string(l.targetUri)&&ee.is(l.targetSelectionRange)&&(ee.is(l.originSelectionRange)||C.undefined(l.originSelectionRange))}s(o,"is"),a.is=o}(Ep||(Ep={})),function(a){function i(u,l,c,f){return{red:u,green:l,blue:c,alpha:f}}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&C.numberRange(l.red,0,1)&&C.numberRange(l.green,0,1)&&C.numberRange(l.blue,0,1)&&C.numberRange(l.alpha,0,1)}s(o,"is"),a.is=o}(Ec||(Ec={})),function(a){function i(u,l){return{range:u,color:l}}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&ee.is(l.range)&&Ec.is(l.color)}s(o,"is"),a.is=o}(Cp||(Cp={})),function(a){function i(u,l,c){return{label:u,textEdit:l,additionalTextEdits:c}}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&C.string(l.label)&&(C.undefined(l.textEdit)||ar.is(l))&&(C.undefined(l.additionalTextEdits)||C.typedArray(l.additionalTextEdits,ar.is))}s(o,"is"),a.is=o}(bp||(bp={})),function(a){a.Comment="comment",a.Imports="imports",a.Region="region"}(_p||(_p={})),function(a){function i(u,l,c,f,d,p){const h={startLine:u,endLine:l};return C.defined(c)&&(h.startCharacter=c),C.defined(f)&&(h.endCharacter=f),C.defined(d)&&(h.kind=d),C.defined(p)&&(h.collapsedText=p),h}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&C.uinteger(l.startLine)&&C.uinteger(l.startLine)&&(C.undefined(l.startCharacter)||C.uinteger(l.startCharacter))&&(C.undefined(l.endCharacter)||C.uinteger(l.endCharacter))&&(C.undefined(l.kind)||C.string(l.kind))}s(o,"is"),a.is=o}(Sp||(Sp={})),function(a){function i(u,l){return{location:u,message:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&Ji.is(l.location)&&C.string(l.message)}s(o,"is"),a.is=o}(Cc||(Cc={})),function(a){a.Error=1,a.Warning=2,a.Information=3,a.Hint=4}(wp||(wp={})),function(a){a.Unnecessary=1,a.Deprecated=2}(Ip||(Ip={})),function(a){function i(o){const u=o;return C.objectLiteral(u)&&C.string(u.href)}s(i,"is"),a.is=i}(Np||(Np={})),function(a){function i(u,l,c,f,d,p){let h={range:u,message:l};return C.defined(c)&&(h.severity=c),C.defined(f)&&(h.code=f),C.defined(d)&&(h.source=d),C.defined(p)&&(h.relatedInformation=p),h}s(i,"create"),a.create=i;function o(u){var l;let c=u;return C.defined(c)&&ee.is(c.range)&&C.string(c.message)&&(C.number(c.severity)||C.undefined(c.severity))&&(C.integer(c.code)||C.string(c.code)||C.undefined(c.code))&&(C.undefined(c.codeDescription)||C.string((l=c.codeDescription)===null||l===void 0?void 0:l.href))&&(C.string(c.source)||C.undefined(c.source))&&(C.undefined(c.relatedInformation)||C.typedArray(c.relatedInformation,Cc.is))}s(o,"is"),a.is=o}(Zi||(Zi={})),function(a){function i(u,l,...c){let f={title:u,command:l};return C.defined(c)&&c.length>0&&(f.arguments=c),f}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.string(l.title)&&C.string(l.command)}s(o,"is"),a.is=o}(dn||(dn={})),function(a){function i(c,f){return{range:c,newText:f}}s(i,"replace"),a.replace=i;function o(c,f){return{range:{start:c,end:c},newText:f}}s(o,"insert"),a.insert=o;function u(c){return{range:c,newText:""}}s(u,"del"),a.del=u;function l(c){const f=c;return C.objectLiteral(f)&&C.string(f.newText)&&ee.is(f.range)}s(l,"is"),a.is=l}(ar||(ar={})),function(a){function i(u,l,c){const f={label:u};return l!==void 0&&(f.needsConfirmation=l),c!==void 0&&(f.description=c),f}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&C.string(l.label)&&(C.boolean(l.needsConfirmation)||l.needsConfirmation===void 0)&&(C.string(l.description)||l.description===void 0)}s(o,"is"),a.is=o}(pn||(pn={})),function(a){function i(o){const u=o;return C.string(u)}s(i,"is"),a.is=i}(Qe||(Qe={})),function(a){function i(c,f,d){return{range:c,newText:f,annotationId:d}}s(i,"replace"),a.replace=i;function o(c,f,d){return{range:{start:c,end:c},newText:f,annotationId:d}}s(o,"insert"),a.insert=o;function u(c,f){return{range:c,newText:"",annotationId:f}}s(u,"del"),a.del=u;function l(c){const f=c;return ar.is(f)&&(pn.is(f.annotationId)||Qe.is(f.annotationId))}s(l,"is"),a.is=l}(Ar||(Ar={})),function(a){function i(u,l){return{textDocument:u,edits:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&es.is(l.textDocument)&&Array.isArray(l.edits)}s(o,"is"),a.is=o}(Qi||(Qi={})),function(a){function i(u,l,c){let f={kind:"create",uri:u};return l!==void 0&&(l.overwrite!==void 0||l.ignoreIfExists!==void 0)&&(f.options=l),c!==void 0&&(f.annotationId=c),f}s(i,"create"),a.create=i;function o(u){let l=u;return l&&l.kind==="create"&&C.string(l.uri)&&(l.options===void 0||(l.options.overwrite===void 0||C.boolean(l.options.overwrite))&&(l.options.ignoreIfExists===void 0||C.boolean(l.options.ignoreIfExists)))&&(l.annotationId===void 0||Qe.is(l.annotationId))}s(o,"is"),a.is=o}(Ca||(Ca={})),function(a){function i(u,l,c,f){let d={kind:"rename",oldUri:u,newUri:l};return c!==void 0&&(c.overwrite!==void 0||c.ignoreIfExists!==void 0)&&(d.options=c),f!==void 0&&(d.annotationId=f),d}s(i,"create"),a.create=i;function o(u){let l=u;return l&&l.kind==="rename"&&C.string(l.oldUri)&&C.string(l.newUri)&&(l.options===void 0||(l.options.overwrite===void 0||C.boolean(l.options.overwrite))&&(l.options.ignoreIfExists===void 0||C.boolean(l.options.ignoreIfExists)))&&(l.annotationId===void 0||Qe.is(l.annotationId))}s(o,"is"),a.is=o}(ba||(ba={})),function(a){function i(u,l,c){let f={kind:"delete",uri:u};return l!==void 0&&(l.recursive!==void 0||l.ignoreIfNotExists!==void 0)&&(f.options=l),c!==void 0&&(f.annotationId=c),f}s(i,"create"),a.create=i;function o(u){let l=u;return l&&l.kind==="delete"&&C.string(l.uri)&&(l.options===void 0||(l.options.recursive===void 0||C.boolean(l.options.recursive))&&(l.options.ignoreIfNotExists===void 0||C.boolean(l.options.ignoreIfNotExists)))&&(l.annotationId===void 0||Qe.is(l.annotationId))}s(o,"is"),a.is=o}(_a||(_a={})),function(a){function i(o){let u=o;return u&&(u.changes!==void 0||u.documentChanges!==void 0)&&(u.documentChanges===void 0||u.documentChanges.every(l=>C.string(l.kind)?Ca.is(l)||ba.is(l)||_a.is(l):Qi.is(l)))}s(i,"is"),a.is=i}(bc||(bc={})),Gi=(t=class{constructor(i,o){this.edits=i,this.changeAnnotations=o}insert(i,o,u){let l,c;if(u===void 0?l=ar.insert(i,o):Qe.is(u)?(c=u,l=Ar.insert(i,o,u)):(this.assertChangeAnnotations(this.changeAnnotations),c=this.changeAnnotations.manage(u),l=Ar.insert(i,o,c)),this.edits.push(l),c!==void 0)return c}replace(i,o,u){let l,c;if(u===void 0?l=ar.replace(i,o):Qe.is(u)?(c=u,l=Ar.replace(i,o,u)):(this.assertChangeAnnotations(this.changeAnnotations),c=this.changeAnnotations.manage(u),l=Ar.replace(i,o,c)),this.edits.push(l),c!==void 0)return c}delete(i,o){let u,l;if(o===void 0?u=ar.del(i):Qe.is(o)?(l=o,u=Ar.del(i,o)):(this.assertChangeAnnotations(this.changeAnnotations),l=this.changeAnnotations.manage(o),u=Ar.del(i,l)),this.edits.push(u),l!==void 0)return l}add(i){this.edits.push(i)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(i){if(i===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},s(t,"TextEditChangeImpl"),t),Kd=(e=class{constructor(i){this._annotations=i===void 0?Object.create(null):i,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(i,o){let u;if(Qe.is(i)?u=i:(u=this.nextId(),o=i),this._annotations[u]!==void 0)throw new Error(`Id ${u} is already in use.`);if(o===void 0)throw new Error(`No annotation provided for id ${u}`);return this._annotations[u]=o,this._size++,u}nextId(){return this._counter++,this._counter.toString()}},s(e,"ChangeAnnotations"),e),x$=(r=class{constructor(i){this._textEditChanges=Object.create(null),i!==void 0?(this._workspaceEdit=i,i.documentChanges?(this._changeAnnotations=new Kd(i.changeAnnotations),i.changeAnnotations=this._changeAnnotations.all(),i.documentChanges.forEach(o=>{if(Qi.is(o)){const u=new Gi(o.edits,this._changeAnnotations);this._textEditChanges[o.textDocument.uri]=u}})):i.changes&&Object.keys(i.changes).forEach(o=>{const u=new Gi(i.changes[o]);this._textEditChanges[o]=u})):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(i){if(es.is(i)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");const o={uri:i.uri,version:i.version};let u=this._textEditChanges[o.uri];if(!u){const l=[],c={textDocument:o,edits:l};this._workspaceEdit.documentChanges.push(c),u=new Gi(l,this._changeAnnotations),this._textEditChanges[o.uri]=u}return u}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let o=this._textEditChanges[i];if(!o){let u=[];this._workspaceEdit.changes[i]=u,o=new Gi(u),this._textEditChanges[i]=o}return o}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Kd,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(i,o,u){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let l;pn.is(o)||Qe.is(o)?l=o:u=o;let c,f;if(l===void 0?c=Ca.create(i,u):(f=Qe.is(l)?l:this._changeAnnotations.manage(l),c=Ca.create(i,u,f)),this._workspaceEdit.documentChanges.push(c),f!==void 0)return f}renameFile(i,o,u,l){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let c;pn.is(u)||Qe.is(u)?c=u:l=u;let f,d;if(c===void 0?f=ba.create(i,o,l):(d=Qe.is(c)?c:this._changeAnnotations.manage(c),f=ba.create(i,o,l,d)),this._workspaceEdit.documentChanges.push(f),d!==void 0)return d}deleteFile(i,o,u){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let l;pn.is(o)||Qe.is(o)?l=o:u=o;let c,f;if(l===void 0?c=_a.create(i,u):(f=Qe.is(l)?l:this._changeAnnotations.manage(l),c=_a.create(i,u,f)),this._workspaceEdit.documentChanges.push(c),f!==void 0)return f}},s(r,"WorkspaceChange"),r),function(a){function i(u){return{uri:u}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.string(l.uri)}s(o,"is"),a.is=o}(Pp||(Pp={})),function(a){function i(u,l){return{uri:u,version:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.string(l.uri)&&C.integer(l.version)}s(o,"is"),a.is=o}(kp||(kp={})),function(a){function i(u,l){return{uri:u,version:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.string(l.uri)&&(l.version===null||C.integer(l.version))}s(o,"is"),a.is=o}(es||(es={})),function(a){function i(u,l,c,f){return{uri:u,languageId:l,version:c,text:f}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.string(l.uri)&&C.string(l.languageId)&&C.integer(l.version)&&C.string(l.text)}s(o,"is"),a.is=o}(Op||(Op={})),function(a){a.PlainText="plaintext",a.Markdown="markdown";function i(o){const u=o;return u===a.PlainText||u===a.Markdown}s(i,"is"),a.is=i}(_c||(_c={})),function(a){function i(o){const u=o;return C.objectLiteral(o)&&_c.is(u.kind)&&C.string(u.value)}s(i,"is"),a.is=i}(Sa||(Sa={})),function(a){a.Text=1,a.Method=2,a.Function=3,a.Constructor=4,a.Field=5,a.Variable=6,a.Class=7,a.Interface=8,a.Module=9,a.Property=10,a.Unit=11,a.Value=12,a.Enum=13,a.Keyword=14,a.Snippet=15,a.Color=16,a.File=17,a.Reference=18,a.Folder=19,a.EnumMember=20,a.Constant=21,a.Struct=22,a.Event=23,a.Operator=24,a.TypeParameter=25}(Lp||(Lp={})),function(a){a.PlainText=1,a.Snippet=2}(Dp||(Dp={})),function(a){a.Deprecated=1}(xp||(xp={})),function(a){function i(u,l,c){return{newText:u,insert:l,replace:c}}s(i,"create"),a.create=i;function o(u){const l=u;return l&&C.string(l.newText)&&ee.is(l.insert)&&ee.is(l.replace)}s(o,"is"),a.is=o}(Mp||(Mp={})),function(a){a.asIs=1,a.adjustIndentation=2}(Gp||(Gp={})),function(a){function i(o){const u=o;return u&&(C.string(u.detail)||u.detail===void 0)&&(C.string(u.description)||u.description===void 0)}s(i,"is"),a.is=i}(Fp||(Fp={})),function(a){function i(o){return{label:o}}s(i,"create"),a.create=i}(zp||(zp={})),function(a){function i(o,u){return{items:o||[],isIncomplete:!!u}}s(i,"create"),a.create=i}(jp||(jp={})),function(a){function i(u){return u.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}s(i,"fromPlainText"),a.fromPlainText=i;function o(u){const l=u;return C.string(l)||C.objectLiteral(l)&&C.string(l.language)&&C.string(l.value)}s(o,"is"),a.is=o}(ts||(ts={})),function(a){function i(o){let u=o;return!!u&&C.objectLiteral(u)&&(Sa.is(u.contents)||ts.is(u.contents)||C.typedArray(u.contents,ts.is))&&(o.range===void 0||ee.is(o.range))}s(i,"is"),a.is=i}(Bp||(Bp={})),function(a){function i(o,u){return u?{label:o,documentation:u}:{label:o}}s(i,"create"),a.create=i}(Up||(Up={})),function(a){function i(o,u,...l){let c={label:o};return C.defined(u)&&(c.documentation=u),C.defined(l)?c.parameters=l:c.parameters=[],c}s(i,"create"),a.create=i}(Kp||(Kp={})),function(a){a.Text=1,a.Read=2,a.Write=3}(Wp||(Wp={})),function(a){function i(o,u){let l={range:o};return C.number(u)&&(l.kind=u),l}s(i,"create"),a.create=i}(qp||(qp={})),function(a){a.File=1,a.Module=2,a.Namespace=3,a.Package=4,a.Class=5,a.Method=6,a.Property=7,a.Field=8,a.Constructor=9,a.Enum=10,a.Interface=11,a.Function=12,a.Variable=13,a.Constant=14,a.String=15,a.Number=16,a.Boolean=17,a.Array=18,a.Object=19,a.Key=20,a.Null=21,a.EnumMember=22,a.Struct=23,a.Event=24,a.Operator=25,a.TypeParameter=26}(Vp||(Vp={})),function(a){a.Deprecated=1}(Hp||(Hp={})),function(a){function i(o,u,l,c,f){let d={name:o,kind:u,location:{uri:c,range:l}};return f&&(d.containerName=f),d}s(i,"create"),a.create=i}(Yp||(Yp={})),function(a){function i(o,u,l,c){return c!==void 0?{name:o,kind:u,location:{uri:l,range:c}}:{name:o,kind:u,location:{uri:l}}}s(i,"create"),a.create=i}(Xp||(Xp={})),function(a){function i(u,l,c,f,d,p){let h={name:u,detail:l,kind:c,range:f,selectionRange:d};return p!==void 0&&(h.children=p),h}s(i,"create"),a.create=i;function o(u){let l=u;return l&&C.string(l.name)&&C.number(l.kind)&&ee.is(l.range)&&ee.is(l.selectionRange)&&(l.detail===void 0||C.string(l.detail))&&(l.deprecated===void 0||C.boolean(l.deprecated))&&(l.children===void 0||Array.isArray(l.children))&&(l.tags===void 0||Array.isArray(l.tags))}s(o,"is"),a.is=o}(Jp||(Jp={})),function(a){a.Empty="",a.QuickFix="quickfix",a.Refactor="refactor",a.RefactorExtract="refactor.extract",a.RefactorInline="refactor.inline",a.RefactorRewrite="refactor.rewrite",a.Source="source",a.SourceOrganizeImports="source.organizeImports",a.SourceFixAll="source.fixAll"}(Zp||(Zp={})),function(a){a.Invoked=1,a.Automatic=2}(rs||(rs={})),function(a){function i(u,l,c){let f={diagnostics:u};return l!=null&&(f.only=l),c!=null&&(f.triggerKind=c),f}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.typedArray(l.diagnostics,Zi.is)&&(l.only===void 0||C.typedArray(l.only,C.string))&&(l.triggerKind===void 0||l.triggerKind===rs.Invoked||l.triggerKind===rs.Automatic)}s(o,"is"),a.is=o}(Qp||(Qp={})),function(a){function i(u,l,c){let f={title:u},d=!0;return typeof l=="string"?(d=!1,f.kind=l):dn.is(l)?f.command=l:f.edit=l,d&&c!==void 0&&(f.kind=c),f}s(i,"create"),a.create=i;function o(u){let l=u;return l&&C.string(l.title)&&(l.diagnostics===void 0||C.typedArray(l.diagnostics,Zi.is))&&(l.kind===void 0||C.string(l.kind))&&(l.edit!==void 0||l.command!==void 0)&&(l.command===void 0||dn.is(l.command))&&(l.isPreferred===void 0||C.boolean(l.isPreferred))&&(l.edit===void 0||bc.is(l.edit))}s(o,"is"),a.is=o}(em||(em={})),function(a){function i(u,l){let c={range:u};return C.defined(l)&&(c.data=l),c}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&ee.is(l.range)&&(C.undefined(l.command)||dn.is(l.command))}s(o,"is"),a.is=o}(tm||(tm={})),function(a){function i(u,l){return{tabSize:u,insertSpaces:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&C.uinteger(l.tabSize)&&C.boolean(l.insertSpaces)}s(o,"is"),a.is=o}(rm||(rm={})),function(a){function i(u,l,c){return{range:u,target:l,data:c}}s(i,"create"),a.create=i;function o(u){let l=u;return C.defined(l)&&ee.is(l.range)&&(C.undefined(l.target)||C.string(l.target))}s(o,"is"),a.is=o}(nm||(nm={})),function(a){function i(u,l){return{range:u,parent:l}}s(i,"create"),a.create=i;function o(u){let l=u;return C.objectLiteral(l)&&ee.is(l.range)&&(l.parent===void 0||a.is(l.parent))}s(o,"is"),a.is=o}(am||(am={})),function(a){a.namespace="namespace",a.type="type",a.class="class",a.enum="enum",a.interface="interface",a.struct="struct",a.typeParameter="typeParameter",a.parameter="parameter",a.variable="variable",a.property="property",a.enumMember="enumMember",a.event="event",a.function="function",a.method="method",a.macro="macro",a.keyword="keyword",a.modifier="modifier",a.comment="comment",a.string="string",a.number="number",a.regexp="regexp",a.operator="operator",a.decorator="decorator"}(im||(im={})),function(a){a.declaration="declaration",a.definition="definition",a.readonly="readonly",a.static="static",a.deprecated="deprecated",a.abstract="abstract",a.async="async",a.modification="modification",a.documentation="documentation",a.defaultLibrary="defaultLibrary"}(sm||(sm={})),function(a){function i(o){const u=o;return C.objectLiteral(u)&&(u.resultId===void 0||typeof u.resultId=="string")&&Array.isArray(u.data)&&(u.data.length===0||typeof u.data[0]=="number")}s(i,"is"),a.is=i}(om||(om={})),function(a){function i(u,l){return{range:u,text:l}}s(i,"create"),a.create=i;function o(u){const l=u;return l!=null&&ee.is(l.range)&&C.string(l.text)}s(o,"is"),a.is=o}(lm||(lm={})),function(a){function i(u,l,c){return{range:u,variableName:l,caseSensitiveLookup:c}}s(i,"create"),a.create=i;function o(u){const l=u;return l!=null&&ee.is(l.range)&&C.boolean(l.caseSensitiveLookup)&&(C.string(l.variableName)||l.variableName===void 0)}s(o,"is"),a.is=o}(um||(um={})),function(a){function i(u,l){return{range:u,expression:l}}s(i,"create"),a.create=i;function o(u){const l=u;return l!=null&&ee.is(l.range)&&(C.string(l.expression)||l.expression===void 0)}s(o,"is"),a.is=o}(cm||(cm={})),function(a){function i(u,l){return{frameId:u,stoppedLocation:l}}s(i,"create"),a.create=i;function o(u){const l=u;return C.defined(l)&&ee.is(u.stoppedLocation)}s(o,"is"),a.is=o}(fm||(fm={})),function(a){a.Type=1,a.Parameter=2;function i(o){return o===1||o===2}s(i,"is"),a.is=i}(Sc||(Sc={})),function(a){function i(u){return{value:u}}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&(l.tooltip===void 0||C.string(l.tooltip)||Sa.is(l.tooltip))&&(l.location===void 0||Ji.is(l.location))&&(l.command===void 0||dn.is(l.command))}s(o,"is"),a.is=o}(wc||(wc={})),function(a){function i(u,l,c){const f={position:u,label:l};return c!==void 0&&(f.kind=c),f}s(i,"create"),a.create=i;function o(u){const l=u;return C.objectLiteral(l)&&oe.is(l.position)&&(C.string(l.label)||C.typedArray(l.label,wc.is))&&(l.kind===void 0||Sc.is(l.kind))&&l.textEdits===void 0||C.typedArray(l.textEdits,ar.is)&&(l.tooltip===void 0||C.string(l.tooltip)||Sa.is(l.tooltip))&&(l.paddingLeft===void 0||C.boolean(l.paddingLeft))&&(l.paddingRight===void 0||C.boolean(l.paddingRight))}s(o,"is"),a.is=o}(dm||(dm={})),function(a){function i(o){return{kind:"snippet",value:o}}s(i,"createSnippet"),a.createSnippet=i}(pm||(pm={})),function(a){function i(o,u,l,c){return{insertText:o,filterText:u,range:l,command:c}}s(i,"create"),a.create=i}(mm||(mm={})),function(a){function i(o){return{items:o}}s(i,"create"),a.create=i}(hm||(hm={})),function(a){a.Invoked=0,a.Automatic=1}(ym||(ym={})),function(a){function i(o,u){return{range:o,text:u}}s(i,"create"),a.create=i}(gm||(gm={})),function(a){function i(o,u){return{triggerKind:o,selectedCompletionInfo:u}}s(i,"create"),a.create=i}(vm||(vm={})),function(a){function i(o){const u=o;return C.objectLiteral(u)&&Ac.is(u.uri)&&C.string(u.name)}s(i,"is"),a.is=i}(Tm||(Tm={})),M$=[`
2
+ `,`\r
3
+ `,"\r"],function(a){function i(c,f,d,p){return new iv(c,f,d,p)}s(i,"create"),a.create=i;function o(c){let f=c;return!!(C.defined(f)&&C.string(f.uri)&&(C.undefined(f.languageId)||C.string(f.languageId))&&C.uinteger(f.lineCount)&&C.func(f.getText)&&C.func(f.positionAt)&&C.func(f.offsetAt))}s(o,"is"),a.is=o;function u(c,f){let d=c.getText(),p=l(f,(y,v)=>{let E=y.range.start.line-v.range.start.line;return E===0?y.range.start.character-v.range.start.character:E}),h=d.length;for(let y=p.length-1;y>=0;y--){let v=p[y],E=c.offsetAt(v.range.start),T=c.offsetAt(v.range.end);if(T<=h)d=d.substring(0,E)+v.newText+d.substring(T,d.length);else throw new Error("Overlapping edit");h=E}return d}s(u,"applyEdits"),a.applyEdits=u;function l(c,f){if(c.length<=1)return c;const d=c.length/2|0,p=c.slice(0,d),h=c.slice(d);l(p,f),l(h,f);let y=0,v=0,E=0;for(;y<p.length&&v<h.length;)f(p[y],h[v])<=0?c[E++]=p[y++]:c[E++]=h[v++];for(;y<p.length;)c[E++]=p[y++];for(;v<h.length;)c[E++]=h[v++];return c}s(l,"mergeSort")}($m||($m={})),iv=(n=class{constructor(i,o,u,l){this._uri=i,this._languageId=o,this._version=u,this._content=l,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(i){if(i){let o=this.offsetAt(i.start),u=this.offsetAt(i.end);return this._content.substring(o,u)}return this._content}update(i,o){this._content=i.text,this._version=o,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let i=[],o=this._content,u=!0;for(let l=0;l<o.length;l++){u&&(i.push(l),u=!1);let c=o.charAt(l);u=c==="\r"||c===`
4
+ `,c==="\r"&&l+1<o.length&&o.charAt(l+1)===`
5
+ `&&l++}u&&o.length>0&&i.push(o.length),this._lineOffsets=i}return this._lineOffsets}positionAt(i){i=Math.max(Math.min(i,this._content.length),0);let o=this.getLineOffsets(),u=0,l=o.length;if(l===0)return oe.create(0,i);for(;u<l;){let f=Math.floor((u+l)/2);o[f]>i?l=f:u=f+1}let c=u-1;return oe.create(c,i-o[c])}offsetAt(i){let o=this.getLineOffsets();if(i.line>=o.length)return this._content.length;if(i.line<0)return 0;let u=o[i.line],l=i.line+1<o.length?o[i.line+1]:this._content.length;return Math.max(Math.min(u+i.character,l),u)}get lineCount(){return this.getLineOffsets().length}},s(n,"FullTextDocument"),n),function(a){const i=Object.prototype.toString;function o(T){return typeof T<"u"}s(o,"defined"),a.defined=o;function u(T){return typeof T>"u"}s(u,"undefined"),a.undefined=u;function l(T){return T===!0||T===!1}s(l,"boolean"),a.boolean=l;function c(T){return i.call(T)==="[object String]"}s(c,"string"),a.string=c;function f(T){return i.call(T)==="[object Number]"}s(f,"number"),a.number=f;function d(T,S,b){return i.call(T)==="[object Number]"&&S<=T&&T<=b}s(d,"numberRange"),a.numberRange=d;function p(T){return i.call(T)==="[object Number]"&&-2147483648<=T&&T<=2147483647}s(p,"integer"),a.integer=p;function h(T){return i.call(T)==="[object Number]"&&0<=T&&T<=2147483647}s(h,"uinteger"),a.uinteger=h;function y(T){return i.call(T)==="[object Function]"}s(y,"func"),a.func=y;function v(T){return T!==null&&typeof T=="object"}s(v,"objectLiteral"),a.objectLiteral=v;function E(T,S){return Array.isArray(T)&&T.every(S)}s(E,"typedArray"),a.typedArray=E}(C||(C={}))}}),Kn=Y({"../../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"),function(n){function a(i){if(i===void 0)throw new Error("No runtime abstraction layer provided");e=i}s(a,"install"),n.install=a}(r||(r={})),t.default=r}}),Mu=Y({"../../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(l){return l===!0||l===!1}s(e,"boolean"),t.boolean=e;function r(l){return typeof l=="string"||l instanceof String}s(r,"string"),t.string=r;function n(l){return typeof l=="number"||l instanceof Number}s(n,"number"),t.number=n;function a(l){return l instanceof Error}s(a,"error"),t.error=a;function i(l){return typeof l=="function"}s(i,"func"),t.func=i;function o(l){return Array.isArray(l)}s(o,"array"),t.array=o;function u(l){return o(l)&&l.every(c=>r(c))}s(u,"stringArray"),t.stringArray=u}}),ci=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(t){var i,o;Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;var e=Kn(),r;(function(u){const l={dispose(){}};u.None=function(){return l}})(r||(t.Event=r={}));var n=(i=class{add(l,c=null,f){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(l),this._contexts.push(c),Array.isArray(f)&&f.push({dispose:s(()=>this.remove(l,c),"dispose")})}remove(l,c=null){if(!this._callbacks)return;let f=!1;for(let d=0,p=this._callbacks.length;d<p;d++)if(this._callbacks[d]===l)if(this._contexts[d]===c){this._callbacks.splice(d,1),this._contexts.splice(d,1);return}else f=!0;if(f)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...l){if(!this._callbacks)return[];const c=[],f=this._callbacks.slice(0),d=this._contexts.slice(0);for(let p=0,h=f.length;p<h;p++)try{c.push(f[p].apply(d[p],l))}catch(y){(0,e.default)().console.error(y)}return c}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},s(i,"CallbackList"),i),a=(o=class{constructor(l){this._options=l}get event(){return this._event||(this._event=(l,c,f)=>{this._callbacks||(this._callbacks=new n),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(l,c);const d={dispose:s(()=>{this._callbacks&&(this._callbacks.remove(l,c),d.dispose=o._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(f)&&f.push(d),d}),this._event}fire(l){this._callbacks&&this._callbacks.invoke.call(this._callbacks,l)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}},s(o,"Emitter"),o);t.Emitter=a,a._noop=function(){}}}),xf=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(t){var l,c;Object.defineProperty(t,"__esModule",{value:!0}),t.CancellationTokenSource=t.CancellationToken=void 0;var e=Kn(),r=Mu(),n=ci(),a;(function(f){f.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:n.Event.None}),f.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:n.Event.None});function d(p){const h=p;return h&&(h===f.None||h===f.Cancelled||r.boolean(h.isCancellationRequested)&&!!h.onCancellationRequested)}s(d,"is"),f.is=d})(a||(t.CancellationToken=a={}));var i=Object.freeze(function(f,d){const p=(0,e.default)().timer.setTimeout(f.bind(d),0);return{dispose(){p.dispose()}}}),o=(l=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?i:(this._emitter||(this._emitter=new n.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},s(l,"MutableToken"),l),u=(c=class{get token(){return this._token||(this._token=new o),this._token}cancel(){this._token?this._token.cancel():this._token=a.Cancelled}dispose(){this._token?this._token instanceof o&&this._token.dispose():this._token=a.None}},s(c,"CancellationTokenSource"),c);t.CancellationTokenSource=u}}),G$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(t){var k,_,$,I,R,A,w,L,x,O,z,M,X,H,Z,se,xe,ye,we,Je,Me,te,st,de,Ze;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=Mu(),r;(function(ge){ge.ParseError=-32700,ge.InvalidRequest=-32600,ge.MethodNotFound=-32601,ge.InvalidParams=-32602,ge.InternalError=-32603,ge.jsonrpcReservedErrorRangeStart=-32099,ge.serverErrorStart=-32099,ge.MessageWriteError=-32099,ge.MessageReadError=-32098,ge.PendingResponseRejected=-32097,ge.ConnectionInactive=-32096,ge.ServerNotInitialized=-32002,ge.UnknownErrorCode=-32001,ge.jsonrpcReservedErrorRangeEnd=-32e3,ge.serverErrorEnd=-32e3})(r||(t.ErrorCodes=r={}));var n=(k=class extends Error{constructor(G,je,Qt){super(je),this.code=e.number(G)?G:r.UnknownErrorCode,this.data=Qt,Object.setPrototypeOf(this,k.prototype)}toJson(){const G={code:this.code,message:this.message};return this.data!==void 0&&(G.data=this.data),G}},s(k,"ResponseError"),k);t.ResponseError=n;var a=(_=class{constructor(G){this.kind=G}static is(G){return G===_.auto||G===_.byName||G===_.byPosition}toString(){return this.kind}},s(_,"ParameterStructures"),_);t.ParameterStructures=a,a.auto=new a("auto"),a.byPosition=new a("byPosition"),a.byName=new a("byName");var i=($=class{constructor(G,je){this.method=G,this.numberOfParams=je}get parameterStructures(){return a.auto}},s($,"AbstractMessageSignature"),$);t.AbstractMessageSignature=i;var o=(I=class extends i{constructor(G){super(G,0)}},s(I,"RequestType0"),I);t.RequestType0=o;var u=(R=class extends i{constructor(G,je=a.auto){super(G,1),this._parameterStructures=je}get parameterStructures(){return this._parameterStructures}},s(R,"RequestType"),R);t.RequestType=u;var l=(A=class extends i{constructor(G,je=a.auto){super(G,1),this._parameterStructures=je}get parameterStructures(){return this._parameterStructures}},s(A,"RequestType1"),A);t.RequestType1=l;var c=(w=class extends i{constructor(G){super(G,2)}},s(w,"RequestType2"),w);t.RequestType2=c;var f=(L=class extends i{constructor(G){super(G,3)}},s(L,"RequestType3"),L);t.RequestType3=f;var d=(x=class extends i{constructor(G){super(G,4)}},s(x,"RequestType4"),x);t.RequestType4=d;var p=(O=class extends i{constructor(G){super(G,5)}},s(O,"RequestType5"),O);t.RequestType5=p;var h=(z=class extends i{constructor(G){super(G,6)}},s(z,"RequestType6"),z);t.RequestType6=h;var y=(M=class extends i{constructor(G){super(G,7)}},s(M,"RequestType7"),M);t.RequestType7=y;var v=(X=class extends i{constructor(G){super(G,8)}},s(X,"RequestType8"),X);t.RequestType8=v;var E=(H=class extends i{constructor(G){super(G,9)}},s(H,"RequestType9"),H);t.RequestType9=E;var T=(Z=class extends i{constructor(G,je=a.auto){super(G,1),this._parameterStructures=je}get parameterStructures(){return this._parameterStructures}},s(Z,"NotificationType"),Z);t.NotificationType=T;var S=(se=class extends i{constructor(G){super(G,0)}},s(se,"NotificationType0"),se);t.NotificationType0=S;var b=(xe=class extends i{constructor(G,je=a.auto){super(G,1),this._parameterStructures=je}get parameterStructures(){return this._parameterStructures}},s(xe,"NotificationType1"),xe);t.NotificationType1=b;var N=(ye=class extends i{constructor(G){super(G,2)}},s(ye,"NotificationType2"),ye);t.NotificationType2=N;var B=(we=class extends i{constructor(G){super(G,3)}},s(we,"NotificationType3"),we);t.NotificationType3=B;var ne=(Je=class extends i{constructor(G){super(G,4)}},s(Je,"NotificationType4"),Je);t.NotificationType4=ne;var J=(Me=class extends i{constructor(G){super(G,5)}},s(Me,"NotificationType5"),Me);t.NotificationType5=J;var me=(te=class extends i{constructor(G){super(G,6)}},s(te,"NotificationType6"),te);t.NotificationType6=me;var Ee=(st=class extends i{constructor(G){super(G,7)}},s(st,"NotificationType7"),st);t.NotificationType7=Ee;var he=(de=class extends i{constructor(G){super(G,8)}},s(de,"NotificationType8"),de);t.NotificationType8=he;var ue=(Ze=class extends i{constructor(G){super(G,9)}},s(Ze,"NotificationType9"),Ze);t.NotificationType9=ue;var ot;(function(ge){function G(Dt){const ve=Dt;return ve&&e.string(ve.method)&&(e.string(ve.id)||e.number(ve.id))}s(G,"isRequest"),ge.isRequest=G;function je(Dt){const ve=Dt;return ve&&e.string(ve.method)&&Dt.id===void 0}s(je,"isNotification"),ge.isNotification=je;function Qt(Dt){const ve=Dt;return ve&&(ve.result!==void 0||!!ve.error)&&(e.string(ve.id)||e.number(ve.id)||ve.id===null)}s(Qt,"isResponse"),ge.isResponse=Qt})(ot||(t.Message=ot={}))}}),F$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(t){var i,o;var e;Object.defineProperty(t,"__esModule",{value:!0}),t.LRUCache=t.LinkedMap=t.Touch=void 0;var r;(function(u){u.None=0,u.First=1,u.AsOld=u.First,u.Last=2,u.AsNew=u.Last})(r||(t.Touch=r={}));var n=(i=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 l;return(l=this._head)==null?void 0:l.value}get last(){var l;return(l=this._tail)==null?void 0:l.value}has(l){return this._map.has(l)}get(l,c=r.None){const f=this._map.get(l);if(f)return c!==r.None&&this.touch(f,c),f.value}set(l,c,f=r.None){let d=this._map.get(l);if(d)d.value=c,f!==r.None&&this.touch(d,f);else{switch(d={key:l,value:c,next:void 0,previous:void 0},f){case r.None:this.addItemLast(d);break;case r.First:this.addItemFirst(d);break;case r.Last:this.addItemLast(d);break;default:this.addItemLast(d);break}this._map.set(l,d),this._size++}return this}delete(l){return!!this.remove(l)}remove(l){const c=this._map.get(l);if(c)return this._map.delete(l),this.removeItem(c),this._size--,c.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const l=this._head;return this._map.delete(l.key),this.removeItem(l),this._size--,l.value}forEach(l,c){const f=this._state;let d=this._head;for(;d;){if(c?l.bind(c)(d.value,d.key,this):l(d.value,d.key,this),this._state!==f)throw new Error("LinkedMap got modified during iteration.");d=d.next}}keys(){const l=this._state;let c=this._head;const f={[Symbol.iterator]:()=>f,next:s(()=>{if(this._state!==l)throw new Error("LinkedMap got modified during iteration.");if(c){const d={value:c.key,done:!1};return c=c.next,d}else return{value:void 0,done:!0}},"next")};return f}values(){const l=this._state;let c=this._head;const f={[Symbol.iterator]:()=>f,next:s(()=>{if(this._state!==l)throw new Error("LinkedMap got modified during iteration.");if(c){const d={value:c.value,done:!1};return c=c.next,d}else return{value:void 0,done:!0}},"next")};return f}entries(){const l=this._state;let c=this._head;const f={[Symbol.iterator]:()=>f,next:s(()=>{if(this._state!==l)throw new Error("LinkedMap got modified during iteration.");if(c){const d={value:[c.key,c.value],done:!1};return c=c.next,d}else return{value:void 0,done:!0}},"next")};return f}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(l){if(l>=this.size)return;if(l===0){this.clear();return}let c=this._head,f=this.size;for(;c&&f>l;)this._map.delete(c.key),c=c.next,f--;this._head=c,this._size=f,c&&(c.previous=void 0),this._state++}addItemFirst(l){if(!this._head&&!this._tail)this._tail=l;else if(this._head)l.next=this._head,this._head.previous=l;else throw new Error("Invalid list");this._head=l,this._state++}addItemLast(l){if(!this._head&&!this._tail)this._head=l;else if(this._tail)l.previous=this._tail,this._tail.next=l;else throw new Error("Invalid list");this._tail=l,this._state++}removeItem(l){if(l===this._head&&l===this._tail)this._head=void 0,this._tail=void 0;else if(l===this._head){if(!l.next)throw new Error("Invalid list");l.next.previous=void 0,this._head=l.next}else if(l===this._tail){if(!l.previous)throw new Error("Invalid list");l.previous.next=void 0,this._tail=l.previous}else{const c=l.next,f=l.previous;if(!c||!f)throw new Error("Invalid list");c.previous=f,f.next=c}l.next=void 0,l.previous=void 0,this._state++}touch(l,c){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(c!==r.First&&c!==r.Last)){if(c===r.First){if(l===this._head)return;const f=l.next,d=l.previous;l===this._tail?(d.next=void 0,this._tail=d):(f.previous=d,d.next=f),l.previous=void 0,l.next=this._head,this._head.previous=l,this._head=l,this._state++}else if(c===r.Last){if(l===this._tail)return;const f=l.next,d=l.previous;l===this._head?(f.previous=void 0,this._head=f):(f.previous=d,d.next=f),l.next=void 0,l.previous=this._tail,this._tail.next=l,this._tail=l,this._state++}}}toJSON(){const l=[];return this.forEach((c,f)=>{l.push([f,c])}),l}fromJSON(l){this.clear();for(const[c,f]of l)this.set(c,f)}},s(i,"LinkedMap"),i);t.LinkedMap=n;var a=(o=class extends n{constructor(l,c=1){super(),this._limit=l,this._ratio=Math.min(Math.max(0,c),1)}get limit(){return this._limit}set limit(l){this._limit=l,this.checkTrim()}get ratio(){return this._ratio}set ratio(l){this._ratio=Math.min(Math.max(0,l),1),this.checkTrim()}get(l,c=r.AsNew){return super.get(l,c)}peek(l){return super.get(l,r.None)}set(l,c){return super.set(l,c,r.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}},s(o,"LRUCache"),o);t.LRUCache=a}}),UP=Y({"../../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(a){return{dispose:a}}s(n,"create"),r.create=n})(e||(t.Disposable=e={}))}}),KP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(t){var u,l,c,f;Object.defineProperty(t,"__esModule",{value:!0}),t.SharedArrayReceiverStrategy=t.SharedArraySenderStrategy=void 0;var e=xf(),r;(function(d){d.Continue=0,d.Cancelled=1})(r||(r={}));var n=(u=class{constructor(){this.buffers=new Map}enableCancellation(p){if(p.id===null)return;const h=new SharedArrayBuffer(4),y=new Int32Array(h,0,1);y[0]=r.Continue,this.buffers.set(p.id,h),p.$cancellationData=h}async sendCancellation(p,h){const y=this.buffers.get(h);if(y===void 0)return;const v=new Int32Array(y,0,1);Atomics.store(v,0,r.Cancelled)}cleanup(p){this.buffers.delete(p)}dispose(){this.buffers.clear()}},s(u,"SharedArraySenderStrategy"),u);t.SharedArraySenderStrategy=n;var a=(l=class{constructor(p){this.data=new Int32Array(p,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(l,"SharedArrayBufferCancellationToken"),l),i=(c=class{constructor(p){this.token=new a(p)}cancel(){}dispose(){}},s(c,"SharedArrayBufferCancellationTokenSource"),c),o=(f=class{constructor(){this.kind="request"}createCancellationTokenSource(p){const h=p.$cancellationData;return h===void 0?new e.CancellationTokenSource:new i(h)}},s(f,"SharedArrayReceiverStrategy"),f);t.SharedArrayReceiverStrategy=o}}),z$=Y({"../../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=Kn(),r=(n=class{constructor(i=1){if(i<=0)throw new Error("Capacity must be greater than 0");this._capacity=i,this._active=0,this._waiting=[]}lock(i){return new Promise((o,u)=>{this._waiting.push({thunk:i,resolve:o,reject:u}),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;const i=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{const o=i.thunk();o instanceof Promise?o.then(u=>{this._active--,i.resolve(u),this.runNext()},u=>{this._active--,i.reject(u),this.runNext()}):(this._active--,i.resolve(o),this.runNext())}catch(o){this._active--,i.reject(o),this.runNext()}}},s(n,"Semaphore"),n);t.Semaphore=r}}),WP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(t){var c,f;Object.defineProperty(t,"__esModule",{value:!0}),t.ReadableStreamMessageReader=t.AbstractMessageReader=t.MessageReader=void 0;var e=Kn(),r=Mu(),n=ci(),a=z$(),i;(function(d){function p(h){let y=h;return y&&r.func(y.listen)&&r.func(y.dispose)&&r.func(y.onError)&&r.func(y.onClose)&&r.func(y.onPartialMessage)}s(p,"is"),d.is=p})(i||(t.MessageReader=i={}));var o=(c=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(p){this.errorEmitter.fire(this.asError(p))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(p){this.partialMessageEmitter.fire(p)}asError(p){return p instanceof Error?p:new Error(`Reader received error. Reason: ${r.string(p.message)?p.message:"unknown"}`)}},s(c,"AbstractMessageReader"),c);t.AbstractMessageReader=o;var u;(function(d){function p(h){let y,v;const E=new Map;let T;const S=new Map;if(h===void 0||typeof h=="string")y=h??"utf-8";else{if(y=h.charset??"utf-8",h.contentDecoder!==void 0&&(v=h.contentDecoder,E.set(v.name,v)),h.contentDecoders!==void 0)for(const b of h.contentDecoders)E.set(b.name,b);if(h.contentTypeDecoder!==void 0&&(T=h.contentTypeDecoder,S.set(T.name,T)),h.contentTypeDecoders!==void 0)for(const b of h.contentTypeDecoders)S.set(b.name,b)}return T===void 0&&(T=(0,e.default)().applicationJson.decoder,S.set(T.name,T)),{charset:y,contentDecoder:v,contentDecoders:E,contentTypeDecoder:T,contentTypeDecoders:S}}s(p,"fromOptions"),d.fromOptions=p})(u||(u={}));var l=(f=class extends o{constructor(p,h){super(),this.readable=p,this.options=u.fromOptions(h),this.buffer=(0,e.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new a.Semaphore(1)}set partialMessageTimeout(p){this._partialMessageTimeout=p}get partialMessageTimeout(){return this._partialMessageTimeout}listen(p){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=p;const h=this.readable.onData(y=>{this.onData(y)});return this.readable.onError(y=>this.fireError(y)),this.readable.onClose(()=>this.fireClose()),h}onData(p){try{for(this.buffer.append(p);;){if(this.nextMessageLength===-1){const y=this.buffer.tryReadHeaders(!0);if(!y)return;const v=y.get("content-length");if(!v){this.fireError(new Error(`Header must provide a Content-Length property.
6
+ ${JSON.stringify(Object.fromEntries(y))}`));return}const E=parseInt(v);if(isNaN(E)){this.fireError(new Error(`Content-Length value must be a number. Got ${v}`));return}this.nextMessageLength=E}const h=this.buffer.tryReadBody(this.nextMessageLength);if(h===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{const y=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(h):h,v=await this.options.contentTypeDecoder.decode(y,this.options);this.callback(v)}).catch(y=>{this.fireError(y)})}}catch(h){this.fireError(h)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,e.default)().timer.setTimeout((p,h)=>{this.partialMessageTimer=void 0,p===this.messageToken&&(this.firePartialMessage({messageToken:p,waitingTime:h}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}},s(f,"ReadableStreamMessageReader"),f);t.ReadableStreamMessageReader=l}}),qP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(t){var d,p;Object.defineProperty(t,"__esModule",{value:!0}),t.WriteableStreamMessageWriter=t.AbstractMessageWriter=t.MessageWriter=void 0;var e=Kn(),r=Mu(),n=z$(),a=ci(),i="Content-Length: ",o=`\r
7
+ `,u;(function(h){function y(v){let E=v;return E&&r.func(E.dispose)&&r.func(E.onClose)&&r.func(E.onError)&&r.func(E.write)}s(y,"is"),h.is=y})(u||(t.MessageWriter=u={}));var l=(d=class{constructor(){this.errorEmitter=new a.Emitter,this.closeEmitter=new a.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(y,v,E){this.errorEmitter.fire([this.asError(y),v,E])}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(d,"AbstractMessageWriter"),d);t.AbstractMessageWriter=l;var c;(function(h){function y(v){return v===void 0||typeof v=="string"?{charset:v??"utf-8",contentTypeEncoder:(0,e.default)().applicationJson.encoder}:{charset:v.charset??"utf-8",contentEncoder:v.contentEncoder,contentTypeEncoder:v.contentTypeEncoder??(0,e.default)().applicationJson.encoder}}s(y,"fromOptions"),h.fromOptions=y})(c||(c={}));var f=(p=class extends l{constructor(y,v){super(),this.writable=y,this.options=c.fromOptions(v),this.errorCount=0,this.writeSemaphore=new n.Semaphore(1),this.writable.onError(E=>this.fireError(E)),this.writable.onClose(()=>this.fireClose())}async write(y){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(y,this.options).then(E=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(E):E).then(E=>{const T=[];return T.push(i,E.byteLength.toString(),o),T.push(o),this.doWrite(y,T,E)},E=>{throw this.fireError(E),E}))}async doWrite(y,v,E){try{return await this.writable.write(v.join(""),"ascii"),this.writable.write(E)}catch(T){return this.handleError(T,y),Promise.reject(T)}}handleError(y,v){this.errorCount++,this.fireError(y,v,this.errorCount)}end(){this.writable.end()}},s(p,"WriteableStreamMessageWriter"),p);t.WriteableStreamMessageWriter=f}}),VP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(t){var i;Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractMessageBuffer=void 0;var e=13,r=10,n=`\r
8
+ `,a=(i=class{constructor(u="utf-8"){this._encoding=u,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(u){const l=typeof u=="string"?this.fromString(u,this._encoding):u;this._chunks.push(l),this._totalLength+=l.byteLength}tryReadHeaders(u=!1){if(this._chunks.length===0)return;let l=0,c=0,f=0,d=0;e:for(;c<this._chunks.length;){const v=this._chunks[c];for(f=0;f<v.length;){switch(v[f]){case e:switch(l){case 0:l=1;break;case 2:l=3;break;default:l=0}break;case r:switch(l){case 1:l=2;break;case 3:l=4,f++;break e;default:l=0}break;default:l=0}f++}d+=v.byteLength,c++}if(l!==4)return;const p=this._read(d+f),h=new Map,y=this.toString(p,"ascii").split(n);if(y.length<2)return h;for(let v=0;v<y.length-2;v++){const E=y[v],T=E.indexOf(":");if(T===-1)throw new Error(`Message header must separate key and value using ':'
9
+ ${E}`);const S=E.substr(0,T),b=E.substr(T+1).trim();h.set(u?S.toLowerCase():S,b)}return h}tryReadBody(u){if(!(this._totalLength<u))return this._read(u)}get numberOfBytes(){return this._totalLength}_read(u){if(u===0)return this.emptyBuffer();if(u>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===u){const d=this._chunks[0];return this._chunks.shift(),this._totalLength-=u,this.asNative(d)}if(this._chunks[0].byteLength>u){const d=this._chunks[0],p=this.asNative(d,u);return this._chunks[0]=d.slice(u),this._totalLength-=u,p}const l=this.allocNative(u);let c=0,f=0;for(;u>0;){const d=this._chunks[f];if(d.byteLength>u){const p=d.slice(0,u);l.set(p,c),c+=u,this._chunks[f]=d.slice(u),this._totalLength-=u,u-=u}else l.set(d,c),c+=d.byteLength,this._chunks.shift(),this._totalLength-=d.byteLength,u-=d.byteLength}return l}},s(i,"AbstractMessageBuffer"),i);t.AbstractMessageBuffer=a}}),HP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(t){var k,_;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=Kn(),r=Mu(),n=G$(),a=F$(),i=ci(),o=xf(),u;(function($){$.type=new n.NotificationType("$/cancelRequest")})(u||(u={}));var l;(function($){function I(R){return typeof R=="string"||typeof R=="number"}s(I,"is"),$.is=I})(l||(t.ProgressToken=l={}));var c;(function($){$.type=new n.NotificationType("$/progress")})(c||(c={}));var f=(k=class{constructor(){}},s(k,"ProgressType"),k);t.ProgressType=f;var d;(function($){function I(R){return r.func(R)}s(I,"is"),$.is=I})(d||(d={})),t.NullLogger=Object.freeze({error:s(()=>{},"error"),warn:s(()=>{},"warn"),info:s(()=>{},"info"),log:s(()=>{},"log")});var p;(function($){$[$.Off=0]="Off",$[$.Messages=1]="Messages",$[$.Compact=2]="Compact",$[$.Verbose=3]="Verbose"})(p||(t.Trace=p={}));var h;(function($){$.Off="off",$.Messages="messages",$.Compact="compact",$.Verbose="verbose"})(h||(t.TraceValues=h={})),function($){function I(A){if(!r.string(A))return $.Off;switch(A=A.toLowerCase(),A){case"off":return $.Off;case"messages":return $.Messages;case"compact":return $.Compact;case"verbose":return $.Verbose;default:return $.Off}}s(I,"fromString"),$.fromString=I;function R(A){switch(A){case $.Off:return"off";case $.Messages:return"messages";case $.Compact:return"compact";case $.Verbose:return"verbose";default:return"off"}}s(R,"toString"),$.toString=R}(p||(t.Trace=p={}));var y;(function($){$.Text="text",$.JSON="json"})(y||(t.TraceFormat=y={})),function($){function I(R){return r.string(R)?(R=R.toLowerCase(),R==="json"?$.JSON:$.Text):$.Text}s(I,"fromString"),$.fromString=I}(y||(t.TraceFormat=y={}));var v;(function($){$.type=new n.NotificationType("$/setTrace")})(v||(t.SetTraceNotification=v={}));var E;(function($){$.type=new n.NotificationType("$/logTrace")})(E||(t.LogTraceNotification=E={}));var T;(function($){$[$.Closed=1]="Closed",$[$.Disposed=2]="Disposed",$[$.AlreadyListening=3]="AlreadyListening"})(T||(t.ConnectionErrors=T={}));var S=(_=class extends Error{constructor(I,R){super(R),this.code=I,Object.setPrototypeOf(this,_.prototype)}},s(_,"ConnectionError"),_);t.ConnectionError=S;var b;(function($){function I(R){const A=R;return A&&r.func(A.cancelUndispatched)}s(I,"is"),$.is=I})(b||(t.ConnectionStrategy=b={}));var N;(function($){function I(R){const A=R;return A&&(A.kind===void 0||A.kind==="id")&&r.func(A.createCancellationTokenSource)&&(A.dispose===void 0||r.func(A.dispose))}s(I,"is"),$.is=I})(N||(t.IdCancellationReceiverStrategy=N={}));var B;(function($){function I(R){const A=R;return A&&A.kind==="request"&&r.func(A.createCancellationTokenSource)&&(A.dispose===void 0||r.func(A.dispose))}s(I,"is"),$.is=I})(B||(t.RequestCancellationReceiverStrategy=B={}));var ne;(function($){$.Message=Object.freeze({createCancellationTokenSource(R){return new o.CancellationTokenSource}});function I(R){return N.is(R)||B.is(R)}s(I,"is"),$.is=I})(ne||(t.CancellationReceiverStrategy=ne={}));var J;(function($){$.Message=Object.freeze({sendCancellation(R,A){return R.sendNotification(u.type,{id:A})},cleanup(R){}});function I(R){const A=R;return A&&r.func(A.sendCancellation)&&r.func(A.cleanup)}s(I,"is"),$.is=I})(J||(t.CancellationSenderStrategy=J={}));var me;(function($){$.Message=Object.freeze({receiver:ne.Message,sender:J.Message});function I(R){const A=R;return A&&ne.is(A.receiver)&&J.is(A.sender)}s(I,"is"),$.is=I})(me||(t.CancellationStrategy=me={}));var Ee;(function($){function I(R){const A=R;return A&&r.func(A.handleMessage)}s(I,"is"),$.is=I})(Ee||(t.MessageStrategy=Ee={}));var he;(function($){function I(R){const A=R;return A&&(me.is(A.cancellationStrategy)||b.is(A.connectionStrategy)||Ee.is(A.messageStrategy))}s(I,"is"),$.is=I})(he||(t.ConnectionOptions=he={}));var ue;(function($){$[$.New=1]="New",$[$.Listening=2]="Listening",$[$.Closed=3]="Closed",$[$.Disposed=4]="Disposed"})(ue||(ue={}));function ot($,I,R,A){const w=R!==void 0?R:t.NullLogger;let L=0,x=0,O=0;const z="2.0";let M;const X=new Map;let H;const Z=new Map,se=new Map;let xe,ye=new a.LinkedMap,we=new Map,Je=new Set,Me=new Map,te=p.Off,st=y.Text,de,Ze=ue.New;const ge=new i.Emitter,G=new i.Emitter,je=new i.Emitter,Qt=new i.Emitter,Dt=new i.Emitter,ve=A&&A.cancellationStrategy?A.cancellationStrategy:me.Message;function fa(g){if(g===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+g.toString()}s(fa,"createRequestQueueKey");function Ri(g){return g===null?"res-unknown-"+(++O).toString():"res-"+g.toString()}s(Ri,"createResponseQueueKey");function Ai(){return"not-"+(++x).toString()}s(Ai,"createNotificationQueueKey");function Ei(g,P){n.Message.isRequest(P)?g.set(fa(P.id),P):n.Message.isResponse(P)?g.set(Ri(P.id),P):g.set(Ai(),P)}s(Ei,"addMessageToQueue");function Ci(g){}s(Ci,"cancelUndispatched");function da(){return Ze===ue.Listening}s(da,"isListening");function pa(){return Ze===ue.Closed}s(pa,"isClosed");function er(){return Ze===ue.Disposed}s(er,"isDisposed");function ma(){(Ze===ue.New||Ze===ue.Listening)&&(Ze=ue.Closed,G.fire(void 0))}s(ma,"closeHandler");function bi(g){ge.fire([g,void 0,void 0])}s(bi,"readErrorHandler");function _i(g){ge.fire(g)}s(_i,"writeErrorHandler"),$.onClose(ma),$.onError(bi),I.onClose(ma),I.onError(_i);function ha(){xe||ye.size===0||(xe=(0,e.default)().timer.setImmediate(()=>{xe=void 0,Si()}))}s(ha,"triggerMessageQueue");function ya(g){n.Message.isRequest(g)?wi(g):n.Message.isNotification(g)?Ni(g):n.Message.isResponse(g)?Ii(g):Pi(g)}s(ya,"handleMessage");function Si(){if(ye.size===0)return;const g=ye.shift();try{const P=A==null?void 0:A.messageStrategy;Ee.is(P)?P.handleMessage(g,ya):ya(g)}finally{ha()}}s(Si,"processMessageQueue");const nc=s(g=>{try{if(n.Message.isNotification(g)&&g.method===u.type.method){const P=g.params.id,D=fa(P),F=ye.get(D);if(n.Message.isRequest(F)){const pe=A==null?void 0:A.connectionStrategy,Te=pe&&pe.cancelUndispatched?pe.cancelUndispatched(F,Ci):void 0;if(Te&&(Te.error!==void 0||Te.result!==void 0)){ye.delete(D),Me.delete(P),Te.id=F.id,jr(Te,g.method,Date.now()),I.write(Te).catch(()=>w.error("Sending response for canceled message failed."));return}}const Ce=Me.get(P);if(Ce!==void 0){Ce.cancel(),sn(g);return}else Je.add(P)}Ei(ye,g)}finally{ha()}},"callback");function wi(g){if(er())return;function P(ae,Pe,ce){const Ue={jsonrpc:z,id:g.id};ae instanceof n.ResponseError?Ue.error=ae.toJson():Ue.result=ae===void 0?null:ae,jr(Ue,Pe,ce),I.write(Ue).catch(()=>w.error("Sending response failed."))}s(P,"reply");function D(ae,Pe,ce){const Ue={jsonrpc:z,id:g.id,error:ae.toJson()};jr(Ue,Pe,ce),I.write(Ue).catch(()=>w.error("Sending response failed."))}s(D,"replyError");function F(ae,Pe,ce){ae===void 0&&(ae=null);const Ue={jsonrpc:z,id:g.id,result:ae};jr(Ue,Pe,ce),I.write(Ue).catch(()=>w.error("Sending response failed."))}s(F,"replySuccess"),Li(g);const Ce=X.get(g.method);let pe,Te;Ce&&(pe=Ce.type,Te=Ce.handler);const Ge=Date.now();if(Te||M){const ae=g.id??String(Date.now()),Pe=N.is(ve.receiver)?ve.receiver.createCancellationTokenSource(ae):ve.receiver.createCancellationTokenSource(g);g.id!==null&&Je.has(g.id)&&Pe.cancel(),g.id!==null&&Me.set(ae,Pe);try{let ce;if(Te)if(g.params===void 0){if(pe!==void 0&&pe.numberOfParams!==0){D(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${g.method} defines ${pe.numberOfParams} params but received none.`),g.method,Ge);return}ce=Te(Pe.token)}else if(Array.isArray(g.params)){if(pe!==void 0&&pe.parameterStructures===n.ParameterStructures.byName){D(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${g.method} defines parameters by name but received parameters by position`),g.method,Ge);return}ce=Te(...g.params,Pe.token)}else{if(pe!==void 0&&pe.parameterStructures===n.ParameterStructures.byPosition){D(new n.ResponseError(n.ErrorCodes.InvalidParams,`Request ${g.method} defines parameters by position but received parameters by name`),g.method,Ge);return}ce=Te(g.params,Pe.token)}else M&&(ce=M(g.method,g.params,Pe.token));const Ue=ce;ce?Ue.then?Ue.then(lt=>{Me.delete(ae),P(lt,g.method,Ge)},lt=>{Me.delete(ae),lt instanceof n.ResponseError?D(lt,g.method,Ge):lt&&r.string(lt.message)?D(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${g.method} failed with message: ${lt.message}`),g.method,Ge):D(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${g.method} failed unexpectedly without providing any details.`),g.method,Ge)}):(Me.delete(ae),P(ce,g.method,Ge)):(Me.delete(ae),F(ce,g.method,Ge))}catch(ce){Me.delete(ae),ce instanceof n.ResponseError?P(ce,g.method,Ge):ce&&r.string(ce.message)?D(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${g.method} failed with message: ${ce.message}`),g.method,Ge):D(new n.ResponseError(n.ErrorCodes.InternalError,`Request ${g.method} failed unexpectedly without providing any details.`),g.method,Ge)}}else D(new n.ResponseError(n.ErrorCodes.MethodNotFound,`Unhandled method ${g.method}`),g.method,Ge)}s(wi,"handleRequest");function Ii(g){if(!er())if(g.id===null)g.error?w.error(`Received response message without id: Error is:
10
+ ${JSON.stringify(g.error,void 0,4)}`):w.error("Received response message without id. No further error information provided.");else{const P=g.id,D=we.get(P);if(Di(g,D),D!==void 0){we.delete(P);try{if(g.error){const F=g.error;D.reject(new n.ResponseError(F.code,F.message,F.data))}else if(g.result!==void 0)D.resolve(g.result);else throw new Error("Should never happen.")}catch(F){F.message?w.error(`Response handler '${D.method}' failed with message: ${F.message}`):w.error(`Response handler '${D.method}' failed unexpectedly.`)}}}}s(Ii,"handleResponse");function Ni(g){if(er())return;let P,D;if(g.method===u.type.method){const F=g.params.id;Je.delete(F),sn(g);return}else{const F=Z.get(g.method);F&&(D=F.handler,P=F.type)}if(D||H)try{if(sn(g),D)if(g.params===void 0)P!==void 0&&P.numberOfParams!==0&&P.parameterStructures!==n.ParameterStructures.byName&&w.error(`Notification ${g.method} defines ${P.numberOfParams} params but received none.`),D();else if(Array.isArray(g.params)){const F=g.params;g.method===c.type.method&&F.length===2&&l.is(F[0])?D({token:F[0],value:F[1]}):(P!==void 0&&(P.parameterStructures===n.ParameterStructures.byName&&w.error(`Notification ${g.method} defines parameters by name but received parameters by position`),P.numberOfParams!==g.params.length&&w.error(`Notification ${g.method} defines ${P.numberOfParams} params but received ${F.length} arguments`)),D(...F))}else P!==void 0&&P.parameterStructures===n.ParameterStructures.byPosition&&w.error(`Notification ${g.method} defines parameters by position but received parameters by name`),D(g.params);else H&&H(g.method,g.params)}catch(F){F.message?w.error(`Notification handler '${g.method}' failed with message: ${F.message}`):w.error(`Notification handler '${g.method}' failed unexpectedly.`)}else je.fire(g)}s(Ni,"handleNotification");function Pi(g){if(!g){w.error("Received empty message.");return}w.error(`Received message which is neither a response nor a notification message:
11
+ ${JSON.stringify(g,null,4)}`);const P=g;if(r.string(P.id)||r.number(P.id)){const D=P.id,F=we.get(D);F&&F.reject(new Error("The received response has neither a result nor an error property."))}}s(Pi,"handleInvalidMessage");function xt(g){if(g!=null)switch(te){case p.Verbose:return JSON.stringify(g,null,4);case p.Compact:return JSON.stringify(g);default:return}}s(xt,"stringifyTrace");function ki(g){if(!(te===p.Off||!de))if(st===y.Text){let P;(te===p.Verbose||te===p.Compact)&&g.params&&(P=`Params: ${xt(g.params)}
12
+
13
+ `),de.log(`Sending request '${g.method} - (${g.id})'.`,P)}else tr("send-request",g)}s(ki,"traceSendingRequest");function Oi(g){if(!(te===p.Off||!de))if(st===y.Text){let P;(te===p.Verbose||te===p.Compact)&&(g.params?P=`Params: ${xt(g.params)}
14
+
15
+ `:P=`No parameters provided.
16
+
17
+ `),de.log(`Sending notification '${g.method}'.`,P)}else tr("send-notification",g)}s(Oi,"traceSendingNotification");function jr(g,P,D){if(!(te===p.Off||!de))if(st===y.Text){let F;(te===p.Verbose||te===p.Compact)&&(g.error&&g.error.data?F=`Error data: ${xt(g.error.data)}
18
+
19
+ `:g.result?F=`Result: ${xt(g.result)}
20
+
21
+ `:g.error===void 0&&(F=`No result returned.
22
+
23
+ `)),de.log(`Sending response '${P} - (${g.id})'. Processing request took ${Date.now()-D}ms`,F)}else tr("send-response",g)}s(jr,"traceSendingResponse");function Li(g){if(!(te===p.Off||!de))if(st===y.Text){let P;(te===p.Verbose||te===p.Compact)&&g.params&&(P=`Params: ${xt(g.params)}
24
+
25
+ `),de.log(`Received request '${g.method} - (${g.id})'.`,P)}else tr("receive-request",g)}s(Li,"traceReceivedRequest");function sn(g){if(!(te===p.Off||!de||g.method===E.type.method))if(st===y.Text){let P;(te===p.Verbose||te===p.Compact)&&(g.params?P=`Params: ${xt(g.params)}
26
+
27
+ `:P=`No parameters provided.
28
+
29
+ `),de.log(`Received notification '${g.method}'.`,P)}else tr("receive-notification",g)}s(sn,"traceReceivedNotification");function Di(g,P){if(!(te===p.Off||!de))if(st===y.Text){let D;if((te===p.Verbose||te===p.Compact)&&(g.error&&g.error.data?D=`Error data: ${xt(g.error.data)}
30
+
31
+ `:g.result?D=`Result: ${xt(g.result)}
32
+
33
+ `:g.error===void 0&&(D=`No result returned.
34
+
35
+ `)),P){const F=g.error?` Request failed: ${g.error.message} (${g.error.code}).`:"";de.log(`Received response '${P.method} - (${g.id})' in ${Date.now()-P.timerStart}ms.${F}`,D)}else de.log(`Received response ${g.id} without active response promise.`,D)}else tr("receive-response",g)}s(Di,"traceReceivedResponse");function tr(g,P){if(!de||te===p.Off)return;const D={isLSPMessage:!0,type:g,message:P,timestamp:Date.now()};de.log(D)}s(tr,"logLSPMessage");function Tr(){if(pa())throw new S(T.Closed,"Connection is closed.");if(er())throw new S(T.Disposed,"Connection is disposed.")}s(Tr,"throwIfClosedOrDisposed");function xi(){if(da())throw new S(T.AlreadyListening,"Connection is already listening")}s(xi,"throwIfListening");function Mi(){if(!da())throw new Error("Call listen() first.")}s(Mi,"throwIfNotListening");function m(g){return g===void 0?null:g}s(m,"undefinedToNull");function le(g){if(g!==null)return g}s(le,"nullToUndefined");function Ie(g){return g!=null&&!Array.isArray(g)&&typeof g=="object"}s(Ie,"isNamedParam");function V(g,P){switch(g){case n.ParameterStructures.auto:return Ie(P)?le(P):[m(P)];case n.ParameterStructures.byName:if(!Ie(P))throw new Error("Received parameters by name but param is not an object literal.");return le(P);case n.ParameterStructures.byPosition:return[m(P)];default:throw new Error(`Unknown parameter structure ${g.toString()}`)}}s(V,"computeSingleParam");function Ne(g,P){let D;const F=g.numberOfParams;switch(F){case 0:D=void 0;break;case 1:D=V(g.parameterStructures,P[0]);break;default:D=[];for(let Ce=0;Ce<P.length&&Ce<F;Ce++)D.push(m(P[Ce]));if(P.length<F)for(let Ce=P.length;Ce<F;Ce++)D.push(null);break}return D}s(Ne,"computeMessageParams");const ga={sendNotification:s((g,...P)=>{Tr();let D,F;if(r.string(g)){D=g;const pe=P[0];let Te=0,Ge=n.ParameterStructures.auto;n.ParameterStructures.is(pe)&&(Te=1,Ge=pe);let ae=P.length;const Pe=ae-Te;switch(Pe){case 0:F=void 0;break;case 1:F=V(Ge,P[Te]);break;default:if(Ge===n.ParameterStructures.byName)throw new Error(`Received ${Pe} parameters for 'by Name' notification parameter structure.`);F=P.slice(Te,ae).map(ce=>m(ce));break}}else{const pe=P;D=g.method,F=Ne(g,pe)}const Ce={jsonrpc:z,method:D,params:F};return Oi(Ce),I.write(Ce).catch(pe=>{throw w.error("Sending notification failed."),pe})},"sendNotification"),onNotification:s((g,P)=>{Tr();let D;return r.func(g)?H=g:P&&(r.string(g)?(D=g,Z.set(g,{type:void 0,handler:P})):(D=g.method,Z.set(g.method,{type:g,handler:P}))),{dispose:s(()=>{D!==void 0?Z.delete(D):H=void 0},"dispose")}},"onNotification"),onProgress:s((g,P,D)=>{if(se.has(P))throw new Error(`Progress handler for token ${P} already registered`);return se.set(P,D),{dispose:s(()=>{se.delete(P)},"dispose")}},"onProgress"),sendProgress:s((g,P,D)=>ga.sendNotification(c.type,{token:P,value:D}),"sendProgress"),onUnhandledProgress:Qt.event,sendRequest:s((g,...P)=>{Tr(),Mi();let D,F,Ce;if(r.string(g)){D=g;const ae=P[0],Pe=P[P.length-1];let ce=0,Ue=n.ParameterStructures.auto;n.ParameterStructures.is(ae)&&(ce=1,Ue=ae);let lt=P.length;o.CancellationToken.is(Pe)&&(lt=lt-1,Ce=Pe);const rr=lt-ce;switch(rr){case 0:F=void 0;break;case 1:F=V(Ue,P[ce]);break;default:if(Ue===n.ParameterStructures.byName)throw new Error(`Received ${rr} parameters for 'by Name' request parameter structure.`);F=P.slice(ce,lt).map(DP=>m(DP));break}}else{const ae=P;D=g.method,F=Ne(g,ae);const Pe=g.numberOfParams;Ce=o.CancellationToken.is(ae[Pe])?ae[Pe]:void 0}const pe=L++;let Te;Ce&&(Te=Ce.onCancellationRequested(()=>{const ae=ve.sender.sendCancellation(ga,pe);return ae===void 0?(w.log(`Received no promise from cancellation strategy when cancelling id ${pe}`),Promise.resolve()):ae.catch(()=>{w.log(`Sending cancellation messages for id ${pe} failed`)})}));const Ge={jsonrpc:z,id:pe,method:D,params:F};return ki(Ge),typeof ve.sender.enableCancellation=="function"&&ve.sender.enableCancellation(Ge),new Promise(async(ae,Pe)=>{const ce=s(rr=>{ae(rr),ve.sender.cleanup(pe),Te==null||Te.dispose()},"resolveWithCleanup"),Ue=s(rr=>{Pe(rr),ve.sender.cleanup(pe),Te==null||Te.dispose()},"rejectWithCleanup"),lt={method:D,timerStart:Date.now(),resolve:ce,reject:Ue};try{await I.write(Ge),we.set(pe,lt)}catch(rr){throw w.error("Sending request failed."),lt.reject(new n.ResponseError(n.ErrorCodes.MessageWriteError,rr.message?rr.message:"Unknown reason")),rr}})},"sendRequest"),onRequest:s((g,P)=>{Tr();let D=null;return d.is(g)?(D=void 0,M=g):r.string(g)?(D=null,P!==void 0&&(D=g,X.set(g,{handler:P,type:void 0}))):P!==void 0&&(D=g.method,X.set(g.method,{type:g,handler:P})),{dispose:s(()=>{D!==null&&(D!==void 0?X.delete(D):M=void 0)},"dispose")}},"onRequest"),hasPendingResponse:s(()=>we.size>0,"hasPendingResponse"),trace:s(async(g,P,D)=>{let F=!1,Ce=y.Text;D!==void 0&&(r.boolean(D)?F=D:(F=D.sendNotification||!1,Ce=D.traceFormat||y.Text)),te=g,st=Ce,te===p.Off?de=void 0:de=P,F&&!pa()&&!er()&&await ga.sendNotification(v.type,{value:p.toString(g)})},"trace"),onError:ge.event,onClose:G.event,onUnhandledNotification:je.event,onDispose:Dt.event,end:s(()=>{I.end()},"end"),dispose:s(()=>{if(er())return;Ze=ue.Disposed,Dt.fire(void 0);const g=new n.ResponseError(n.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(const P of we.values())P.reject(g);we=new Map,Me=new Map,Je=new Set,ye=new a.LinkedMap,r.func(I.dispose)&&I.dispose(),r.func($.dispose)&&$.dispose()},"dispose"),listen:s(()=>{Tr(),xi(),Ze=ue.Listening,$.listen(nc)},"listen"),inspect:s(()=>{(0,e.default)().console.log("inspect")},"inspect")};return ga.onNotification(E.type,g=>{if(te===p.Off||!de)return;const P=te===p.Verbose||te===p.Compact;de.log(g.message,P?g.verbose:void 0)}),ga.onNotification(c.type,g=>{const P=se.get(g.token);P?P(g.value):Qt.fire(g)}),ga}s(ot,"createMessageConnection"),t.createMessageConnection=ot}}),Rm=Y({"../../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=G$();Object.defineProperty(t,"Message",{enumerable:!0,get:s(function(){return e.Message},"get")}),Object.defineProperty(t,"RequestType",{enumerable:!0,get:s(function(){return e.RequestType},"get")}),Object.defineProperty(t,"RequestType0",{enumerable:!0,get:s(function(){return e.RequestType0},"get")}),Object.defineProperty(t,"RequestType1",{enumerable:!0,get:s(function(){return e.RequestType1},"get")}),Object.defineProperty(t,"RequestType2",{enumerable:!0,get:s(function(){return e.RequestType2},"get")}),Object.defineProperty(t,"RequestType3",{enumerable:!0,get:s(function(){return e.RequestType3},"get")}),Object.defineProperty(t,"RequestType4",{enumerable:!0,get:s(function(){return e.RequestType4},"get")}),Object.defineProperty(t,"RequestType5",{enumerable:!0,get:s(function(){return e.RequestType5},"get")}),Object.defineProperty(t,"RequestType6",{enumerable:!0,get:s(function(){return e.RequestType6},"get")}),Object.defineProperty(t,"RequestType7",{enumerable:!0,get:s(function(){return e.RequestType7},"get")}),Object.defineProperty(t,"RequestType8",{enumerable:!0,get:s(function(){return e.RequestType8},"get")}),Object.defineProperty(t,"RequestType9",{enumerable:!0,get:s(function(){return e.RequestType9},"get")}),Object.defineProperty(t,"ResponseError",{enumerable:!0,get:s(function(){return e.ResponseError},"get")}),Object.defineProperty(t,"ErrorCodes",{enumerable:!0,get:s(function(){return e.ErrorCodes},"get")}),Object.defineProperty(t,"NotificationType",{enumerable:!0,get:s(function(){return e.NotificationType},"get")}),Object.defineProperty(t,"NotificationType0",{enumerable:!0,get:s(function(){return e.NotificationType0},"get")}),Object.defineProperty(t,"NotificationType1",{enumerable:!0,get:s(function(){return e.NotificationType1},"get")}),Object.defineProperty(t,"NotificationType2",{enumerable:!0,get:s(function(){return e.NotificationType2},"get")}),Object.defineProperty(t,"NotificationType3",{enumerable:!0,get:s(function(){return e.NotificationType3},"get")}),Object.defineProperty(t,"NotificationType4",{enumerable:!0,get:s(function(){return e.NotificationType4},"get")}),Object.defineProperty(t,"NotificationType5",{enumerable:!0,get:s(function(){return e.NotificationType5},"get")}),Object.defineProperty(t,"NotificationType6",{enumerable:!0,get:s(function(){return e.NotificationType6},"get")}),Object.defineProperty(t,"NotificationType7",{enumerable:!0,get:s(function(){return e.NotificationType7},"get")}),Object.defineProperty(t,"NotificationType8",{enumerable:!0,get:s(function(){return e.NotificationType8},"get")}),Object.defineProperty(t,"NotificationType9",{enumerable:!0,get:s(function(){return e.NotificationType9},"get")}),Object.defineProperty(t,"ParameterStructures",{enumerable:!0,get:s(function(){return e.ParameterStructures},"get")});var r=F$();Object.defineProperty(t,"LinkedMap",{enumerable:!0,get:s(function(){return r.LinkedMap},"get")}),Object.defineProperty(t,"LRUCache",{enumerable:!0,get:s(function(){return r.LRUCache},"get")}),Object.defineProperty(t,"Touch",{enumerable:!0,get:s(function(){return r.Touch},"get")});var n=UP();Object.defineProperty(t,"Disposable",{enumerable:!0,get:s(function(){return n.Disposable},"get")});var a=ci();Object.defineProperty(t,"Event",{enumerable:!0,get:s(function(){return a.Event},"get")}),Object.defineProperty(t,"Emitter",{enumerable:!0,get:s(function(){return a.Emitter},"get")});var i=xf();Object.defineProperty(t,"CancellationTokenSource",{enumerable:!0,get:s(function(){return i.CancellationTokenSource},"get")}),Object.defineProperty(t,"CancellationToken",{enumerable:!0,get:s(function(){return i.CancellationToken},"get")});var o=KP();Object.defineProperty(t,"SharedArraySenderStrategy",{enumerable:!0,get:s(function(){return o.SharedArraySenderStrategy},"get")}),Object.defineProperty(t,"SharedArrayReceiverStrategy",{enumerable:!0,get:s(function(){return o.SharedArrayReceiverStrategy},"get")});var u=WP();Object.defineProperty(t,"MessageReader",{enumerable:!0,get:s(function(){return u.MessageReader},"get")}),Object.defineProperty(t,"AbstractMessageReader",{enumerable:!0,get:s(function(){return u.AbstractMessageReader},"get")}),Object.defineProperty(t,"ReadableStreamMessageReader",{enumerable:!0,get:s(function(){return u.ReadableStreamMessageReader},"get")});var l=qP();Object.defineProperty(t,"MessageWriter",{enumerable:!0,get:s(function(){return l.MessageWriter},"get")}),Object.defineProperty(t,"AbstractMessageWriter",{enumerable:!0,get:s(function(){return l.AbstractMessageWriter},"get")}),Object.defineProperty(t,"WriteableStreamMessageWriter",{enumerable:!0,get:s(function(){return l.WriteableStreamMessageWriter},"get")});var c=VP();Object.defineProperty(t,"AbstractMessageBuffer",{enumerable:!0,get:s(function(){return c.AbstractMessageBuffer},"get")});var f=HP();Object.defineProperty(t,"ConnectionStrategy",{enumerable:!0,get:s(function(){return f.ConnectionStrategy},"get")}),Object.defineProperty(t,"ConnectionOptions",{enumerable:!0,get:s(function(){return f.ConnectionOptions},"get")}),Object.defineProperty(t,"NullLogger",{enumerable:!0,get:s(function(){return f.NullLogger},"get")}),Object.defineProperty(t,"createMessageConnection",{enumerable:!0,get:s(function(){return f.createMessageConnection},"get")}),Object.defineProperty(t,"ProgressToken",{enumerable:!0,get:s(function(){return f.ProgressToken},"get")}),Object.defineProperty(t,"ProgressType",{enumerable:!0,get:s(function(){return f.ProgressType},"get")}),Object.defineProperty(t,"Trace",{enumerable:!0,get:s(function(){return f.Trace},"get")}),Object.defineProperty(t,"TraceValues",{enumerable:!0,get:s(function(){return f.TraceValues},"get")}),Object.defineProperty(t,"TraceFormat",{enumerable:!0,get:s(function(){return f.TraceFormat},"get")}),Object.defineProperty(t,"SetTraceNotification",{enumerable:!0,get:s(function(){return f.SetTraceNotification},"get")}),Object.defineProperty(t,"LogTraceNotification",{enumerable:!0,get:s(function(){return f.LogTraceNotification},"get")}),Object.defineProperty(t,"ConnectionErrors",{enumerable:!0,get:s(function(){return f.ConnectionErrors},"get")}),Object.defineProperty(t,"ConnectionError",{enumerable:!0,get:s(function(){return f.ConnectionError},"get")}),Object.defineProperty(t,"CancellationReceiverStrategy",{enumerable:!0,get:s(function(){return f.CancellationReceiverStrategy},"get")}),Object.defineProperty(t,"CancellationSenderStrategy",{enumerable:!0,get:s(function(){return f.CancellationSenderStrategy},"get")}),Object.defineProperty(t,"CancellationStrategy",{enumerable:!0,get:s(function(){return f.CancellationStrategy},"get")}),Object.defineProperty(t,"MessageStrategy",{enumerable:!0,get:s(function(){return f.MessageStrategy},"get")});var d=Kn();t.RAL=d.default}}),YP=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(t){var l,c,f;Object.defineProperty(t,"__esModule",{value:!0});var e=Rm(),r=(l=class extends e.AbstractMessageBuffer{constructor(p="utf-8"){super(p),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return l.emptyBuffer}fromString(p,h){return new TextEncoder().encode(p)}toString(p,h){return h==="ascii"?this.asciiDecoder.decode(p):new TextDecoder(h).decode(p)}asNative(p,h){return h===void 0?p:p.slice(0,h)}allocNative(p){return new Uint8Array(p)}},s(l,"MessageBuffer"),l);r.emptyBuffer=new Uint8Array(0);var n=(c=class{constructor(p){this.socket=p,this._onData=new e.Emitter,this._messageListener=h=>{h.data.arrayBuffer().then(v=>{this._onData.fire(new Uint8Array(v))},()=>{(0,e.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(p){return this.socket.addEventListener("close",p),e.Disposable.create(()=>this.socket.removeEventListener("close",p))}onError(p){return this.socket.addEventListener("error",p),e.Disposable.create(()=>this.socket.removeEventListener("error",p))}onEnd(p){return this.socket.addEventListener("end",p),e.Disposable.create(()=>this.socket.removeEventListener("end",p))}onData(p){return this._onData.event(p)}},s(c,"ReadableStreamWrapper"),c),a=(f=class{constructor(p){this.socket=p}onClose(p){return this.socket.addEventListener("close",p),e.Disposable.create(()=>this.socket.removeEventListener("close",p))}onError(p){return this.socket.addEventListener("error",p),e.Disposable.create(()=>this.socket.removeEventListener("error",p))}onEnd(p){return this.socket.addEventListener("end",p),e.Disposable.create(()=>this.socket.removeEventListener("end",p))}write(p,h){if(typeof p=="string"){if(h!==void 0&&h!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${h}`);this.socket.send(p)}else this.socket.send(p);return Promise.resolve()}end(){this.socket.close()}},s(f,"WritableStreamWrapper"),f),i=new TextEncoder,o=Object.freeze({messageBuffer:Object.freeze({create:s(d=>new r(d),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:s((d,p)=>{if(p.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${p.charset}`);return Promise.resolve(i.encode(JSON.stringify(d,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:s((d,p)=>{if(!(d instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(p.charset).decode(d)))},"decode")})}),stream:Object.freeze({asReadableStream:s(d=>new n(d),"asReadableStream"),asWritableStream:s(d=>new a(d),"asWritableStream")}),console,timer:Object.freeze({setTimeout(d,p,...h){const y=setTimeout(d,p,...h);return{dispose:s(()=>clearTimeout(y),"dispose")}},setImmediate(d,...p){const h=setTimeout(d,0,...p);return{dispose:s(()=>clearTimeout(h),"dispose")}},setInterval(d,p,...h){const y=setInterval(d,p,...h);return{dispose:s(()=>clearInterval(y),"dispose")}}})});function u(){return o}s(u,"RIL"),function(d){function p(){e.RAL.install(o)}s(p,"install"),d.install=p}(u||(u={})),t.default=u}}),fi=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(t){var l,c;var e=t&&t.__createBinding||(Object.create?function(f,d,p,h){h===void 0&&(h=p);var y=Object.getOwnPropertyDescriptor(d,p);(!y||("get"in y?!d.__esModule:y.writable||y.configurable))&&(y={enumerable:!0,get:s(function(){return d[p]},"get")}),Object.defineProperty(f,h,y)}:function(f,d,p,h){h===void 0&&(h=p),f[h]=d[p]}),r=t&&t.__exportStar||function(f,d){for(var p in f)p!=="default"&&!Object.prototype.hasOwnProperty.call(d,p)&&e(d,f,p)};Object.defineProperty(t,"__esModule",{value:!0}),t.createMessageConnection=t.BrowserMessageWriter=t.BrowserMessageReader=void 0;var n=YP();n.default.install();var a=Rm();r(Rm(),t);var i=(l=class extends a.AbstractMessageReader{constructor(d){super(),this._onData=new a.Emitter,this._messageListener=p=>{this._onData.fire(p.data)},d.addEventListener("error",p=>this.fireError(p)),d.onmessage=this._messageListener}listen(d){return this._onData.event(d)}},s(l,"BrowserMessageReader"),l);t.BrowserMessageReader=i;var o=(c=class extends a.AbstractMessageWriter{constructor(d){super(),this.port=d,this.errorCount=0,d.addEventListener("error",p=>this.fireError(p))}write(d){try{return this.port.postMessage(d),Promise.resolve()}catch(p){return this.handleError(p,d),Promise.reject(p)}}handleError(d,p){this.errorCount++,this.fireError(d,p,this.errorCount)}end(){}},s(c,"BrowserMessageWriter"),c);t.BrowserMessageWriter=o;function u(f,d,p,h){return p===void 0&&(p=a.NullLogger),a.ConnectionStrategy.is(h)&&(h={connectionStrategy:h}),(0,a.createMessageConnection)(f,d,p,h)}s(u,"createMessageConnection"),t.createMessageConnection=u}}),sv=Y({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(t,e){e.exports=fi()}}),Oe=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(t){var l,c,f,d,p;Object.defineProperty(t,"__esModule",{value:!0}),t.ProtocolNotificationType=t.ProtocolNotificationType0=t.ProtocolRequestType=t.ProtocolRequestType0=t.RegistrationType=t.MessageDirection=void 0;var e=fi(),r;(function(h){h.clientToServer="clientToServer",h.serverToClient="serverToClient",h.both="both"})(r||(t.MessageDirection=r={}));var n=(l=class{constructor(y){this.method=y}},s(l,"RegistrationType"),l);t.RegistrationType=n;var a=(c=class extends e.RequestType0{constructor(y){super(y)}},s(c,"ProtocolRequestType0"),c);t.ProtocolRequestType0=a;var i=(f=class extends e.RequestType{constructor(y){super(y,e.ParameterStructures.byName)}},s(f,"ProtocolRequestType"),f);t.ProtocolRequestType=i;var o=(d=class extends e.NotificationType0{constructor(y){super(y)}},s(d,"ProtocolNotificationType0"),d);t.ProtocolNotificationType0=o;var u=(p=class extends e.NotificationType{constructor(y){super(y,e.ParameterStructures.byName)}},s(p,"ProtocolNotificationType"),p);t.ProtocolNotificationType=u}}),Eh=Y({"../../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(f){return f===!0||f===!1}s(e,"boolean"),t.boolean=e;function r(f){return typeof f=="string"||f instanceof String}s(r,"string"),t.string=r;function n(f){return typeof f=="number"||f instanceof Number}s(n,"number"),t.number=n;function a(f){return f instanceof Error}s(a,"error"),t.error=a;function i(f){return typeof f=="function"}s(i,"func"),t.func=i;function o(f){return Array.isArray(f)}s(o,"array"),t.array=o;function u(f){return o(f)&&f.every(d=>r(d))}s(u,"stringArray"),t.stringArray=u;function l(f,d){return Array.isArray(f)&&f.every(d)}s(l,"typedArray"),t.typedArray=l;function c(f){return f!==null&&typeof f=="object"}s(c,"objectLiteral"),t.objectLiteral=c}}),XP=Y({"../../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={}))}}),JP=Y({"../../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={}))}}),ZP=Y({"../../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(a){a.method="workspace/workspaceFolders",a.messageDirection=e.MessageDirection.serverToClient,a.type=new e.ProtocolRequestType0(a.method)})(r||(t.WorkspaceFoldersRequest=r={}));var n;(function(a){a.method="workspace/didChangeWorkspaceFolders",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolNotificationType(a.method)})(n||(t.DidChangeWorkspaceFoldersNotification=n={}))}}),QP=Y({"../../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={}))}}),ek=Y({"../../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(a){a.method="textDocument/documentColor",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.DocumentColorRequest=r={}));var n;(function(a){a.method="textDocument/colorPresentation",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(n||(t.ColorPresentationRequest=n={}))}}),tk=Y({"../../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(a){a.method="textDocument/foldingRange",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.FoldingRangeRequest=r={}));var n;(function(a){a.method="workspace/foldingRange/refresh",a.messageDirection=e.MessageDirection.serverToClient,a.type=new e.ProtocolRequestType0(a.method)})(n||(t.FoldingRangeRefreshRequest=n={}))}}),rk=Y({"../../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={}))}}),nk=Y({"../../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={}))}}),ak=Y({"../../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=fi(),r=Oe(),n;(function(o){o.type=new e.ProgressType;function u(l){return l===o.type}s(u,"is"),o.is=u})(n||(t.WorkDoneProgress=n={}));var a;(function(o){o.method="window/workDoneProgress/create",o.messageDirection=r.MessageDirection.serverToClient,o.type=new r.ProtocolRequestType(o.method)})(a||(t.WorkDoneProgressCreateRequest=a={}));var i;(function(o){o.method="window/workDoneProgress/cancel",o.messageDirection=r.MessageDirection.clientToServer,o.type=new r.ProtocolNotificationType(o.method)})(i||(t.WorkDoneProgressCancelNotification=i={}))}}),ik=Y({"../../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(i){i.method="textDocument/prepareCallHierarchy",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.CallHierarchyPrepareRequest=r={}));var n;(function(i){i.method="callHierarchy/incomingCalls",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(n||(t.CallHierarchyIncomingCallsRequest=n={}));var a;(function(i){i.method="callHierarchy/outgoingCalls",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(a||(t.CallHierarchyOutgoingCallsRequest=a={}))}}),sk=Y({"../../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(l){l.Relative="relative"})(r||(t.TokenFormat=r={}));var n;(function(l){l.method="textDocument/semanticTokens",l.type=new e.RegistrationType(l.method)})(n||(t.SemanticTokensRegistrationType=n={}));var a;(function(l){l.method="textDocument/semanticTokens/full",l.messageDirection=e.MessageDirection.clientToServer,l.type=new e.ProtocolRequestType(l.method),l.registrationMethod=n.method})(a||(t.SemanticTokensRequest=a={}));var i;(function(l){l.method="textDocument/semanticTokens/full/delta",l.messageDirection=e.MessageDirection.clientToServer,l.type=new e.ProtocolRequestType(l.method),l.registrationMethod=n.method})(i||(t.SemanticTokensDeltaRequest=i={}));var o;(function(l){l.method="textDocument/semanticTokens/range",l.messageDirection=e.MessageDirection.clientToServer,l.type=new e.ProtocolRequestType(l.method),l.registrationMethod=n.method})(o||(t.SemanticTokensRangeRequest=o={}));var u;(function(l){l.method="workspace/semanticTokens/refresh",l.messageDirection=e.MessageDirection.serverToClient,l.type=new e.ProtocolRequestType0(l.method)})(u||(t.SemanticTokensRefreshRequest=u={}))}}),ok=Y({"../../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={}))}}),lk=Y({"../../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={}))}}),uk=Y({"../../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(c){c.file="file",c.folder="folder"})(r||(t.FileOperationPatternKind=r={}));var n;(function(c){c.method="workspace/willCreateFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolRequestType(c.method)})(n||(t.WillCreateFilesRequest=n={}));var a;(function(c){c.method="workspace/didCreateFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolNotificationType(c.method)})(a||(t.DidCreateFilesNotification=a={}));var i;(function(c){c.method="workspace/willRenameFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolRequestType(c.method)})(i||(t.WillRenameFilesRequest=i={}));var o;(function(c){c.method="workspace/didRenameFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolNotificationType(c.method)})(o||(t.DidRenameFilesNotification=o={}));var u;(function(c){c.method="workspace/didDeleteFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolNotificationType(c.method)})(u||(t.DidDeleteFilesNotification=u={}));var l;(function(c){c.method="workspace/willDeleteFiles",c.messageDirection=e.MessageDirection.clientToServer,c.type=new e.ProtocolRequestType(c.method)})(l||(t.WillDeleteFilesRequest=l={}))}}),ck=Y({"../../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(i){i.document="document",i.project="project",i.group="group",i.scheme="scheme",i.global="global"})(r||(t.UniquenessLevel=r={}));var n;(function(i){i.$import="import",i.$export="export",i.local="local"})(n||(t.MonikerKind=n={}));var a;(function(i){i.method="textDocument/moniker",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(a||(t.MonikerRequest=a={}))}}),fk=Y({"../../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(i){i.method="textDocument/prepareTypeHierarchy",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.TypeHierarchyPrepareRequest=r={}));var n;(function(i){i.method="typeHierarchy/supertypes",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(n||(t.TypeHierarchySupertypesRequest=n={}));var a;(function(i){i.method="typeHierarchy/subtypes",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(a||(t.TypeHierarchySubtypesRequest=a={}))}}),dk=Y({"../../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(a){a.method="textDocument/inlineValue",a.messageDirection=e.MessageDirection.clientToServer,a.type=new e.ProtocolRequestType(a.method)})(r||(t.InlineValueRequest=r={}));var n;(function(a){a.method="workspace/inlineValue/refresh",a.messageDirection=e.MessageDirection.serverToClient,a.type=new e.ProtocolRequestType0(a.method)})(n||(t.InlineValueRefreshRequest=n={}))}}),pk=Y({"../../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(i){i.method="textDocument/inlayHint",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(t.InlayHintRequest=r={}));var n;(function(i){i.method="inlayHint/resolve",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(n||(t.InlayHintResolveRequest=n={}));var a;(function(i){i.method="workspace/inlayHint/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(a||(t.InlayHintRefreshRequest=a={}))}}),mk=Y({"../../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=fi(),r=Eh(),n=Oe(),a;(function(c){function f(d){const p=d;return p&&r.boolean(p.retriggerRequest)}s(f,"is"),c.is=f})(a||(t.DiagnosticServerCancellationData=a={}));var i;(function(c){c.Full="full",c.Unchanged="unchanged"})(i||(t.DocumentDiagnosticReportKind=i={}));var o;(function(c){c.method="textDocument/diagnostic",c.messageDirection=n.MessageDirection.clientToServer,c.type=new n.ProtocolRequestType(c.method),c.partialResult=new e.ProgressType})(o||(t.DocumentDiagnosticRequest=o={}));var u;(function(c){c.method="workspace/diagnostic",c.messageDirection=n.MessageDirection.clientToServer,c.type=new n.ProtocolRequestType(c.method),c.partialResult=new e.ProgressType})(u||(t.WorkspaceDiagnosticRequest=u={}));var l;(function(c){c.method="workspace/diagnostic/refresh",c.messageDirection=n.MessageDirection.serverToClient,c.type=new n.ProtocolRequestType0(c.method)})(l||(t.DiagnosticRefreshRequest=l={}))}}),hk=Y({"../../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=(xu(),Ah(Df)),r=Eh(),n=Oe(),a;(function(y){y.Markup=1,y.Code=2;function v(E){return E===1||E===2}s(v,"is"),y.is=v})(a||(t.NotebookCellKind=a={}));var i;(function(y){function v(S,b){const N={executionOrder:S};return(b===!0||b===!1)&&(N.success=b),N}s(v,"create"),y.create=v;function E(S){const b=S;return r.objectLiteral(b)&&e.uinteger.is(b.executionOrder)&&(b.success===void 0||r.boolean(b.success))}s(E,"is"),y.is=E;function T(S,b){return S===b?!0:S==null||b===null||b===void 0?!1:S.executionOrder===b.executionOrder&&S.success===b.success}s(T,"equals"),y.equals=T})(i||(t.ExecutionSummary=i={}));var o;(function(y){function v(b,N){return{kind:b,document:N}}s(v,"create"),y.create=v;function E(b){const N=b;return r.objectLiteral(N)&&a.is(N.kind)&&e.DocumentUri.is(N.document)&&(N.metadata===void 0||r.objectLiteral(N.metadata))}s(E,"is"),y.is=E;function T(b,N){const B=new Set;return b.document!==N.document&&B.add("document"),b.kind!==N.kind&&B.add("kind"),b.executionSummary!==N.executionSummary&&B.add("executionSummary"),(b.metadata!==void 0||N.metadata!==void 0)&&!S(b.metadata,N.metadata)&&B.add("metadata"),(b.executionSummary!==void 0||N.executionSummary!==void 0)&&!i.equals(b.executionSummary,N.executionSummary)&&B.add("executionSummary"),B}s(T,"diff"),y.diff=T;function S(b,N){if(b===N)return!0;if(b==null||N===null||N===void 0||typeof b!=typeof N||typeof b!="object")return!1;const B=Array.isArray(b),ne=Array.isArray(N);if(B!==ne)return!1;if(B&&ne){if(b.length!==N.length)return!1;for(let J=0;J<b.length;J++)if(!S(b[J],N[J]))return!1}if(r.objectLiteral(b)&&r.objectLiteral(N)){const J=Object.keys(b),me=Object.keys(N);if(J.length!==me.length||(J.sort(),me.sort(),!S(J,me)))return!1;for(let Ee=0;Ee<J.length;Ee++){const he=J[Ee];if(!S(b[he],N[he]))return!1}}return!0}s(S,"equalsMetadata")})(o||(t.NotebookCell=o={}));var u;(function(y){function v(T,S,b,N){return{uri:T,notebookType:S,version:b,cells:N}}s(v,"create"),y.create=v;function E(T){const S=T;return r.objectLiteral(S)&&r.string(S.uri)&&e.integer.is(S.version)&&r.typedArray(S.cells,o.is)}s(E,"is"),y.is=E})(u||(t.NotebookDocument=u={}));var l;(function(y){y.method="notebookDocument/sync",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.RegistrationType(y.method)})(l||(t.NotebookDocumentSyncRegistrationType=l={}));var c;(function(y){y.method="notebookDocument/didOpen",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=l.method})(c||(t.DidOpenNotebookDocumentNotification=c={}));var f;(function(y){function v(T){const S=T;return r.objectLiteral(S)&&e.uinteger.is(S.start)&&e.uinteger.is(S.deleteCount)&&(S.cells===void 0||r.typedArray(S.cells,o.is))}s(v,"is"),y.is=v;function E(T,S,b){const N={start:T,deleteCount:S};return b!==void 0&&(N.cells=b),N}s(E,"create"),y.create=E})(f||(t.NotebookCellArrayChange=f={}));var d;(function(y){y.method="notebookDocument/didChange",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=l.method})(d||(t.DidChangeNotebookDocumentNotification=d={}));var p;(function(y){y.method="notebookDocument/didSave",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=l.method})(p||(t.DidSaveNotebookDocumentNotification=p={}));var h;(function(y){y.method="notebookDocument/didClose",y.messageDirection=n.MessageDirection.clientToServer,y.type=new n.ProtocolNotificationType(y.method),y.registrationMethod=l.method})(h||(t.DidCloseNotebookDocumentNotification=h={}))}}),yk=Y({"../../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={}))}}),gk=Y({"../../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=(xu(),Ah(Df)),n=Eh(),a=XP();Object.defineProperty(t,"ImplementationRequest",{enumerable:!0,get:s(function(){return a.ImplementationRequest},"get")});var i=JP();Object.defineProperty(t,"TypeDefinitionRequest",{enumerable:!0,get:s(function(){return i.TypeDefinitionRequest},"get")});var o=ZP();Object.defineProperty(t,"WorkspaceFoldersRequest",{enumerable:!0,get:s(function(){return o.WorkspaceFoldersRequest},"get")}),Object.defineProperty(t,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:s(function(){return o.DidChangeWorkspaceFoldersNotification},"get")});var u=QP();Object.defineProperty(t,"ConfigurationRequest",{enumerable:!0,get:s(function(){return u.ConfigurationRequest},"get")});var l=ek();Object.defineProperty(t,"DocumentColorRequest",{enumerable:!0,get:s(function(){return l.DocumentColorRequest},"get")}),Object.defineProperty(t,"ColorPresentationRequest",{enumerable:!0,get:s(function(){return l.ColorPresentationRequest},"get")});var c=tk();Object.defineProperty(t,"FoldingRangeRequest",{enumerable:!0,get:s(function(){return c.FoldingRangeRequest},"get")}),Object.defineProperty(t,"FoldingRangeRefreshRequest",{enumerable:!0,get:s(function(){return c.FoldingRangeRefreshRequest},"get")});var f=rk();Object.defineProperty(t,"DeclarationRequest",{enumerable:!0,get:s(function(){return f.DeclarationRequest},"get")});var d=nk();Object.defineProperty(t,"SelectionRangeRequest",{enumerable:!0,get:s(function(){return d.SelectionRangeRequest},"get")});var p=ak();Object.defineProperty(t,"WorkDoneProgress",{enumerable:!0,get:s(function(){return p.WorkDoneProgress},"get")}),Object.defineProperty(t,"WorkDoneProgressCreateRequest",{enumerable:!0,get:s(function(){return p.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(t,"WorkDoneProgressCancelNotification",{enumerable:!0,get:s(function(){return p.WorkDoneProgressCancelNotification},"get")});var h=ik();Object.defineProperty(t,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:s(function(){return h.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(t,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:s(function(){return h.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(t,"CallHierarchyPrepareRequest",{enumerable:!0,get:s(function(){return h.CallHierarchyPrepareRequest},"get")});var y=sk();Object.defineProperty(t,"TokenFormat",{enumerable:!0,get:s(function(){return y.TokenFormat},"get")}),Object.defineProperty(t,"SemanticTokensRequest",{enumerable:!0,get:s(function(){return y.SemanticTokensRequest},"get")}),Object.defineProperty(t,"SemanticTokensDeltaRequest",{enumerable:!0,get:s(function(){return y.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(t,"SemanticTokensRangeRequest",{enumerable:!0,get:s(function(){return y.SemanticTokensRangeRequest},"get")}),Object.defineProperty(t,"SemanticTokensRefreshRequest",{enumerable:!0,get:s(function(){return y.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(t,"SemanticTokensRegistrationType",{enumerable:!0,get:s(function(){return y.SemanticTokensRegistrationType},"get")});var v=ok();Object.defineProperty(t,"ShowDocumentRequest",{enumerable:!0,get:s(function(){return v.ShowDocumentRequest},"get")});var E=lk();Object.defineProperty(t,"LinkedEditingRangeRequest",{enumerable:!0,get:s(function(){return E.LinkedEditingRangeRequest},"get")});var T=uk();Object.defineProperty(t,"FileOperationPatternKind",{enumerable:!0,get:s(function(){return T.FileOperationPatternKind},"get")}),Object.defineProperty(t,"DidCreateFilesNotification",{enumerable:!0,get:s(function(){return T.DidCreateFilesNotification},"get")}),Object.defineProperty(t,"WillCreateFilesRequest",{enumerable:!0,get:s(function(){return T.WillCreateFilesRequest},"get")}),Object.defineProperty(t,"DidRenameFilesNotification",{enumerable:!0,get:s(function(){return T.DidRenameFilesNotification},"get")}),Object.defineProperty(t,"WillRenameFilesRequest",{enumerable:!0,get:s(function(){return T.WillRenameFilesRequest},"get")}),Object.defineProperty(t,"DidDeleteFilesNotification",{enumerable:!0,get:s(function(){return T.DidDeleteFilesNotification},"get")}),Object.defineProperty(t,"WillDeleteFilesRequest",{enumerable:!0,get:s(function(){return T.WillDeleteFilesRequest},"get")});var S=ck();Object.defineProperty(t,"UniquenessLevel",{enumerable:!0,get:s(function(){return S.UniquenessLevel},"get")}),Object.defineProperty(t,"MonikerKind",{enumerable:!0,get:s(function(){return S.MonikerKind},"get")}),Object.defineProperty(t,"MonikerRequest",{enumerable:!0,get:s(function(){return S.MonikerRequest},"get")});var b=fk();Object.defineProperty(t,"TypeHierarchyPrepareRequest",{enumerable:!0,get:s(function(){return b.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(t,"TypeHierarchySubtypesRequest",{enumerable:!0,get:s(function(){return b.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(t,"TypeHierarchySupertypesRequest",{enumerable:!0,get:s(function(){return b.TypeHierarchySupertypesRequest},"get")});var N=dk();Object.defineProperty(t,"InlineValueRequest",{enumerable:!0,get:s(function(){return N.InlineValueRequest},"get")}),Object.defineProperty(t,"InlineValueRefreshRequest",{enumerable:!0,get:s(function(){return N.InlineValueRefreshRequest},"get")});var B=pk();Object.defineProperty(t,"InlayHintRequest",{enumerable:!0,get:s(function(){return B.InlayHintRequest},"get")}),Object.defineProperty(t,"InlayHintResolveRequest",{enumerable:!0,get:s(function(){return B.InlayHintResolveRequest},"get")}),Object.defineProperty(t,"InlayHintRefreshRequest",{enumerable:!0,get:s(function(){return B.InlayHintRefreshRequest},"get")});var ne=mk();Object.defineProperty(t,"DiagnosticServerCancellationData",{enumerable:!0,get:s(function(){return ne.DiagnosticServerCancellationData},"get")}),Object.defineProperty(t,"DocumentDiagnosticReportKind",{enumerable:!0,get:s(function(){return ne.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(t,"DocumentDiagnosticRequest",{enumerable:!0,get:s(function(){return ne.DocumentDiagnosticRequest},"get")}),Object.defineProperty(t,"WorkspaceDiagnosticRequest",{enumerable:!0,get:s(function(){return ne.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(t,"DiagnosticRefreshRequest",{enumerable:!0,get:s(function(){return ne.DiagnosticRefreshRequest},"get")});var J=hk();Object.defineProperty(t,"NotebookCellKind",{enumerable:!0,get:s(function(){return J.NotebookCellKind},"get")}),Object.defineProperty(t,"ExecutionSummary",{enumerable:!0,get:s(function(){return J.ExecutionSummary},"get")}),Object.defineProperty(t,"NotebookCell",{enumerable:!0,get:s(function(){return J.NotebookCell},"get")}),Object.defineProperty(t,"NotebookDocument",{enumerable:!0,get:s(function(){return J.NotebookDocument},"get")}),Object.defineProperty(t,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:s(function(){return J.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(t,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:s(function(){return J.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(t,"NotebookCellArrayChange",{enumerable:!0,get:s(function(){return J.NotebookCellArrayChange},"get")}),Object.defineProperty(t,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:s(function(){return J.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(t,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:s(function(){return J.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(t,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:s(function(){return J.DidCloseNotebookDocumentNotification},"get")});var me=yk();Object.defineProperty(t,"InlineCompletionRequest",{enumerable:!0,get:s(function(){return me.InlineCompletionRequest},"get")});var Ee;(function(m){function le(Ie){const V=Ie;return n.string(V)||n.string(V.language)||n.string(V.scheme)||n.string(V.pattern)}s(le,"is"),m.is=le})(Ee||(t.TextDocumentFilter=Ee={}));var he;(function(m){function le(Ie){const V=Ie;return n.objectLiteral(V)&&(n.string(V.notebookType)||n.string(V.scheme)||n.string(V.pattern))}s(le,"is"),m.is=le})(he||(t.NotebookDocumentFilter=he={}));var ue;(function(m){function le(Ie){const V=Ie;return n.objectLiteral(V)&&(n.string(V.notebook)||he.is(V.notebook))&&(V.language===void 0||n.string(V.language))}s(le,"is"),m.is=le})(ue||(t.NotebookCellTextDocumentFilter=ue={}));var ot;(function(m){function le(Ie){if(!Array.isArray(Ie))return!1;for(let V of Ie)if(!n.string(V)&&!Ee.is(V)&&!ue.is(V))return!1;return!0}s(le,"is"),m.is=le})(ot||(t.DocumentSelector=ot={}));var k;(function(m){m.method="client/registerCapability",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolRequestType(m.method)})(k||(t.RegistrationRequest=k={}));var _;(function(m){m.method="client/unregisterCapability",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolRequestType(m.method)})(_||(t.UnregistrationRequest=_={}));var $;(function(m){m.Create="create",m.Rename="rename",m.Delete="delete"})($||(t.ResourceOperationKind=$={}));var I;(function(m){m.Abort="abort",m.Transactional="transactional",m.TextOnlyTransactional="textOnlyTransactional",m.Undo="undo"})(I||(t.FailureHandlingKind=I={}));var R;(function(m){m.UTF8="utf-8",m.UTF16="utf-16",m.UTF32="utf-32"})(R||(t.PositionEncodingKind=R={}));var A;(function(m){function le(Ie){const V=Ie;return V&&n.string(V.id)&&V.id.length>0}s(le,"hasId"),m.hasId=le})(A||(t.StaticRegistrationOptions=A={}));var w;(function(m){function le(Ie){const V=Ie;return V&&(V.documentSelector===null||ot.is(V.documentSelector))}s(le,"is"),m.is=le})(w||(t.TextDocumentRegistrationOptions=w={}));var L;(function(m){function le(V){const Ne=V;return n.objectLiteral(Ne)&&(Ne.workDoneProgress===void 0||n.boolean(Ne.workDoneProgress))}s(le,"is"),m.is=le;function Ie(V){const Ne=V;return Ne&&n.boolean(Ne.workDoneProgress)}s(Ie,"hasWorkDoneProgress"),m.hasWorkDoneProgress=Ie})(L||(t.WorkDoneProgressOptions=L={}));var x;(function(m){m.method="initialize",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(x||(t.InitializeRequest=x={}));var O;(function(m){m.unknownProtocolVersion=1})(O||(t.InitializeErrorCodes=O={}));var z;(function(m){m.method="initialized",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(z||(t.InitializedNotification=z={}));var M;(function(m){m.method="shutdown",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType0(m.method)})(M||(t.ShutdownRequest=M={}));var X;(function(m){m.method="exit",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType0(m.method)})(X||(t.ExitNotification=X={}));var H;(function(m){m.method="workspace/didChangeConfiguration",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(H||(t.DidChangeConfigurationNotification=H={}));var Z;(function(m){m.Error=1,m.Warning=2,m.Info=3,m.Log=4,m.Debug=5})(Z||(t.MessageType=Z={}));var se;(function(m){m.method="window/showMessage",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolNotificationType(m.method)})(se||(t.ShowMessageNotification=se={}));var xe;(function(m){m.method="window/showMessageRequest",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolRequestType(m.method)})(xe||(t.ShowMessageRequest=xe={}));var ye;(function(m){m.method="window/logMessage",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolNotificationType(m.method)})(ye||(t.LogMessageNotification=ye={}));var we;(function(m){m.method="telemetry/event",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolNotificationType(m.method)})(we||(t.TelemetryEventNotification=we={}));var Je;(function(m){m.None=0,m.Full=1,m.Incremental=2})(Je||(t.TextDocumentSyncKind=Je={}));var Me;(function(m){m.method="textDocument/didOpen",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(Me||(t.DidOpenTextDocumentNotification=Me={}));var te;(function(m){function le(V){let Ne=V;return Ne!=null&&typeof Ne.text=="string"&&Ne.range!==void 0&&(Ne.rangeLength===void 0||typeof Ne.rangeLength=="number")}s(le,"isIncremental"),m.isIncremental=le;function Ie(V){let Ne=V;return Ne!=null&&typeof Ne.text=="string"&&Ne.range===void 0&&Ne.rangeLength===void 0}s(Ie,"isFull"),m.isFull=Ie})(te||(t.TextDocumentContentChangeEvent=te={}));var st;(function(m){m.method="textDocument/didChange",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(st||(t.DidChangeTextDocumentNotification=st={}));var de;(function(m){m.method="textDocument/didClose",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(de||(t.DidCloseTextDocumentNotification=de={}));var Ze;(function(m){m.method="textDocument/didSave",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(Ze||(t.DidSaveTextDocumentNotification=Ze={}));var ge;(function(m){m.Manual=1,m.AfterDelay=2,m.FocusOut=3})(ge||(t.TextDocumentSaveReason=ge={}));var G;(function(m){m.method="textDocument/willSave",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(G||(t.WillSaveTextDocumentNotification=G={}));var je;(function(m){m.method="textDocument/willSaveWaitUntil",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(je||(t.WillSaveTextDocumentWaitUntilRequest=je={}));var Qt;(function(m){m.method="workspace/didChangeWatchedFiles",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolNotificationType(m.method)})(Qt||(t.DidChangeWatchedFilesNotification=Qt={}));var Dt;(function(m){m.Created=1,m.Changed=2,m.Deleted=3})(Dt||(t.FileChangeType=Dt={}));var ve;(function(m){function le(Ie){const V=Ie;return n.objectLiteral(V)&&(r.URI.is(V.baseUri)||r.WorkspaceFolder.is(V.baseUri))&&n.string(V.pattern)}s(le,"is"),m.is=le})(ve||(t.RelativePattern=ve={}));var fa;(function(m){m.Create=1,m.Change=2,m.Delete=4})(fa||(t.WatchKind=fa={}));var Ri;(function(m){m.method="textDocument/publishDiagnostics",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolNotificationType(m.method)})(Ri||(t.PublishDiagnosticsNotification=Ri={}));var Ai;(function(m){m.Invoked=1,m.TriggerCharacter=2,m.TriggerForIncompleteCompletions=3})(Ai||(t.CompletionTriggerKind=Ai={}));var Ei;(function(m){m.method="textDocument/completion",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Ei||(t.CompletionRequest=Ei={}));var Ci;(function(m){m.method="completionItem/resolve",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Ci||(t.CompletionResolveRequest=Ci={}));var da;(function(m){m.method="textDocument/hover",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(da||(t.HoverRequest=da={}));var pa;(function(m){m.Invoked=1,m.TriggerCharacter=2,m.ContentChange=3})(pa||(t.SignatureHelpTriggerKind=pa={}));var er;(function(m){m.method="textDocument/signatureHelp",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(er||(t.SignatureHelpRequest=er={}));var ma;(function(m){m.method="textDocument/definition",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(ma||(t.DefinitionRequest=ma={}));var bi;(function(m){m.method="textDocument/references",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(bi||(t.ReferencesRequest=bi={}));var _i;(function(m){m.method="textDocument/documentHighlight",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(_i||(t.DocumentHighlightRequest=_i={}));var ha;(function(m){m.method="textDocument/documentSymbol",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(ha||(t.DocumentSymbolRequest=ha={}));var ya;(function(m){m.method="textDocument/codeAction",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(ya||(t.CodeActionRequest=ya={}));var Si;(function(m){m.method="codeAction/resolve",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Si||(t.CodeActionResolveRequest=Si={}));var nc;(function(m){m.method="workspace/symbol",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(nc||(t.WorkspaceSymbolRequest=nc={}));var wi;(function(m){m.method="workspaceSymbol/resolve",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(wi||(t.WorkspaceSymbolResolveRequest=wi={}));var Ii;(function(m){m.method="textDocument/codeLens",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Ii||(t.CodeLensRequest=Ii={}));var Ni;(function(m){m.method="codeLens/resolve",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Ni||(t.CodeLensResolveRequest=Ni={}));var Pi;(function(m){m.method="workspace/codeLens/refresh",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolRequestType0(m.method)})(Pi||(t.CodeLensRefreshRequest=Pi={}));var xt;(function(m){m.method="textDocument/documentLink",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(xt||(t.DocumentLinkRequest=xt={}));var ki;(function(m){m.method="documentLink/resolve",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(ki||(t.DocumentLinkResolveRequest=ki={}));var Oi;(function(m){m.method="textDocument/formatting",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Oi||(t.DocumentFormattingRequest=Oi={}));var jr;(function(m){m.method="textDocument/rangeFormatting",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(jr||(t.DocumentRangeFormattingRequest=jr={}));var Li;(function(m){m.method="textDocument/rangesFormatting",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Li||(t.DocumentRangesFormattingRequest=Li={}));var sn;(function(m){m.method="textDocument/onTypeFormatting",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(sn||(t.DocumentOnTypeFormattingRequest=sn={}));var Di;(function(m){m.Identifier=1})(Di||(t.PrepareSupportDefaultBehavior=Di={}));var tr;(function(m){m.method="textDocument/rename",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(tr||(t.RenameRequest=tr={}));var Tr;(function(m){m.method="textDocument/prepareRename",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(Tr||(t.PrepareRenameRequest=Tr={}));var xi;(function(m){m.method="workspace/executeCommand",m.messageDirection=e.MessageDirection.clientToServer,m.type=new e.ProtocolRequestType(m.method)})(xi||(t.ExecuteCommandRequest=xi={}));var Mi;(function(m){m.method="workspace/applyEdit",m.messageDirection=e.MessageDirection.serverToClient,m.type=new e.ProtocolRequestType("workspace/applyEdit")})(Mi||(t.ApplyWorkspaceEditRequest=Mi={}))}}),vk=Y({"../../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=fi();function r(n,a,i,o){return e.ConnectionStrategy.is(o)&&(o={connectionStrategy:o}),(0,e.createMessageConnection)(n,a,i,o)}s(r,"createProtocolConnection"),t.createProtocolConnection=r}}),Tk=Y({"../../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(i,o,u,l){l===void 0&&(l=u);var c=Object.getOwnPropertyDescriptor(o,u);(!c||("get"in c?!o.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:s(function(){return o[u]},"get")}),Object.defineProperty(i,l,c)}:function(i,o,u,l){l===void 0&&(l=u),i[l]=o[u]}),r=t&&t.__exportStar||function(i,o){for(var u in i)u!=="default"&&!Object.prototype.hasOwnProperty.call(o,u)&&e(o,i,u)};Object.defineProperty(t,"__esModule",{value:!0}),t.LSPErrorCodes=t.createProtocolConnection=void 0,r(fi(),t),r((xu(),Ah(Df)),t),r(Oe(),t),r(gk(),t);var n=vk();Object.defineProperty(t,"createProtocolConnection",{enumerable:!0,get:s(function(){return n.createProtocolConnection},"get")});var a;(function(i){i.lspReservedErrorRangeStart=-32899,i.RequestFailed=-32803,i.ServerCancelled=-32802,i.ContentModified=-32801,i.RequestCancelled=-32800,i.lspReservedErrorRangeEnd=-32800})(a||(t.LSPErrorCodes=a={}))}}),$k=Y({"../../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(i,o,u,l){l===void 0&&(l=u);var c=Object.getOwnPropertyDescriptor(o,u);(!c||("get"in c?!o.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:s(function(){return o[u]},"get")}),Object.defineProperty(i,l,c)}:function(i,o,u,l){l===void 0&&(l=u),i[l]=o[u]}),r=t&&t.__exportStar||function(i,o){for(var u in i)u!=="default"&&!Object.prototype.hasOwnProperty.call(o,u)&&e(o,i,u)};Object.defineProperty(t,"__esModule",{value:!0}),t.createProtocolConnection=void 0;var n=sv();r(sv(),t),r(Tk(),t);function a(i,o,u,l){return(0,n.createMessageConnection)(i,o,u,l)}s(a,"createProtocolConnection"),t.createProtocolConnection=a}}),j$={};en(j$,{AbstractAstReflection:()=>_h,AbstractCstNode:()=>wg,AbstractLangiumParser:()=>Ng,AbstractParserErrorMessageProvider:()=>wN,AbstractThreadedAsyncParser:()=>Hj,AstUtils:()=>Sh,BiMap:()=>Nf,Cancellation:()=>Re,CompositeCstNodeImpl:()=>kd,ContextCache:()=>Fd,CstNodeBuilder:()=>bN,CstUtils:()=>Ch,DEFAULT_TOKENIZE_OPTIONS:()=>Hg,DONE_RESULT:()=>ct,DatatypeSymbol:()=>_f,DefaultAstNodeDescriptionProvider:()=>aP,DefaultAstNodeLocator:()=>sP,DefaultAsyncParser:()=>CP,DefaultCommentProvider:()=>EP,DefaultConfigurationProvider:()=>oP,DefaultDocumentBuilder:()=>lP,DefaultDocumentValidator:()=>nP,DefaultHydrator:()=>_P,DefaultIndexManager:()=>uP,DefaultJsonSerializer:()=>QN,DefaultLangiumDocumentFactory:()=>KN,DefaultLangiumDocuments:()=>WN,DefaultLangiumProfiler:()=>Qj,DefaultLexer:()=>Yg,DefaultLexerErrorMessageProvider:()=>fP,DefaultLinker:()=>qN,DefaultNameProvider:()=>VN,DefaultReferenceDescriptionProvider:()=>iP,DefaultReferences:()=>HN,DefaultScopeComputation:()=>YN,DefaultScopeProvider:()=>ZN,DefaultServiceRegistry:()=>eP,DefaultTokenBuilder:()=>Dd,DefaultValueConverter:()=>Mg,DefaultWorkspaceLock:()=>bP,DefaultWorkspaceManager:()=>cP,Deferred:()=>Dr,Disposable:()=>Gn,DisposableCache:()=>Gd,DocumentCache:()=>JN,DocumentState:()=>Q,DocumentValidator:()=>Mt,EMPTY_SCOPE:()=>Kj,EMPTY_STREAM:()=>Ja,EmptyFileSystem:()=>it,EmptyFileSystemProvider:()=>IP,ErrorWithLocation:()=>Wf,GrammarAST:()=>K$,GrammarUtils:()=>ny,IndentationAwareLexer:()=>Xj,IndentationAwareTokenBuilder:()=>wP,JSDocDocumentationProvider:()=>AP,LangiumCompletionParser:()=>IN,LangiumParser:()=>SN,LangiumParserErrorMessageProvider:()=>Pg,LeafCstNodeImpl:()=>bf,LexingMode:()=>xn,MapScope:()=>Uj,Module:()=>th,MultiMap:()=>xr,MultiMapScope:()=>XN,OperationCancelled:()=>cr,ParserWorker:()=>Yj,ProfilingTask:()=>PP,Reduction:()=>bs,RefResolving:()=>gn,RegExpUtils:()=>iy,RootCstNodeImpl:()=>Ig,SimpleCache:()=>Ug,StreamImpl:()=>ur,StreamScope:()=>Jm,TextDocument:()=>wf,TreeStreamImpl:()=>Za,URI:()=>It,UriTrie:()=>jg,UriUtils:()=>dt,VALIDATE_EACH_NODE:()=>rP,ValidationCategory:()=>Pf,ValidationRegistry:()=>tP,ValueConverter:()=>or,WorkspaceCache:()=>Kg,assertCondition:()=>ay,assertUnreachable:()=>tn,createCompletionParser:()=>Lg,createDefaultCoreModule:()=>He,createDefaultSharedCoreModule:()=>Ye,createGrammarConfig:()=>Ey,createLangiumParser:()=>Dg,createParser:()=>Od,delayNextTick:()=>xd,diagnosticData:()=>Dn,eagerLoad:()=>rv,getDiagnosticRange:()=>qg,indentationBuilderDefaultOptions:()=>nh,inject:()=>re,interruptAndCheck:()=>Ve,isAstNode:()=>Be,isAstNodeDescription:()=>bh,isAstNodeWithComment:()=>Wg,isCompositeCstNode:()=>Sr,isIMultiModeLexerDefinition:()=>Bd,isJSDoc:()=>Jg,isLeafCstNode:()=>Wn,isLinkingError:()=>Rn,isMultiReference:()=>fr,isNamed:()=>Bg,isOperationCancelled:()=>ca,isReference:()=>ft,isRootCstNode:()=>Mf,isTokenTypeArray:()=>jd,isTokenTypeDictionary:()=>kf,loadGrammarFromJson:()=>Xe,parseJSDoc:()=>Xg,prepareLangiumParser:()=>xg,setInterruptionPeriod:()=>Gg,startCancelableOperation:()=>Md,stream:()=>fe,toDiagnosticData:()=>Vg,toDiagnosticSeverity:()=>Es});var Ch={};en(Ch,{DefaultNameRegexp:()=>Zh,RangeComparison:()=>lr,compareRange:()=>Xh,findCommentNode:()=>Qh,findDeclarationNodeAtOffset:()=>uR,findLeafNodeAtOffset:()=>Kf,findLeafNodeBeforeOffset:()=>ey,flattenCst:()=>lR,getDatatypeNode:()=>oR,getInteriorNodes:()=>dR,getNextNode:()=>cR,getPreviousNode:()=>ry,getStartlineNode:()=>fR,inRange:()=>Jh,isChildNode:()=>Yh,isCommentNode:()=>uf,streamCst:()=>ri,toDocumentSegment:()=>ni,tokenToRange:()=>_s});function Be(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}s(Be,"isAstNode");function ft(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}s(ft,"isReference");function fr(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}s(fr,"isMultiReference");function bh(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}s(bh,"isAstNodeDescription");function Rn(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}s(Rn,"isLinkingError");var js,_h=(js=class{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){var a;const r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const n=(a=r.properties[e.property])==null?void 0:a.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){const r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return Be(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const a=n[r];if(a!==void 0)return a;{const i=this.types[e],o=i?i.superTypes.some(u=>this.isSubtype(u,r)):!1;return n[r]=o,o}}getAllSubTypes(e){const r=this.allSubtypes[e];if(r)return r;{const n=this.getAllTypes(),a=[];for(const i of n)this.isSubtype(i,e)&&a.push(i);return this.allSubtypes[e]=a,a}}},s(js,"AbstractAstReflection"),js);function Sr(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}s(Sr,"isCompositeCstNode");function Wn(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}s(Wn,"isLeafCstNode");function Mf(t){return Sr(t)&&typeof t.fullText=="string"}s(Mf,"isRootCstNode");var wt,ur=(wt=class{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){const e={state:this.startFn(),next:s(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){const e=this.iterator();let r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){const e=[],r=this.iterator();let n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){const n=this.map(a=>[e?e(a):a,r?r(a):a]);return new Map(n)}toString(){return this.join()}concat(e){return new wt(()=>({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 ct})}join(e=","){const r=this.iterator();let n="",a,i=!1;do a=r.next(),a.done||(i&&(n+=e),n+=B$(a.value)),i=!0;while(!a.done);return n}indexOf(e,r=0){const n=this.iterator();let a=0,i=n.next();for(;!i.done;){if(a>=r&&i.value===e)return a;i=n.next(),a++}return-1}every(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){const r=this.iterator();let n=0,a=r.next();for(;!a.done;)e(a.value,n),a=r.next(),n++}map(e){return new wt(this.startFn,r=>{const{done:n,value:a}=this.nextFn(r);return n?ct:{done:!1,value:e(a)}})}filter(e){return new wt(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return ct})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){const n=this.iterator();let a=r,i=n.next();for(;!i.done;)a===void 0?a=i.value:a=e(a,i.value),i=n.next();return a}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){const a=e.next();if(a.done)return n;const i=this.recursiveReduce(e,r,n);return i===void 0?a.value:r(i,a.value)}find(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){const r=this.iterator();let n=0,a=r.next();for(;!a.done;){if(e(a.value))return n;a=r.next(),n++}return-1}includes(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new wt(()=>({this:this.startFn()}),r=>{do{if(r.iterator){const i=r.iterator.next();if(i.done)r.iterator=void 0;else return i}const{done:n,value:a}=this.nextFn(r.this);if(!n){const i=e(a);if(Cs(i))r.iterator=i[Symbol.iterator]();else return{done:!1,value:i}}}while(r.iterator);return ct})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const r=e>1?this.flat(e-1):this;return new wt(()=>({this:r.startFn()}),n=>{do{if(n.iterator){const o=n.iterator.next();if(o.done)n.iterator=void 0;else return o}const{done:a,value:i}=r.nextFn(n.this);if(!a)if(Cs(i))n.iterator=i[Symbol.iterator]();else return{done:!1,value:i}}while(n.iterator);return ct})}head(){const r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new wt(()=>{const r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new wt(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?ct:this.nextFn(r.state)))}distinct(e){return new wt(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){const a=e?e(n.value):n.value;if(!r.set.has(a))return r.set.add(a),n}while(!n.done);return ct})}exclude(e,r){const n=new Set;for(const a of e){const i=r?r(a):a;n.add(i)}return this.filter(a=>{const i=r?r(a):a;return!n.has(i)})}},s(wt,"StreamImpl"),wt);function B$(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}s(B$,"toString");function Cs(t){return!!t&&typeof t[Symbol.iterator]=="function"}s(Cs,"isIterable");var Ja=new ur(()=>{},()=>ct),ct=Object.freeze({done:!0,value:void 0});function fe(...t){if(t.length===1){const e=t[0];if(e instanceof ur)return e;if(Cs(e))return new ur(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new ur(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:ct)}return t.length>1?new ur(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){const r=t[e.collIndex++];Cs(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return ct}):Ja}s(fe,"stream");var Bs,Za=(Bs=class extends ur{constructor(e,r,n){super(()=>({iterators:n!=null&&n.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),a=>{for(a.pruned&&(a.iterators.pop(),a.pruned=!1);a.iterators.length>0;){const o=a.iterators[a.iterators.length-1].next();if(o.done)a.iterators.pop();else return a.iterators.push(r(o.value)[Symbol.iterator]()),o}return ct})}iterator(){const e={state:this.startFn(),next:s(()=>this.nextFn(e.state),"next"),prune:s(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}},s(Bs,"TreeStreamImpl"),Bs),bs;(function(t){function e(i){return i.reduce((o,u)=>o+u,0)}s(e,"sum"),t.sum=e;function r(i){return i.reduce((o,u)=>o*u,0)}s(r,"product"),t.product=r;function n(i){return i.reduce((o,u)=>Math.min(o,u))}s(n,"min"),t.min=n;function a(i){return i.reduce((o,u)=>Math.max(o,u))}s(a,"max"),t.max=a})(bs||(bs={}));var Sh={};en(Sh,{assignMandatoryProperties:()=>wh,copyAstNode:()=>Hc,findRootNode:()=>Va,getContainerOfType:()=>qn,getDocument:()=>qt,getReferenceNodes:()=>qc,hasContainerOfType:()=>U$,linkContentToContainer:()=>Qa,streamAllContents:()=>Mr,streamAst:()=>Vt,streamContents:()=>Gu,streamReferences:()=>ei});function Qa(t,e={}){for(const[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((a,i)=>{Be(a)&&(a.$container=t,a.$containerProperty=r,a.$containerIndex=i,e.deep&&Qa(a,e))}):Be(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&Qa(n,e)))}s(Qa,"linkContentToContainer");function qn(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}s(qn,"getContainerOfType");function U$(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}s(U$,"hasContainerOfType");function qt(t){const r=Va(t).$document;if(!r)throw new Error("AST node has no document.");return r}s(qt,"getDocument");function Va(t){for(;t.$container;)t=t.$container;return t}s(Va,"findRootNode");function qc(t){return ft(t)?t.ref?[t.ref]:[]:fr(t)?t.items.map(e=>e.ref):[]}s(qc,"getReferenceNodes");function Gu(t,e){if(!t)throw new Error("Node must be an AstNode.");const r=e==null?void 0:e.range;return new ur(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){const a=n.keys[n.keyIndex];if(!a.startsWith("$")){const i=t[a];if(Be(i)){if(n.keyIndex++,Vc(i,r))return{done:!1,value:i}}else if(Array.isArray(i)){for(;n.arrayIndex<i.length;){const o=n.arrayIndex++,u=i[o];if(Be(u)&&Vc(u,r))return{done:!1,value:u}}n.arrayIndex=0}}n.keyIndex++}return ct})}s(Gu,"streamContents");function Mr(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Za(t,r=>Gu(r,e))}s(Mr,"streamAllContents");function Vt(t,e){if(t){if(e!=null&&e.range&&!Vc(t,e.range))return new Za(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Za(t,r=>Gu(r,e),{includeRoot:!0})}s(Vt,"streamAst");function Vc(t,e){var n;if(!e)return!0;const r=(n=t.$cstNode)==null?void 0:n.range;return r?Jh(r,e):!1}s(Vc,"isAstNodeInRange");function ei(t){return new ur(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const r=e.keys[e.keyIndex];if(!r.startsWith("$")){const n=t[r];if(ft(n)||fr(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){const a=e.arrayIndex++,i=n[a];if(ft(i)||fr(n))return{done:!1,value:{reference:i,container:t,property:r,index:a}}}e.arrayIndex=0}}e.keyIndex++}return ct})}s(ei,"streamReferences");function wh(t,e){const r=t.getTypeMetaData(e.$type),n=e;for(const a of Object.values(r.properties))a.defaultValue!==void 0&&n[a.name]===void 0&&(n[a.name]=Ih(a.defaultValue))}s(wh,"assignMandatoryProperties");function Ih(t){return Array.isArray(t)?[...t.map(Ih)]:t}s(Ih,"copyDefaultValue");function Hc(t,e,r){const n={$type:t.$type};r&&(r.set(t,n),r.set(n,t));for(const[a,i]of Object.entries(t))if(!a.startsWith("$"))if(Be(i))n[a]=Hc(i,e,r);else if(ft(i))n[a]=e(n,a,i.$refNode,i.$refText,i);else if(Array.isArray(i)){const o=[];for(const u of i)Be(u)?o.push(Hc(u,e,r)):ft(u)?o.push(e(n,a,u.$refNode,u.$refText,u)):o.push(u);n[a]=o}else n[a]=i;return Qa(n,{deep:!0}),n}s(Hc,"copyAstNode");var K$={};en(K$,{AbstractElement:()=>Rt,AbstractParserRule:()=>us,AbstractRule:()=>Fa,AbstractType:()=>St,Action:()=>Kr,Alternatives:()=>cs,ArrayLiteral:()=>Yc,ArrayType:()=>Xc,Assignment:()=>Wr,BooleanLiteral:()=>Jc,CharacterRange:()=>qr,Condition:()=>Vr,Conjunction:()=>fs,CrossReference:()=>Hr,Disjunction:()=>ds,EndOfFile:()=>Zc,Grammar:()=>Cr,GrammarImport:()=>Qc,Group:()=>An,InferredType:()=>ef,InfixRule:()=>sr,InfixRuleOperatorList:()=>ps,InfixRuleOperators:()=>tf,Interface:()=>za,Keyword:()=>ja,LangiumGrammarAstReflection:()=>Hh,LangiumGrammarTerminals:()=>Rk,NamedArgument:()=>Ba,NegatedToken:()=>En,Negation:()=>rf,NumberLiteral:()=>nf,Parameter:()=>Ua,ParameterReference:()=>af,ParserRule:()=>Ut,ReferenceType:()=>ms,RegexToken:()=>Cn,ReturnType:()=>sf,RuleCall:()=>bn,SimpleType:()=>Ka,StringLiteral:()=>of,TerminalAlternatives:()=>_n,TerminalElement:()=>At,TerminalGroup:()=>Sn,TerminalRule:()=>br,TerminalRuleCall:()=>wn,Type:()=>hs,TypeAttribute:()=>In,TypeDefinition:()=>Nn,UnionType:()=>lf,UnorderedGroup:()=>ys,UntilToken:()=>Pn,ValueLiteral:()=>kn,Wildcard:()=>Wa,isAbstractElement:()=>Gf,isAbstractParserRule:()=>Vn,isAbstractRule:()=>W$,isAbstractType:()=>q$,isAction:()=>Yr,isAlternatives:()=>Ff,isArrayLiteral:()=>V$,isArrayType:()=>Nh,isAssignment:()=>wr,isBooleanLiteral:()=>Ph,isCharacterRange:()=>kh,isCondition:()=>H$,isConjunction:()=>Oh,isCrossReference:()=>Hn,isDisjunction:()=>Lh,isEndOfFile:()=>Dh,isGrammar:()=>Y$,isGrammarImport:()=>X$,isGroup:()=>Yn,isInferredType:()=>Fu,isInfixRule:()=>ti,isInfixRuleOperatorList:()=>J$,isInfixRuleOperators:()=>Z$,isInterface:()=>xh,isKeyword:()=>Ir,isNamedArgument:()=>Q$,isNegatedToken:()=>Mh,isNegation:()=>Gh,isNumberLiteral:()=>eR,isParameter:()=>tR,isParameterReference:()=>Fh,isParserRule:()=>mt,isReferenceType:()=>zh,isRegexToken:()=>jh,isReturnType:()=>Bh,isRuleCall:()=>Nr,isSimpleType:()=>zf,isStringLiteral:()=>rR,isTerminalAlternatives:()=>Uh,isTerminalElement:()=>nR,isTerminalGroup:()=>Kh,isTerminalRule:()=>jt,isTerminalRuleCall:()=>jf,isType:()=>Bf,isTypeAttribute:()=>aR,isTypeDefinition:()=>iR,isUnionType:()=>Wh,isUnorderedGroup:()=>Uf,isUntilToken:()=>qh,isValueLiteral:()=>sR,isWildcard:()=>Vh,reflection:()=>U});var Rk={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]*/},Rt={$type:"AbstractElement",cardinality:"cardinality"};function Gf(t){return U.isInstance(t,Rt.$type)}s(Gf,"isAbstractElement");var us={$type:"AbstractParserRule"};function Vn(t){return U.isInstance(t,us.$type)}s(Vn,"isAbstractParserRule");var Fa={$type:"AbstractRule"};function W$(t){return U.isInstance(t,Fa.$type)}s(W$,"isAbstractRule");var St={$type:"AbstractType"};function q$(t){return U.isInstance(t,St.$type)}s(q$,"isAbstractType");var Kr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function Yr(t){return U.isInstance(t,Kr.$type)}s(Yr,"isAction");var cs={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function Ff(t){return U.isInstance(t,cs.$type)}s(Ff,"isAlternatives");var Yc={$type:"ArrayLiteral",elements:"elements"};function V$(t){return U.isInstance(t,Yc.$type)}s(V$,"isArrayLiteral");var Xc={$type:"ArrayType",elementType:"elementType"};function Nh(t){return U.isInstance(t,Xc.$type)}s(Nh,"isArrayType");var Wr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function wr(t){return U.isInstance(t,Wr.$type)}s(wr,"isAssignment");var Jc={$type:"BooleanLiteral",true:"true"};function Ph(t){return U.isInstance(t,Jc.$type)}s(Ph,"isBooleanLiteral");var qr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function kh(t){return U.isInstance(t,qr.$type)}s(kh,"isCharacterRange");var Vr={$type:"Condition"};function H$(t){return U.isInstance(t,Vr.$type)}s(H$,"isCondition");var fs={$type:"Conjunction",left:"left",right:"right"};function Oh(t){return U.isInstance(t,fs.$type)}s(Oh,"isConjunction");var Hr={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function Hn(t){return U.isInstance(t,Hr.$type)}s(Hn,"isCrossReference");var ds={$type:"Disjunction",left:"left",right:"right"};function Lh(t){return U.isInstance(t,ds.$type)}s(Lh,"isDisjunction");var Zc={$type:"EndOfFile",cardinality:"cardinality"};function Dh(t){return U.isInstance(t,Zc.$type)}s(Dh,"isEndOfFile");var Cr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function Y$(t){return U.isInstance(t,Cr.$type)}s(Y$,"isGrammar");var Qc={$type:"GrammarImport",path:"path"};function X$(t){return U.isInstance(t,Qc.$type)}s(X$,"isGrammarImport");var An={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function Yn(t){return U.isInstance(t,An.$type)}s(Yn,"isGroup");var ef={$type:"InferredType",name:"name"};function Fu(t){return U.isInstance(t,ef.$type)}s(Fu,"isInferredType");var sr={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function ti(t){return U.isInstance(t,sr.$type)}s(ti,"isInfixRule");var ps={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function J$(t){return U.isInstance(t,ps.$type)}s(J$,"isInfixRuleOperatorList");var tf={$type:"InfixRuleOperators",precedences:"precedences"};function Z$(t){return U.isInstance(t,tf.$type)}s(Z$,"isInfixRuleOperators");var za={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function xh(t){return U.isInstance(t,za.$type)}s(xh,"isInterface");var ja={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Ir(t){return U.isInstance(t,ja.$type)}s(Ir,"isKeyword");var Ba={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function Q$(t){return U.isInstance(t,Ba.$type)}s(Q$,"isNamedArgument");var En={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Mh(t){return U.isInstance(t,En.$type)}s(Mh,"isNegatedToken");var rf={$type:"Negation",value:"value"};function Gh(t){return U.isInstance(t,rf.$type)}s(Gh,"isNegation");var nf={$type:"NumberLiteral",value:"value"};function eR(t){return U.isInstance(t,nf.$type)}s(eR,"isNumberLiteral");var Ua={$type:"Parameter",name:"name"};function tR(t){return U.isInstance(t,Ua.$type)}s(tR,"isParameter");var af={$type:"ParameterReference",parameter:"parameter"};function Fh(t){return U.isInstance(t,af.$type)}s(Fh,"isParameterReference");var Ut={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function mt(t){return U.isInstance(t,Ut.$type)}s(mt,"isParserRule");var ms={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function zh(t){return U.isInstance(t,ms.$type)}s(zh,"isReferenceType");var Cn={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function jh(t){return U.isInstance(t,Cn.$type)}s(jh,"isRegexToken");var sf={$type:"ReturnType",name:"name"};function Bh(t){return U.isInstance(t,sf.$type)}s(Bh,"isReturnType");var bn={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Nr(t){return U.isInstance(t,bn.$type)}s(Nr,"isRuleCall");var Ka={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function zf(t){return U.isInstance(t,Ka.$type)}s(zf,"isSimpleType");var of={$type:"StringLiteral",value:"value"};function rR(t){return U.isInstance(t,of.$type)}s(rR,"isStringLiteral");var _n={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Uh(t){return U.isInstance(t,_n.$type)}s(Uh,"isTerminalAlternatives");var At={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function nR(t){return U.isInstance(t,At.$type)}s(nR,"isTerminalElement");var Sn={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Kh(t){return U.isInstance(t,Sn.$type)}s(Kh,"isTerminalGroup");var br={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function jt(t){return U.isInstance(t,br.$type)}s(jt,"isTerminalRule");var wn={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function jf(t){return U.isInstance(t,wn.$type)}s(jf,"isTerminalRuleCall");var hs={$type:"Type",name:"name",type:"type"};function Bf(t){return U.isInstance(t,hs.$type)}s(Bf,"isType");var In={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function aR(t){return U.isInstance(t,In.$type)}s(aR,"isTypeAttribute");var Nn={$type:"TypeDefinition"};function iR(t){return U.isInstance(t,Nn.$type)}s(iR,"isTypeDefinition");var lf={$type:"UnionType",types:"types"};function Wh(t){return U.isInstance(t,lf.$type)}s(Wh,"isUnionType");var ys={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function Uf(t){return U.isInstance(t,ys.$type)}s(Uf,"isUnorderedGroup");var Pn={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function qh(t){return U.isInstance(t,Pn.$type)}s(qh,"isUntilToken");var kn={$type:"ValueLiteral"};function sR(t){return U.isInstance(t,kn.$type)}s(sR,"isValueLiteral");var Wa={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Vh(t){return U.isInstance(t,Wa.$type)}s(Vh,"isWildcard");var Us,Hh=(Us=class extends _h{constructor(){super(...arguments),this.types={AbstractElement:{name:Rt.$type,properties:{cardinality:{name:Rt.cardinality}},superTypes:[]},AbstractParserRule:{name:us.$type,properties:{},superTypes:[Fa.$type,St.$type]},AbstractRule:{name:Fa.$type,properties:{},superTypes:[]},AbstractType:{name:St.$type,properties:{},superTypes:[]},Action:{name:Kr.$type,properties:{cardinality:{name:Kr.cardinality},feature:{name:Kr.feature},inferredType:{name:Kr.inferredType},operator:{name:Kr.operator},type:{name:Kr.type,referenceType:St.$type}},superTypes:[Rt.$type]},Alternatives:{name:cs.$type,properties:{cardinality:{name:cs.cardinality},elements:{name:cs.elements,defaultValue:[]}},superTypes:[Rt.$type]},ArrayLiteral:{name:Yc.$type,properties:{elements:{name:Yc.elements,defaultValue:[]}},superTypes:[kn.$type]},ArrayType:{name:Xc.$type,properties:{elementType:{name:Xc.elementType}},superTypes:[Nn.$type]},Assignment:{name:Wr.$type,properties:{cardinality:{name:Wr.cardinality},feature:{name:Wr.feature},operator:{name:Wr.operator},predicate:{name:Wr.predicate},terminal:{name:Wr.terminal}},superTypes:[Rt.$type]},BooleanLiteral:{name:Jc.$type,properties:{true:{name:Jc.true,defaultValue:!1}},superTypes:[Vr.$type,kn.$type]},CharacterRange:{name:qr.$type,properties:{cardinality:{name:qr.cardinality},left:{name:qr.left},lookahead:{name:qr.lookahead},parenthesized:{name:qr.parenthesized,defaultValue:!1},right:{name:qr.right}},superTypes:[At.$type]},Condition:{name:Vr.$type,properties:{},superTypes:[]},Conjunction:{name:fs.$type,properties:{left:{name:fs.left},right:{name:fs.right}},superTypes:[Vr.$type]},CrossReference:{name:Hr.$type,properties:{cardinality:{name:Hr.cardinality},deprecatedSyntax:{name:Hr.deprecatedSyntax,defaultValue:!1},isMulti:{name:Hr.isMulti,defaultValue:!1},terminal:{name:Hr.terminal},type:{name:Hr.type,referenceType:St.$type}},superTypes:[Rt.$type]},Disjunction:{name:ds.$type,properties:{left:{name:ds.left},right:{name:ds.right}},superTypes:[Vr.$type]},EndOfFile:{name:Zc.$type,properties:{cardinality:{name:Zc.cardinality}},superTypes:[Rt.$type]},Grammar:{name:Cr.$type,properties:{imports:{name:Cr.imports,defaultValue:[]},interfaces:{name:Cr.interfaces,defaultValue:[]},isDeclared:{name:Cr.isDeclared,defaultValue:!1},name:{name:Cr.name},rules:{name:Cr.rules,defaultValue:[]},types:{name:Cr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:Qc.$type,properties:{path:{name:Qc.path}},superTypes:[]},Group:{name:An.$type,properties:{cardinality:{name:An.cardinality},elements:{name:An.elements,defaultValue:[]},guardCondition:{name:An.guardCondition},predicate:{name:An.predicate}},superTypes:[Rt.$type]},InferredType:{name:ef.$type,properties:{name:{name:ef.name}},superTypes:[St.$type]},InfixRule:{name:sr.$type,properties:{call:{name:sr.call},dataType:{name:sr.dataType},inferredType:{name:sr.inferredType},name:{name:sr.name},operators:{name:sr.operators},parameters:{name:sr.parameters,defaultValue:[]},returnType:{name:sr.returnType,referenceType:St.$type}},superTypes:[us.$type]},InfixRuleOperatorList:{name:ps.$type,properties:{associativity:{name:ps.associativity},operators:{name:ps.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:tf.$type,properties:{precedences:{name:tf.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:za.$type,properties:{attributes:{name:za.attributes,defaultValue:[]},name:{name:za.name},superTypes:{name:za.superTypes,defaultValue:[],referenceType:St.$type}},superTypes:[St.$type]},Keyword:{name:ja.$type,properties:{cardinality:{name:ja.cardinality},predicate:{name:ja.predicate},value:{name:ja.value}},superTypes:[Rt.$type]},NamedArgument:{name:Ba.$type,properties:{calledByName:{name:Ba.calledByName,defaultValue:!1},parameter:{name:Ba.parameter,referenceType:Ua.$type},value:{name:Ba.value}},superTypes:[]},NegatedToken:{name:En.$type,properties:{cardinality:{name:En.cardinality},lookahead:{name:En.lookahead},parenthesized:{name:En.parenthesized,defaultValue:!1},terminal:{name:En.terminal}},superTypes:[At.$type]},Negation:{name:rf.$type,properties:{value:{name:rf.value}},superTypes:[Vr.$type]},NumberLiteral:{name:nf.$type,properties:{value:{name:nf.value}},superTypes:[kn.$type]},Parameter:{name:Ua.$type,properties:{name:{name:Ua.name}},superTypes:[]},ParameterReference:{name:af.$type,properties:{parameter:{name:af.parameter,referenceType:Ua.$type}},superTypes:[Vr.$type]},ParserRule:{name:Ut.$type,properties:{dataType:{name:Ut.dataType},definition:{name:Ut.definition},entry:{name:Ut.entry,defaultValue:!1},fragment:{name:Ut.fragment,defaultValue:!1},inferredType:{name:Ut.inferredType},name:{name:Ut.name},parameters:{name:Ut.parameters,defaultValue:[]},returnType:{name:Ut.returnType,referenceType:St.$type}},superTypes:[us.$type]},ReferenceType:{name:ms.$type,properties:{isMulti:{name:ms.isMulti,defaultValue:!1},referenceType:{name:ms.referenceType}},superTypes:[Nn.$type]},RegexToken:{name:Cn.$type,properties:{cardinality:{name:Cn.cardinality},lookahead:{name:Cn.lookahead},parenthesized:{name:Cn.parenthesized,defaultValue:!1},regex:{name:Cn.regex}},superTypes:[At.$type]},ReturnType:{name:sf.$type,properties:{name:{name:sf.name}},superTypes:[]},RuleCall:{name:bn.$type,properties:{arguments:{name:bn.arguments,defaultValue:[]},cardinality:{name:bn.cardinality},predicate:{name:bn.predicate},rule:{name:bn.rule,referenceType:Fa.$type}},superTypes:[Rt.$type]},SimpleType:{name:Ka.$type,properties:{primitiveType:{name:Ka.primitiveType},stringType:{name:Ka.stringType},typeRef:{name:Ka.typeRef,referenceType:St.$type}},superTypes:[Nn.$type]},StringLiteral:{name:of.$type,properties:{value:{name:of.value}},superTypes:[kn.$type]},TerminalAlternatives:{name:_n.$type,properties:{cardinality:{name:_n.cardinality},elements:{name:_n.elements,defaultValue:[]},lookahead:{name:_n.lookahead},parenthesized:{name:_n.parenthesized,defaultValue:!1}},superTypes:[At.$type]},TerminalElement:{name:At.$type,properties:{cardinality:{name:At.cardinality},lookahead:{name:At.lookahead},parenthesized:{name:At.parenthesized,defaultValue:!1}},superTypes:[Rt.$type]},TerminalGroup:{name:Sn.$type,properties:{cardinality:{name:Sn.cardinality},elements:{name:Sn.elements,defaultValue:[]},lookahead:{name:Sn.lookahead},parenthesized:{name:Sn.parenthesized,defaultValue:!1}},superTypes:[At.$type]},TerminalRule:{name:br.$type,properties:{definition:{name:br.definition},fragment:{name:br.fragment,defaultValue:!1},hidden:{name:br.hidden,defaultValue:!1},name:{name:br.name},type:{name:br.type}},superTypes:[Fa.$type]},TerminalRuleCall:{name:wn.$type,properties:{cardinality:{name:wn.cardinality},lookahead:{name:wn.lookahead},parenthesized:{name:wn.parenthesized,defaultValue:!1},rule:{name:wn.rule,referenceType:br.$type}},superTypes:[At.$type]},Type:{name:hs.$type,properties:{name:{name:hs.name},type:{name:hs.type}},superTypes:[St.$type]},TypeAttribute:{name:In.$type,properties:{defaultValue:{name:In.defaultValue},isOptional:{name:In.isOptional,defaultValue:!1},name:{name:In.name},type:{name:In.type}},superTypes:[]},TypeDefinition:{name:Nn.$type,properties:{},superTypes:[]},UnionType:{name:lf.$type,properties:{types:{name:lf.types,defaultValue:[]}},superTypes:[Nn.$type]},UnorderedGroup:{name:ys.$type,properties:{cardinality:{name:ys.cardinality},elements:{name:ys.elements,defaultValue:[]}},superTypes:[Rt.$type]},UntilToken:{name:Pn.$type,properties:{cardinality:{name:Pn.cardinality},lookahead:{name:Pn.lookahead},parenthesized:{name:Pn.parenthesized,defaultValue:!1},terminal:{name:Pn.terminal}},superTypes:[At.$type]},ValueLiteral:{name:kn.$type,properties:{},superTypes:[]},Wildcard:{name:Wa.$type,properties:{cardinality:{name:Wa.cardinality},lookahead:{name:Wa.lookahead},parenthesized:{name:Wa.parenthesized,defaultValue:!1}},superTypes:[At.$type]}}}},s(Us,"LangiumGrammarAstReflection"),Us),U=new Hh;function oR(t){let e=t,r=!1;for(;e;){const n=qn(e.grammarSource,mt);if(n&&n.dataType)e=e.container,r=!0;else return r?e:void 0}}s(oR,"getDatatypeNode");function ri(t){return new Za(t,e=>Sr(e)?e.content:[],{includeRoot:!0})}s(ri,"streamCst");function lR(t){return ri(t).filter(Wn)}s(lR,"flattenCst");function Yh(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}s(Yh,"isChildNode");function _s(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}s(_s,"tokenToRange");function ni(t){if(!t)return;const{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}s(ni,"toDocumentSegment");var lr;(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"})(lr||(lr={}));function Xh(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return lr.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return lr.After;const r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?lr.Inside:r?lr.OverlapBack:n?lr.OverlapFront:lr.Outside}s(Xh,"compareRange");function Jh(t,e){return Xh(t,e)>lr.After}s(Jh,"inRange");var Zh=/^[\w\p{L}]$/u;function uR(t,e,r=Zh){if(t){if(e>0){const n=e-t.offset,a=t.text.charAt(n);r.test(a)||e--}return Kf(t,e)}}s(uR,"findDeclarationNodeAtOffset");function Qh(t,e){if(t){const r=ry(t,!0);if(r&&uf(r,e))return r;if(Mf(t)){const n=t.content.findIndex(a=>!a.hidden);for(let a=n-1;a>=0;a--){const i=t.content[a];if(uf(i,e))return i}}}}s(Qh,"findCommentNode");function uf(t,e){return Wn(t)&&e.includes(t.tokenType.name)}s(uf,"isCommentNode");function Kf(t,e){if(Wn(t))return t;if(Sr(t)){const r=ty(t,e,!1);if(r)return Kf(r,e)}}s(Kf,"findLeafNodeAtOffset");function ey(t,e){if(Wn(t))return t;if(Sr(t)){const r=ty(t,e,!0);if(r)return ey(r,e)}}s(ey,"findLeafNodeBeforeOffset");function ty(t,e,r){let n=0,a=t.content.length-1,i;for(;n<=a;){const o=Math.floor((n+a)/2),u=t.content[o];if(u.offset<=e&&u.end>e)return u;u.end<=e?(i=r?u:void 0,n=o+1):a=o-1}return i}s(ty,"binarySearch");function ry(t,e=!0){for(;t.container;){const r=t.container;let n=r.content.indexOf(t);for(;n>0;){n--;const a=r.content[n];if(e||!a.hidden)return a}t=r}}s(ry,"getPreviousNode");function cR(t,e=!0){for(;t.container;){const r=t.container;let n=r.content.indexOf(t);const a=r.content.length-1;for(;n<a;){n++;const i=r.content[n];if(e||!i.hidden)return i}t=r}}s(cR,"getNextNode");function fR(t){if(t.range.start.character===0)return t;const e=t.range.start.line;let r=t,n;for(;t.container;){const a=t.container,i=n??a.content.indexOf(t);if(i===0?(t=a,n=void 0):(n=i-1,t=a.content[n]),t.range.start.line!==e)break;r=t}return r}s(fR,"getStartlineNode");function dR(t,e){const r=pR(t,e);return r?r.parent.content.slice(r.a+1,r.b):[]}s(dR,"getInteriorNodes");function pR(t,e){const r=Am(t),n=Am(e);let a;for(let i=0;i<r.length&&i<n.length;i++){const o=r[i],u=n[i];if(o.parent===u.parent)a={parent:o.parent,a:o.index,b:u.index};else break}return a}s(pR,"getCommonParent");function Am(t){const e=[];for(;t.container;){const r=t.container,n=r.content.indexOf(t);e.push({parent:r,index:n}),t=r}return e.reverse()}s(Am,"getParentChain");var ny={};en(ny,{findAssignment:()=>yy,findNameAssignment:()=>Zf,findNodeForKeyword:()=>hy,findNodeForProperty:()=>Yf,findNodesForKeyword:()=>RR,findNodesForKeywordInternal:()=>Jf,findNodesForProperty:()=>my,getActionAtElement:()=>vy,getActionType:()=>$y,getAllReachableRules:()=>Hf,getAllRulesUsedForCrossReferences:()=>$R,getCrossReferenceTerminal:()=>dy,getEntryRule:()=>uy,getExplicitRuleType:()=>ju,getHiddenRules:()=>cy,getRuleType:()=>Ry,getRuleTypeName:()=>_R,getTypeName:()=>zn,isArrayCardinality:()=>ER,isArrayOperator:()=>CR,isCommentTerminal:()=>py,isDataType:()=>bR,isDataTypeRule:()=>zu,isOptionalCardinality:()=>AR,terminalRegex:()=>Bu});var Ks,Wf=(Ks=class extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}},s(Ks,"ErrorWithLocation"),Ks);function tn(t,e="Error: Got unexpected value."){throw new Error(e)}s(tn,"assertUnreachable");function ay(t,e="Error: Condition is violated."){if(!t)throw new Error(e)}s(ay,"assertCondition");var iy={};en(iy,{NEWLINE_REGEXP:()=>yR,escapeRegExp:()=>di,getTerminalParts:()=>vR,isMultilineComment:()=>sy,isWhitespace:()=>Vf,partialMatches:()=>oy,partialRegExp:()=>ly,whitespaceCharacters:()=>TR});function W(t){return t.charCodeAt(0)}s(W,"cc");function Ic(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}s(Ic,"insertToSet");function wa(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}s(wa,"addFlag");function mn(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}s(mn,"ASSERT_EXISTS");function mR(){throw Error("Internal Error - Should never get here!")}s(mR,"ASSERT_NEVER_REACH_HERE");function Em(t){return t.type==="Character"}s(Em,"isCharacter");var cf=[];for(let t=W("0");t<=W("9");t++)cf.push(t);var ff=[W("_")].concat(cf);for(let t=W("a");t<=W("z");t++)ff.push(t);for(let t=W("A");t<=W("Z");t++)ff.push(t);var ov=[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")],Ak=/[0-9a-fA-F]/,ac=/[0-9]/,Ek=/[1-9]/,Ws,hR=(Ws=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("/");const r=this.disjunction();this.consumeChar("/");const n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":wa(n,"global");break;case"i":wa(n,"ignoreCase");break;case"m":wa(n,"multiLine");break;case"u":wa(n,"unicode");break;case"y":wa(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){const e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){const e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}mn(r);const n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return mR()}quantifier(e=!1){let r;const n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":const a=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:a,atMost:a};break;case",":let i;this.isDigit()?(i=this.integerIncludingZero(),r={atLeast:a,atMost:i}):r={atLeast:a,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;mn(r);break}if(!(e===!0&&r===void 0)&&mn(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e;const r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),mn(e))return e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}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=cf;break;case"D":e=cf,r=!0;break;case"s":e=ov;break;case"S":e=ov,r=!0;break;case"w":e=ff;break;case"W":e=ff,r=!0;break}if(mn(e))return{type:"Set",value:e,complement:r}}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}if(mn(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:W("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:W(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
39
+ `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:const e=this.popChar();return{type:"Character",value:W(e)}}}characterClass(){const e=[];let r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){const n=this.classAtom();if(n.type,Em(n)&&this.isRangeDash()){this.consumeChar("-");const a=this.classAtom();if(a.type,Em(a)){if(a.value<n.value)throw Error("Range out of order in character class");e.push({from:n.value,to:a.value})}else Ic(n.value,e),e.push(W("-")),Ic(a.value,e)}else Ic(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}const r=this.disjunction();this.consumeChar(")");const n={type:"Group",capturing:e,value:r};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();if(Ek.test(e)===!1)throw Error("Expecting a positive integer");for(;ac.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(ac.test(e)===!1)throw Error("Expecting an integer");for(;ac.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){const 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 ac.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(){const e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
43
+ `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let r="";for(let a=0;a<e;a++){const i=this.popChar();if(Ak.test(i)===!1)throw Error("Expecting a HexDecimal digits");r+=i}return{type:"Character",value:parseInt(r,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){const e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}},s(Ws,"RegExpParser"),Ws),qs,qf=(qs=class{visitChildren(e){for(const r in e){const n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(a=>{this.visit(a)},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(qs,"BaseRegExpVisitor"),qs),yR=/\r?\n/gm,gR=new hR,Vs,Ck=(Vs=class extends qf{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){const r=String.fromCharCode(e.value);if(!this.multiline&&r===`
44
+ `&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const n=di(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){const r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!`
45
+ `.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},s(Vs,"TerminalRegExpVisitor"),Vs),On=new Ck;function vR(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;const e=gR.pattern(t),r=[];for(const n of e.value.value)On.reset(t),On.visit(n),r.push({start:On.startRegexp,end:On.endRegex});return r}catch{return[]}}s(vR,"getTerminalParts");function sy(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),On.reset(t),On.visit(gR.pattern(t)),On.multiline}catch{return!1}}s(sy,"isMultilineComment");var TR=`\f
46
+ \r \v              \u2028\u2029   \uFEFF`.split("");function Vf(t){const e=typeof t=="string"?new RegExp(t):t;return TR.some(r=>e.test(r))}s(Vf,"isWhitespace");function di(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}s(di,"escapeRegExp");function oy(t,e){const r=ly(t),n=e.match(r);return!!n&&n[0].length>0}s(oy,"partialMatches");function ly(t){typeof t=="string"&&(t=new RegExp(t));const e=t,r=t.source;let n=0;function a(){let i="",o;function u(c){i+=r.substr(n,c),n+=c}s(u,"appendRaw");function l(c){i+="(?:"+r.substr(n,c)+"|$)",n+=c}for(s(l,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":l(3);break;case"x":l(4);break;case"u":e.unicode?r[n+2]==="{"?l(r.indexOf("}",n)-n+1):l(6):l(2);break;case"p":case"P":e.unicode?l(r.indexOf("}",n)-n+1):l(2);break;case"k":l(r.indexOf(">",n)-n+1);break;default:l(2);break}break;case"[":o=/\[(?:\\.|.)*?\]/g,o.lastIndex=n,o=o.exec(r)||[],l(o[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":u(1);break;case"{":o=/\{\d+,?\d*\}/g,o.lastIndex=n,o=o.exec(r),o?u(o[0].length):l(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":i+="(?:",n+=3,i+=a()+"|$)";break;case"=":i+="(?=",n+=3,i+=a()+")";break;case"!":o=n,n+=3,a(),i+=r.substr(o,n-o);break;case"<":switch(r[n+3]){case"=":case"!":o=n,n+=4,a(),i+=r.substr(o,n-o);break;default:u(r.indexOf(">",n)-n+1),i+=a()+"|$)";break}break}else u(1),i+=a()+"|$)";break;case")":return++n,i;default:l(1);break}return i}return s(a,"process"),new RegExp(a(),t.flags)}s(ly,"partialRegExp");function uy(t){return t.rules.find(e=>mt(e)&&e.entry)}s(uy,"getEntryRule");function cy(t){return t.rules.filter(e=>jt(e)&&e.hidden)}s(cy,"getHiddenRules");function Hf(t,e){const r=new Set,n=uy(t);if(!n)return new Set(t.rules);const a=[n].concat(cy(t));for(const o of a)fy(o,r,e);const i=new Set;for(const o of t.rules)(r.has(o.name)||jt(o)&&o.hidden)&&i.add(o);return i}s(Hf,"getAllReachableRules");function fy(t,e,r){e.add(t.name),Mr(t).forEach(n=>{if(Nr(n)||r&&jf(n)){const a=n.rule.ref;a&&!e.has(a.name)&&fy(a,e,r)}})}s(fy,"ruleDfs");function $R(t){const e=new Set;return Mr(t).forEach(r=>{Hn(r)&&(mt(r.type.ref)&&e.add(r.type.ref),Fu(r.type.ref)&&mt(r.type.ref.$container)&&e.add(r.type.ref.$container))}),e}s($R,"getAllRulesUsedForCrossReferences");function dy(t){if(t.terminal)return t.terminal;if(t.type.ref){const e=Zf(t.type.ref);return e==null?void 0:e.terminal}}s(dy,"getCrossReferenceTerminal");function py(t){return t.hidden&&!Vf(Bu(t))}s(py,"isCommentTerminal");function my(t,e){return!t||!e?[]:Xf(t,e,t.astNode,!0)}s(my,"findNodesForProperty");function Yf(t,e,r){if(!t||!e)return;const n=Xf(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(Yf,"findNodeForProperty");function Xf(t,e,r,n){if(!n){const a=qn(t.grammarSource,wr);if(a&&a.feature===e)return[t]}return Sr(t)&&t.astNode===r?t.content.flatMap(a=>Xf(a,e,r,!1)):[]}s(Xf,"findNodesForPropertyInternal");function RR(t,e){return t?Jf(t,e,t==null?void 0:t.astNode):[]}s(RR,"findNodesForKeyword");function hy(t,e,r){if(!t)return;const n=Jf(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(hy,"findNodeForKeyword");function Jf(t,e,r){if(t.astNode!==r)return[];if(Ir(t.grammarSource)&&t.grammarSource.value===e)return[t];const n=ri(t).iterator();let a;const i=[];do if(a=n.next(),!a.done){const o=a.value;o.astNode===r?Ir(o.grammarSource)&&o.grammarSource.value===e&&i.push(o):n.prune()}while(!a.done);return i}s(Jf,"findNodesForKeywordInternal");function yy(t){var r;const e=t.astNode;for(;e===((r=t.container)==null?void 0:r.astNode);){const n=qn(t.grammarSource,wr);if(n)return n;t=t.container}}s(yy,"findAssignment");function Zf(t){let e=t;return Fu(e)&&(Yr(e.$container)?e=e.$container.$container:Vn(e.$container)?e=e.$container:tn(e.$container)),gy(t,e,new Map)}s(Zf,"findNameAssignment");function gy(t,e,r){var a;function n(i,o){let u;return qn(i,wr)||(u=gy(o,o,r)),r.set(t,u),u}if(s(n,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(const i of Mr(e)){if(wr(i)&&i.feature.toLowerCase()==="name")return r.set(t,i),i;if(Nr(i)&&mt(i.rule.ref))return n(i,i.rule.ref);if(zf(i)&&((a=i.typeRef)!=null&&a.ref))return n(i,i.typeRef.ref)}}s(gy,"findNameAssignmentInternal");function vy(t){const e=t.$container;if(Yn(e)){const r=e.elements,n=r.indexOf(t);for(let a=n-1;a>=0;a--){const i=r[a];if(Yr(i))return i;{const o=Mr(r[a]).find(Yr);if(o)return o}}}if(Gf(e))return vy(e)}s(vy,"getActionAtElement");function AR(t,e){return t==="?"||t==="*"||Yn(e)&&!!e.guardCondition}s(AR,"isOptionalCardinality");function ER(t){return t==="*"||t==="+"}s(ER,"isArrayCardinality");function CR(t){return t==="+="}s(CR,"isArrayOperator");function zu(t){return Ty(t,new Set)}s(zu,"isDataTypeRule");function Ty(t,e){if(e.has(t))return!0;e.add(t);for(const r of Mr(t))if(Nr(r)){if(!r.rule.ref||mt(r.rule.ref)&&!Ty(r.rule.ref,e)||ti(r.rule.ref))return!1}else{if(wr(r))return!1;if(Yr(r))return!1}return!!t.definition}s(Ty,"isDataTypeRuleInternal");function bR(t){return df(t.type,new Set)}s(bR,"isDataType");function df(t,e){if(e.has(t))return!0;if(e.add(t),Nh(t))return!1;if(zh(t))return!1;if(Wh(t))return t.types.every(r=>df(r,e));if(zf(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){const r=t.typeRef.ref;return Bf(r)?df(r.type,e):!1}else return!1}else return!1}s(df,"isDataTypeInternal");function ju(t){if(!jt(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){const e=t.returnType.ref;if(e)return e.name}}}s(ju,"getExplicitRuleType");function zn(t){if(Vn(t))return mt(t)&&zu(t)?t.name:ju(t)??t.name;if(xh(t)||Bf(t)||Bh(t))return t.name;if(Yr(t)){const e=$y(t);if(e)return e}else if(Fu(t))return t.name;throw new Error("Cannot get name of Unknown Type")}s(zn,"getTypeName");function $y(t){var e;if(t.inferredType)return t.inferredType.name;if((e=t.type)!=null&&e.ref)return zn(t.type.ref)}s($y,"getActionType");function _R(t){var e;return jt(t)?((e=t.type)==null?void 0:e.name)??"string":mt(t)&&zu(t)?t.name:ju(t)??t.name}s(_R,"getRuleTypeName");function Ry(t){var e;return jt(t)?((e=t.type)==null?void 0:e.name)??"string":ju(t)??t.name}s(Ry,"getRuleType");function Bu(t){const e={s:!1,i:!1,u:!1},r=Xn(t.definition,e),n=Object.entries(e).filter(([,a])=>a).map(([a])=>a).join("");return new RegExp(r,n)}s(Bu,"terminalRegex");var Ay=/[\s\S]/.source;function Xn(t,e){var r;if(Uh(t))return SR(t);if(Kh(t))return wR(t);if(kh(t))return PR(t);if(jf(t)){const n=t.rule.ref;if(!n)throw new Error("Missing rule reference.");return dr(Xn(n.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(Mh(t))return NR(t);if(qh(t))return IR(t);if(jh(t)){const n=t.regex.lastIndexOf("/"),a=t.regex.substring(1,n),i=t.regex.substring(n+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),dr(a,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(Vh(t))return dr(Ay,{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(Xn,"abstractElementToRegex");function SR(t){return dr(t.elements.map(e=>Xn(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(SR,"terminalAlternativesToRegex");function wR(t){return dr(t.elements.map(e=>Xn(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(wR,"terminalGroupToRegex");function IR(t){return dr(`${Ay}*?${Xn(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}s(IR,"untilTokenToRegex");function NR(t){return dr(`(?!${Xn(t.terminal)})${Ay}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}s(NR,"negateTokenToRegex");function PR(t){return t.right?dr(`[${Nc(t.left)}-${Nc(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):dr(Nc(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}s(PR,"characterRangeToRegex");function Nc(t){return di(t.value)}s(Nc,"keywordToRegex");function dr(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}s(dr,"withCardinality");function Ey(t){const e=[],r=t.Grammar;for(const n of r.rules)jt(n)&&py(n)&&sy(Bu(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:Zh}}s(Ey,"createGrammarConfig");var bk=typeof global=="object"&&global&&global.Object===Object&&global,kR=bk,_k=typeof self=="object"&&self&&self.Object===Object&&self,Sk=kR||_k||Function("return this")(),mr=Sk,wk=mr.Symbol,Ft=wk,OR=Object.prototype,Ik=OR.hasOwnProperty,Nk=OR.toString,Fi=Ft?Ft.toStringTag:void 0;function LR(t){var e=Ik.call(t,Fi),r=t[Fi];try{t[Fi]=void 0;var n=!0}catch{}var a=Nk.call(t);return n&&(e?t[Fi]=r:delete t[Fi]),a}s(LR,"getRawTag");var Pk=LR,kk=Object.prototype,Ok=kk.toString;function DR(t){return Ok.call(t)}s(DR,"objectToString");var Lk=DR,Dk="[object Null]",xk="[object Undefined]",lv=Ft?Ft.toStringTag:void 0;function xR(t){return t==null?t===void 0?xk:Dk:lv&&lv in Object(t)?Pk(t):Lk(t)}s(xR,"baseGetTag");var rn=xR;function MR(t){return t!=null&&typeof t=="object"}s(MR,"isObjectLike");var Xt=MR,Mk="[object Symbol]";function GR(t){return typeof t=="symbol"||Xt(t)&&rn(t)==Mk}s(GR,"isSymbol");var Qf=GR;function FR(t,e){for(var r=-1,n=t==null?0:t.length,a=Array(n);++r<n;)a[r]=e(t[r],r,t);return a}s(FR,"arrayMap");var Uu=FR,Gk=Array.isArray,ie=Gk,Fk=1/0,uv=Ft?Ft.prototype:void 0,cv=uv?uv.toString:void 0;function Cy(t){if(typeof t=="string")return t;if(ie(t))return Uu(t,Cy)+"";if(Qf(t))return cv?cv.call(t):"";var e=t+"";return e=="0"&&1/t==-Fk?"-0":e}s(Cy,"baseToString");var zk=Cy,jk=/\s/;function zR(t){for(var e=t.length;e--&&jk.test(t.charAt(e)););return e}s(zR,"trimmedEndIndex");var Bk=zR,Uk=/^\s+/;function jR(t){return t&&t.slice(0,Bk(t)+1).replace(Uk,"")}s(jR,"baseTrim");var Kk=jR;function BR(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}s(BR,"isObject");var zt=BR,fv=0/0,Wk=/^[-+]0x[0-9a-f]+$/i,qk=/^0b[01]+$/i,Vk=/^0o[0-7]+$/i,Hk=parseInt;function UR(t){if(typeof t=="number")return t;if(Qf(t))return fv;if(zt(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=zt(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=Kk(t);var r=qk.test(t);return r||Vk.test(t)?Hk(t.slice(2),r?2:8):Wk.test(t)?fv:+t}s(UR,"toNumber");var Yk=UR,dv=1/0,Xk=17976931348623157e292;function KR(t){if(!t)return t===0?t:0;if(t=Yk(t),t===dv||t===-dv){var e=t<0?-1:1;return e*Xk}return t===t?t:0}s(KR,"toFinite");var Jk=KR;function WR(t){var e=Jk(t),r=e%1;return e===e?r?e-r:e:0}s(WR,"toInteger");var Ku=WR;function qR(t){return t}s(qR,"identity");var Wu=qR,Zk="[object AsyncFunction]",Qk="[object Function]",eO="[object GeneratorFunction]",tO="[object Proxy]";function VR(t){if(!zt(t))return!1;var e=rn(t);return e==Qk||e==eO||e==Zk||e==tO}s(VR,"isFunction");var Gr=VR,rO=mr["__core-js_shared__"],Wd=rO,pv=function(){var t=/[^.]+$/.exec(Wd&&Wd.keys&&Wd.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function HR(t){return!!pv&&pv in t}s(HR,"isMasked");var nO=HR,aO=Function.prototype,iO=aO.toString;function YR(t){if(t!=null){try{return iO.call(t)}catch{}try{return t+""}catch{}}return""}s(YR,"toSource");var Jn=YR,sO=/[\\^$.*+?()[\]{}|]/g,oO=/^\[object .+?Constructor\]$/,lO=Function.prototype,uO=Object.prototype,cO=lO.toString,fO=uO.hasOwnProperty,dO=RegExp("^"+cO.call(fO).replace(sO,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function XR(t){if(!zt(t)||nO(t))return!1;var e=Gr(t)?dO:oO;return e.test(Jn(t))}s(XR,"baseIsNative");var pO=XR;function JR(t,e){return t==null?void 0:t[e]}s(JR,"getValue");var mO=JR;function ZR(t,e){var r=mO(t,e);return pO(r)?r:void 0}s(ZR,"getNative");var Zn=ZR,hO=Zn(mr,"WeakMap"),Cm=hO,mv=Object.create,yO=function(){function t(){}return s(t,"object"),function(e){if(!zt(e))return{};if(mv)return mv(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),gO=yO;function QR(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(QR,"apply");var vO=QR;function eA(){}s(eA,"noop");var qe=eA;function tA(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}s(tA,"copyArray");var TO=tA,$O=800,RO=16,AO=Date.now;function rA(t){var e=0,r=0;return function(){var n=AO(),a=RO-(n-r);if(r=n,a>0){if(++e>=$O)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}s(rA,"shortOut");var EO=rA;function nA(t){return function(){return t}}s(nA,"constant");var CO=nA,bO=function(){try{var t=Zn(Object,"defineProperty");return t({},"",{}),t}catch{}}(),pf=bO,_O=pf?function(t,e){return pf(t,"toString",{configurable:!0,enumerable:!1,value:CO(e),writable:!0})}:Wu,SO=_O,wO=EO(SO),IO=wO;function aA(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}s(aA,"arrayEach");var iA=aA;function sA(t,e,r,n){for(var a=t.length,i=r+(n?1:-1);n?i--:++i<a;)if(e(t[i],i,t))return i;return-1}s(sA,"baseFindIndex");var oA=sA;function lA(t){return t!==t}s(lA,"baseIsNaN");var NO=lA;function uA(t,e,r){for(var n=r-1,a=t.length;++n<a;)if(t[n]===e)return n;return-1}s(uA,"strictIndexOf");var PO=uA;function cA(t,e,r){return e===e?PO(t,e,r):oA(t,NO,r)}s(cA,"baseIndexOf");var by=cA;function fA(t,e){var r=t==null?0:t.length;return!!r&&by(t,e,0)>-1}s(fA,"arrayIncludes");var dA=fA,kO=9007199254740991,OO=/^(?:0|[1-9]\d*)$/;function pA(t,e){var r=typeof t;return e=e??kO,!!e&&(r=="number"||r!="symbol"&&OO.test(t))&&t>-1&&t%1==0&&t<e}s(pA,"isIndex");var ed=pA;function mA(t,e,r){e=="__proto__"&&pf?pf(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}s(mA,"baseAssignValue");var _y=mA;function hA(t,e){return t===e||t!==t&&e!==e}s(hA,"eq");var qu=hA,LO=Object.prototype,DO=LO.hasOwnProperty;function yA(t,e,r){var n=t[e];(!(DO.call(t,e)&&qu(n,r))||r===void 0&&!(e in t))&&_y(t,e,r)}s(yA,"assignValue");var td=yA;function gA(t,e,r,n){var a=!r;r||(r={});for(var i=-1,o=e.length;++i<o;){var u=e[i],l=n?n(r[u],t[u],u,r,t):void 0;l===void 0&&(l=t[u]),a?_y(r,u,l):td(r,u,l)}return r}s(gA,"copyObject");var Vu=gA,hv=Math.max;function vA(t,e,r){return e=hv(e===void 0?t.length-1:e,0),function(){for(var n=arguments,a=-1,i=hv(n.length-e,0),o=Array(i);++a<i;)o[a]=n[e+a];a=-1;for(var u=Array(e+1);++a<e;)u[a]=n[a];return u[e]=r(o),vO(t,this,u)}}s(vA,"overRest");var xO=vA;function TA(t,e){return IO(xO(t,e,Wu),t+"")}s(TA,"baseRest");var Sy=TA,MO=9007199254740991;function $A(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=MO}s($A,"isLength");var wy=$A;function RA(t){return t!=null&&wy(t.length)&&!Gr(t)}s(RA,"isArrayLike");var hr=RA;function AA(t,e,r){if(!zt(r))return!1;var n=typeof e;return(n=="number"?hr(r)&&ed(e,r.length):n=="string"&&e in r)?qu(r[e],t):!1}s(AA,"isIterateeCall");var rd=AA;function EA(t){return Sy(function(e,r){var n=-1,a=r.length,i=a>1?r[a-1]:void 0,o=a>2?r[2]:void 0;for(i=t.length>3&&typeof i=="function"?(a--,i):void 0,o&&rd(r[0],r[1],o)&&(i=a<3?void 0:i,a=1),e=Object(e);++n<a;){var u=r[n];u&&t(e,u,n,i)}return e})}s(EA,"createAssigner");var GO=EA,FO=Object.prototype;function CA(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||FO;return t===r}s(CA,"isPrototype");var Hu=CA;function bA(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}s(bA,"baseTimes");var zO=bA,jO="[object Arguments]";function _A(t){return Xt(t)&&rn(t)==jO}s(_A,"baseIsArguments");var yv=_A,SA=Object.prototype,BO=SA.hasOwnProperty,UO=SA.propertyIsEnumerable,KO=yv(function(){return arguments}())?yv:function(t){return Xt(t)&&BO.call(t,"callee")&&!UO.call(t,"callee")},nd=KO;function wA(){return!1}s(wA,"stubFalse");var WO=wA,IA=typeof exports=="object"&&exports&&!exports.nodeType&&exports,gv=IA&&typeof module=="object"&&module&&!module.nodeType&&module,qO=gv&&gv.exports===IA,vv=qO?mr.Buffer:void 0,VO=vv?vv.isBuffer:void 0,HO=VO||WO,Ss=HO,YO="[object Arguments]",XO="[object Array]",JO="[object Boolean]",ZO="[object Date]",QO="[object Error]",e0="[object Function]",t0="[object Map]",r0="[object Number]",n0="[object Object]",a0="[object RegExp]",i0="[object Set]",s0="[object String]",o0="[object WeakMap]",l0="[object ArrayBuffer]",u0="[object DataView]",c0="[object Float32Array]",f0="[object Float64Array]",d0="[object Int8Array]",p0="[object Int16Array]",m0="[object Int32Array]",h0="[object Uint8Array]",y0="[object Uint8ClampedArray]",g0="[object Uint16Array]",v0="[object Uint32Array]",be={};be[c0]=be[f0]=be[d0]=be[p0]=be[m0]=be[h0]=be[y0]=be[g0]=be[v0]=!0;be[YO]=be[XO]=be[l0]=be[JO]=be[u0]=be[ZO]=be[QO]=be[e0]=be[t0]=be[r0]=be[n0]=be[a0]=be[i0]=be[s0]=be[o0]=!1;function NA(t){return Xt(t)&&wy(t.length)&&!!be[rn(t)]}s(NA,"baseIsTypedArray");var T0=NA;function PA(t){return function(e){return t(e)}}s(PA,"baseUnary");var Yu=PA,kA=typeof exports=="object"&&exports&&!exports.nodeType&&exports,gs=kA&&typeof module=="object"&&module&&!module.nodeType&&module,$0=gs&&gs.exports===kA,qd=$0&&kR.process,R0=function(){try{var t=gs&&gs.require&&gs.require("util").types;return t||qd&&qd.binding&&qd.binding("util")}catch{}}(),Xr=R0,Tv=Xr&&Xr.isTypedArray,A0=Tv?Yu(Tv):T0,Iy=A0,E0=Object.prototype,C0=E0.hasOwnProperty;function OA(t,e){var r=ie(t),n=!r&&nd(t),a=!r&&!n&&Ss(t),i=!r&&!n&&!a&&Iy(t),o=r||n||a||i,u=o?zO(t.length,String):[],l=u.length;for(var c in t)(e||C0.call(t,c))&&!(o&&(c=="length"||a&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||ed(c,l)))&&u.push(c);return u}s(OA,"arrayLikeKeys");var LA=OA;function DA(t,e){return function(r){return t(e(r))}}s(DA,"overArg");var xA=DA,b0=xA(Object.keys,Object),_0=b0,S0=Object.prototype,w0=S0.hasOwnProperty;function MA(t){if(!Hu(t))return _0(t);var e=[];for(var r in Object(t))w0.call(t,r)&&r!="constructor"&&e.push(r);return e}s(MA,"baseKeys");var GA=MA;function FA(t){return hr(t)?LA(t):GA(t)}s(FA,"keys");var Nt=FA,I0=Object.prototype,N0=I0.hasOwnProperty,P0=GO(function(t,e){if(Hu(e)||hr(e)){Vu(e,Nt(e),t);return}for(var r in e)N0.call(e,r)&&td(t,r,e[r])}),Pt=P0;function zA(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}s(zA,"nativeKeysIn");var k0=zA,O0=Object.prototype,L0=O0.hasOwnProperty;function jA(t){if(!zt(t))return k0(t);var e=Hu(t),r=[];for(var n in t)n=="constructor"&&(e||!L0.call(t,n))||r.push(n);return r}s(jA,"baseKeysIn");var D0=jA;function BA(t){return hr(t)?LA(t,!0):D0(t)}s(BA,"keysIn");var ad=BA,x0=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,M0=/^\w*$/;function UA(t,e){if(ie(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||Qf(t)?!0:M0.test(t)||!x0.test(t)||e!=null&&t in Object(e)}s(UA,"isKey");var Ny=UA,G0=Zn(Object,"create"),ws=G0;function KA(){this.__data__=ws?ws(null):{},this.size=0}s(KA,"hashClear");var F0=KA;function WA(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}s(WA,"hashDelete");var z0=WA,j0="__lodash_hash_undefined__",B0=Object.prototype,U0=B0.hasOwnProperty;function qA(t){var e=this.__data__;if(ws){var r=e[t];return r===j0?void 0:r}return U0.call(e,t)?e[t]:void 0}s(qA,"hashGet");var K0=qA,W0=Object.prototype,q0=W0.hasOwnProperty;function VA(t){var e=this.__data__;return ws?e[t]!==void 0:q0.call(e,t)}s(VA,"hashHas");var V0=VA,H0="__lodash_hash_undefined__";function HA(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=ws&&e===void 0?H0:e,this}s(HA,"hashSet");var Y0=HA;function Qn(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(Qn,"Hash");Qn.prototype.clear=F0;Qn.prototype.delete=z0;Qn.prototype.get=K0;Qn.prototype.has=V0;Qn.prototype.set=Y0;var $v=Qn;function YA(){this.__data__=[],this.size=0}s(YA,"listCacheClear");var X0=YA;function XA(t,e){for(var r=t.length;r--;)if(qu(t[r][0],e))return r;return-1}s(XA,"assocIndexOf");var id=XA,J0=Array.prototype,Z0=J0.splice;function JA(t){var e=this.__data__,r=id(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():Z0.call(e,r,1),--this.size,!0}s(JA,"listCacheDelete");var Q0=JA;function ZA(t){var e=this.__data__,r=id(e,t);return r<0?void 0:e[r][1]}s(ZA,"listCacheGet");var eL=ZA;function QA(t){return id(this.__data__,t)>-1}s(QA,"listCacheHas");var tL=QA;function eE(t,e){var r=this.__data__,n=id(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}s(eE,"listCacheSet");var rL=eE;function ea(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(ea,"ListCache");ea.prototype.clear=X0;ea.prototype.delete=Q0;ea.prototype.get=eL;ea.prototype.has=tL;ea.prototype.set=rL;var sd=ea,nL=Zn(mr,"Map"),Is=nL;function tE(){this.size=0,this.__data__={hash:new $v,map:new(Is||sd),string:new $v}}s(tE,"mapCacheClear");var aL=tE;function rE(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}s(rE,"isKeyable");var iL=rE;function nE(t,e){var r=t.__data__;return iL(e)?r[typeof e=="string"?"string":"hash"]:r.map}s(nE,"getMapData");var od=nE;function aE(t){var e=od(this,t).delete(t);return this.size-=e?1:0,e}s(aE,"mapCacheDelete");var sL=aE;function iE(t){return od(this,t).get(t)}s(iE,"mapCacheGet");var oL=iE;function sE(t){return od(this,t).has(t)}s(sE,"mapCacheHas");var lL=sE;function oE(t,e){var r=od(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}s(oE,"mapCacheSet");var uL=oE;function ta(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(ta,"MapCache");ta.prototype.clear=aL;ta.prototype.delete=sL;ta.prototype.get=oL;ta.prototype.has=lL;ta.prototype.set=uL;var ld=ta,cL="Expected a function";function ud(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(cL);var r=s(function(){var n=arguments,a=e?e.apply(this,n):n[0],i=r.cache;if(i.has(a))return i.get(a);var o=t.apply(this,n);return r.cache=i.set(a,o)||i,o},"memoized");return r.cache=new(ud.Cache||ld),r}s(ud,"memoize");ud.Cache=ld;var fL=ud,dL=500;function lE(t){var e=fL(t,function(n){return r.size===dL&&r.clear(),n}),r=e.cache;return e}s(lE,"memoizeCapped");var pL=lE,mL=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,hL=/\\(\\)?/g,yL=pL(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(mL,function(r,n,a,i){e.push(a?i.replace(hL,"$1"):n||r)}),e}),gL=yL;function uE(t){return t==null?"":zk(t)}s(uE,"toString");var vL=uE;function cE(t,e){return ie(t)?t:Ny(t,e)?[t]:gL(vL(t))}s(cE,"castPath");var cd=cE,TL=1/0;function fE(t){if(typeof t=="string"||Qf(t))return t;var e=t+"";return e=="0"&&1/t==-TL?"-0":e}s(fE,"toKey");var Xu=fE;function dE(t,e){e=cd(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[Xu(e[r++])];return r&&r==n?t:void 0}s(dE,"baseGet");var Py=dE;function pE(t,e,r){var n=t==null?void 0:Py(t,e);return n===void 0?r:n}s(pE,"get");var $L=pE;function mE(t,e){for(var r=-1,n=e.length,a=t.length;++r<n;)t[a+r]=e[r];return t}s(mE,"arrayPush");var ky=mE,Rv=Ft?Ft.isConcatSpreadable:void 0;function hE(t){return ie(t)||nd(t)||!!(Rv&&t&&t[Rv])}s(hE,"isFlattenable");var RL=hE;function Oy(t,e,r,n,a){var i=-1,o=t.length;for(r||(r=RL),a||(a=[]);++i<o;){var u=t[i];e>0&&r(u)?e>1?Oy(u,e-1,r,n,a):ky(a,u):n||(a[a.length]=u)}return a}s(Oy,"baseFlatten");var Ly=Oy;function yE(t){var e=t==null?0:t.length;return e?Ly(t,1):[]}s(yE,"flatten");var Ht=yE,AL=xA(Object.getPrototypeOf,Object),gE=AL;function vE(t,e,r){var n=-1,a=t.length;e<0&&(e=-e>a?0:a+e),r=r>a?a:r,r<0&&(r+=a),a=e>r?0:r-e>>>0,e>>>=0;for(var i=Array(a);++n<a;)i[n]=t[n+e];return i}s(vE,"baseSlice");var TE=vE;function $E(t,e,r,n){var a=-1,i=t==null?0:t.length;for(n&&i&&(r=t[++a]);++a<i;)r=e(r,t[a],a,t);return r}s($E,"arrayReduce");var EL=$E;function RE(){this.__data__=new sd,this.size=0}s(RE,"stackClear");var CL=RE;function AE(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}s(AE,"stackDelete");var bL=AE;function EE(t){return this.__data__.get(t)}s(EE,"stackGet");var _L=EE;function CE(t){return this.__data__.has(t)}s(CE,"stackHas");var SL=CE,wL=200;function bE(t,e){var r=this.__data__;if(r instanceof sd){var n=r.__data__;if(!Is||n.length<wL-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new ld(n)}return r.set(t,e),this.size=r.size,this}s(bE,"stackSet");var IL=bE;function ra(t){var e=this.__data__=new sd(t);this.size=e.size}s(ra,"Stack");ra.prototype.clear=CL;ra.prototype.delete=bL;ra.prototype.get=_L;ra.prototype.has=SL;ra.prototype.set=IL;var vs=ra;function _E(t,e){return t&&Vu(e,Nt(e),t)}s(_E,"baseAssign");var NL=_E;function SE(t,e){return t&&Vu(e,ad(e),t)}s(SE,"baseAssignIn");var PL=SE,wE=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Av=wE&&typeof module=="object"&&module&&!module.nodeType&&module,kL=Av&&Av.exports===wE,Ev=kL?mr.Buffer:void 0,Cv=Ev?Ev.allocUnsafe:void 0;function IE(t,e){if(e)return t.slice();var r=t.length,n=Cv?Cv(r):new t.constructor(r);return t.copy(n),n}s(IE,"cloneBuffer");var OL=IE;function NE(t,e){for(var r=-1,n=t==null?0:t.length,a=0,i=[];++r<n;){var o=t[r];e(o,r,t)&&(i[a++]=o)}return i}s(NE,"arrayFilter");var Dy=NE;function PE(){return[]}s(PE,"stubArray");var kE=PE,LL=Object.prototype,DL=LL.propertyIsEnumerable,bv=Object.getOwnPropertySymbols,xL=bv?function(t){return t==null?[]:(t=Object(t),Dy(bv(t),function(e){return DL.call(t,e)}))}:kE,xy=xL;function OE(t,e){return Vu(t,xy(t),e)}s(OE,"copySymbols");var ML=OE,GL=Object.getOwnPropertySymbols,FL=GL?function(t){for(var e=[];t;)ky(e,xy(t)),t=gE(t);return e}:kE,LE=FL;function DE(t,e){return Vu(t,LE(t),e)}s(DE,"copySymbolsIn");var zL=DE;function xE(t,e,r){var n=e(t);return ie(t)?n:ky(n,r(t))}s(xE,"baseGetAllKeys");var ME=xE;function GE(t){return ME(t,Nt,xy)}s(GE,"getAllKeys");var bm=GE;function FE(t){return ME(t,ad,LE)}s(FE,"getAllKeysIn");var zE=FE,jL=Zn(mr,"DataView"),_m=jL,BL=Zn(mr,"Promise"),Sm=BL,UL=Zn(mr,"Set"),Ha=UL,_v="[object Map]",KL="[object Object]",Sv="[object Promise]",wv="[object Set]",Iv="[object WeakMap]",Nv="[object DataView]",WL=Jn(_m),qL=Jn(Is),VL=Jn(Sm),HL=Jn(Ha),YL=Jn(Cm),hn=rn;(_m&&hn(new _m(new ArrayBuffer(1)))!=Nv||Is&&hn(new Is)!=_v||Sm&&hn(Sm.resolve())!=Sv||Ha&&hn(new Ha)!=wv||Cm&&hn(new Cm)!=Iv)&&(hn=s(function(t){var e=rn(t),r=e==KL?t.constructor:void 0,n=r?Jn(r):"";if(n)switch(n){case WL:return Nv;case qL:return _v;case VL:return Sv;case HL:return wv;case YL:return Iv}return e},"getTag"));var ai=hn,XL=Object.prototype,JL=XL.hasOwnProperty;function jE(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&JL.call(t,"index")&&(r.index=t.index,r.input=t.input),r}s(jE,"initCloneArray");var ZL=jE,QL=mr.Uint8Array,mf=QL;function BE(t){var e=new t.constructor(t.byteLength);return new mf(e).set(new mf(t)),e}s(BE,"cloneArrayBuffer");var My=BE;function UE(t,e){var r=e?My(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}s(UE,"cloneDataView");var eD=UE,tD=/\w*$/;function KE(t){var e=new t.constructor(t.source,tD.exec(t));return e.lastIndex=t.lastIndex,e}s(KE,"cloneRegExp");var rD=KE,Pv=Ft?Ft.prototype:void 0,kv=Pv?Pv.valueOf:void 0;function WE(t){return kv?Object(kv.call(t)):{}}s(WE,"cloneSymbol");var nD=WE;function qE(t,e){var r=e?My(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}s(qE,"cloneTypedArray");var aD=qE,iD="[object Boolean]",sD="[object Date]",oD="[object Map]",lD="[object Number]",uD="[object RegExp]",cD="[object Set]",fD="[object String]",dD="[object Symbol]",pD="[object ArrayBuffer]",mD="[object DataView]",hD="[object Float32Array]",yD="[object Float64Array]",gD="[object Int8Array]",vD="[object Int16Array]",TD="[object Int32Array]",$D="[object Uint8Array]",RD="[object Uint8ClampedArray]",AD="[object Uint16Array]",ED="[object Uint32Array]";function VE(t,e,r){var n=t.constructor;switch(e){case pD:return My(t);case iD:case sD:return new n(+t);case mD:return eD(t,r);case hD:case yD:case gD:case vD:case TD:case $D:case RD:case AD:case ED:return aD(t,r);case oD:return new n;case lD:case fD:return new n(t);case uD:return rD(t);case cD:return new n;case dD:return nD(t)}}s(VE,"initCloneByTag");var CD=VE;function HE(t){return typeof t.constructor=="function"&&!Hu(t)?gO(gE(t)):{}}s(HE,"initCloneObject");var bD=HE,_D="[object Map]";function YE(t){return Xt(t)&&ai(t)==_D}s(YE,"baseIsMap");var SD=YE,Ov=Xr&&Xr.isMap,wD=Ov?Yu(Ov):SD,ID=wD,ND="[object Set]";function XE(t){return Xt(t)&&ai(t)==ND}s(XE,"baseIsSet");var PD=XE,Lv=Xr&&Xr.isSet,kD=Lv?Yu(Lv):PD,OD=kD,LD=1,DD=2,xD=4,JE="[object Arguments]",MD="[object Array]",GD="[object Boolean]",FD="[object Date]",zD="[object Error]",ZE="[object Function]",jD="[object GeneratorFunction]",BD="[object Map]",UD="[object Number]",QE="[object Object]",KD="[object RegExp]",WD="[object Set]",qD="[object String]",VD="[object Symbol]",HD="[object WeakMap]",YD="[object ArrayBuffer]",XD="[object DataView]",JD="[object Float32Array]",ZD="[object Float64Array]",QD="[object Int8Array]",ex="[object Int16Array]",tx="[object Int32Array]",rx="[object Uint8Array]",nx="[object Uint8ClampedArray]",ax="[object Uint16Array]",ix="[object Uint32Array]",$e={};$e[JE]=$e[MD]=$e[YD]=$e[XD]=$e[GD]=$e[FD]=$e[JD]=$e[ZD]=$e[QD]=$e[ex]=$e[tx]=$e[BD]=$e[UD]=$e[QE]=$e[KD]=$e[WD]=$e[qD]=$e[VD]=$e[rx]=$e[nx]=$e[ax]=$e[ix]=!0;$e[zD]=$e[ZE]=$e[HD]=!1;function Ts(t,e,r,n,a,i){var o,u=e&LD,l=e&DD,c=e&xD;if(r&&(o=a?r(t,n,a,i):r(t)),o!==void 0)return o;if(!zt(t))return t;var f=ie(t);if(f){if(o=ZL(t),!u)return TO(t,o)}else{var d=ai(t),p=d==ZE||d==jD;if(Ss(t))return OL(t,u);if(d==QE||d==JE||p&&!a){if(o=l||p?{}:bD(t),!u)return l?zL(t,PL(o,t)):ML(t,NL(o,t))}else{if(!$e[d])return a?t:{};o=CD(t,d,u)}}i||(i=new vs);var h=i.get(t);if(h)return h;i.set(t,o),OD(t)?t.forEach(function(E){o.add(Ts(E,e,r,E,t,i))}):ID(t)&&t.forEach(function(E,T){o.set(T,Ts(E,e,r,T,t,i))});var y=c?l?zE:bm:l?ad:Nt,v=f?void 0:y(t);return iA(v||t,function(E,T){v&&(T=E,E=t[T]),td(o,T,Ts(E,e,r,T,t,i))}),o}s(Ts,"baseClone");var sx=Ts,ox=4;function eC(t){return sx(t,ox)}s(eC,"clone");var at=eC;function tC(t){for(var e=-1,r=t==null?0:t.length,n=0,a=[];++e<r;){var i=t[e];i&&(a[n++]=i)}return a}s(tC,"compact");var Ju=tC,lx="__lodash_hash_undefined__";function rC(t){return this.__data__.set(t,lx),this}s(rC,"setCacheAdd");var ux=rC;function nC(t){return this.__data__.has(t)}s(nC,"setCacheHas");var cx=nC;function Ns(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new ld;++e<r;)this.add(t[e])}s(Ns,"SetCache");Ns.prototype.add=Ns.prototype.push=ux;Ns.prototype.has=cx;var Gy=Ns;function aC(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(aC,"arraySome");var iC=aC;function sC(t,e){return t.has(e)}s(sC,"cacheHas");var Fy=sC,fx=1,dx=2;function oC(t,e,r,n,a,i){var o=r&fx,u=t.length,l=e.length;if(u!=l&&!(o&&l>u))return!1;var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var d=-1,p=!0,h=r&dx?new Gy:void 0;for(i.set(t,e),i.set(e,t);++d<u;){var y=t[d],v=e[d];if(n)var E=o?n(v,y,d,e,t,i):n(y,v,d,t,e,i);if(E!==void 0){if(E)continue;p=!1;break}if(h){if(!iC(e,function(T,S){if(!Fy(h,S)&&(y===T||a(y,T,r,n,i)))return h.push(S)})){p=!1;break}}else if(!(y===v||a(y,v,r,n,i))){p=!1;break}}return i.delete(t),i.delete(e),p}s(oC,"equalArrays");var lC=oC;function uC(t){var e=-1,r=Array(t.size);return t.forEach(function(n,a){r[++e]=[a,n]}),r}s(uC,"mapToArray");var px=uC;function cC(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}s(cC,"setToArray");var zy=cC,mx=1,hx=2,yx="[object Boolean]",gx="[object Date]",vx="[object Error]",Tx="[object Map]",$x="[object Number]",Rx="[object RegExp]",Ax="[object Set]",Ex="[object String]",Cx="[object Symbol]",bx="[object ArrayBuffer]",_x="[object DataView]",Dv=Ft?Ft.prototype:void 0,Vd=Dv?Dv.valueOf:void 0;function fC(t,e,r,n,a,i,o){switch(r){case _x:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case bx:return!(t.byteLength!=e.byteLength||!i(new mf(t),new mf(e)));case yx:case gx:case $x:return qu(+t,+e);case vx:return t.name==e.name&&t.message==e.message;case Rx:case Ex:return t==e+"";case Tx:var u=px;case Ax:var l=n&mx;if(u||(u=zy),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;n|=hx,o.set(t,e);var f=lC(u(t),u(e),n,a,i,o);return o.delete(t),f;case Cx:if(Vd)return Vd.call(t)==Vd.call(e)}return!1}s(fC,"equalByTag");var Sx=fC,wx=1,Ix=Object.prototype,Nx=Ix.hasOwnProperty;function dC(t,e,r,n,a,i){var o=r&wx,u=bm(t),l=u.length,c=bm(e),f=c.length;if(l!=f&&!o)return!1;for(var d=l;d--;){var p=u[d];if(!(o?p in e:Nx.call(e,p)))return!1}var h=i.get(t),y=i.get(e);if(h&&y)return h==e&&y==t;var v=!0;i.set(t,e),i.set(e,t);for(var E=o;++d<l;){p=u[d];var T=t[p],S=e[p];if(n)var b=o?n(S,T,p,e,t,i):n(T,S,p,t,e,i);if(!(b===void 0?T===S||a(T,S,r,n,i):b)){v=!1;break}E||(E=p=="constructor")}if(v&&!E){var N=t.constructor,B=e.constructor;N!=B&&"constructor"in t&&"constructor"in e&&!(typeof N=="function"&&N instanceof N&&typeof B=="function"&&B instanceof B)&&(v=!1)}return i.delete(t),i.delete(e),v}s(dC,"equalObjects");var Px=dC,kx=1,xv="[object Arguments]",Mv="[object Array]",ic="[object Object]",Ox=Object.prototype,Gv=Ox.hasOwnProperty;function pC(t,e,r,n,a,i){var o=ie(t),u=ie(e),l=o?Mv:ai(t),c=u?Mv:ai(e);l=l==xv?ic:l,c=c==xv?ic:c;var f=l==ic,d=c==ic,p=l==c;if(p&&Ss(t)){if(!Ss(e))return!1;o=!0,f=!1}if(p&&!f)return i||(i=new vs),o||Iy(t)?lC(t,e,r,n,a,i):Sx(t,e,l,r,n,a,i);if(!(r&kx)){var h=f&&Gv.call(t,"__wrapped__"),y=d&&Gv.call(e,"__wrapped__");if(h||y){var v=h?t.value():t,E=y?e.value():e;return i||(i=new vs),a(v,E,r,n,i)}}return p?(i||(i=new vs),Px(t,e,r,n,a,i)):!1}s(pC,"baseIsEqualDeep");var Lx=pC;function jy(t,e,r,n,a){return t===e?!0:t==null||e==null||!Xt(t)&&!Xt(e)?t!==t&&e!==e:Lx(t,e,r,n,jy,a)}s(jy,"baseIsEqual");var mC=jy,Dx=1,xx=2;function hC(t,e,r,n){var a=r.length,i=a,o=!n;if(t==null)return!i;for(t=Object(t);a--;){var u=r[a];if(o&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++a<i;){u=r[a];var l=u[0],c=t[l],f=u[1];if(o&&u[2]){if(c===void 0&&!(l in t))return!1}else{var d=new vs;if(n)var p=n(c,f,l,t,e,d);if(!(p===void 0?mC(f,c,Dx|xx,n,d):p))return!1}}return!0}s(hC,"baseIsMatch");var Mx=hC;function yC(t){return t===t&&!zt(t)}s(yC,"isStrictComparable");var gC=yC;function vC(t){for(var e=Nt(t),r=e.length;r--;){var n=e[r],a=t[n];e[r]=[n,a,gC(a)]}return e}s(vC,"getMatchData");var Gx=vC;function TC(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}s(TC,"matchesStrictComparable");var $C=TC;function RC(t){var e=Gx(t);return e.length==1&&e[0][2]?$C(e[0][0],e[0][1]):function(r){return r===t||Mx(r,t,e)}}s(RC,"baseMatches");var Fx=RC;function AC(t,e){return t!=null&&e in Object(t)}s(AC,"baseHasIn");var zx=AC;function EC(t,e,r){e=cd(e,t);for(var n=-1,a=e.length,i=!1;++n<a;){var o=Xu(e[n]);if(!(i=t!=null&&r(t,o)))break;t=t[o]}return i||++n!=a?i:(a=t==null?0:t.length,!!a&&wy(a)&&ed(o,a)&&(ie(t)||nd(t)))}s(EC,"hasPath");var CC=EC;function bC(t,e){return t!=null&&CC(t,e,zx)}s(bC,"hasIn");var jx=bC,Bx=1,Ux=2;function _C(t,e){return Ny(t)&&gC(e)?$C(Xu(t),e):function(r){var n=$L(r,t);return n===void 0&&n===e?jx(r,t):mC(e,n,Bx|Ux)}}s(_C,"baseMatchesProperty");var Kx=_C;function SC(t){return function(e){return e==null?void 0:e[t]}}s(SC,"baseProperty");var Wx=SC;function wC(t){return function(e){return Py(e,t)}}s(wC,"basePropertyDeep");var qx=wC;function IC(t){return Ny(t)?Wx(Xu(t)):qx(t)}s(IC,"property");var Vx=IC;function NC(t){return typeof t=="function"?t:t==null?Wu:typeof t=="object"?ie(t)?Kx(t[0],t[1]):Fx(t):Vx(t)}s(NC,"baseIteratee");var yr=NC;function PC(t,e,r,n){for(var a=-1,i=t==null?0:t.length;++a<i;){var o=t[a];e(n,o,r(o),t)}return n}s(PC,"arrayAggregator");var Hx=PC;function kC(t){return function(e,r,n){for(var a=-1,i=Object(e),o=n(e),u=o.length;u--;){var l=o[t?u:++a];if(r(i[l],l,i)===!1)break}return e}}s(kC,"createBaseFor");var Yx=kC,Xx=Yx(),Jx=Xx;function OC(t,e){return t&&Jx(t,e,Nt)}s(OC,"baseForOwn");var Zx=OC;function LC(t,e){return function(r,n){if(r==null)return r;if(!hr(r))return t(r,n);for(var a=r.length,i=e?a:-1,o=Object(r);(e?i--:++i<a)&&n(o[i],i,o)!==!1;);return r}}s(LC,"createBaseEach");var Qx=LC,eM=Qx(Zx),na=eM;function DC(t,e,r,n){return na(t,function(a,i,o){e(n,a,r(a),o)}),n}s(DC,"baseAggregator");var tM=DC;function xC(t,e){return function(r,n){var a=ie(r)?Hx:tM,i=e?e():{};return a(r,t,yr(n),i)}}s(xC,"createAggregator");var rM=xC,MC=Object.prototype,nM=MC.hasOwnProperty,aM=Sy(function(t,e){t=Object(t);var r=-1,n=e.length,a=n>2?e[2]:void 0;for(a&&rd(e[0],e[1],a)&&(n=1);++r<n;)for(var i=e[r],o=ad(i),u=-1,l=o.length;++u<l;){var c=o[u],f=t[c];(f===void 0||qu(f,MC[c])&&!nM.call(t,c))&&(t[c]=i[c])}return t}),By=aM;function GC(t){return Xt(t)&&hr(t)}s(GC,"isArrayLikeObject");var Fv=GC;function FC(t,e,r){for(var n=-1,a=t==null?0:t.length;++n<a;)if(r(e,t[n]))return!0;return!1}s(FC,"arrayIncludesWith");var zC=FC,iM=200;function jC(t,e,r,n){var a=-1,i=dA,o=!0,u=t.length,l=[],c=e.length;if(!u)return l;r&&(e=Uu(e,Yu(r))),n?(i=zC,o=!1):e.length>=iM&&(i=Fy,o=!1,e=new Gy(e));e:for(;++a<u;){var f=t[a],d=r==null?f:r(f);if(f=n||f!==0?f:0,o&&d===d){for(var p=c;p--;)if(e[p]===d)continue e;l.push(f)}else i(e,d,n)||l.push(f)}return l}s(jC,"baseDifference");var sM=jC,oM=Sy(function(t,e){return Fv(t)?sM(t,Ly(e,1,Fv,!0)):[]}),fd=oM;function BC(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}s(BC,"last");var jn=BC;function UC(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:Ku(e),TE(t,e<0?0:e,n)):[]}s(UC,"drop");var rt=UC;function KC(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:Ku(e),e=n-e,TE(t,0,e<0?0:e)):[]}s(KC,"dropRight");var Ps=KC;function WC(t){return typeof t=="function"?t:Wu}s(WC,"castFunction");var lM=WC;function qC(t,e){var r=ie(t)?iA:na;return r(t,lM(e))}s(qC,"forEach");var q=qC;function VC(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(VC,"arrayEvery");var uM=VC;function HC(t,e){var r=!0;return na(t,function(n,a,i){return r=!!e(n,a,i),r}),r}s(HC,"baseEvery");var cM=HC;function YC(t,e,r){var n=ie(t)?uM:cM;return r&&rd(t,e,r)&&(e=void 0),n(t,yr(e))}s(YC,"every");var Yt=YC;function XC(t,e){var r=[];return na(t,function(n,a,i){e(n,a,i)&&r.push(n)}),r}s(XC,"baseFilter");var JC=XC;function ZC(t,e){var r=ie(t)?Dy:JC;return r(t,yr(e))}s(ZC,"filter");var Bt=ZC;function QC(t){return function(e,r,n){var a=Object(e);if(!hr(e)){var i=yr(r);e=Nt(e),r=s(function(u){return i(a[u],u,a)},"predicate")}var o=t(e,r,n);return o>-1?a[i?e[o]:o]:void 0}}s(QC,"createFind");var fM=QC,dM=Math.max;function eb(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var a=r==null?0:Ku(r);return a<0&&(a=dM(n+a,0)),oA(t,yr(e),a)}s(eb,"findIndex");var pM=eb,mM=fM(pM),ii=mM;function tb(t){return t&&t.length?t[0]:void 0}s(tb,"head");var Jt=tb;function rb(t,e){var r=-1,n=hr(t)?Array(t.length):[];return na(t,function(a,i,o){n[++r]=e(a,i,o)}),n}s(rb,"baseMap");var hM=rb;function nb(t,e){var r=ie(t)?Uu:hM;return r(t,yr(e))}s(nb,"map");var j=nb;function ab(t,e){return Ly(j(t,e),1)}s(ab,"flatMap");var Gt=ab,yM=Object.prototype,gM=yM.hasOwnProperty,vM=rM(function(t,e,r){gM.call(t,r)?t[r].push(e):_y(t,r,[e])}),TM=vM,$M=Object.prototype,RM=$M.hasOwnProperty;function ib(t,e){return t!=null&&RM.call(t,e)}s(ib,"baseHas");var AM=ib;function sb(t,e){return t!=null&&CC(t,e,AM)}s(sb,"has");var K=sb,EM="[object String]";function ob(t){return typeof t=="string"||!ie(t)&&Xt(t)&&rn(t)==EM}s(ob,"isString");var Et=ob;function lb(t,e){return Uu(e,function(r){return t[r]})}s(lb,"baseValues");var CM=lb;function ub(t){return t==null?[]:CM(t,Nt(t))}s(ub,"values");var Ke=ub,bM=Math.max;function cb(t,e,r,n){t=hr(t)?t:Ke(t),r=r&&!n?Ku(r):0;var a=t.length;return r<0&&(r=bM(a+r,0)),Et(t)?r<=a&&t.indexOf(e,r)>-1:!!a&&by(t,e,r)>-1}s(cb,"includes");var vt=cb,_M=Math.max;function fb(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var a=r==null?0:Ku(r);return a<0&&(a=_M(n+a,0)),by(t,e,a)}s(fb,"indexOf");var zv=fb,SM="[object Map]",wM="[object Set]",IM=Object.prototype,NM=IM.hasOwnProperty;function db(t){if(t==null)return!0;if(hr(t)&&(ie(t)||typeof t=="string"||typeof t.splice=="function"||Ss(t)||Iy(t)||nd(t)))return!t.length;var e=ai(t);if(e==SM||e==wM)return!t.size;if(Hu(t))return!GA(t).length;for(var r in t)if(NM.call(t,r))return!1;return!0}s(db,"isEmpty");var Ae=db,PM="[object RegExp]";function pb(t){return Xt(t)&&rn(t)==PM}s(pb,"baseIsRegExp");var kM=pb,jv=Xr&&Xr.isRegExp,OM=jv?Yu(jv):kM,Pr=OM;function mb(t){return t===void 0}s(mb,"isUndefined");var kr=mb,LM="Expected a function";function hb(t){if(typeof t!="function")throw new TypeError(LM);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(hb,"negate");var DM=hb;function yb(t,e,r,n){if(!zt(t))return t;e=cd(e,t);for(var a=-1,i=e.length,o=i-1,u=t;u!=null&&++a<i;){var l=Xu(e[a]),c=r;if(l==="__proto__"||l==="constructor"||l==="prototype")return t;if(a!=o){var f=u[l];c=n?n(f,l,u):void 0,c===void 0&&(c=zt(f)?f:ed(e[a+1])?[]:{})}td(u,l,c),u=u[l]}return t}s(yb,"baseSet");var xM=yb;function gb(t,e,r){for(var n=-1,a=e.length,i={};++n<a;){var o=e[n],u=Py(t,o);r(u,o)&&xM(i,cd(o,t),u)}return i}s(gb,"basePickBy");var MM=gb;function vb(t,e){if(t==null)return{};var r=Uu(zE(t),function(n){return[n]});return e=yr(e),MM(t,r,function(n,a){return e(n,a[0])})}s(vb,"pickBy");var Zt=vb;function Tb(t,e,r,n,a){return a(t,function(i,o,u){r=n?(n=!1,i):e(r,i,o,u)}),r}s(Tb,"baseReduce");var GM=Tb;function $b(t,e,r){var n=ie(t)?EL:GM,a=arguments.length<3;return n(t,yr(e),r,a,na)}s($b,"reduce");var kt=$b;function Rb(t,e){var r=ie(t)?Dy:JC;return r(t,DM(yr(e)))}s(Rb,"reject");var dd=Rb;function Ab(t,e){var r;return na(t,function(n,a,i){return r=e(n,a,i),!r}),!!r}s(Ab,"baseSome");var FM=Ab;function Eb(t,e,r){var n=ie(t)?iC:FM;return r&&rd(t,e,r)&&(e=void 0),n(t,yr(e))}s(Eb,"some");var Cb=Eb,zM=1/0,jM=Ha&&1/zy(new Ha([,-0]))[1]==zM?function(t){return new Ha(t)}:qe,BM=jM,UM=200;function bb(t,e,r){var n=-1,a=dA,i=t.length,o=!0,u=[],l=u;if(r)o=!1,a=zC;else if(i>=UM){var c=e?null:BM(t);if(c)return zy(c);o=!1,a=Fy,l=new Gy}else l=e?[]:u;e:for(;++n<i;){var f=t[n],d=e?e(f):f;if(f=r||f!==0?f:0,o&&d===d){for(var p=l.length;p--;)if(l[p]===d)continue e;e&&l.push(d),u.push(f)}else a(l,d,r)||(l!==u&&l.push(d),u.push(f))}return u}s(bb,"baseUniq");var KM=bb;function _b(t){return t&&t.length?KM(t):[]}s(_b,"uniq");var Uy=_b;function hf(t){console&&console.error&&console.error(`Error: ${t}`)}s(hf,"PRINT_ERROR");function Ky(t){console&&console.warn&&console.warn(`Warning: ${t}`)}s(Ky,"PRINT_WARNING");function Wy(t){const e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}s(Wy,"timer");function qy(t){function e(){}s(e,"FakeConstructor"),e.prototype=t;const r=new e;function n(){return typeof r.bar}return s(n,"fakeAccess"),n(),n(),t}s(qy,"toFastProperties");function Sb(t){return wb(t)?t.LABEL:t.name}s(Sb,"tokenLabel");function wb(t){return Et(t.LABEL)&&t.LABEL!==""}s(wb,"hasTokenLabel");var Hs,gr=(Hs=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),q(this.definition,r=>{r.accept(e)})}},s(Hs,"AbstractProduction"),Hs),Ys,ht=(Ys=class extends gr{constructor(e){super([]),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},s(Ys,"NonTerminal"),Ys),Xs,pi=(Xs=class extends gr{constructor(e){super(e.definition),this.orgText="",Pt(this,Zt(e,r=>r!==void 0))}},s(Xs,"Rule"),Xs),Js,Ct=(Js=class extends gr{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Pt(this,Zt(e,r=>r!==void 0))}},s(Js,"Alternative"),Js),Zs,nt=(Zs=class extends gr{constructor(e){super(e.definition),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}},s(Zs,"Option"),Zs),Qs,Ot=(Qs=class extends gr{constructor(e){super(e.definition),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}},s(Qs,"RepetitionMandatory"),Qs),eo,Lt=(eo=class extends gr{constructor(e){super(e.definition),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}},s(eo,"RepetitionMandatoryWithSeparator"),eo),to,Le=(to=class extends gr{constructor(e){super(e.definition),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}},s(to,"Repetition"),to),ro,bt=(ro=class extends gr{constructor(e){super(e.definition),this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}},s(ro,"RepetitionWithSeparator"),ro),no,_t=(no=class extends gr{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,Pt(this,Zt(e,r=>r!==void 0))}},s(no,"Alternation"),no),ao,Se=(ao=class{constructor(e){this.idx=1,Pt(this,Zt(e,r=>r!==void 0))}accept(e){e.visit(this)}},s(ao,"Terminal"),ao);function Ib(t){return j(t,$s)}s(Ib,"serializeGrammar");function $s(t){function e(r){return j(r,$s)}if(s(e,"convertDefinition"),t instanceof ht){const r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return Et(t.label)&&(r.label=t.label),r}else{if(t instanceof Ct)return{type:"Alternative",definition:e(t.definition)};if(t instanceof nt)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Ot)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Lt)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:$s(new Se({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof bt)return{type:"RepetitionWithSeparator",idx:t.idx,separator:$s(new Se({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Le)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof _t)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Se){const r={type:"Terminal",name:t.terminalType.name,label:Sb(t.terminalType),idx:t.idx};Et(t.label)&&(r.terminalLabel=t.label);const n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Pr(n)?n.source:n),r}else{if(t instanceof pi)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}s($s,"serializeProduction");var io,mi=(io=class{visit(e){const r=e;switch(r.constructor){case ht:return this.visitNonTerminal(r);case Ct:return this.visitAlternative(r);case nt:return this.visitOption(r);case Ot:return this.visitRepetitionMandatory(r);case Lt:return this.visitRepetitionMandatoryWithSeparator(r);case bt:return this.visitRepetitionWithSeparator(r);case Le:return this.visitRepetition(r);case _t:return this.visitAlternation(r);case Se:return this.visitTerminal(r);case pi: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(io,"GAstVisitor"),io);function Nb(t){return t instanceof Ct||t instanceof nt||t instanceof Le||t instanceof Ot||t instanceof Lt||t instanceof bt||t instanceof Se||t instanceof pi}s(Nb,"isSequenceProd");function ks(t,e=[]){return t instanceof nt||t instanceof Le||t instanceof bt?!0:t instanceof _t?Cb(t.definition,n=>ks(n,e)):t instanceof ht&&vt(e,t)?!1:t instanceof gr?(t instanceof ht&&e.push(t),Yt(t.definition,n=>ks(n,e))):!1}s(ks,"isOptionalProd");function Pb(t){return t instanceof _t}s(Pb,"isBranchingProd");function Kt(t){if(t instanceof ht)return"SUBRULE";if(t instanceof nt)return"OPTION";if(t instanceof _t)return"OR";if(t instanceof Ot)return"AT_LEAST_ONE";if(t instanceof Lt)return"AT_LEAST_ONE_SEP";if(t instanceof bt)return"MANY_SEP";if(t instanceof Le)return"MANY";if(t instanceof Se)return"CONSUME";throw Error("non exhaustive match")}s(Kt,"getProductionDslName");var so,pd=(so=class{walk(e,r=[]){q(e.definition,(n,a)=>{const i=rt(e.definition,a+1);if(n instanceof ht)this.walkProdRef(n,i,r);else if(n instanceof Se)this.walkTerminal(n,i,r);else if(n instanceof Ct)this.walkFlat(n,i,r);else if(n instanceof nt)this.walkOption(n,i,r);else if(n instanceof Ot)this.walkAtLeastOne(n,i,r);else if(n instanceof Lt)this.walkAtLeastOneSep(n,i,r);else if(n instanceof bt)this.walkManySep(n,i,r);else if(n instanceof Le)this.walkMany(n,i,r);else if(n instanceof _t)this.walkOr(n,i,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){const a=r.concat(n);this.walk(e,a)}walkOption(e,r,n){const a=r.concat(n);this.walk(e,a)}walkAtLeastOne(e,r,n){const a=[new nt({definition:e.definition})].concat(r,n);this.walk(e,a)}walkAtLeastOneSep(e,r,n){const a=wm(e,r,n);this.walk(e,a)}walkMany(e,r,n){const a=[new nt({definition:e.definition})].concat(r,n);this.walk(e,a)}walkManySep(e,r,n){const a=wm(e,r,n);this.walk(e,a)}walkOr(e,r,n){const a=r.concat(n);q(e.definition,i=>{const o=new Ct({definition:[i]});this.walk(o,a)})}},s(so,"RestWalker"),so);function wm(t,e,r){return[new nt({definition:[new Se({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}s(wm,"restForRepetitionWithSeparator");function hi(t){if(t instanceof ht)return hi(t.referencedRule);if(t instanceof Se)return Lb(t);if(Nb(t))return kb(t);if(Pb(t))return Ob(t);throw Error("non exhaustive match")}s(hi,"first");function kb(t){let e=[];const r=t.definition;let n=0,a=r.length>n,i,o=!0;for(;a&&o;)i=r[n],o=ks(i),e=e.concat(hi(i)),n=n+1,a=r.length>n;return Uy(e)}s(kb,"firstForSequence");function Ob(t){const e=j(t.definition,r=>hi(r));return Uy(Ht(e))}s(Ob,"firstForBranching");function Lb(t){return[t.terminalType]}s(Lb,"firstForTerminal");var Db="_~IN~_",oo,WM=(oo=class extends pd{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){const a=Mb(e.referencedRule,e.idx)+this.topProd.name,i=r.concat(n),o=new Ct({definition:i}),u=hi(o);this.follows[a]=u}},s(oo,"ResyncFollowsWalker"),oo);function xb(t){const e={};return q(t,r=>{const n=new WM(r).startWalking();Pt(e,n)}),e}s(xb,"computeAllProdsFollows");function Mb(t,e){return t.name+e+Db}s(Mb,"buildBetweenProdsFollowPrefix");var Pc={},qM=new hR;function Zu(t){const e=t.toString();if(Pc.hasOwnProperty(e))return Pc[e];{const r=qM.pattern(e);return Pc[e]=r,r}}s(Zu,"getRegExpAst");function Gb(){Pc={}}s(Gb,"clearRegExpParserCache");var Fb="Complement Sets are not supported for first char optimization",yf=`Unable to use "first char" lexer optimizations:
47
+ `;function zb(t,e=!1){try{const r=Zu(t);return gf(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Fb)e&&Ky(`${yf} 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.`),hf(`${yf}
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(zb,"getOptimizedStartCodesIndices");function gf(t,e,r){switch(t.type){case"Disjunction":for(let a=0;a<t.value.length;a++)gf(t.value[a],e,r);break;case"Alternative":const n=t.value;for(let a=0;a<n.length;a++){const i=n[a];switch(i.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}const o=i;switch(o.type){case"Character":ns(o.value,e,r);break;case"Set":if(o.complement===!0)throw Error(Fb);q(o.value,l=>{if(typeof l=="number")ns(l,e,r);else{const c=l;if(r===!0)for(let f=c.from;f<=c.to;f++)ns(f,e,r);else{for(let f=c.from;f<=c.to&&f<is;f++)ns(f,e,r);if(c.to>=is){const f=c.from>=is?c.from:is,d=c.to,p=Or(f),h=Or(d);for(let y=p;y<=h;y++)e[y]=y}}}});break;case"Group":gf(o.value,e,r);break;default:throw Error("Non Exhaustive Match")}const u=o.quantifier!==void 0&&o.quantifier.atLeast===0;if(o.type==="Group"&&vf(o)===!1||o.type!=="Group"&&u===!1)break}break;default:throw Error("non exhaustive match!")}return Ke(e)}s(gf,"firstCharOptimizedIndices");function ns(t,e,r){const n=Or(t);e[n]=n,r===!0&&jb(t,e)}s(ns,"addOptimizedIdxToResult");function jb(t,e){const r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){const a=Or(n.charCodeAt(0));e[a]=a}else{const a=r.toLowerCase();if(a!==r){const i=Or(a.charCodeAt(0));e[i]=i}}}s(jb,"handleIgnoreCase");function Im(t,e){return ii(t.value,r=>{if(typeof r=="number")return vt(e,r);{const n=r;return ii(e,a=>n.from<=a&&a<=n.to)!==void 0}})}s(Im,"findCode");function vf(t){const e=t.quantifier;return e&&e.atLeast===0?!0:t.value?ie(t.value)?Yt(t.value,vf):vf(t.value):!1}s(vf,"isWholeOptional");var lo,VM=(lo=class extends qf{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){vt(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Im(e,this.targetCharCodes)===void 0&&(this.found=!0):Im(e,this.targetCharCodes)!==void 0&&(this.found=!0)}},s(lo,"CharCodeFinder"),lo);function md(t,e){if(e instanceof RegExp){const r=Zu(e),n=new VM(t);return n.visit(r),n.found}else return ii(e,r=>vt(t,r.charCodeAt(0)))!==void 0}s(md,"canMatchCharCode");var Bn="PATTERN",as="defaultMode",sc="modes";function Bb(t,e){e=By(e,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
56
+ `],tracer:s((S,b)=>b(),"tracer")});const r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{u_()});let n;r("Reject Lexer.NA",()=>{n=dd(t,S=>S[Bn]===pt.NA)});let a=!1,i;r("Transform Patterns",()=>{a=!1,i=j(n,S=>{const b=S[Bn];if(Pr(b)){const N=b.source;return N.length===1&&N!=="^"&&N!=="$"&&N!=="."&&!b.ignoreCase?N:N.length===2&&N[0]==="\\"&&!vt(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],N[1])?N[1]:Nm(b)}else{if(Gr(b))return a=!0,{exec:b};if(typeof b=="object")return a=!0,b;if(typeof b=="string"){if(b.length===1)return b;{const N=b.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),B=new RegExp(N);return Nm(B)}}else throw Error("non exhaustive match")}})});let o,u,l,c,f;r("misc mapping",()=>{o=j(n,S=>S.tokenTypeIdx),u=j(n,S=>{const b=S.GROUP;if(b!==pt.SKIPPED){if(Et(b))return b;if(kr(b))return!1;throw Error("non exhaustive match")}}),l=j(n,S=>{const b=S.LONGER_ALT;if(b)return ie(b)?j(b,B=>zv(n,B)):[zv(n,b)]}),c=j(n,S=>S.PUSH_MODE),f=j(n,S=>K(S,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{const S=Yy(e.lineTerminatorCharacters);d=j(n,b=>!1),e.positionTracking!=="onlyOffset"&&(d=j(n,b=>K(b,"LINE_BREAKS")?!!b.LINE_BREAKS:Hy(b,S)===!1&&md(S,b.PATTERN)))});let p,h,y,v;r("Misc Mapping #2",()=>{p=j(n,Vy),h=j(i,o_),y=kt(n,(S,b)=>{const N=b.GROUP;return Et(N)&&N!==pt.SKIPPED&&(S[N]=[]),S},{}),v=j(i,(S,b)=>({pattern:i[b],longerAlt:l[b],canLineTerminator:d[b],isCustom:p[b],short:h[b],group:u[b],push:c[b],pop:f[b],tokenTypeIdx:o[b],tokenType:n[b]}))});let E=!0,T=[];return e.safeMode||r("First Char Optimization",()=>{T=kt(n,(S,b,N)=>{if(typeof b.PATTERN=="string"){const B=b.PATTERN.charCodeAt(0),ne=Or(B);kc(S,ne,v[N])}else if(ie(b.START_CHARS_HINT)){let B;q(b.START_CHARS_HINT,ne=>{const J=typeof ne=="string"?ne.charCodeAt(0):ne,me=Or(J);B!==me&&(B=me,kc(S,me,v[N]))})}else if(Pr(b.PATTERN))if(b.PATTERN.unicode)E=!1,e.ensureOptimizations&&hf(`${yf} Unable to analyze < ${b.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{const B=zb(b.PATTERN,e.ensureOptimizations);Ae(B)&&(E=!1),q(B,ne=>{kc(S,ne,v[N])})}else e.ensureOptimizations&&hf(`${yf} TokenType: <${b.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`),E=!1;return S},[])}),{emptyGroups:y,patternIdxToConfig:v,charCodeToPatternIdxToConfig:T,hasCustom:a,canBeOptimized:E}}s(Bb,"analyzeTokenTypes");function Ub(t,e){let r=[];const n=Wb(t);r=r.concat(n.errors);const a=qb(n.valid),i=a.valid;return r=r.concat(a.errors),r=r.concat(Kb(i)),r=r.concat(Zb(i)),r=r.concat(Qb(i,e)),r=r.concat(e_(i)),r}s(Ub,"validatePatterns");function Kb(t){let e=[];const r=Bt(t,n=>Pr(n[Bn]));return e=e.concat(Vb(r)),e=e.concat(Yb(r)),e=e.concat(Xb(r)),e=e.concat(Jb(r)),e=e.concat(Hb(r)),e}s(Kb,"validateRegExpPattern");function Wb(t){const e=Bt(t,a=>!K(a,Bn)),r=j(e,a=>({message:"Token Type: ->"+a.name+"<- missing static 'PATTERN' property",type:De.MISSING_PATTERN,tokenTypes:[a]})),n=fd(t,e);return{errors:r,valid:n}}s(Wb,"findMissingPatterns");function qb(t){const e=Bt(t,a=>{const i=a[Bn];return!Pr(i)&&!Gr(i)&&!K(i,"exec")&&!Et(i)}),r=j(e,a=>({message:"Token Type: ->"+a.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:De.INVALID_PATTERN,tokenTypes:[a]})),n=fd(t,e);return{errors:r,valid:n}}s(qb,"findInvalidPatterns");var HM=/[^\\][$]/;function Vb(t){const a=class a extends qf{constructor(){super(...arguments),this.found=!1}visitEndAnchor(o){this.found=!0}};s(a,"EndAnchorFinder");let e=a;const r=Bt(t,i=>{const o=i.PATTERN;try{const u=Zu(o),l=new e;return l.visit(u),l.found}catch{return HM.test(o.source)}});return j(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:De.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}s(Vb,"findEndOfInputAnchor");function Hb(t){const e=Bt(t,n=>n.PATTERN.test(""));return j(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:De.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}s(Hb,"findEmptyMatchRegExps");var YM=/[^\\[][\^]|^\^/;function Yb(t){const a=class a extends qf{constructor(){super(...arguments),this.found=!1}visitStartAnchor(o){this.found=!0}};s(a,"StartAnchorFinder");let e=a;const r=Bt(t,i=>{const o=i.PATTERN;try{const u=Zu(o),l=new e;return l.visit(u),l.found}catch{return YM.test(o.source)}});return j(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:De.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}s(Yb,"findStartOfInputAnchor");function Xb(t){const e=Bt(t,n=>{const a=n[Bn];return a instanceof RegExp&&(a.multiline||a.global)});return j(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:De.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}s(Xb,"findUnsupportedFlags");function Jb(t){const e=[];let r=j(t,i=>kt(t,(o,u)=>(i.PATTERN.source===u.PATTERN.source&&!vt(e,u)&&u.PATTERN!==pt.NA&&(e.push(u),o.push(u)),o),[]));r=Ju(r);const n=Bt(r,i=>i.length>1);return j(n,i=>{const o=j(i,l=>l.name);return{message:`The same RegExp pattern ->${Jt(i).PATTERN}<-has been used in all of the following Token Types: ${o.join(", ")} <-`,type:De.DUPLICATE_PATTERNS_FOUND,tokenTypes:i}})}s(Jb,"findDuplicatePatterns");function Zb(t){const e=Bt(t,n=>{if(!K(n,"GROUP"))return!1;const a=n.GROUP;return a!==pt.SKIPPED&&a!==pt.NA&&!Et(a)});return j(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:De.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}s(Zb,"findInvalidGroupType");function Qb(t,e){const r=Bt(t,a=>a.PUSH_MODE!==void 0&&!vt(e,a.PUSH_MODE));return j(r,a=>({message:`Token Type: ->${a.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${a.PUSH_MODE}<-which does not exist`,type:De.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[a]}))}s(Qb,"findModesThatDoNotExist");function e_(t){const e=[],r=kt(t,(n,a,i)=>{const o=a.PATTERN;return o===pt.NA||(Et(o)?n.push({str:o,idx:i,tokenType:a}):Pr(o)&&r_(o)&&n.push({str:o.source,idx:i,tokenType:a})),n},[]);return q(t,(n,a)=>{q(r,({str:i,idx:o,tokenType:u})=>{if(a<o&&t_(i,n.PATTERN)){const l=`Token: ->${u.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:l,type:De.UNREACHABLE_PATTERN,tokenTypes:[n,u]})}})}),e}s(e_,"findUnreachablePatterns");function t_(t,e){if(Pr(e)){if(n_(e))return!1;const r=e.exec(t);return r!==null&&r.index===0}else{if(Gr(e))return e(t,0,[],{});if(K(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}s(t_,"tryToMatchStrToPattern");function r_(t){return ii([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}s(r_,"noMetaChar");function n_(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(t.source)}s(n_,"usesLookAheadOrBehind");function Nm(t){const e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}s(Nm,"addStickyFlag");function a_(t,e,r){const n=[];return K(t,as)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+as+`> property in its definition
68
+ `,type:De.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),K(t,sc)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+sc+`> property in its definition
69
+ `,type:De.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),K(t,sc)&&K(t,as)&&!K(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${as}: <${t.defaultMode}>which does not exist
70
+ `,type:De.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),K(t,sc)&&q(t.modes,(a,i)=>{q(a,(o,u)=>{if(kr(o))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${i}> at index: <${u}>
71
+ `,type:De.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(K(o,"LONGER_ALT")){const l=ie(o.LONGER_ALT)?o.LONGER_ALT:[o.LONGER_ALT];q(l,c=>{!kr(c)&&!vt(a,c)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${c.name}> on token <${o.name}> outside of mode <${i}>
72
+ `,type:De.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}s(a_,"performRuntimeChecks");function i_(t,e,r){const n=[];let a=!1;const i=Ju(Ht(Ke(t.modes))),o=dd(i,l=>l[Bn]===pt.NA),u=Yy(r);return e&&q(o,l=>{const c=Hy(l,u);if(c!==!1){const d={message:l_(l,c),type:c.issue,tokenType:l};n.push(d)}else K(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(a=!0):md(u,l.PATTERN)&&(a=!0)}),e&&!a&&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:De.NO_LINE_BREAKS_FLAGS}),n}s(i_,"performWarningRuntimeChecks");function s_(t){const e={},r=Nt(t);return q(r,n=>{const a=t[n];if(ie(a))e[n]=[];else throw Error("non exhaustive match")}),e}s(s_,"cloneEmptyGroups");function Vy(t){const e=t.PATTERN;if(Pr(e))return!1;if(Gr(e))return!0;if(K(e,"exec"))return!0;if(Et(e))return!1;throw Error("non exhaustive match")}s(Vy,"isCustomPattern");function o_(t){return Et(t)&&t.length===1?t.charCodeAt(0):!1}s(o_,"isShortPattern");var XM={test:s(function(t){const e=t.length;for(let r=this.lastIndex;r<e;r++){const n=t.charCodeAt(r);if(n===10)return this.lastIndex=r+1,!0;if(n===13)return t.charCodeAt(r+1)===10?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function Hy(t,e){if(K(t,"LINE_BREAKS"))return!1;if(Pr(t.PATTERN)){try{md(e,t.PATTERN)}catch(r){return{issue:De.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(Et(t.PATTERN))return!1;if(Vy(t))return{issue:De.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}s(Hy,"checkLineBreaksIssues");function l_(t,e){if(e.issue===De.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===De.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(l_,"buildLineBreakIssueMessage");function Yy(t){return j(t,r=>Et(r)?r.charCodeAt(0):r)}s(Yy,"getCharCodes");function kc(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}s(kc,"addToMapOfArrays");var is=256,Oc=[];function Or(t){return t<is?t:Oc[t]}s(Or,"charCodeToOptimizedIndex");function u_(){if(Ae(Oc)){Oc=new Array(65536);for(let t=0;t<65536;t++)Oc[t]=t>255?255+~~(t/255):t}}s(u_,"initCharCodeToOptimizedIndexMap");function yi(t,e){const r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}s(yi,"tokenStructuredMatcher");function Os(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}s(Os,"tokenStructuredMatcherNoCategories");var Bv=1,c_={};function gi(t){const e=f_(t);d_(e),m_(e),p_(e),q(e,r=>{r.isParent=r.categoryMatches.length>0})}s(gi,"augmentTokenTypes");function f_(t){let e=at(t),r=t,n=!0;for(;n;){r=Ju(Ht(j(r,i=>i.CATEGORIES)));const a=fd(r,e);e=e.concat(a),Ae(a)?n=!1:r=a}return e}s(f_,"expandCategories");function d_(t){q(t,e=>{Jy(e)||(c_[Bv]=e,e.tokenTypeIdx=Bv++),Pm(e)&&!ie(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Pm(e)||(e.CATEGORIES=[]),h_(e)||(e.categoryMatches=[]),y_(e)||(e.categoryMatchesMap={})})}s(d_,"assignTokenDefaultProps");function p_(t){q(t,e=>{e.categoryMatches=[],q(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(c_[n].tokenTypeIdx)})})}s(p_,"assignCategoriesTokensProp");function m_(t){q(t,e=>{Xy([],e)})}s(m_,"assignCategoriesMapProp");function Xy(t,e){q(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),q(e.CATEGORIES,r=>{const n=t.concat(e);vt(n,r)||Xy(n,r)})}s(Xy,"singleAssignCategoriesToksMap");function Jy(t){return K(t,"tokenTypeIdx")}s(Jy,"hasShortKeyProperty");function Pm(t){return K(t,"CATEGORIES")}s(Pm,"hasCategoriesProperty");function h_(t){return K(t,"categoryMatches")}s(h_,"hasExtendingTokensTypesProperty");function y_(t){return K(t,"categoryMatchesMap")}s(y_,"hasExtendingTokensTypesMapProperty");function g_(t){return K(t,"tokenTypeIdx")}s(g_,"isTokenType");var km={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,a,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}},De;(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"})(De||(De={}));var ss={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
82
+ `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:km,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(ss);var uo,pt=(uo=class{constructor(e,r=ss){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=(a,i)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;const o=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${o}--> <${a}>`);const{time:u,value:l}=Wy(i),c=u>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&c(`${o}<-- <${a}> time: ${u}ms`),this.traceInitIndent--,l}else return i()},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=Pt({},ss,r);const n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let a,i=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===ss.lineTerminatorsPattern)this.config.lineTerminatorsPattern=XM;else if(this.config.lineTerminatorCharacters===ss.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),ie(e)?a={modes:{defaultMode:at(e)},defaultMode:as}:(i=!1,a=at(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(a_(a,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(i_(a,this.trackStartLines,this.config.lineTerminatorCharacters))})),a.modes=a.modes?a.modes:{},q(a.modes,(u,l)=>{a.modes[l]=dd(u,c=>kr(c))});const o=Nt(a.modes);if(q(a.modes,(u,l)=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Ub(u,o))}),Ae(this.lexerDefinitionErrors)){gi(u);let c;this.TRACE_INIT("analyzeTokenTypes",()=>{c=Bb(u,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=c.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=c.charCodeToPatternIdxToConfig,this.emptyGroups=Pt({},this.emptyGroups,c.emptyGroups),this.hasCustom=c.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=c.canBeOptimized}})}),this.defaultMode=a.defaultMode,!Ae(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const l=j(this.lexerDefinitionErrors,c=>c.message).join(`-----------------------
85
+ `);throw new Error(`Errors detected in definition of Lexer:
86
+ `+l)}q(this.lexerDefinitionWarning,u=>{Ky(u.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(i&&(this.handleModes=qe),this.trackStartLines===!1&&(this.computeNewColumn=Wu),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=qe),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{const u=kt(this.canModeBeOptimized,(l,c,f)=>(c===!1&&l.push(f),l),[]);if(r.ensureOptimizations&&!Ae(u))throw Error(`Lexer Modes: < ${u.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",()=>{Gb()}),this.TRACE_INIT("toFastProperties",()=>{qy(this)})})}tokenize(e,r=this.defaultMode){if(!Ae(this.lexerDefinitionErrors)){const a=j(this.lexerDefinitionErrors,i=>i.message).join(`-----------------------
89
+ `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
90
+ `+a)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,a,i,o,u,l,c,f,d,p,h,y,v,E,T;const S=e,b=S.length;let N=0,B=0;const ne=this.hasCustom?0:Math.floor(e.length/10),J=new Array(ne),me=[];let Ee=this.trackStartLines?1:void 0,he=this.trackStartLines?1:void 0;const ue=s_(this.emptyGroups),ot=this.trackStartLines,k=this.config.lineTerminatorsPattern;let _=0,$=[],I=[];const R=[],A=[];Object.freeze(A);let w=!1;const L=s(M=>{if(R.length===1&&M.tokenType.PUSH_MODE===void 0){const X=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(M);me.push({offset:M.startOffset,line:M.startLine,column:M.startColumn,length:M.image.length,message:X})}else{R.pop();const X=jn(R);$=this.patternIdxToConfig[X],I=this.charCodeToPatternIdxToConfig[X],_=$.length;const H=this.canModeBeOptimized[X]&&this.config.safeMode===!1;I&&H?w=!0:w=!1}},"pop_mode");function x(M){R.push(M),I=this.charCodeToPatternIdxToConfig[M],$=this.patternIdxToConfig[M],_=$.length,_=$.length;const X=this.canModeBeOptimized[M]&&this.config.safeMode===!1;I&&X?w=!0:w=!1}s(x,"push_mode"),x.call(this,r);let O;const z=this.config.recoveryEnabled;for(;N<b;){l=null,d=-1;const M=S.charCodeAt(N);let X;if(w){const Z=Or(M),se=I[Z];X=se!==void 0?se:A}else X=$;const H=X.length;for(n=0;n<H;n++){O=X[n];const Z=O.pattern;c=null;const se=O.short;if(se!==!1?M===se&&(d=1,l=Z):O.isCustom===!0?(T=Z.exec(S,N,J,ue),T!==null?(l=T[0],d=l.length,T.payload!==void 0&&(c=T.payload)):l=null):(Z.lastIndex=N,d=this.matchLength(Z,e,N)),d!==-1){if(u=O.longerAlt,u!==void 0){l=e.substring(N,N+d);const xe=u.length;for(i=0;i<xe;i++){const ye=$[u[i]],we=ye.pattern;if(f=null,ye.isCustom===!0?(T=we.exec(S,N,J,ue),T!==null?(o=T[0],T.payload!==void 0&&(f=T.payload)):o=null):(we.lastIndex=N,o=this.match(we,e,N)),o&&o.length>l.length){l=o,d=o.length,c=f,O=ye;break}}}break}}if(d!==-1){if(p=O.group,p!==void 0&&(l=l!==null?l:e.substring(N,N+d),h=O.tokenTypeIdx,y=this.createTokenInstance(l,N,h,O.tokenType,Ee,he,d),this.handlePayload(y,c),p===!1?B=this.addToken(J,B,y):ue[p].push(y)),ot===!0&&O.canLineTerminator===!0){let Z=0,se,xe;k.lastIndex=0;do l=l!==null?l:e.substring(N,N+d),se=k.test(l),se===!0&&(xe=k.lastIndex-1,Z++);while(se===!0);Z!==0?(Ee=Ee+Z,he=d-xe,this.updateTokenEndLineColumnLocation(y,p,xe,Z,Ee,he,d)):he=this.computeNewColumn(he,d)}else he=this.computeNewColumn(he,d);N=N+d,this.handleModes(O,L,x,y)}else{const Z=N,se=Ee,xe=he;let ye=z===!1;for(;ye===!1&&N<b;)for(N++,a=0;a<_;a++){const we=$[a],Je=we.pattern,Me=we.short;if(Me!==!1?S.charCodeAt(N)===Me&&(ye=!0):we.isCustom===!0?ye=Je.exec(S,N,J,ue)!==null:(Je.lastIndex=N,ye=Je.exec(e)!==null),ye===!0)break}if(v=N-Z,he=this.computeNewColumn(he,v),E=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(S,Z,v,se,xe,jn(R)),me.push({offset:Z,line:se,column:xe,length:v,message:E}),z===!1)break}}return this.hasCustom||(J.length=B),{tokens:J,groups:ue,errors:me}}handleModes(e,r,n,a){if(e.pop===!0){const i=e.push;r(a),i!==void 0&&n.call(this,i)}else e.push!==void 0&&n.call(this,e.push)}updateTokenEndLineColumnLocation(e,r,n,a,i,o,u){let l,c;r!==void 0&&(l=n===u-1,c=l?-1:0,a===1&&l===!0||(e.endLine=i+c,e.endColumn=o-1+-c))}computeNewColumn(e,r){return e+r}createOffsetOnlyToken(e,r,n,a){return{image:e,startOffset:r,tokenTypeIdx:n,tokenType:a}}createStartOnlyToken(e,r,n,a,i,o){return{image:e,startOffset:r,startLine:i,startColumn:o,tokenTypeIdx:n,tokenType:a}}createFullToken(e,r,n,a,i,o,u){return{image:e,startOffset:r,endOffset:r+u-1,startLine:i,endLine:i,startColumn:o,endColumn:o+u-1,tokenTypeIdx:n,tokenType:a}}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)}match(e,r,n){return e.test(r)===!0?r.substring(n,e.lastIndex):null}matchLength(e,r,n){return e.test(r)===!0?e.lastIndex-n:-1}},s(uo,"Lexer"),uo);pt.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.";pt.NA=/NOT_APPLICABLE/;function Mn(t){return Zy(t)?t.LABEL:t.name}s(Mn,"tokenLabel");function Zy(t){return Et(t.LABEL)&&t.LABEL!==""}s(Zy,"hasTokenLabel");var JM="parent",Uv="categories",Kv="label",Wv="group",qv="push_mode",Vv="pop_mode",Hv="longer_alt",Yv="line_breaks",Xv="start_chars_hint";function Ya(t){return v_(t)}s(Ya,"createToken");function v_(t){const e=t.pattern,r={};if(r.name=t.name,kr(e)||(r.PATTERN=e),K(t,JM))throw`The parent property is no longer supported.
91
+ See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return K(t,Uv)&&(r.CATEGORIES=t[Uv]),gi([r]),K(t,Kv)&&(r.LABEL=t[Kv]),K(t,Wv)&&(r.GROUP=t[Wv]),K(t,Vv)&&(r.POP_MODE=t[Vv]),K(t,qv)&&(r.PUSH_MODE=t[qv]),K(t,Hv)&&(r.LONGER_ALT=t[Hv]),K(t,Yv)&&(r.LINE_BREAKS=t[Yv]),K(t,Xv)&&(r.START_CHARS_HINT=t[Xv]),r}s(v_,"createTokenInternal");var Jr=Ya({name:"EOF",pattern:pt.NA});gi([Jr]);function Qu(t,e,r,n,a,i,o,u){return{image:e,startOffset:r,endOffset:n,startLine:a,endLine:i,startColumn:o,endColumn:u,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}s(Qu,"createTokenInstance");function Qy(t,e){return yi(t,e)}s(Qy,"tokenMatcher");var qa={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${Zy(t)?`--> ${Mn(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:a}){const i="Expecting: ",u=`
92
+ but found: '`+Jt(e).image+"'";if(n)return i+n+u;{const l=kt(t,(p,h)=>p.concat(h),[]),c=j(l,p=>`[${j(p,h=>Mn(h)).join(", ")}]`),d=`one of these possible Token sequences:
93
+ ${j(c,(p,h)=>` ${h+1}. ${p}`).join(`
94
+ `)}`;return i+d+u}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){const a="Expecting: ",o=`
95
+ but found: '`+Jt(e).image+"'";if(r)return a+r+o;{const l=`expecting at least one iteration which starts with one of these possible Token sequences::
96
+ <${j(t,c=>`[${j(c,f=>Mn(f)).join(",")}]`).join(" ,")}>`;return a+l+o}}};Object.freeze(qa);var ZM={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
97
+ inside top level rule: ->`+t.name+"<-"}},Ln={buildDuplicateFoundError(t,e){function r(f){return f instanceof Se?f.terminalType.name:f instanceof ht?f.nonTerminalName:""}s(r,"getExtraProductionArgument");const n=t.name,a=Jt(e),i=a.idx,o=Kt(a),u=r(a),l=i>0;let c=`->${o}${l?i:""}<- ${u?`with argument: ->${u}<-`:""}
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 c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,`
101
+ `),c},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){const e=j(t.prefixPath,a=>Mn(a)).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){const e=t.alternation.idx===0?"":t.alternation.idx,r=t.prefixPath.length===0;let n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${e}> inside <${t.topLevelRule.name}> Rule,
110
+ `;if(r)n+=`These alternatives are all empty (match no tokens), making them indistinguishable.
111
+ Only the last alternative may be empty.
112
+ `;else{const a=j(t.prefixPath,i=>Mn(i)).join(", ");n+=`<${a}> may appears as a prefix path in all these alternatives.
113
+ `}return n+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
114
+ For Further details.`,n},buildEmptyRepetitionError(t){let e=Kt(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens.
115
+ 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.
116
+ Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives:
117
+ <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
118
+ has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){const e=t.topLevelRule.name,r=j(t.leftRecursionPath,i=>i.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
119
+ rule: <${e}> can be invoked from itself (directly or indirectly)
120
+ without consuming any Tokens. The grammar path that causes this is:
121
+ ${n}
122
+ To fix this refactor your grammar to remove the left recursion.
123
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof pi?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function T_(t,e){const r=new QM(t,e);return r.resolveRefs(),r.errors}s(T_,"resolveGrammar");var co,QM=(co=class extends mi{constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){q(Ke(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){const r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{const n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:yt.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},s(co,"GastRefResolverVisitor"),co),fo,e1=(fo=class extends pd{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=at(this.path.ruleStack).reverse(),this.occurrenceStack=at(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){const a=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,a)}}updateExpectedNext(){Ae(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},s(fo,"AbstractNextPossibleTokensWalker"),fo),po,t1=(po=class extends e1{constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){const a=r.concat(n),i=new Ct({definition:a});this.possibleTokTypes=hi(i),this.found=!0}}},s(po,"NextAfterTokenWalker"),po),mo,hd=(mo=class extends pd{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(mo,"AbstractNextTerminalAfterProductionWalker"),mo),ho,r1=(ho=class extends hd{walkMany(e,r,n){if(e.idx===this.occurrence){const a=Jt(r.concat(n));this.result.isEndOfRule=a===void 0,a instanceof Se&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkMany(e,r,n)}},s(ho,"NextTerminalAfterManyWalker"),ho),yo,Jv=(yo=class extends hd{walkManySep(e,r,n){if(e.idx===this.occurrence){const a=Jt(r.concat(n));this.result.isEndOfRule=a===void 0,a instanceof Se&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkManySep(e,r,n)}},s(yo,"NextTerminalAfterManySepWalker"),yo),go,n1=(go=class extends hd{walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){const a=Jt(r.concat(n));this.result.isEndOfRule=a===void 0,a instanceof Se&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOne(e,r,n)}},s(go,"NextTerminalAfterAtLeastOneWalker"),go),vo,Zv=(vo=class extends hd{walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){const a=Jt(r.concat(n));this.result.isEndOfRule=a===void 0,a instanceof Se&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOneSep(e,r,n)}},s(vo,"NextTerminalAfterAtLeastOneSepWalker"),vo);function Tf(t,e,r=[]){r=at(r);let n=[],a=0;function i(u){return u.concat(rt(t,a+1))}s(i,"remainingPathWith");function o(u){const l=Tf(i(u),e,r);return n.concat(l)}for(s(o,"getAlternativesForProd");r.length<e&&a<t.length;){const u=t[a];if(u instanceof Ct)return o(u.definition);if(u instanceof ht)return o(u.definition);if(u instanceof nt)n=o(u.definition);else if(u instanceof Ot){const l=u.definition.concat([new Le({definition:u.definition})]);return o(l)}else if(u instanceof Lt){const l=[new Ct({definition:u.definition}),new Le({definition:[new Se({terminalType:u.separator})].concat(u.definition)})];return o(l)}else if(u instanceof bt){const l=u.definition.concat([new Le({definition:[new Se({terminalType:u.separator})].concat(u.definition)})]);n=o(l)}else if(u instanceof Le){const l=u.definition.concat([new Le({definition:u.definition})]);n=o(l)}else{if(u instanceof _t)return q(u.definition,l=>{Ae(l.definition)===!1&&(n=o(l.definition))}),n;if(u instanceof Se)r.push(u.terminalType);else throw Error("non exhaustive match")}a++}return n.push({partialPath:r,suffixDef:rt(t,a)}),n}s(Tf,"possiblePathsFrom");function eg(t,e,r,n){const a="EXIT_NONE_TERMINAL",i=[a],o="EXIT_ALTERNATIVE";let u=!1;const l=e.length,c=l-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!Ae(d);){const p=d.pop();if(p===o){u&&jn(d).idx<=c&&d.pop();continue}const h=p.def,y=p.idx,v=p.ruleStack,E=p.occurrenceStack;if(Ae(h))continue;const T=h[0];if(T===a){const S={idx:y,def:rt(h),ruleStack:Ps(v),occurrenceStack:Ps(E)};d.push(S)}else if(T instanceof Se)if(y<l-1){const S=y+1,b=e[S];if(r(b,T.terminalType)){const N={idx:S,def:rt(h),ruleStack:v,occurrenceStack:E};d.push(N)}}else if(y===l-1)f.push({nextTokenType:T.terminalType,nextTokenOccurrence:T.idx,ruleStack:v,occurrenceStack:E}),u=!0;else throw Error("non exhaustive match");else if(T instanceof ht){const S=at(v);S.push(T.nonTerminalName);const b=at(E);b.push(T.idx);const N={idx:y,def:T.definition.concat(i,rt(h)),ruleStack:S,occurrenceStack:b};d.push(N)}else if(T instanceof nt){const S={idx:y,def:rt(h),ruleStack:v,occurrenceStack:E};d.push(S),d.push(o);const b={idx:y,def:T.definition.concat(rt(h)),ruleStack:v,occurrenceStack:E};d.push(b)}else if(T instanceof Ot){const S=new Le({definition:T.definition,idx:T.idx}),b=T.definition.concat([S],rt(h)),N={idx:y,def:b,ruleStack:v,occurrenceStack:E};d.push(N)}else if(T instanceof Lt){const S=new Se({terminalType:T.separator}),b=new Le({definition:[S].concat(T.definition),idx:T.idx}),N=T.definition.concat([b],rt(h)),B={idx:y,def:N,ruleStack:v,occurrenceStack:E};d.push(B)}else if(T instanceof bt){const S={idx:y,def:rt(h),ruleStack:v,occurrenceStack:E};d.push(S),d.push(o);const b=new Se({terminalType:T.separator}),N=new Le({definition:[b].concat(T.definition),idx:T.idx}),B=T.definition.concat([N],rt(h)),ne={idx:y,def:B,ruleStack:v,occurrenceStack:E};d.push(ne)}else if(T instanceof Le){const S={idx:y,def:rt(h),ruleStack:v,occurrenceStack:E};d.push(S),d.push(o);const b=new Le({definition:T.definition,idx:T.idx}),N=T.definition.concat([b],rt(h)),B={idx:y,def:N,ruleStack:v,occurrenceStack:E};d.push(B)}else if(T instanceof _t)for(let S=T.definition.length-1;S>=0;S--){const b=T.definition[S],N={idx:y,def:b.definition.concat(rt(h)),ruleStack:v,occurrenceStack:E};d.push(N),d.push(o)}else if(T instanceof Ct)d.push({idx:y,def:T.definition.concat(rt(h)),ruleStack:v,occurrenceStack:E});else if(T instanceof pi)d.push($_(T,y,v,E));else throw Error("non exhaustive match")}return f}s(eg,"nextPossibleTokensAfter");function $_(t,e,r,n){const a=at(r);a.push(t.name);const i=at(n);return i.push(1),{idx:e,def:t.definition,ruleStack:a,occurrenceStack:i}}s($_,"expandTopLevelRule");var ke;(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"})(ke||(ke={}));function yd(t){if(t instanceof nt||t==="Option")return ke.OPTION;if(t instanceof Le||t==="Repetition")return ke.REPETITION;if(t instanceof Ot||t==="RepetitionMandatory")return ke.REPETITION_MANDATORY;if(t instanceof Lt||t==="RepetitionMandatoryWithSeparator")return ke.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof bt||t==="RepetitionWithSeparator")return ke.REPETITION_WITH_SEPARATOR;if(t instanceof _t||t==="Alternation")return ke.ALTERNATION;throw Error("non exhaustive match")}s(yd,"getProdType");function Om(t){const{occurrence:e,rule:r,prodType:n,maxLookahead:a}=t,i=yd(n);return i===ke.ALTERNATION?ec(e,r,a):tc(e,r,i,a)}s(Om,"getLookaheadPaths");function R_(t,e,r,n,a,i){const o=ec(t,e,r),u=rg(o)?Os:yi;return i(o,n,u,a)}s(R_,"buildLookaheadFuncForOr");function A_(t,e,r,n,a,i){const o=tc(t,e,a,r),u=rg(o)?Os:yi;return i(o[0],u,n)}s(A_,"buildLookaheadFuncForOptionalProd");function E_(t,e,r,n){const a=t.length,i=Yt(t,o=>Yt(o,u=>u.length===1));if(e)return function(o){const u=j(o,l=>l.GATE);for(let l=0;l<a;l++){const c=t[l],f=c.length,d=u[l];if(!(d!==void 0&&d.call(this)===!1))e:for(let p=0;p<f;p++){const h=c[p],y=h.length;for(let v=0;v<y;v++){const E=this.LA(v+1);if(r(E,h[v])===!1)continue e}return l}}};if(i&&!n){const o=j(t,l=>Ht(l)),u=kt(o,(l,c,f)=>(q(c,d=>{K(l,d.tokenTypeIdx)||(l[d.tokenTypeIdx]=f),q(d.categoryMatches,p=>{K(l,p)||(l[p]=f)})}),l),{});return function(){const l=this.LA(1);return u[l.tokenTypeIdx]}}else return function(){for(let o=0;o<a;o++){const u=t[o],l=u.length;e:for(let c=0;c<l;c++){const f=u[c],d=f.length;for(let p=0;p<d;p++){const h=this.LA(p+1);if(r(h,f[p])===!1)continue e}return o}}}}s(E_,"buildAlternativesLookAheadFunc");function C_(t,e,r){const n=Yt(t,i=>i.length===1),a=t.length;if(n&&!r){const i=Ht(t);if(i.length===1&&Ae(i[0].categoryMatches)){const u=i[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===u}}else{const o=kt(i,(u,l,c)=>(u[l.tokenTypeIdx]=!0,q(l.categoryMatches,f=>{u[f]=!0}),u),[]);return function(){const u=this.LA(1);return o[u.tokenTypeIdx]===!0}}}else return function(){e:for(let i=0;i<a;i++){const o=t[i],u=o.length;for(let l=0;l<u;l++){const c=this.LA(l+1);if(e(c,o[l])===!1)continue e}return!0}return!1}}s(C_,"buildSingleAlternativeLookaheadFunction");var To,a1=(To=class extends pd{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,a){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(a),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,ke.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,ke.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,ke.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,ke.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,ke.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},s(To,"RestDefinitionFinderWalker"),To),$o,b_=($o=class extends mi{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,ke.OPTION)}visitRepetition(e){this.checkIsTarget(e,ke.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,ke.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,ke.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,ke.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,ke.ALTERNATION)}},s($o,"InsideDefinitionFinderVisitor"),$o);function Lm(t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=[];return e}s(Lm,"initializeArrayOfArrays");function Lc(t){let e=[""];for(let r=0;r<t.length;r++){const n=t[r],a=[];for(let i=0;i<e.length;i++){const o=e[i];a.push(o+"_"+n.tokenTypeIdx);for(let u=0;u<n.categoryMatches.length;u++){const l="_"+n.categoryMatches[u];a.push(o+l)}}e=a}return e}s(Lc,"pathToHashKeys");function __(t,e,r){for(let n=0;n<t.length;n++){if(n===r)continue;const a=t[n];for(let i=0;i<e.length;i++){const o=e[i];if(a[o]===!0)return!1}}return!0}s(__,"isUniquePrefixHash");function tg(t,e){const r=j(t,o=>Tf([o],1)),n=Lm(r.length),a=j(r,o=>{const u={};return q(o,l=>{const c=Lc(l.partialPath);q(c,f=>{u[f]=!0})}),u});let i=r;for(let o=1;o<=e;o++){const u=i;i=Lm(u.length);for(let l=0;l<u.length;l++){const c=u[l];for(let f=0;f<c.length;f++){const d=c[f].partialPath,p=c[f].suffixDef,h=Lc(d);if(__(a,h,l)||Ae(p)||d.length===e){const v=n[l];if($f(v,d)===!1){v.push(d);for(let E=0;E<h.length;E++){const T=h[E];a[l][T]=!0}}}else{const v=Tf(p,o+1,d);i[l]=i[l].concat(v),q(v,E=>{const T=Lc(E.partialPath);q(T,S=>{a[l][S]=!0})})}}}}return n}s(tg,"lookAheadSequenceFromAlternatives");function ec(t,e,r,n){const a=new b_(t,ke.ALTERNATION,n);return e.accept(a),tg(a.result,r)}s(ec,"getLookaheadPathsForOr");function tc(t,e,r,n){const a=new b_(t,r);e.accept(a);const i=a.result,u=new a1(e,t,r).startWalking(),l=new Ct({definition:i}),c=new Ct({definition:u});return tg([l,c],n)}s(tc,"getLookaheadPathsForOptionalProd");function $f(t,e){e:for(let r=0;r<t.length;r++){const n=t[r];if(n.length===e.length){for(let a=0;a<n.length;a++){const i=e[a],o=n[a];if((i===o||o.categoryMatchesMap[i.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}s($f,"containsPath");function S_(t,e){return t.length<e.length&&Yt(t,(r,n)=>{const a=e[n];return r===a||a.categoryMatchesMap[r.tokenTypeIdx]})}s(S_,"isStrictPrefixOfPath");function rg(t){return Yt(t,e=>Yt(e,r=>Yt(r,n=>Ae(n.categoryMatches))))}s(rg,"areTokenCategoriesNotUsed");function w_(t){const e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return j(e,r=>Object.assign({type:yt.CUSTOM_LOOKAHEAD_VALIDATION},r))}s(w_,"validateLookahead");function I_(t,e,r,n){const a=Gt(t,l=>N_(l,r)),i=z_(t,e,r),o=Gt(t,l=>x_(l,r)),u=Gt(t,l=>k_(l,t,n,r));return a.concat(i,o,u)}s(I_,"validateGrammar");function N_(t,e){const r=new i1;t.accept(r);const n=r.allProductions,a=TM(n,P_),i=Zt(a,u=>u.length>1);return j(Ke(i),u=>{const l=Jt(u),c=e.buildDuplicateFoundError(t,u),f=Kt(l),d={message:c,type:yt.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:l.idx},p=ng(l);return p&&(d.parameter=p),d})}s(N_,"validateDuplicateProductions");function P_(t){return`${Kt(t)}_#_${t.idx}_#_${ng(t)}`}s(P_,"identifyProductionForDuplicates");function ng(t){return t instanceof Se?t.terminalType.name:t instanceof ht?t.nonTerminalName:""}s(ng,"getExtraProductionArgument");var Ro,i1=(Ro=class extends mi{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(Ro,"OccurrenceValidationCollector"),Ro);function k_(t,e,r,n){const a=[];if(kt(e,(o,u)=>u.name===t.name?o+1:o,0)>1){const o=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});a.push({message:o,type:yt.DUPLICATE_RULE_NAME,ruleName:t.name})}return a}s(k_,"validateRuleDoesNotAlreadyExist");function O_(t,e,r){const n=[];let a;return vt(e,t)||(a=`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:a,type:yt.INVALID_RULE_OVERRIDE,ruleName:t})),n}s(O_,"validateRuleIsOverridden");function ag(t,e,r,n=[]){const a=[],i=Rs(e.definition);if(Ae(i))return[];{const o=t.name;vt(i,t)&&a.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:yt.LEFT_RECURSION,ruleName:o});const l=fd(i,n.concat([t])),c=Gt(l,f=>{const d=at(n);return d.push(f),ag(t,f,r,d)});return a.concat(c)}}s(ag,"validateNoLeftRecursion");function Rs(t){let e=[];if(Ae(t))return e;const r=Jt(t);if(r instanceof ht)e.push(r.referencedRule);else if(r instanceof Ct||r instanceof nt||r instanceof Ot||r instanceof Lt||r instanceof bt||r instanceof Le)e=e.concat(Rs(r.definition));else if(r instanceof _t)e=Ht(j(r.definition,i=>Rs(i.definition)));else if(!(r instanceof Se))throw Error("non exhaustive match");const n=ks(r),a=t.length>1;if(n&&a){const i=rt(t);return e.concat(Rs(i))}else return e}s(Rs,"getFirstNoneTerminal");var Ao,ig=(Ao=class extends mi{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}},s(Ao,"OrCollector"),Ao);function L_(t,e){const r=new ig;t.accept(r);const n=r.alternations;return Gt(n,i=>{const o=Ps(i.definition);return Gt(o,(u,l)=>{const c=eg([u],[],yi,1);return Ae(c)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:i,emptyChoiceIdx:l}),type:yt.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:i.idx,alternative:l+1}]:[]})})}s(L_,"validateEmptyOrAlternative");function D_(t,e,r){const n=new ig;t.accept(n);let a=n.alternations;return a=dd(a,o=>o.ignoreAmbiguities===!0),Gt(a,o=>{const u=o.idx,l=o.maxLookahead||e,c=ec(u,t,l,o),f=G_(c,o,t,r),d=F_(c,o,t,r);return f.concat(d)})}s(D_,"validateAmbiguousAlternationAlternatives");var Eo,s1=(Eo=class extends mi{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(Eo,"RepetitionCollector"),Eo);function x_(t,e){const r=new ig;t.accept(r);const n=r.alternations;return Gt(n,i=>i.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:i}),type:yt.TOO_MANY_ALTS,ruleName:t.name,occurrence:i.idx}]:[])}s(x_,"validateTooManyAlts");function M_(t,e,r){const n=[];return q(t,a=>{const i=new s1;a.accept(i);const o=i.allProductions;q(o,u=>{const l=yd(u),c=u.maxLookahead||e,f=u.idx,p=tc(f,a,l,c)[0];if(Ae(Ht(p))){const h=r.buildEmptyRepetitionError({topLevelRule:a,repetition:u});n.push({message:h,type:yt.NO_NON_EMPTY_LOOKAHEAD,ruleName:a.name})}})}),n}s(M_,"validateSomeNonEmptyLookaheadPath");function G_(t,e,r,n){const a=[],i=kt(t,(u,l,c)=>(e.definition[c].ignoreAmbiguities===!0||q(l,f=>{const d=[c];q(t,(p,h)=>{c!==h&&$f(p,f)&&e.definition[h].ignoreAmbiguities!==!0&&d.push(h)}),d.length>1&&!$f(a,f)&&(a.push(f),u.push({alts:d,path:f}))}),u),[]);return j(i,u=>{const l=j(u.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:l,prefixPath:u.path}),type:yt.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:u.alts}})}s(G_,"checkAlternativesAmbiguities");function F_(t,e,r,n){const a=kt(t,(o,u,l)=>{const c=j(u,f=>({idx:l,path:f}));return o.concat(c)},[]);return Ju(Gt(a,o=>{if(e.definition[o.idx].ignoreAmbiguities===!0)return[];const l=o.idx,c=o.path,f=Bt(a,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx<l&&S_(p.path,c));return j(f,p=>{const h=[p.idx+1,l+1],y=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:h,prefixPath:p.path}),type:yt.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:y,alternatives:h}})}))}s(F_,"checkPrefixAlternativesAmbiguities");function z_(t,e,r){const n=[],a=j(e,i=>i.name);return q(t,i=>{const o=i.name;if(vt(a,o)){const u=r.buildNamespaceConflictError(i);n.push({message:u,type:yt.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:o})}}),n}s(z_,"checkTerminalAndNoneTerminalsNameSpace");function j_(t){const e=By(t,{errMsgProvider:ZM}),r={};return q(t.rules,n=>{r[n.name]=n}),T_(r,e.errMsgProvider)}s(j_,"resolveGrammar");function B_(t){return t=By(t,{errMsgProvider:Ln}),I_(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}s(B_,"validateGrammar");var U_="MismatchedTokenException",K_="NoViableAltException",W_="EarlyExitException",q_="NotAllInputParsedException",V_=[U_,K_,W_,q_];Object.freeze(V_);function Ls(t){return vt(V_,t.name)}s(Ls,"isRecognitionException");var Co,gd=(Co=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(Co,"RecognitionException"),Co),bo,H_=(bo=class extends gd{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=U_}},s(bo,"MismatchedTokenException"),bo),_o,o1=(_o=class extends gd{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=K_}},s(_o,"NoViableAltException"),_o),So,l1=(So=class extends gd{constructor(e,r){super(e,r),this.name=q_}},s(So,"NotAllInputParsedException"),So),wo,u1=(wo=class extends gd{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=W_}},s(wo,"EarlyExitException"),wo),Hd={},Y_="InRuleRecoveryException",Io,c1=(Io=class extends Error{constructor(e){super(e),this.name=Y_}},s(Io,"InRuleRecoveryException"),Io),No,f1=(No=class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=K(e,"recoveryEnabled")?e.recoveryEnabled:Lr.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=X_)}getTokenToInsert(e){const r=Qu(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,a){const i=this.findReSyncTokenType(),o=this.exportLexerState(),u=[];let l=!1;const c=this.LA(1);let f=this.LA(1);const d=s(()=>{const p=this.LA(0),h=this.errorMessageProvider.buildMismatchTokenMessage({expected:a,actual:c,previous:p,ruleName:this.getCurrRuleFullName()}),y=new H_(h,c,this.LA(0));y.resyncedTokens=Ps(u),this.SAVE_ERROR(y)},"generateErrorMessage");for(;!l;)if(this.tokenMatcher(f,a)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,i)?l=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,u));this.importLexerState(o)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){const n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new c1("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;const n=this.LA(1);return ii(r,i=>this.tokenMatcher(n,i))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){const r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return vt(n,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let r=this.LA(1),n=2;for(;;){const a=ii(e,i=>Qy(r,i));if(a!==void 0)return a;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return Hd;const e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return j(e,(n,a)=>a===0?Hd:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[a],inRule:this.shortRuleNameToFullName(e[a-1])})}flattenFollowSet(){const e=j(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Ht(e)}getFollowSetFromFollowKey(e){if(e===Hd)return[Jr];const r=e.ruleName+e.idxInCallingRule+Db+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,Jr)||r.push(e),r}reSyncTo(e){const r=[];let n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Ps(r)}attemptInRepetitionRecovery(e,r,n,a,i,o,u){}getCurrentGrammarPath(e,r){const n=this.getHumanReadableRuleStack(),a=at(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:a,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return j(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}},s(No,"Recoverable"),No);function X_(t,e,r,n,a,i,o){const u=this.getKeyForAutomaticLookahead(n,a);let l=this.firstAfterRepMap[u];if(l===void 0){const p=this.getCurrRuleFullName(),h=this.getGAstProductions()[p];l=new i(h,a).startWalking(),this.firstAfterRepMap[u]=l}let c=l.token,f=l.occurrence;const d=l.isEndOfRule;this.RULE_STACK.length===1&&d&&c===void 0&&(c=Jr,f=1),!(c===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(c,f,o)&&this.tryInRepetitionRecovery(t,e,r,c)}s(X_,"attemptInRepetitionRecovery");var d1=4,nn=8,J_=1<<nn,Z_=2<<nn,Dm=3<<nn,xm=4<<nn,Mm=5<<nn,Dc=6<<nn;function xc(t,e,r){return r|e|t}s(xc,"getKeyForAutomaticLookahead");var Po,sg=(Po=class{constructor(e){var r;this.maxLookahead=(r=e==null?void 0:e.maxLookahead)!==null&&r!==void 0?r:Lr.maxLookahead}validate(e){const r=this.validateNoLeftRecursion(e.rules);if(Ae(r)){const n=this.validateEmptyOrAlternatives(e.rules),a=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...a,...i]}return r}validateNoLeftRecursion(e){return Gt(e,r=>ag(r,r,Ln))}validateEmptyOrAlternatives(e){return Gt(e,r=>L_(r,Ln))}validateAmbiguousAlternationAlternatives(e,r){return Gt(e,n=>D_(n,r,Ln))}validateSomeNonEmptyLookaheadPath(e,r){return M_(e,r,Ln)}buildLookaheadForAlternation(e){return R_(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,E_)}buildLookaheadForOptional(e){return A_(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,yd(e.prodType),C_)}},s(Po,"LLkLookaheadStrategy"),Po),ko,p1=(ko=class{initLooksAhead(e){this.dynamicTokensEnabled=K(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Lr.dynamicTokensEnabled,this.maxLookahead=K(e,"maxLookahead")?e.maxLookahead:Lr.maxLookahead,this.lookaheadStrategy=K(e,"lookaheadStrategy")?e.lookaheadStrategy:new sg({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){q(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{const{alternation:n,repetition:a,option:i,repetitionMandatory:o,repetitionMandatoryWithSeparator:u,repetitionWithSeparator:l}=Q_(r);q(n,c=>{const f=c.idx===0?"":c.idx;this.TRACE_INIT(`${Kt(c)}${f}`,()=>{const d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:c.idx,rule:r,maxLookahead:c.maxLookahead||this.maxLookahead,hasPredicates:c.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=xc(this.fullRuleNameToShort[r.name],J_,c.idx);this.setLaFuncCache(p,d)})}),q(a,c=>{this.computeLookaheadFunc(r,c.idx,Dm,"Repetition",c.maxLookahead,Kt(c))}),q(i,c=>{this.computeLookaheadFunc(r,c.idx,Z_,"Option",c.maxLookahead,Kt(c))}),q(o,c=>{this.computeLookaheadFunc(r,c.idx,xm,"RepetitionMandatory",c.maxLookahead,Kt(c))}),q(u,c=>{this.computeLookaheadFunc(r,c.idx,Dc,"RepetitionMandatoryWithSeparator",c.maxLookahead,Kt(c))}),q(l,c=>{this.computeLookaheadFunc(r,c.idx,Mm,"RepetitionWithSeparator",c.maxLookahead,Kt(c))})})})}computeLookaheadFunc(e,r,n,a,i,o){this.TRACE_INIT(`${o}${r===0?"":r}`,()=>{const u=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:a}),l=xc(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(l,u)})}getKeyForAutomaticLookahead(e,r){const n=this.getLastExplicitRuleShortName();return xc(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},s(ko,"LooksAhead"),ko),Oo,m1=(Oo=class extends mi{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(Oo,"DslMethodsCollectorVisitor"),Oo),oc=new m1;function Q_(t){oc.reset(),t.accept(oc);const e=oc.dslMethods;return oc.reset(),e}s(Q_,"collectMethods");function Gm(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}s(Gm,"setNodeLocationOnlyOffset");function Fm(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(Fm,"setNodeLocationFull");function eS(t,e,r){t.children[r]===void 0?t.children[r]=[e]:t.children[r].push(e)}s(eS,"addTerminalToCst");function tS(t,e,r){t.children[e]===void 0?t.children[e]=[r]:t.children[e].push(r)}s(tS,"addNoneTerminalToCst");var h1="name";function og(t,e){Object.defineProperty(t,h1,{enumerable:!1,configurable:!0,writable:!1,value:e})}s(og,"defineNameProp");function rS(t,e){const r=Nt(t),n=r.length;for(let a=0;a<n;a++){const i=r[a],o=t[i],u=o.length;for(let l=0;l<u;l++){const c=o[l];c.tokenTypeIdx===void 0&&this[c.name](c.children,e)}}}s(rS,"defaultVisit");function nS(t,e){const r=s(function(){},"derivedConstructor");og(r,t+"BaseSemantics");const n={visit:s(function(a,i){if(ie(a)&&(a=a[0]),!kr(a))return this[a.name](a.children,i)},"visit"),validateVisitor:s(function(){const a=iS(this,e);if(!Ae(a)){const i=j(a,o=>o.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
124
+ ${i.join(`
125
+
126
+ `).replace(/\n/g,`
127
+ `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}s(nS,"createBaseSemanticVisitorConstructor");function aS(t,e,r){const n=s(function(){},"derivedConstructor");og(n,t+"BaseSemanticsWithDefaults");const a=Object.create(r.prototype);return q(e,i=>{a[i]=rS}),n.prototype=a,n.prototype.constructor=n,n}s(aS,"createBaseVisitorConstructorWithDefaults");var zm;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(zm||(zm={}));function iS(t,e){return sS(t,e)}s(iS,"validateVisitor");function sS(t,e){const r=Bt(e,a=>Gr(t[a])===!1),n=j(r,a=>({msg:`Missing visitor method: <${a}> on ${t.constructor.name} CST Visitor.`,type:zm.MISSING_METHOD,methodName:a}));return Ju(n)}s(sS,"validateMissingCstMethods");var Lo,y1=(Lo=class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=K(e,"nodeLocationTracking")?e.nodeLocationTracking:Lr.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=qe,this.cstFinallyStateUpdate=qe,this.cstPostTerminal=qe,this.cstPostNonTerminal=qe,this.cstPostRule=qe;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Fm,this.setNodeLocationFromNode=Fm,this.cstPostRule=qe,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=qe,this.setNodeLocationFromNode=qe,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Gm,this.setNodeLocationFromNode=Gm,this.cstPostRule=qe,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=qe,this.setNodeLocationFromNode=qe,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=qe,this.setNodeLocationFromNode=qe,this.cstPostRule=qe,this.setInitialNodeLocation=qe;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){const r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){const r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){const n=this.CST_STACK[this.CST_STACK.length-1];eS(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){const n=this.CST_STACK[this.CST_STACK.length-1];tS(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(kr(this.baseCstVisitorConstructor)){const e=nS(this.className,Nt(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(kr(this.baseCstVisitorWithDefaultsConstructor)){const e=aS(this.className,Nt(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},s(Lo,"TreeBuilder"),Lo),Do,g1=(Do=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)):Rf}LA(e){const r=this.currIdx+e;return r<0||this.tokVectorLength<=r?Rf: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(Do,"LexerAdapter"),Do),xo,v1=(xo=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=Af){if(vt(this.definedRulesNames,e)){const o={message:Ln.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:yt.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(o)}this.definedRulesNames.push(e);const a=this.defineRule(e,r,n);return this[e]=a,a}OVERRIDE_RULE(e,r,n=Af){const a=O_(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(a);const i=this.defineRule(e,r,n);return this[e]=i,i}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);const n=this.saveRecogState();try{return e.apply(this,r),!0}catch(a){if(Ls(a))return!1;throw a}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ib(Ke(this.gastProductionsCache))}},s(xo,"RecognizerApi"),xo),Mo,T1=(Mo=class{initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Os,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},K(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
128
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
129
+ For Further details.`);if(ie(e)){if(Ae(e))throw Error(`A Token Vocabulary cannot be empty.
130
+ Note that the first argument for the parser constructor
131
+ 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.
132
+ See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
133
+ For Further details.`)}if(ie(e))this.tokensMap=kt(e,(i,o)=>(i[o.name]=o,i),{});else if(K(e,"modes")&&Yt(Ht(Ke(e.modes)),g_)){const i=Ht(Ke(e.modes)),o=Uy(i);this.tokensMap=kt(o,(u,l)=>(u[l.name]=l,u),{})}else if(zt(e))this.tokensMap=at(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=Jr;const n=K(e,"modes")?Ht(Ke(e.modes)):Ke(e),a=Yt(n,i=>Ae(i.categoryMatches));this.tokenMatcher=a?Os:yi,gi(Ke(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'
134
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const a=K(n,"resyncEnabled")?n.resyncEnabled:Af.resyncEnabled,i=K(n,"recoveryValueFunc")?n.recoveryValueFunc:Af.recoveryValueFunc,o=this.ruleShortNameIdx<<d1+nn;this.ruleShortNameIdx++,this.shortRuleNameToFull[o]=e,this.fullRuleNameToShort[e]=o;let u;return this.outputCst===!0?u=s(function(...f){try{this.ruleInvocationStateUpdate(o,e,this.subruleIdx),r.apply(this,f);const d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,a,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):u=s(function(...f){try{return this.ruleInvocationStateUpdate(o,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,a,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(u,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){const a=this.RULE_STACK.length===1,i=r&&!this.isBackTracking()&&this.recoveryEnabled;if(Ls(e)){const o=e;if(i){const u=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(u))if(o.resyncedTokens=this.reSyncTo(u),this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return n(e);else{if(this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,o.partialCstResult=l}throw o}}else{if(a)return this.moveToTerminatedState(),n(e);throw o}}else throw e}optionInternal(e,r){const n=this.getKeyForAutomaticLookahead(Z_,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let a=this.getLaFuncFromCache(n),i;if(typeof e!="function"){i=e.DEF;const o=e.GATE;if(o!==void 0){const u=a;a=s(()=>o.call(this)&&u.call(this),"lookAheadFunc")}}else i=e;if(a.call(this)===!0)return i.call(this)}atLeastOneInternal(e,r){const n=this.getKeyForAutomaticLookahead(xm,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let a=this.getLaFuncFromCache(n),i;if(typeof r!="function"){i=r.DEF;const o=r.GATE;if(o!==void 0){const u=a;a=s(()=>o.call(this)&&u.call(this),"lookAheadFunc")}}else i=r;if(a.call(this)===!0){let o=this.doSingleRepetition(i);for(;a.call(this)===!0&&o===!0;)o=this.doSingleRepetition(i)}else throw this.raiseEarlyExitException(e,ke.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],a,xm,e,n1)}atLeastOneSepFirstInternal(e,r){const n=this.getKeyForAutomaticLookahead(Dc,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){const a=r.DEF,i=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){a.call(this);const u=s(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),i)===!0;)this.CONSUME(i),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,u,a,Zv],u,Dc,e,Zv)}else throw this.raiseEarlyExitException(e,ke.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){const n=this.getKeyForAutomaticLookahead(Dm,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let a=this.getLaFuncFromCache(n),i;if(typeof r!="function"){i=r.DEF;const u=r.GATE;if(u!==void 0){const l=a;a=s(()=>u.call(this)&&l.call(this),"lookaheadFunction")}}else i=r;let o=!0;for(;a.call(this)===!0&&o===!0;)o=this.doSingleRepetition(i);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],a,Dm,e,r1,o)}manySepFirstInternal(e,r){const n=this.getKeyForAutomaticLookahead(Mm,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){const a=r.DEF,i=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){a.call(this);const u=s(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),i)===!0;)this.CONSUME(i),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,u,a,Jv],u,Mm,e,Jv)}}repetitionSepSecondInternal(e,r,n,a,i){for(;n();)this.CONSUME(r),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,a,i],n,Dc,e,i)}doSingleRepetition(e){const r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){const n=this.getKeyForAutomaticLookahead(J_,r),a=ie(e)?e:e.DEF,o=this.getLaFuncFromCache(n).call(this,a);if(o!==void 0)return a[o].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){const e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new l1(r,e))}}subruleInternal(e,r,n){let a;try{const i=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,a=e.apply(this,i),this.cstPostNonTerminal(a,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),a}catch(i){throw this.subruleInternalError(i,n,e.ruleName)}}subruleInternalError(e,r,n){throw Ls(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 a;try{const i=this.LA(1);this.tokenMatcher(i,e)===!0?(this.consumeToken(),a=i):this.consumeInternalError(e,i,n)}catch(i){a=this.consumeInternalRecovery(e,r,i)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,a),a}consumeInternalError(e,r,n){let a;const i=this.LA(0);throw n!==void 0&&n.ERR_MSG?a=n.ERR_MSG:a=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new H_(a,r,i))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){const a=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,a)}catch(i){throw i.name===Y_?n:i}}else throw n}saveRecogState(){const e=this.errors,r=at(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Jr)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},s(Mo,"RecognizerEngine"),Mo),Go,$1=(Go=class{initErrorHandler(e){this._errors=[],this.errorMessageProvider=K(e,"errorMessageProvider")?e.errorMessageProvider:Lr.errorMessageProvider}SAVE_ERROR(e){if(Ls(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:at(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return at(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){const a=this.getCurrRuleFullName(),i=this.getGAstProductions()[a],u=tc(e,i,r,this.maxLookahead)[0],l=[];for(let f=1;f<=this.maxLookahead;f++)l.push(this.LA(f));const c=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:u,actual:l,previous:this.LA(0),customUserDescription:n,ruleName:a});throw this.SAVE_ERROR(new u1(c,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){const n=this.getCurrRuleFullName(),a=this.getGAstProductions()[n],i=ec(e,a,this.maxLookahead),o=[];for(let c=1;c<=this.maxLookahead;c++)o.push(this.LA(c));const u=this.LA(0),l=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:i,actual:o,previous:u,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new o1(l,this.LA(1),u))}},s(Go,"ErrorHandler"),Go),Fo,R1=(Fo=class{initContentAssist(){}computeContentAssist(e,r){const n=this.gastProductionsCache[e];if(kr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return eg([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const r=Jt(e.ruleStack),a=this.getGAstProductions()[r];return new t1(a,e).startWalking()}},s(Fo,"ContentAssist"),Fo),vd={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(vd);var Qv=!0,eT=Math.pow(2,nn)-1,oS=Ya({name:"RECORDING_PHASE_TOKEN",pattern:pt.NA});gi([oS]);var lS=Qu(oS,`This IToken indicates the Parser is in Recording Phase
135
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(lS);var A1={name:`This CSTNode indicates the Parser is in Recording Phase
136
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},zo,E1=(zo=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++){const r=e>0?e:"";this[`CONSUME${r}`]=function(n,a){return this.consumeInternalRecord(n,e,a)},this[`SUBRULE${r}`]=function(n,a){return this.subruleInternalRecord(n,e,a)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{const e=this;for(let r=0;r<10;r++){const n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return Rf}topLevelRuleRecord(e,r){try{const n=new pi({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+`
137
+ This error was thrown during the "grammar recording phase" For more info see:
138
+ https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return Ia.call(this,nt,e,r)}atLeastOneInternalRecord(e,r){Ia.call(this,Ot,r,e)}atLeastOneSepFirstInternalRecord(e,r){Ia.call(this,Lt,r,e,Qv)}manyInternalRecord(e,r){Ia.call(this,Le,r,e)}manySepFirstInternalRecord(e,r){Ia.call(this,bt,r,e,Qv)}orInternalRecord(e,r){return uS.call(this,e,r)}subruleInternalRecord(e,r,n){if(Ds(r),!e||K(e,"ruleName")===!1){const u=new Error(`<SUBRULE${jm(r)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
139
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw u.KNOWN_RECORDER_ERROR=!0,u}const a=jn(this.recordingProdStack),i=e.ruleName,o=new ht({idx:r,nonTerminalName:i,label:n==null?void 0:n.LABEL,referencedRule:void 0});return a.definition.push(o),this.outputCst?A1:vd}consumeInternalRecord(e,r,n){if(Ds(r),!Jy(e)){const o=new Error(`<CONSUME${jm(r)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
140
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}const a=jn(this.recordingProdStack),i=new Se({idx:r,terminalType:e,label:n==null?void 0:n.LABEL});return a.definition.push(i),lS}},s(zo,"GastRecorder"),zo);function Ia(t,e,r,n=!1){Ds(r);const a=jn(this.recordingProdStack),i=Gr(e)?e:e.DEF,o=new t({definition:[],idx:r});return n&&(o.separator=e.SEP),K(e,"MAX_LOOKAHEAD")&&(o.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(o),i.call(this),a.definition.push(o),this.recordingProdStack.pop(),vd}s(Ia,"recordProd");function uS(t,e){Ds(e);const r=jn(this.recordingProdStack),n=ie(t)===!1,a=n===!1?t:t.DEF,i=new _t({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});K(t,"MAX_LOOKAHEAD")&&(i.maxLookahead=t.MAX_LOOKAHEAD);const o=Cb(a,u=>Gr(u.GATE));return i.hasPredicates=o,r.definition.push(i),q(a,u=>{const l=new Ct({definition:[]});i.definition.push(l),K(u,"IGNORE_AMBIGUITIES")?l.ignoreAmbiguities=u.IGNORE_AMBIGUITIES:K(u,"GATE")&&(l.ignoreAmbiguities=!0),this.recordingProdStack.push(l),u.ALT.call(this),this.recordingProdStack.pop()}),vd}s(uS,"recordOrProd");function jm(t){return t===0?"":`${t}`}s(jm,"getIdxSuffix");function Ds(t){if(t<0||t>eT){const e=new Error(`Invalid DSL Method idx value: <${t}>
141
+ Idx value must be a none negative value smaller than ${eT+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}s(Ds,"assertMethodIdxIsValid");var jo,C1=(jo=class{initPerformanceTracer(e){if(K(e,"traceInitPerf")){const r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=Lr.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);const{time:a,value:i}=Wy(r),o=a>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&o(`${n}<-- <${e}> time: ${a}ms`),this.traceInitIndent--,i}else return r()}},s(jo,"PerformanceTracer"),jo);function cS(t,e){e.forEach(r=>{const n=r.prototype;Object.getOwnPropertyNames(n).forEach(a=>{if(a==="constructor")return;const i=Object.getOwnPropertyDescriptor(n,a);i&&(i.get||i.set)?Object.defineProperty(t.prototype,a,i):t.prototype[a]=r.prototype[a]})})}s(cS,"applyMixins");var Rf=Qu(Jr,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Rf);var Lr=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:qa,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Af=Object.freeze({recoveryValueFunc:s(()=>{},"recoveryValueFunc"),resyncEnabled:!0}),yt;(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"})(yt||(yt={}));function Bm(t=void 0){return function(){return t}}s(Bm,"EMPTY_ALT");var li,lg=(li=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;const r=this.className;this.TRACE_INIT("toFastProps",()=>{qy(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),q(this.definedRulesNames,a=>{const o=this[a].originalGrammarAction;let u;this.TRACE_INIT(`${a} Rule`,()=>{u=this.topLevelRuleRecord(a,o)}),this.gastProductionsCache[a]=u})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=j_({rules:Ke(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(Ae(n)&&this.skipValidations===!1){const a=B_({rules:Ke(this.gastProductionsCache),tokenTypes:Ke(this.tokensMap),errMsgProvider:Ln,grammarName:r}),i=w_({lookaheadStrategy:this.lookaheadStrategy,rules:Ke(this.gastProductionsCache),tokenTypes:Ke(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(a,i)}}),Ae(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{const a=xb(Ke(this.gastProductionsCache));this.resyncFollows=a}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var a,i;(i=(a=this.lookaheadStrategy).initialize)===null||i===void 0||i.call(a,{rules:Ke(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Ke(this.gastProductionsCache))})),!li.DEFER_DEFINITION_ERRORS_HANDLING&&!Ae(this.definitionErrors))throw e=j(this.definitionErrors,a=>a.message),new Error(`Parser Definition Errors detected:
142
+ ${e.join(`
143
+ -------------------------------
144
+ `)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;const n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),K(r,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
145
+ Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
146
+ See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
147
+ For further details.`);this.skipValidations=K(r,"skipValidations")?r.skipValidations:Lr.skipValidations}},s(li,"Parser"),li);lg.DEFER_DEFINITION_ERRORS_HANDLING=!1;cS(lg,[f1,p1,y1,g1,T1,v1,$1,R1,E1,C1]);var Bo,b1=(Bo=class extends lg{constructor(e,r=Lr){const n=at(r);n.outputCst=!1,super(e,n)}},s(Bo,"EmbeddedActionsParser"),Bo);function fS(t,e){for(var r=-1,n=t==null?0:t.length,a=Array(n);++r<n;)a[r]=e(t[r],r,t);return a}s(fS,"arrayMap");var dS=fS;function pS(){this.__data__=[],this.size=0}s(pS,"listCacheClear");var _1=pS;function mS(t,e){return t===e||t!==t&&e!==e}s(mS,"eq");var hS=mS;function yS(t,e){for(var r=t.length;r--;)if(hS(t[r][0],e))return r;return-1}s(yS,"assocIndexOf");var Td=yS,S1=Array.prototype,w1=S1.splice;function gS(t){var e=this.__data__,r=Td(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():w1.call(e,r,1),--this.size,!0}s(gS,"listCacheDelete");var I1=gS;function vS(t){var e=this.__data__,r=Td(e,t);return r<0?void 0:e[r][1]}s(vS,"listCacheGet");var N1=vS;function TS(t){return Td(this.__data__,t)>-1}s(TS,"listCacheHas");var P1=TS;function $S(t,e){var r=this.__data__,n=Td(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}s($S,"listCacheSet");var k1=$S;function aa(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(aa,"ListCache");aa.prototype.clear=_1;aa.prototype.delete=I1;aa.prototype.get=N1;aa.prototype.has=P1;aa.prototype.set=k1;var $d=aa;function RS(){this.__data__=new $d,this.size=0}s(RS,"stackClear");var O1=RS;function AS(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}s(AS,"stackDelete");var L1=AS;function ES(t){return this.__data__.get(t)}s(ES,"stackGet");var D1=ES;function CS(t){return this.__data__.has(t)}s(CS,"stackHas");var x1=CS,M1=typeof global=="object"&&global&&global.Object===Object&&global,bS=M1,G1=typeof self=="object"&&self&&self.Object===Object&&self,F1=bS||G1||Function("return this")(),Fr=F1,z1=Fr.Symbol,pr=z1,_S=Object.prototype,j1=_S.hasOwnProperty,B1=_S.toString,zi=pr?pr.toStringTag:void 0;function SS(t){var e=j1.call(t,zi),r=t[zi];try{t[zi]=void 0;var n=!0}catch{}var a=B1.call(t);return n&&(e?t[zi]=r:delete t[zi]),a}s(SS,"getRawTag");var U1=SS,K1=Object.prototype,W1=K1.toString;function wS(t){return W1.call(t)}s(wS,"objectToString");var q1=wS,V1="[object Null]",H1="[object Undefined]",tT=pr?pr.toStringTag:void 0;function IS(t){return t==null?t===void 0?H1:V1:tT&&tT in Object(t)?U1(t):q1(t)}s(IS,"baseGetTag");var vi=IS;function NS(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}s(NS,"isObject");var ug=NS,Y1="[object AsyncFunction]",X1="[object Function]",J1="[object GeneratorFunction]",Z1="[object Proxy]";function PS(t){if(!ug(t))return!1;var e=vi(t);return e==X1||e==J1||e==Y1||e==Z1}s(PS,"isFunction");var kS=PS,Q1=Fr["__core-js_shared__"],Yd=Q1,rT=function(){var t=/[^.]+$/.exec(Yd&&Yd.keys&&Yd.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function OS(t){return!!rT&&rT in t}s(OS,"isMasked");var eG=OS,tG=Function.prototype,rG=tG.toString;function LS(t){if(t!=null){try{return rG.call(t)}catch{}try{return t+""}catch{}}return""}s(LS,"toSource");var ia=LS,nG=/[\\^$.*+?()[\]{}|]/g,aG=/^\[object .+?Constructor\]$/,iG=Function.prototype,sG=Object.prototype,oG=iG.toString,lG=sG.hasOwnProperty,uG=RegExp("^"+oG.call(lG).replace(nG,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function DS(t){if(!ug(t)||eG(t))return!1;var e=kS(t)?uG:aG;return e.test(ia(t))}s(DS,"baseIsNative");var cG=DS;function xS(t,e){return t==null?void 0:t[e]}s(xS,"getValue");var fG=xS;function MS(t,e){var r=fG(t,e);return cG(r)?r:void 0}s(MS,"getNative");var Ti=MS,dG=Ti(Fr,"Map"),xs=dG,pG=Ti(Object,"create"),Ms=pG;function GS(){this.__data__=Ms?Ms(null):{},this.size=0}s(GS,"hashClear");var mG=GS;function FS(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}s(FS,"hashDelete");var hG=FS,yG="__lodash_hash_undefined__",gG=Object.prototype,vG=gG.hasOwnProperty;function zS(t){var e=this.__data__;if(Ms){var r=e[t];return r===yG?void 0:r}return vG.call(e,t)?e[t]:void 0}s(zS,"hashGet");var TG=zS,$G=Object.prototype,RG=$G.hasOwnProperty;function jS(t){var e=this.__data__;return Ms?e[t]!==void 0:RG.call(e,t)}s(jS,"hashHas");var AG=jS,EG="__lodash_hash_undefined__";function BS(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Ms&&e===void 0?EG:e,this}s(BS,"hashSet");var CG=BS;function sa(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(sa,"Hash");sa.prototype.clear=mG;sa.prototype.delete=hG;sa.prototype.get=TG;sa.prototype.has=AG;sa.prototype.set=CG;var nT=sa;function US(){this.size=0,this.__data__={hash:new nT,map:new(xs||$d),string:new nT}}s(US,"mapCacheClear");var bG=US;function KS(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}s(KS,"isKeyable");var _G=KS;function WS(t,e){var r=t.__data__;return _G(e)?r[typeof e=="string"?"string":"hash"]:r.map}s(WS,"getMapData");var Rd=WS;function qS(t){var e=Rd(this,t).delete(t);return this.size-=e?1:0,e}s(qS,"mapCacheDelete");var SG=qS;function VS(t){return Rd(this,t).get(t)}s(VS,"mapCacheGet");var wG=VS;function HS(t){return Rd(this,t).has(t)}s(HS,"mapCacheHas");var IG=HS;function YS(t,e){var r=Rd(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}s(YS,"mapCacheSet");var NG=YS;function oa(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(oa,"MapCache");oa.prototype.clear=bG;oa.prototype.delete=SG;oa.prototype.get=wG;oa.prototype.has=IG;oa.prototype.set=NG;var Ad=oa,PG=200;function XS(t,e){var r=this.__data__;if(r instanceof $d){var n=r.__data__;if(!xs||n.length<PG-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ad(n)}return r.set(t,e),this.size=r.size,this}s(XS,"stackSet");var kG=XS;function la(t){var e=this.__data__=new $d(t);this.size=e.size}s(la,"Stack");la.prototype.clear=O1;la.prototype.delete=L1;la.prototype.get=D1;la.prototype.has=x1;la.prototype.set=kG;var Mc=la,OG="__lodash_hash_undefined__";function JS(t){return this.__data__.set(t,OG),this}s(JS,"setCacheAdd");var LG=JS;function ZS(t){return this.__data__.has(t)}s(ZS,"setCacheHas");var DG=ZS;function Gs(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Ad;++e<r;)this.add(t[e])}s(Gs,"SetCache");Gs.prototype.add=Gs.prototype.push=LG;Gs.prototype.has=DG;var QS=Gs;function ew(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(ew,"arraySome");var xG=ew;function tw(t,e){return t.has(e)}s(tw,"cacheHas");var rw=tw,MG=1,GG=2;function nw(t,e,r,n,a,i){var o=r&MG,u=t.length,l=e.length;if(u!=l&&!(o&&l>u))return!1;var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var d=-1,p=!0,h=r&GG?new QS:void 0;for(i.set(t,e),i.set(e,t);++d<u;){var y=t[d],v=e[d];if(n)var E=o?n(v,y,d,e,t,i):n(y,v,d,t,e,i);if(E!==void 0){if(E)continue;p=!1;break}if(h){if(!xG(e,function(T,S){if(!rw(h,S)&&(y===T||a(y,T,r,n,i)))return h.push(S)})){p=!1;break}}else if(!(y===v||a(y,v,r,n,i))){p=!1;break}}return i.delete(t),i.delete(e),p}s(nw,"equalArrays");var aw=nw,FG=Fr.Uint8Array,aT=FG;function iw(t){var e=-1,r=Array(t.size);return t.forEach(function(n,a){r[++e]=[a,n]}),r}s(iw,"mapToArray");var zG=iw;function sw(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}s(sw,"setToArray");var cg=sw,jG=1,BG=2,UG="[object Boolean]",KG="[object Date]",WG="[object Error]",qG="[object Map]",VG="[object Number]",HG="[object RegExp]",YG="[object Set]",XG="[object String]",JG="[object Symbol]",ZG="[object ArrayBuffer]",QG="[object DataView]",iT=pr?pr.prototype:void 0,Xd=iT?iT.valueOf:void 0;function ow(t,e,r,n,a,i,o){switch(r){case QG:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case ZG:return!(t.byteLength!=e.byteLength||!i(new aT(t),new aT(e)));case UG:case KG:case VG:return hS(+t,+e);case WG:return t.name==e.name&&t.message==e.message;case HG:case XG:return t==e+"";case qG:var u=zG;case YG:var l=n&jG;if(u||(u=cg),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;n|=BG,o.set(t,e);var f=aw(u(t),u(e),n,a,i,o);return o.delete(t),f;case JG:if(Xd)return Xd.call(t)==Xd.call(e)}return!1}s(ow,"equalByTag");var eF=ow;function lw(t,e){for(var r=-1,n=e.length,a=t.length;++r<n;)t[a+r]=e[r];return t}s(lw,"arrayPush");var uw=lw,tF=Array.isArray,gt=tF;function cw(t,e,r){var n=e(t);return gt(t)?n:uw(n,r(t))}s(cw,"baseGetAllKeys");var rF=cw;function fw(t,e){for(var r=-1,n=t==null?0:t.length,a=0,i=[];++r<n;){var o=t[r];e(o,r,t)&&(i[a++]=o)}return i}s(fw,"arrayFilter");var dw=fw;function pw(){return[]}s(pw,"stubArray");var nF=pw,aF=Object.prototype,iF=aF.propertyIsEnumerable,sT=Object.getOwnPropertySymbols,sF=sT?function(t){return t==null?[]:(t=Object(t),dw(sT(t),function(e){return iF.call(t,e)}))}:nF,oF=sF;function mw(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}s(mw,"baseTimes");var lF=mw;function hw(t){return t!=null&&typeof t=="object"}s(hw,"isObjectLike");var si=hw,uF="[object Arguments]";function yw(t){return si(t)&&vi(t)==uF}s(yw,"baseIsArguments");var oT=yw,gw=Object.prototype,cF=gw.hasOwnProperty,fF=gw.propertyIsEnumerable,dF=oT(function(){return arguments}())?oT:function(t){return si(t)&&cF.call(t,"callee")&&!fF.call(t,"callee")},Ed=dF;function vw(){return!1}s(vw,"stubFalse");var pF=vw,Tw=typeof exports=="object"&&exports&&!exports.nodeType&&exports,lT=Tw&&typeof module=="object"&&module&&!module.nodeType&&module,mF=lT&&lT.exports===Tw,uT=mF?Fr.Buffer:void 0,hF=uT?uT.isBuffer:void 0,yF=hF||pF,Ef=yF,gF=9007199254740991,vF=/^(?:0|[1-9]\d*)$/;function $w(t,e){var r=typeof t;return e=e??gF,!!e&&(r=="number"||r!="symbol"&&vF.test(t))&&t>-1&&t%1==0&&t<e}s($w,"isIndex");var Rw=$w,TF=9007199254740991;function Aw(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=TF}s(Aw,"isLength");var fg=Aw,$F="[object Arguments]",RF="[object Array]",AF="[object Boolean]",EF="[object Date]",CF="[object Error]",bF="[object Function]",_F="[object Map]",SF="[object Number]",wF="[object Object]",IF="[object RegExp]",NF="[object Set]",PF="[object String]",kF="[object WeakMap]",OF="[object ArrayBuffer]",LF="[object DataView]",DF="[object Float32Array]",xF="[object Float64Array]",MF="[object Int8Array]",GF="[object Int16Array]",FF="[object Int32Array]",zF="[object Uint8Array]",jF="[object Uint8ClampedArray]",BF="[object Uint16Array]",UF="[object Uint32Array]",_e={};_e[DF]=_e[xF]=_e[MF]=_e[GF]=_e[FF]=_e[zF]=_e[jF]=_e[BF]=_e[UF]=!0;_e[$F]=_e[RF]=_e[OF]=_e[AF]=_e[LF]=_e[EF]=_e[CF]=_e[bF]=_e[_F]=_e[SF]=_e[wF]=_e[IF]=_e[NF]=_e[PF]=_e[kF]=!1;function Ew(t){return si(t)&&fg(t.length)&&!!_e[vi(t)]}s(Ew,"baseIsTypedArray");var KF=Ew;function Cw(t){return function(e){return t(e)}}s(Cw,"baseUnary");var WF=Cw,bw=typeof exports=="object"&&exports&&!exports.nodeType&&exports,As=bw&&typeof module=="object"&&module&&!module.nodeType&&module,qF=As&&As.exports===bw,Jd=qF&&bS.process,VF=function(){try{var t=As&&As.require&&As.require("util").types;return t||Jd&&Jd.binding&&Jd.binding("util")}catch{}}(),cT=VF,fT=cT&&cT.isTypedArray,HF=fT?WF(fT):KF,dg=HF,YF=Object.prototype,XF=YF.hasOwnProperty;function _w(t,e){var r=gt(t),n=!r&&Ed(t),a=!r&&!n&&Ef(t),i=!r&&!n&&!a&&dg(t),o=r||n||a||i,u=o?lF(t.length,String):[],l=u.length;for(var c in t)(e||XF.call(t,c))&&!(o&&(c=="length"||a&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||Rw(c,l)))&&u.push(c);return u}s(_w,"arrayLikeKeys");var JF=_w,ZF=Object.prototype;function Sw(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||ZF;return t===r}s(Sw,"isPrototype");var ww=Sw;function Iw(t,e){return function(r){return t(e(r))}}s(Iw,"overArg");var QF=Iw,ez=QF(Object.keys,Object),tz=ez,rz=Object.prototype,nz=rz.hasOwnProperty;function Nw(t){if(!ww(t))return tz(t);var e=[];for(var r in Object(t))nz.call(t,r)&&r!="constructor"&&e.push(r);return e}s(Nw,"baseKeys");var Pw=Nw;function kw(t){return t!=null&&fg(t.length)&&!kS(t)}s(kw,"isArrayLike");var Cd=kw;function Ow(t){return Cd(t)?JF(t):Pw(t)}s(Ow,"keys");var pg=Ow;function Lw(t){return rF(t,pg,oF)}s(Lw,"getAllKeys");var dT=Lw,az=1,iz=Object.prototype,sz=iz.hasOwnProperty;function Dw(t,e,r,n,a,i){var o=r&az,u=dT(t),l=u.length,c=dT(e),f=c.length;if(l!=f&&!o)return!1;for(var d=l;d--;){var p=u[d];if(!(o?p in e:sz.call(e,p)))return!1}var h=i.get(t),y=i.get(e);if(h&&y)return h==e&&y==t;var v=!0;i.set(t,e),i.set(e,t);for(var E=o;++d<l;){p=u[d];var T=t[p],S=e[p];if(n)var b=o?n(S,T,p,e,t,i):n(T,S,p,t,e,i);if(!(b===void 0?T===S||a(T,S,r,n,i):b)){v=!1;break}E||(E=p=="constructor")}if(v&&!E){var N=t.constructor,B=e.constructor;N!=B&&"constructor"in t&&"constructor"in e&&!(typeof N=="function"&&N instanceof N&&typeof B=="function"&&B instanceof B)&&(v=!1)}return i.delete(t),i.delete(e),v}s(Dw,"equalObjects");var oz=Dw,lz=Ti(Fr,"DataView"),Um=lz,uz=Ti(Fr,"Promise"),Km=uz,cz=Ti(Fr,"Set"),Xa=cz,fz=Ti(Fr,"WeakMap"),Wm=fz,pT="[object Map]",dz="[object Object]",mT="[object Promise]",hT="[object Set]",yT="[object WeakMap]",gT="[object DataView]",pz=ia(Um),mz=ia(xs),hz=ia(Km),yz=ia(Xa),gz=ia(Wm),yn=vi;(Um&&yn(new Um(new ArrayBuffer(1)))!=gT||xs&&yn(new xs)!=pT||Km&&yn(Km.resolve())!=mT||Xa&&yn(new Xa)!=hT||Wm&&yn(new Wm)!=yT)&&(yn=s(function(t){var e=vi(t),r=e==dz?t.constructor:void 0,n=r?ia(r):"";if(n)switch(n){case pz:return gT;case mz:return pT;case hz:return mT;case yz:return hT;case gz:return yT}return e},"getTag"));var qm=yn,vz=1,vT="[object Arguments]",TT="[object Array]",lc="[object Object]",Tz=Object.prototype,$T=Tz.hasOwnProperty;function xw(t,e,r,n,a,i){var o=gt(t),u=gt(e),l=o?TT:qm(t),c=u?TT:qm(e);l=l==vT?lc:l,c=c==vT?lc:c;var f=l==lc,d=c==lc,p=l==c;if(p&&Ef(t)){if(!Ef(e))return!1;o=!0,f=!1}if(p&&!f)return i||(i=new Mc),o||dg(t)?aw(t,e,r,n,a,i):eF(t,e,l,r,n,a,i);if(!(r&vz)){var h=f&&$T.call(t,"__wrapped__"),y=d&&$T.call(e,"__wrapped__");if(h||y){var v=h?t.value():t,E=y?e.value():e;return i||(i=new Mc),a(v,E,r,n,i)}}return p?(i||(i=new Mc),oz(t,e,r,n,a,i)):!1}s(xw,"baseIsEqualDeep");var $z=xw;function mg(t,e,r,n,a){return t===e?!0:t==null||e==null||!si(t)&&!si(e)?t!==t&&e!==e:$z(t,e,r,n,mg,a)}s(mg,"baseIsEqual");var Mw=mg,Rz=1,Az=2;function Gw(t,e,r,n){var a=r.length,i=a,o=!n;if(t==null)return!i;for(t=Object(t);a--;){var u=r[a];if(o&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++a<i;){u=r[a];var l=u[0],c=t[l],f=u[1];if(o&&u[2]){if(c===void 0&&!(l in t))return!1}else{var d=new Mc;if(n)var p=n(c,f,l,t,e,d);if(!(p===void 0?Mw(f,c,Rz|Az,n,d):p))return!1}}return!0}s(Gw,"baseIsMatch");var Ez=Gw;function Fw(t){return t===t&&!ug(t)}s(Fw,"isStrictComparable");var zw=Fw;function jw(t){for(var e=pg(t),r=e.length;r--;){var n=e[r],a=t[n];e[r]=[n,a,zw(a)]}return e}s(jw,"getMatchData");var Cz=jw;function Bw(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}s(Bw,"matchesStrictComparable");var Uw=Bw;function Kw(t){var e=Cz(t);return e.length==1&&e[0][2]?Uw(e[0][0],e[0][1]):function(r){return r===t||Ez(r,t,e)}}s(Kw,"baseMatches");var bz=Kw,_z="[object Symbol]";function Ww(t){return typeof t=="symbol"||si(t)&&vi(t)==_z}s(Ww,"isSymbol");var bd=Ww,Sz=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,wz=/^\w*$/;function qw(t,e){if(gt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||bd(t)?!0:wz.test(t)||!Sz.test(t)||e!=null&&t in Object(e)}s(qw,"isKey");var hg=qw,Iz="Expected a function";function _d(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(Iz);var r=s(function(){var n=arguments,a=e?e.apply(this,n):n[0],i=r.cache;if(i.has(a))return i.get(a);var o=t.apply(this,n);return r.cache=i.set(a,o)||i,o},"memoized");return r.cache=new(_d.Cache||Ad),r}s(_d,"memoize");_d.Cache=Ad;var Nz=_d,Pz=500;function Vw(t){var e=Nz(t,function(n){return r.size===Pz&&r.clear(),n}),r=e.cache;return e}s(Vw,"memoizeCapped");var kz=Vw,Oz=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lz=/\\(\\)?/g,Dz=kz(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(Oz,function(r,n,a,i){e.push(a?i.replace(Lz,"$1"):n||r)}),e}),xz=Dz,Mz=1/0,RT=pr?pr.prototype:void 0,AT=RT?RT.toString:void 0;function yg(t){if(typeof t=="string")return t;if(gt(t))return dS(t,yg)+"";if(bd(t))return AT?AT.call(t):"";var e=t+"";return e=="0"&&1/t==-Mz?"-0":e}s(yg,"baseToString");var Gz=yg;function Hw(t){return t==null?"":Gz(t)}s(Hw,"toString");var Fz=Hw;function Yw(t,e){return gt(t)?t:hg(t,e)?[t]:xz(Fz(t))}s(Yw,"castPath");var Xw=Yw,zz=1/0;function Jw(t){if(typeof t=="string"||bd(t))return t;var e=t+"";return e=="0"&&1/t==-zz?"-0":e}s(Jw,"toKey");var Sd=Jw;function Zw(t,e){e=Xw(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[Sd(e[r++])];return r&&r==n?t:void 0}s(Zw,"baseGet");var Qw=Zw;function eI(t,e,r){var n=t==null?void 0:Qw(t,e);return n===void 0?r:n}s(eI,"get");var jz=eI;function tI(t,e){return t!=null&&e in Object(t)}s(tI,"baseHasIn");var Bz=tI;function rI(t,e,r){e=Xw(e,t);for(var n=-1,a=e.length,i=!1;++n<a;){var o=Sd(e[n]);if(!(i=t!=null&&r(t,o)))break;t=t[o]}return i||++n!=a?i:(a=t==null?0:t.length,!!a&&fg(a)&&Rw(o,a)&&(gt(t)||Ed(t)))}s(rI,"hasPath");var Uz=rI;function nI(t,e){return t!=null&&Uz(t,e,Bz)}s(nI,"hasIn");var Kz=nI,Wz=1,qz=2;function aI(t,e){return hg(t)&&zw(e)?Uw(Sd(t),e):function(r){var n=jz(r,t);return n===void 0&&n===e?Kz(r,t):Mw(e,n,Wz|qz)}}s(aI,"baseMatchesProperty");var Vz=aI;function iI(t){return t}s(iI,"identity");var gg=iI;function sI(t){return function(e){return e==null?void 0:e[t]}}s(sI,"baseProperty");var Hz=sI;function oI(t){return function(e){return Qw(e,t)}}s(oI,"basePropertyDeep");var Yz=oI;function lI(t){return hg(t)?Hz(Sd(t)):Yz(t)}s(lI,"property");var Xz=lI;function uI(t){return typeof t=="function"?t:t==null?gg:typeof t=="object"?gt(t)?Vz(t[0],t[1]):bz(t):Xz(t)}s(uI,"baseIteratee");var wd=uI;function cI(t){return function(e,r,n){for(var a=-1,i=Object(e),o=n(e),u=o.length;u--;){var l=o[t?u:++a];if(r(i[l],l,i)===!1)break}return e}}s(cI,"createBaseFor");var Jz=cI,Zz=Jz(),Qz=Zz;function fI(t,e){return t&&Qz(t,e,pg)}s(fI,"baseForOwn");var ej=fI;function dI(t,e){return function(r,n){if(r==null)return r;if(!Cd(r))return t(r,n);for(var a=r.length,i=e?a:-1,o=Object(r);(e?i--:++i<a)&&n(o[i],i,o)!==!1;);return r}}s(dI,"createBaseEach");var tj=dI,rj=tj(ej),Id=rj;function pI(t,e){var r=-1,n=Cd(t)?Array(t.length):[];return Id(t,function(a,i,o){n[++r]=e(a,i,o)}),n}s(pI,"baseMap");var nj=pI;function mI(t,e){var r=gt(t)?dS:nj;return r(t,wd(e))}s(mI,"map");var _r=mI;function hI(t,e){var r=[];return Id(t,function(n,a,i){e(n,a,i)&&r.push(n)}),r}s(hI,"baseFilter");var aj=hI;function yI(t,e){var r=gt(t)?dw:aj;return r(t,wd(e))}s(yI,"filter");var ij=yI;function Un(t,e,r){return`${t.name}_${e}_${r}`}s(Un,"buildATNKey");var Zr=1,sj=2,gI=4,vI=5,rc=7,oj=8,lj=9,uj=10,cj=11,TI=12,Uo,vg=(Uo=class{constructor(e){this.target=e}isEpsilon(){return!1}},s(Uo,"AbstractTransition"),Uo),Ko,Tg=(Ko=class extends vg{constructor(e,r){super(e),this.tokenType=r}},s(Ko,"AtomTransition"),Ko),Wo,$I=(Wo=class extends vg{constructor(e){super(e)}isEpsilon(){return!0}},s(Wo,"EpsilonTransition"),Wo),qo,$g=(qo=class extends vg{constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}},s(qo,"RuleTransition"),qo);function RI(t){const e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};AI(e,t);const r=t.length;for(let n=0;n<r;n++){const a=t[n],i=an(e,a,a);i!==void 0&&OI(e,a,i)}return e}s(RI,"createATN");function AI(t,e){const r=e.length;for(let n=0;n<r;n++){const a=e[n],i=We(t,a,void 0,{type:sj}),o=We(t,a,void 0,{type:rc});i.stop=o,t.ruleToStartState.set(a,i),t.ruleToStopState.set(a,o)}}s(AI,"createRuleStartAndStopATNStates");function Rg(t,e,r){return r instanceof Se?Nd(t,e,r.terminalType,r):r instanceof ht?kI(t,e,r):r instanceof _t?SI(t,e,r):r instanceof nt?wI(t,e,r):r instanceof Le?EI(t,e,r):r instanceof bt?CI(t,e,r):r instanceof Ot?bI(t,e,r):r instanceof Lt?_I(t,e,r):an(t,e,r)}s(Rg,"atom");function EI(t,e,r){const n=We(t,e,r,{type:vI});zr(t,n);const a=ua(t,e,n,r,an(t,e,r));return Eg(t,e,r,a)}s(EI,"repetition");function CI(t,e,r){const n=We(t,e,r,{type:vI});zr(t,n);const a=ua(t,e,n,r,an(t,e,r)),i=Nd(t,e,r.separator,r);return Eg(t,e,r,a,i)}s(CI,"repetitionSep");function bI(t,e,r){const n=We(t,e,r,{type:gI});zr(t,n);const a=ua(t,e,n,r,an(t,e,r));return Ag(t,e,r,a)}s(bI,"repetitionMandatory");function _I(t,e,r){const n=We(t,e,r,{type:gI});zr(t,n);const a=ua(t,e,n,r,an(t,e,r)),i=Nd(t,e,r.separator,r);return Ag(t,e,r,a,i)}s(_I,"repetitionMandatorySep");function SI(t,e,r){const n=We(t,e,r,{type:Zr});zr(t,n);const a=_r(r.definition,o=>Rg(t,e,o));return ua(t,e,n,r,...a)}s(SI,"alternation");function wI(t,e,r){const n=We(t,e,r,{type:Zr});zr(t,n);const a=ua(t,e,n,r,an(t,e,r));return II(t,e,r,a)}s(wI,"option");function an(t,e,r){const n=ij(_r(r.definition,a=>Rg(t,e,a)),a=>a!==void 0);return n.length===1?n[0]:n.length===0?void 0:PI(t,n)}s(an,"block");function Ag(t,e,r,n,a){const i=n.left,o=n.right,u=We(t,e,r,{type:cj});zr(t,u);const l=We(t,e,r,{type:TI});return i.loopback=u,l.loopback=u,t.decisionMap[Un(e,a?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=u,Fe(o,u),a===void 0?(Fe(u,i),Fe(u,l)):(Fe(u,l),Fe(u,a.left),Fe(a.right,i)),{left:i,right:l}}s(Ag,"plus");function Eg(t,e,r,n,a){const i=n.left,o=n.right,u=We(t,e,r,{type:uj});zr(t,u);const l=We(t,e,r,{type:TI}),c=We(t,e,r,{type:lj});return u.loopback=c,l.loopback=c,Fe(u,i),Fe(u,l),Fe(o,c),a!==void 0?(Fe(c,l),Fe(c,a.left),Fe(a.right,i)):Fe(c,u),t.decisionMap[Un(e,a?"RepetitionWithSeparator":"Repetition",r.idx)]=u,{left:u,right:l}}s(Eg,"star");function II(t,e,r,n){const a=n.left,i=n.right;return Fe(a,i),t.decisionMap[Un(e,"Option",r.idx)]=a,n}s(II,"optional");function zr(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}s(zr,"defineDecisionState");function ua(t,e,r,n,...a){const i=We(t,e,n,{type:oj,start:r});r.end=i;for(const u of a)u!==void 0?(Fe(r,u.left),Fe(u.right,i)):Fe(r,i);const o={left:r,right:i};return t.decisionMap[Un(e,NI(n),n.idx)]=r,o}s(ua,"makeAlts");function NI(t){if(t instanceof _t)return"Alternation";if(t instanceof nt)return"Option";if(t instanceof Le)return"Repetition";if(t instanceof bt)return"RepetitionWithSeparator";if(t instanceof Ot)return"RepetitionMandatory";if(t instanceof Lt)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}s(NI,"getProdType");function PI(t,e){const r=e.length;for(let i=0;i<r-1;i++){const o=e[i];let u;o.left.transitions.length===1&&(u=o.left.transitions[0]);const l=u instanceof $g,c=u,f=e[i+1].left;o.left.type===Zr&&o.right.type===Zr&&u!==void 0&&(l&&c.followState===o.right||u.target===o.right)?(l?c.followState=f:u.target=f,LI(t,o.right)):Fe(o.right,f)}const n=e[0],a=e[r-1];return{left:n.left,right:a.right}}s(PI,"makeBlock");function Nd(t,e,r,n){const a=We(t,e,n,{type:Zr}),i=We(t,e,n,{type:Zr});return Pd(a,new Tg(i,r)),{left:a,right:i}}s(Nd,"tokenRef");function kI(t,e,r){const n=r.referencedRule,a=t.ruleToStartState.get(n),i=We(t,e,r,{type:Zr}),o=We(t,e,r,{type:Zr}),u=new $g(a,n,o);return Pd(i,u),{left:i,right:o}}s(kI,"ruleRef");function OI(t,e,r){const n=t.ruleToStartState.get(e);Fe(n,r.left);const a=t.ruleToStopState.get(e);return Fe(r.right,a),{left:n,right:a}}s(OI,"buildRuleHandle");function Fe(t,e){const r=new $I(e);Pd(t,r)}s(Fe,"epsilon");function We(t,e,r,n){const a=Object.assign({atn:t,production:r,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:t.states.length},n);return t.states.push(a),a}s(We,"newState");function Pd(t,e){t.transitions.length===0&&(t.epsilonOnlyTransitions=e.isEpsilon()),t.transitions.push(e)}s(Pd,"addTransition");function LI(t,e){t.states.splice(t.states.indexOf(e),1)}s(LI,"removeState");var Cf={},Vo,Vm=(Vo=class{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){const r=Cg(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(const r in this.map)e+=r+":";return e}},s(Vo,"ATNConfigSet"),Vo);function Cg(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}s(Cg,"getATNConfigKey");function DI(t,e,r){for(var n=-1,a=t.length;++n<a;){var i=t[n],o=e(i);if(o!=null&&(u===void 0?o===o&&!bd(o):r(o,u)))var u=o,l=i}return l}s(DI,"baseExtremum");var fj=DI;function xI(t,e){return t<e}s(xI,"baseLt");var dj=xI;function MI(t){return t&&t.length?fj(t,gg,dj):void 0}s(MI,"min");var pj=MI,ET=pr?pr.isConcatSpreadable:void 0;function GI(t){return gt(t)||Ed(t)||!!(ET&&t&&t[ET])}s(GI,"isFlattenable");var mj=GI;function bg(t,e,r,n,a){var i=-1,o=t.length;for(r||(r=mj),a||(a=[]);++i<o;){var u=t[i];e>0&&r(u)?e>1?bg(u,e-1,r,n,a):uw(a,u):n||(a[a.length]=u)}return a}s(bg,"baseFlatten");var FI=bg;function zI(t,e){return FI(_r(t,e),1)}s(zI,"flatMap");var hj=zI;function jI(t,e,r,n){for(var a=t.length,i=r+(n?1:-1);n?i--:++i<a;)if(e(t[i],i,t))return i;return-1}s(jI,"baseFindIndex");var yj=jI;function BI(t){return t!==t}s(BI,"baseIsNaN");var gj=BI;function UI(t,e,r){for(var n=r-1,a=t.length;++n<a;)if(t[n]===e)return n;return-1}s(UI,"strictIndexOf");var vj=UI;function KI(t,e,r){return e===e?vj(t,e,r):yj(t,gj,r)}s(KI,"baseIndexOf");var Tj=KI;function WI(t,e){var r=t==null?0:t.length;return!!r&&Tj(t,e,0)>-1}s(WI,"arrayIncludes");var $j=WI;function qI(t,e,r){for(var n=-1,a=t==null?0:t.length;++n<a;)if(r(e,t[n]))return!0;return!1}s(qI,"arrayIncludesWith");var Rj=qI;function VI(){}s(VI,"noop");var Aj=VI,Ej=1/0,Cj=Xa&&1/cg(new Xa([,-0]))[1]==Ej?function(t){return new Xa(t)}:Aj,bj=Cj,_j=200;function HI(t,e,r){var n=-1,a=$j,i=t.length,o=!0,u=[],l=u;if(r)o=!1,a=Rj;else if(i>=_j){var c=e?null:bj(t);if(c)return cg(c);o=!1,a=rw,l=new QS}else l=e?[]:u;e:for(;++n<i;){var f=t[n],d=e?e(f):f;if(f=r||f!==0?f:0,o&&d===d){for(var p=l.length;p--;)if(l[p]===d)continue e;e&&l.push(d),u.push(f)}else a(l,d,r)||(l!==u&&l.push(d),u.push(f))}return u}s(HI,"baseUniq");var Sj=HI;function YI(t,e){return t&&t.length?Sj(t,wd(e)):[]}s(YI,"uniqBy");var wj=YI;function XI(t){var e=t==null?0:t.length;return e?FI(t,1):[]}s(XI,"flatten");var Ij=XI;function JI(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}s(JI,"arrayEach");var Nj=JI;function ZI(t){return typeof t=="function"?t:gg}s(ZI,"castFunction");var Pj=ZI;function QI(t,e){var r=gt(t)?Nj:Id;return r(t,Pj(e))}s(QI,"forEach");var Zd=QI,kj="[object Map]",Oj="[object Set]",Lj=Object.prototype,Dj=Lj.hasOwnProperty;function eN(t){if(t==null)return!0;if(Cd(t)&&(gt(t)||typeof t=="string"||typeof t.splice=="function"||Ef(t)||dg(t)||Ed(t)))return!t.length;var e=qm(t);if(e==kj||e==Oj)return!t.size;if(ww(t))return!Pw(t).length;for(var r in t)if(Dj.call(t,r))return!1;return!0}s(eN,"isEmpty");var xj=eN;function tN(t,e,r,n){var a=-1,i=t==null?0:t.length;for(n&&i&&(r=t[++a]);++a<i;)r=e(r,t[a],a,t);return r}s(tN,"arrayReduce");var Mj=tN;function rN(t,e,r,n,a){return a(t,function(i,o,u){r=n?(n=!1,i):e(r,i,o,u)}),r}s(rN,"baseReduce");var Gj=rN;function nN(t,e,r){var n=gt(t)?Mj:Gj,a=arguments.length<3;return n(t,wd(e),r,a,Id)}s(nN,"reduce");var CT=nN;function aN(t,e){const r={};return n=>{const a=n.toString();let i=r[a];return i!==void 0||(i={atnStartState:t,decision:e,states:{}},r[a]=i),i}}s(aN,"createDFACache");var Ho,iN=(Ho=class{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="";const r=this.predicates.length;for(let n=0;n<r;n++)e+=this.predicates[n]===!0?"1":"0";return e}},s(Ho,"PredicateSet"),Ho),bT=new iN,Yo,Fj=(Yo=class extends sg{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=RI(e.rules),this.dfas=sN(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){const{prodOccurrence:r,rule:n,hasPredicates:a,dynamicTokensEnabled:i}=e,o=this.dfas,u=this.logging,l=Un(n,"Alternation",r),f=this.atn.decisionMap[l].decision,d=_r(Om({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>_r(p,h=>h[0]));if(Hm(d,!1)&&!i){const p=CT(d,(h,y,v)=>(Zd(y,E=>{E&&(h[E.tokenTypeIdx]=v,Zd(E.categoryMatches,T=>{h[T]=v}))}),h),{});return a?function(h){var y;const v=this.LA(1),E=p[v.tokenTypeIdx];if(h!==void 0&&E!==void 0){const T=(y=h[E])===null||y===void 0?void 0:y.GATE;if(T!==void 0&&T.call(this)===!1)return}return E}:function(){const h=this.LA(1);return p[h.tokenTypeIdx]}}else return a?function(p){const h=new iN,y=p===void 0?0:p.length;for(let E=0;E<y;E++){const T=p==null?void 0:p[E].GATE;h.set(E,T===void 0||T.call(this))}const v=Gc.call(this,o,f,h,u);return typeof v=="number"?v:void 0}:function(){const p=Gc.call(this,o,f,bT,u);return typeof p=="number"?p:void 0}}buildLookaheadForOptional(e){const{prodOccurrence:r,rule:n,prodType:a,dynamicTokensEnabled:i}=e,o=this.dfas,u=this.logging,l=Un(n,a,r),f=this.atn.decisionMap[l].decision,d=_r(Om({maxLookahead:1,occurrence:r,prodType:a,rule:n}),p=>_r(p,h=>h[0]));if(Hm(d)&&d[0][0]&&!i){const p=d[0],h=Ij(p);if(h.length===1&&xj(h[0].categoryMatches)){const v=h[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===v}}else{const y=CT(h,(v,E)=>(E!==void 0&&(v[E.tokenTypeIdx]=!0,Zd(E.categoryMatches,T=>{v[T]=!0})),v),{});return function(){const v=this.LA(1);return y[v.tokenTypeIdx]===!0}}}return function(){const p=Gc.call(this,o,f,bT,u);return typeof p=="object"?!1:p===0}}},s(Yo,"LLStarLookaheadStrategy"),Yo);function Hm(t,e=!0){const r=new Set;for(const n of t){const a=new Set;for(const i of n){if(i===void 0){if(e)break;return!1}const o=[i.tokenTypeIdx].concat(i.categoryMatches);for(const u of o)if(r.has(u)){if(!a.has(u))return!1}else r.add(u),a.add(u)}}return!0}s(Hm,"isLL1Sequence");function sN(t){const e=t.decisionStates.length,r=Array(e);for(let n=0;n<e;n++)r[n]=aN(t.decisionStates[n],n);return r}s(sN,"initATNSimulator");function Gc(t,e,r,n){const a=t[e](r);let i=a.start;if(i===void 0){const u=gN(a.atnStartState);i=Sg(a,_g(u)),a.start=i}return oN.apply(this,[a,i,r,n])}s(Gc,"adaptivePredict");function oN(t,e,r,n){let a=e,i=1;const o=[];let u=this.LA(i++);for(;;){let l=pN(a,u);if(l===void 0&&(l=lN.apply(this,[t,a,u,i,r,n])),l===Cf)return dN(o,a,u);if(l.isAcceptState===!0)return l.prediction;a=l,o.push(u),u=this.LA(i++)}}s(oN,"performLookahead");function lN(t,e,r,n,a,i){const o=mN(e.configs,r,a);if(o.size===0)return Ym(t,e,r,Cf),Cf;let u=_g(o);const l=yN(o,a);if(l!==void 0)u.isAcceptState=!0,u.prediction=l,u.configs.uniqueAlt=l;else if(RN(o)){const c=pj(o.alts);u.isAcceptState=!0,u.prediction=c,u.configs.uniqueAlt=c,uN.apply(this,[t,n,o.alts,i])}return u=Ym(t,e,r,u),u}s(lN,"computeLookaheadTarget");function uN(t,e,r,n){const a=[];for(let c=1;c<=e;c++)a.push(this.LA(c).tokenType);const i=t.atnStartState,o=i.rule,u=i.production,l=cN({topLevelRule:o,ambiguityIndices:r,production:u,prefixPath:a});n(l)}s(uN,"reportLookaheadAmbiguity");function cN(t){const e=_r(t.prefixPath,a=>Mn(a)).join(", "),r=t.production.idx===0?"":t.production.idx;let n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${fN(t.production)}${r}> inside <${t.topLevelRule.name}> Rule,
148
+ <${e}> may appears as a prefix path in all these alternatives.
149
+ `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
150
+ For Further details.`,n}s(cN,"buildAmbiguityError");function fN(t){if(t instanceof ht)return"SUBRULE";if(t instanceof nt)return"OPTION";if(t instanceof _t)return"OR";if(t instanceof Ot)return"AT_LEAST_ONE";if(t instanceof Lt)return"AT_LEAST_ONE_SEP";if(t instanceof bt)return"MANY_SEP";if(t instanceof Le)return"MANY";if(t instanceof Se)return"CONSUME";throw Error("non exhaustive match")}s(fN,"getProductionDslName");function dN(t,e,r){const n=hj(e.configs.elements,i=>i.state.transitions),a=wj(n.filter(i=>i instanceof Tg).map(i=>i.tokenType),i=>i.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:a,tokenPath:t}}s(dN,"buildAdaptivePredictError");function pN(t,e){return t.edges[e.tokenTypeIdx]}s(pN,"getExistingTargetState");function mN(t,e,r){const n=new Vm,a=[];for(const o of t.elements){if(r.is(o.alt)===!1)continue;if(o.state.type===rc){a.push(o);continue}const u=o.state.transitions.length;for(let l=0;l<u;l++){const c=o.state.transitions[l],f=hN(c,e);f!==void 0&&n.add({state:f,alt:o.alt,stack:o.stack})}}let i;if(a.length===0&&n.size===1&&(i=n),i===void 0){i=new Vm;for(const o of n.elements)Fs(o,i)}if(a.length>0&&!TN(i))for(const o of a)i.add(o);return i}s(mN,"computeReachSet");function hN(t,e){if(t instanceof Tg&&Qy(e,t.tokenType))return t.target}s(hN,"getReachableTarget");function yN(t,e){let r;for(const n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}s(yN,"getUniqueAlt");function _g(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}s(_g,"newDFAState");function Ym(t,e,r,n){return n=Sg(t,n),e.edges[r.tokenTypeIdx]=n,n}s(Ym,"addDFAEdge");function Sg(t,e){if(e===Cf)return e;const r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}s(Sg,"addDFAState");function gN(t){const e=new Vm,r=t.transitions.length;for(let n=0;n<r;n++){const i={state:t.transitions[n].target,alt:n,stack:[]};Fs(i,e)}return e}s(gN,"computeStartState");function Fs(t,e){const r=t.state;if(r.type===rc){if(t.stack.length>0){const a=[...t.stack],o={state:a.pop(),alt:t.alt,stack:a};Fs(o,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);const n=r.transitions.length;for(let a=0;a<n;a++){const i=r.transitions[a],o=vN(t,i);o!==void 0&&Fs(o,e)}}s(Fs,"closure");function vN(t,e){if(e instanceof $I)return{state:e.target,alt:t.alt,stack:t.stack};if(e instanceof $g){const r=[...t.stack,e.followState];return{state:e.target,alt:t.alt,stack:r}}}s(vN,"getEpsilonTarget");function TN(t){for(const e of t.elements)if(e.state.type===rc)return!0;return!1}s(TN,"hasConfigInRuleStopState");function $N(t){for(const e of t.elements)if(e.state.type!==rc)return!1;return!0}s($N,"allConfigsInRuleStopStates");function RN(t){if($N(t))return!0;const e=AN(t.elements);return EN(e)&&!CN(e)}s(RN,"hasConflictTerminatingPrediction");function AN(t){const e=new Map;for(const r of t){const n=Cg(r,!1);let a=e.get(n);a===void 0&&(a={},e.set(n,a)),a[r.alt]=!0}return e}s(AN,"getConflictingAltSets");function EN(t){for(const e of Array.from(t.values()))if(Object.keys(e).length>1)return!0;return!1}s(EN,"hasConflictingAltSet");function CN(t){for(const e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}s(CN,"hasStateAssociatedWithOneAlt");xu();var Xo,bN=(Xo=class{constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new Ig(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){const r=new kd;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){const n=new bf(e.startOffset,e.image.length,_s(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){const r=e.container;if(r){const n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){const r=[];for(const i of e){const o=new bf(i.startOffset,i.image.length,_s(i),i.tokenType,!0);o.root=this.rootNode,r.push(o)}let n=this.current,a=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){const i=n.container.content.indexOf(n);if(i>0){n.container.content.splice(i,0,...r),a=!0;break}n=n.container}a||this.rootNode.content.unshift(...r)}construct(e){const r=this.current;typeof e.$type=="string"&&!e.$infix&&(this.current.astNode=e),e.$cstNode=r;const n=this.nodeStack.pop();(n==null?void 0:n.content.length)===0&&this.removeNode(n)}},s(Xo,"CstNodeBuilder"),Xo),Jo,wg=(Jo=class{get hidden(){return!1}get astNode(){var r,n;const 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(Jo,"AbstractCstNode"),Jo),Zo,bf=(Zo=class extends wg{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,a,i=!1){super(),this._hidden=i,this._offset=e,this._tokenType=a,this._length=r,this._range=n}},s(Zo,"LeafCstNodeImpl"),Zo),Qo,kd=(Qo=class extends wg{constructor(){super(...arguments),this.content=new zj(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(){const e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){const{range:n}=e,{range:a}=r;this._rangeCache={start:n.start,end:a.end.line<n.start.line?n.start:a.end}}return this._rangeCache}else return{start:oe.create(0,0),end:oe.create(0,0)}}get firstNonHiddenNode(){for(const e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){const r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},s(Qo,"CompositeCstNodeImpl"),Qo),ui,zj=(ui=class extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,ui.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(const r of e)r.container=this.parent}},s(ui,"CstNodeContainer"),ui),el,Ig=(el=class extends kd{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},s(el,"RootCstNodeImpl"),el),_f=Symbol("Datatype");function Fc(t){return t.$type===_f}s(Fc,"isDataTypeNode");var _T="​",_N=s(t=>t.endsWith(_T)?t:t+_T,"withRuleSuffix"),tl,Ng=(tl=class{constructor(e){var a;this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";(a=e.shared.profilers.LangiumProfiler)!=null&&a.isActive("parsing")?this.wrapper=new Bj(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new NN(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(tl,"AbstractLangiumParser"),tl),rl,SN=(rl=class extends Ng{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new bN,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){const n=this.computeRuleType(e);let a;ti(e)&&(a=e.name,this.registerPrecedenceMap(e));const i=this.wrapper.DEFINE_RULE(_N(e.name),this.startImplementation(n,a,r).bind(this));return this.allRules.set(e.name,i),mt(e)&&e.entry&&(this.mainRule=i),i}registerPrecedenceMap(e){const r=e.name,n=new Map;for(let a=0;a<e.operators.precedences.length;a++){const i=e.operators.precedences[a];for(const o of i.operators)n.set(o.value,{precedence:a,rightAssoc:i.associativity==="right"})}this.operatorPrecedence.set(r,n)}computeRuleType(e){return ti(e)?zn(e):e.fragment?void 0:zu(e)?_f:zn(e)}parse(e,r={}){this.nodeBuilder.buildRootNode(e);const n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;const a=r.rule?this.allRules.get(r.rule):this.mainRule;if(!a)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");const i=this.doParse(a);return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,Qa(i,{deep:!0}),{value:i,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 a=>{const i=!this.isRecording()&&e!==void 0;if(i){const o={$type:e};this.stack.push(o),e===_f?o.value="":r!==void 0&&(o.$infixName=r)}return n(a),i?this.construct():void 0}}extractHiddenTokens(e){const r=this.lexerResult.hidden;if(!r.length)return[];const n=e.startOffset;for(let a=0;a<r.length;a++)if(r[a].startOffset>n)return r.splice(0,a);return r.splice(0,r.length)}consume(e,r,n){const a=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(a)){const i=this.extractHiddenTokens(a);this.nodeBuilder.addHiddenNodes(i);const o=this.nodeBuilder.buildLeafNode(a,n),{assignment:u,crossRef:l}=this.getAssignment(n),c=this.current;if(u){const f=Ir(n)?a.image:this.converter.convert(a.image,o);this.assign(u.operator,u.feature,f,o,l)}else if(Fc(c)){let f=a.image;Ir(n)||(f=this.converter.convert(f,o).toString()),c.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,a,i){let o;!this.isRecording()&&!n&&(o=this.nodeBuilder.buildCompositeNode(a));let u;try{u=this.wrapper.wrapSubrule(e,r,i)}finally{this.isRecording()||(u===void 0&&!n&&(u=this.construct()),u!==void 0&&o&&o.length>0&&this.performSubruleAssignment(u,a,o))}}performSubruleAssignment(e,r,n){const{assignment:a,crossRef:i}=this.getAssignment(r);if(a)this.assign(a.operator,a.feature,e,n,i);else if(!a){const o=this.current;if(Fc(o))o.value+=e.toString();else if(typeof e=="object"&&e){const l=this.assignWithoutOverride(e,o);this.stack.pop(),this.stack.push(l)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);const i={$type:e};this.stack.push(i),this.assign(r.operator,r.feature,n,n.$cstNode)}else n.$type=e}}construct(){if(this.isRecording())return;const e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):Fc(e)?this.converter.convert(e.value,e.$cstNode):(wh(this.astReflection,e),e)}constructInfix(e,r){const n=e.parts;if(!Array.isArray(n)||n.length===0)return;const a=e.operators;if(!Array.isArray(a)||n.length<2)return n[0];let i=0,o=-1;for(let v=0;v<a.length;v++){const E=a[v],T=r.get(E)??{precedence:1/0,rightAssoc:!1};T.precedence>o?(o=T.precedence,i=v):T.precedence===o&&(T.rightAssoc||(i=v))}const u=a.slice(0,i),l=a.slice(i+1),c=n.slice(0,i+1),f=n.slice(i+1),d={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:c,operators:u},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:f,operators:l},h=this.constructInfix(d,r),y=this.constructInfix(p,r);return{$type:e.$type,$cstNode:e.$cstNode,left:h,operator:a[i],right:y}}getAssignment(e){if(!this.assignmentMap.has(e)){const r=qn(e,wr);this.assignmentMap.set(e,{assignment:r,crossRef:r&&Hn(r.terminal)?r.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,r,n,a,i){const o=this.current;let u;switch(i==="single"&&typeof n=="string"?u=this.linker.buildReference(o,r,a,n):i==="multi"&&typeof n=="string"?u=this.linker.buildMultiReference(o,r,a,n):u=n,e){case"=":{o[r]=u;break}case"?=":{o[r]=!0;break}case"+=":Array.isArray(o[r])||(o[r]=[]),o[r].push(u)}}assignWithoutOverride(e,r){for(const[a,i]of Object.entries(r)){const o=e[a];o===void 0?e[a]=i:Array.isArray(o)&&Array.isArray(i)&&(i.push(...o),e[a]=i)}const n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},s(rl,"LangiumParser"),rl),nl,wN=(nl=class{buildMismatchTokenMessage(e){return qa.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return qa.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return qa.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return qa.buildEarlyExitMessage(e)}},s(nl,"AbstractParserErrorMessageProvider"),nl),al,Pg=(al=class extends wN{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(al,"LangiumParserErrorMessageProvider"),al),il,IN=(il=class extends Ng{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){const n=this.wrapper.DEFINE_RULE(_N(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{const n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,a,i){this.before(a),this.wrapper.wrapSubrule(e,r,i),this.after(a)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},s(il,"LangiumCompletionParser"),il),jj={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Pg},sl,NN=(sl=class extends b1{constructor(e,r){const n=r&&"maxLookahead"in r;super(e,{...jj,lookaheadStrategy:n?new sg({maxLookahead:r.maxLookahead}):new Fj({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(sl,"ChevrotainWrapper"),sl),ol,Bj=(ol=class extends NN{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(ol,"ProfilerWrapper"),ol);function Od(t,e,r){return PN({parser:e,tokens:r,ruleNames:new Map},t),e}s(Od,"createParser");function PN(t,e){const r=Hf(e,!1),n=fe(e.rules).filter(mt).filter(i=>r.has(i));for(const i of n){const o={...t,consume:1,optional:1,subrule:1,many:1,or:1};t.parser.rule(i,Qr(o,i.definition))}const a=fe(e.rules).filter(ti).filter(i=>r.has(i));for(const i of a)t.parser.rule(i,kN(t,i))}s(PN,"buildRules");function kN(t,e){const r=e.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(jt(r))throw new Error("Cannot use terminal rule in infix expression");const n=e.operators.precedences.flatMap(h=>h.operators),a={$type:"Group",elements:[]},i={$container:a,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},o={$container:a,$type:"Group",elements:[],cardinality:"*"};a.elements.push(i,o);const l={$container:o,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},c={...i,$container:o};o.elements.push(l,c);const d=n.map(h=>t.tokens[h.value]).map((h,y)=>({ALT:s(()=>t.parser.consume(y,h,l),"ALT")}));let p;return h=>{p??(p=Ld(t,r)),t.parser.subrule(0,p,!1,i,h),t.parser.many(0,{DEF:s(()=>{t.parser.alternatives(0,d),t.parser.subrule(1,p,!1,c,h)},"DEF")})}}s(kN,"buildInfixRule");function Qr(t,e,r=!1){let n;if(Ir(e))n=FN(t,e);else if(Yr(e))n=ON(t,e);else if(wr(e))n=Qr(t,e.terminal);else if(Hn(e))n=kg(t,e);else if(Nr(e))n=LN(t,e);else if(Ff(e))n=xN(t,e);else if(Uf(e))n=MN(t,e);else if(Yn(e))n=GN(t,e);else if(Dh(e)){const a=t.consume++;n=s(()=>t.parser.consume(a,Jr,e),"method")}else throw new Wf(e.$cstNode,`Unexpected element type: ${e.$type}`);return Og(t,r?void 0:zs(e),n,e.cardinality)}s(Qr,"buildElement");function ON(t,e){const r=zn(e);return()=>t.parser.action(r,e)}s(ON,"buildAction");function LN(t,e){const r=e.rule.ref;if(Vn(r)){const n=t.subrule++,a=mt(r)&&r.fragment,i=e.arguments.length>0?DN(r,e.arguments):()=>({});let o;return u=>{o??(o=Ld(t,r)),t.parser.subrule(n,o,a,e,i(u))}}else if(jt(r)){const n=t.consume++,a=Sf(t,r.name);return()=>t.parser.consume(n,a,e)}else if(r)tn();else throw new Wf(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}s(LN,"buildRuleCall");function DN(t,e){if(e.some(n=>n.calledByName)){const n=e.map(a=>{var i,o;return{parameterName:(o=(i=a.parameter)==null?void 0:i.ref)==null?void 0:o.name,predicate:Wt(a.value)}});return a=>{const i={};for(const{parameterName:o,predicate:u}of n)o&&(i[o]=u(a));return i}}else{const n=e.map(a=>Wt(a.value));return a=>{const i={};for(let o=0;o<n.length;o++)if(o<t.parameters.length){const u=t.parameters[o].name,l=n[o];i[u]=l(a)}return i}}}s(DN,"buildRuleCallPredicate");function Wt(t){if(Lh(t)){const e=Wt(t.left),r=Wt(t.right);return n=>e(n)||r(n)}else if(Oh(t)){const e=Wt(t.left),r=Wt(t.right);return n=>e(n)&&r(n)}else if(Gh(t)){const e=Wt(t.value);return r=>!e(r)}else if(Fh(t)){const e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(Ph(t)){const e=!!t.true;return()=>e}tn()}s(Wt,"buildPredicate");function xN(t,e){if(e.elements.length===1)return Qr(t,e.elements[0]);{const r=[];for(const a of e.elements){const i={ALT:Qr(t,a,!0)},o=zs(a);o&&(i.GATE=Wt(o)),r.push(i)}const n=t.or++;return a=>t.parser.alternatives(n,r.map(i=>{const o={ALT:s(()=>i.ALT(a),"ALT")},u=i.GATE;return u&&(o.GATE=()=>u(a)),o}))}}s(xN,"buildAlternatives");function MN(t,e){if(e.elements.length===1)return Qr(t,e.elements[0]);const r=[];for(const u of e.elements){const l={ALT:Qr(t,u,!0)},c=zs(u);c&&(l.GATE=Wt(c)),r.push(l)}const n=t.or++,a=s((u,l)=>{const c=l.getRuleStack().join("-");return`uGroup_${u}_${c}`},"idFunc"),i=s(u=>t.parser.alternatives(n,r.map((l,c)=>{const f={ALT:s(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(l.ALT(u),!d.isRecording()){const h=a(n,d);d.unorderedGroups.get(h)||d.unorderedGroups.set(h,[]);const y=d.unorderedGroups.get(h);typeof(y==null?void 0:y[c])>"u"&&(y[c]=!0)}};const p=l.GATE;return p?f.GATE=()=>p(u):f.GATE=()=>{const h=d.unorderedGroups.get(a(n,d));return!(h!=null&&h[c])},f})),"alternatives"),o=Og(t,zs(e),i,"*");return u=>{o(u),t.parser.isRecording()||t.parser.unorderedGroups.delete(a(n,t.parser))}}s(MN,"buildUnorderedGroup");function GN(t,e){const r=e.elements.map(n=>Qr(t,n));return n=>r.forEach(a=>a(n))}s(GN,"buildGroup");function zs(t){if(Yn(t))return t.guardCondition}s(zs,"getGuardCondition");function kg(t,e,r=e.terminal){if(r)if(Nr(r)&&mt(r.rule.ref)){const n=r.rule.ref,a=t.subrule++;let i;return o=>{i??(i=Ld(t,n)),t.parser.subrule(a,i,!1,e,o)}}else if(Nr(r)&&jt(r.rule.ref)){const n=t.consume++,a=Sf(t,r.rule.ref.name);return()=>t.parser.consume(n,a,e)}else if(Ir(r)){const n=t.consume++,a=Sf(t,r.value);return()=>t.parser.consume(n,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);const n=Zf(e.type.ref),a=n==null?void 0:n.terminal;if(!a)throw new Error("Could not find name assignment for type: "+zn(e.type.ref));return kg(t,e,a)}}s(kg,"buildCrossReference");function FN(t,e){const r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}s(FN,"buildKeyword");function Og(t,e,r,n){const a=e&&Wt(e);if(!n)if(a){const i=t.or++;return o=>t.parser.alternatives(i,[{ALT:s(()=>r(o),"ALT"),GATE:s(()=>a(o),"GATE")},{ALT:Bm(),GATE:s(()=>!a(o),"GATE")}])}else return r;if(n==="*"){const i=t.many++;return o=>t.parser.many(i,{DEF:s(()=>r(o),"DEF"),GATE:a?()=>a(o):void 0})}else if(n==="+"){const i=t.many++;if(a){const o=t.or++;return u=>t.parser.alternatives(o,[{ALT:s(()=>t.parser.atLeastOne(i,{DEF:s(()=>r(u),"DEF")}),"ALT"),GATE:s(()=>a(u),"GATE")},{ALT:Bm(),GATE:s(()=>!a(u),"GATE")}])}else return o=>t.parser.atLeastOne(i,{DEF:s(()=>r(o),"DEF")})}else if(n==="?"){const i=t.optional++;return o=>t.parser.optional(i,{DEF:s(()=>r(o),"DEF"),GATE:a?()=>a(o):void 0})}else tn()}s(Og,"wrap");function Ld(t,e){const r=zN(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}s(Ld,"getRule");function zN(t,e){if(Vn(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,a=e.$type;for(;!mt(n);)(Yn(n)||Ff(n)||Uf(n))&&(a=n.elements.indexOf(r).toString()+":"+a),r=n,n=n.$container;return a=n.name+":"+a,t.ruleNames.set(e,a),a}}s(zN,"getRuleName");function Sf(t,e){const r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}s(Sf,"getToken");function Lg(t){const e=t.Grammar,r=t.parser.Lexer,n=new IN(t);return Od(e,n,r.definition),n.finalize(),n}s(Lg,"createCompletionParser");function Dg(t){const e=xg(t);return e.finalize(),e}s(Dg,"createLangiumParser");function xg(t){const e=t.Grammar,r=t.parser.Lexer,n=new SN(t);return Od(e,n,r.definition)}s(xg,"prepareLangiumParser");var ll,Dd=(ll=class{constructor(){this.diagnostics=[]}buildTokens(e,r){const n=fe(Hf(e,!1)),a=this.buildTerminalTokens(n),i=this.buildKeywordTokens(n,a,r);return i.push(...a),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){const e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(jt).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){const r=Bu(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,a={name:e.name,PATTERN:n};return typeof n=="function"&&(a.LINE_BREAKS=!0),e.hidden&&(a.GROUP=Vf(r)?pt.SKIPPED:"hidden"),a}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){const r=new RegExp(e,e.flags+"y");return(n,a)=>(r.lastIndex=a,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Vn).flatMap(a=>Mr(a).filter(Ir)).distinct(a=>a.value).toArray().sort((a,i)=>i.value.length-a.value.length).map(a=>this.buildKeywordToken(a,r,!!(n!=null&&n.caseInsensitive)))}buildKeywordToken(e,r,n){const a=this.buildKeywordPattern(e,n),i={name:e.value,PATTERN:a,LONGER_ALT:this.findLongerAlt(e,r)};return typeof a=="function"&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,r){return r?new RegExp(di(e.value),"i"):e.value}findLongerAlt(e,r){return r.reduce((n,a)=>{const i=a==null?void 0:a.PATTERN;return i!=null&&i.source&&oy("^"+i.source+"$",e.value)&&n.push(a),n},[])}},s(ll,"DefaultTokenBuilder"),ll),ul,Mg=(ul=class{convert(e,r){let n=r.grammarSource;if(Hn(n)&&(n=dy(n)),Nr(n)){const a=n.rule.ref;if(!a)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(a,e,r)}return e}runConverter(e,r,n){var a;switch(e.name.toUpperCase()){case"INT":return or.convertInt(r);case"STRING":return or.convertString(r);case"ID":return or.convertID(r)}switch((a=Ry(e))==null?void 0:a.toLowerCase()){case"number":return or.convertNumber(r);case"boolean":return or.convertBoolean(r);case"bigint":return or.convertBigint(r);case"date":return or.convertDate(r);default:return r}}},s(ul,"DefaultValueConverter"),ul),or;(function(t){function e(c){let f="";for(let d=1;d<c.length-1;d++){const p=c.charAt(d);if(p==="\\"){const h=c.charAt(++d);f+=r(h)}else f+=p}return f}s(e,"convertString"),t.convertString=e;function r(c){switch(c){case"b":return"\b";case"f":return"\f";case"n":return`
151
+ `;case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return c}}s(r,"convertEscapeCharacter");function n(c){return c.charAt(0)==="^"?c.substring(1):c}s(n,"convertID"),t.convertID=n;function a(c){return parseInt(c)}s(a,"convertInt"),t.convertInt=a;function i(c){return BigInt(c)}s(i,"convertBigint"),t.convertBigint=i;function o(c){return new Date(c)}s(o,"convertDate"),t.convertDate=o;function u(c){return Number(c)}s(u,"convertNumber"),t.convertNumber=u;function l(c){return c.toLowerCase()==="true"}s(l,"convertBoolean"),t.convertBoolean=l})(or||(or={}));var Re={};Lf(Re,Rh(xf(),1));function xd(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}s(xd,"delayNextTick");var zc=0,jN=10;function Md(){return zc=performance.now(),new Re.CancellationTokenSource}s(Md,"startCancelableOperation");function Gg(t){jN=t}s(Gg,"setInterruptionPeriod");var cr=Symbol("OperationCancelled");function ca(t){return t===cr}s(ca,"isOperationCancelled");async function Ve(t){if(t===Re.CancellationToken.None)return;const e=performance.now();if(e-zc>=jN&&(zc=e,await xd(),zc=performance.now()),t.isCancellationRequested)throw cr}s(Ve,"interruptAndCheck");var cl,Dr=(cl=class{constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}},s(cl,"Deferred"),cl),Fn,ST=(Fn=class{constructor(e,r,n,a){this._uri=e,this._languageId=r,this._version=n,this._content=a,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(const n of e)if(Fn.isIncremental(n)){const a=zg(n.range),i=this.offsetAt(a.start),o=this.offsetAt(a.end);this._content=this._content.substring(0,i)+n.text+this._content.substring(o,this._content.length);const u=Math.max(a.start.line,0),l=Math.max(a.end.line,0);let c=this._lineOffsets;const f=Xm(n.text,!1,i);if(l-u===f.length)for(let p=0,h=f.length;p<h;p++)c[p+u+1]=f[p];else f.length<1e4?c.splice(u+1,l-u,...f):this._lineOffsets=c=c.slice(0,u+1).concat(f,c.slice(l+1));const d=n.text.length-(o-i);if(d!==0)for(let p=u+1+f.length,h=c.length;p<h;p++)c[p]=c[p]+d}else if(Fn.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=Xm(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);const r=this.getLineOffsets();let n=0,a=r.length;if(a===0)return{line:0,character:e};for(;n<a;){const o=Math.floor((n+a)/2);r[o]>e?a=o:n=o+1}const i=n-1;return e=this.ensureBeforeEOL(e,r[i]),{line:i,character:e-r[i]}}offsetAt(e){const r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;const n=r[e.line];if(e.character<=0)return n;const a=e.line+1<r.length?r[e.line+1]:this._content.length,i=Math.min(n+e.character,a);return this.ensureBeforeEOL(i,n)}ensureBeforeEOL(e,r){for(;e>r&&Fg(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){const r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},s(Fn,"FullTextDocument"),Fn),wf;(function(t){function e(a,i,o,u){return new ST(a,i,o,u)}s(e,"create"),t.create=e;function r(a,i,o){if(a instanceof ST)return a.update(i,o),a;throw new Error("TextDocument.update: document must be created by TextDocument.create")}s(r,"update"),t.update=r;function n(a,i){const o=a.getText(),u=If(i.map(BN),(f,d)=>{const p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p});let l=0;const c=[];for(const f of u){const d=a.offsetAt(f.range.start);if(d<l)throw new Error("Overlapping edit");d>l&&c.push(o.substring(l,d)),f.newText.length&&c.push(f.newText),l=a.offsetAt(f.range.end)}return c.push(o.substr(l)),c.join("")}s(n,"applyEdits"),t.applyEdits=n})(wf||(wf={}));function If(t,e){if(t.length<=1)return t;const r=t.length/2|0,n=t.slice(0,r),a=t.slice(r);If(n,e),If(a,e);let i=0,o=0,u=0;for(;i<n.length&&o<a.length;)e(n[i],a[o])<=0?t[u++]=n[i++]:t[u++]=a[o++];for(;i<n.length;)t[u++]=n[i++];for(;o<a.length;)t[u++]=a[o++];return t}s(If,"mergeSort");function Xm(t,e,r=0){const n=e?[r]:[];for(let a=0;a<t.length;a++){const i=t.charCodeAt(a);Fg(i)&&(i===13&&a+1<t.length&&t.charCodeAt(a+1)===10&&a++,n.push(r+a+1))}return n}s(Xm,"computeLineOffsets");function Fg(t){return t===13||t===10}s(Fg,"isEOL");function zg(t){const e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}s(zg,"getWellformedRange");function BN(t){const e=zg(t.range);return e!==t.range?{newText:t.newText,range:e}:t}s(BN,"getWellformedEdit");var UN;(()=>{var t={975:k=>{function _(R){if(typeof R!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(R))}s(_,"e");function $(R,A){for(var w,L="",x=0,O=-1,z=0,M=0;M<=R.length;++M){if(M<R.length)w=R.charCodeAt(M);else{if(w===47)break;w=47}if(w===47){if(!(O===M-1||z===1))if(O!==M-1&&z===2){if(L.length<2||x!==2||L.charCodeAt(L.length-1)!==46||L.charCodeAt(L.length-2)!==46){if(L.length>2){var X=L.lastIndexOf("/");if(X!==L.length-1){X===-1?(L="",x=0):x=(L=L.slice(0,X)).length-1-L.lastIndexOf("/"),O=M,z=0;continue}}else if(L.length===2||L.length===1){L="",x=0,O=M,z=0;continue}}A&&(L.length>0?L+="/..":L="..",x=2)}else L.length>0?L+="/"+R.slice(O+1,M):L=R.slice(O+1,M),x=M-O-1;O=M,z=0}else w===46&&z!==-1?++z:z=-1}return L}s($,"r");var I={resolve:s(function(){for(var R,A="",w=!1,L=arguments.length-1;L>=-1&&!w;L--){var x;L>=0?x=arguments[L]:(R===void 0&&(R=process.cwd()),x=R),_(x),x.length!==0&&(A=x+"/"+A,w=x.charCodeAt(0)===47)}return A=$(A,!w),w?A.length>0?"/"+A:"/":A.length>0?A:"."},"resolve"),normalize:s(function(R){if(_(R),R.length===0)return".";var A=R.charCodeAt(0)===47,w=R.charCodeAt(R.length-1)===47;return(R=$(R,!A)).length!==0||A||(R="."),R.length>0&&w&&(R+="/"),A?"/"+R:R},"normalize"),isAbsolute:s(function(R){return _(R),R.length>0&&R.charCodeAt(0)===47},"isAbsolute"),join:s(function(){if(arguments.length===0)return".";for(var R,A=0;A<arguments.length;++A){var w=arguments[A];_(w),w.length>0&&(R===void 0?R=w:R+="/"+w)}return R===void 0?".":I.normalize(R)},"join"),relative:s(function(R,A){if(_(R),_(A),R===A||(R=I.resolve(R))===(A=I.resolve(A)))return"";for(var w=1;w<R.length&&R.charCodeAt(w)===47;++w);for(var L=R.length,x=L-w,O=1;O<A.length&&A.charCodeAt(O)===47;++O);for(var z=A.length-O,M=x<z?x:z,X=-1,H=0;H<=M;++H){if(H===M){if(z>M){if(A.charCodeAt(O+H)===47)return A.slice(O+H+1);if(H===0)return A.slice(O+H)}else x>M&&(R.charCodeAt(w+H)===47?X=H:H===0&&(X=0));break}var Z=R.charCodeAt(w+H);if(Z!==A.charCodeAt(O+H))break;Z===47&&(X=H)}var se="";for(H=w+X+1;H<=L;++H)H!==L&&R.charCodeAt(H)!==47||(se.length===0?se+="..":se+="/..");return se.length>0?se+A.slice(O+X):(O+=X,A.charCodeAt(O)===47&&++O,A.slice(O))},"relative"),_makeLong:s(function(R){return R},"_makeLong"),dirname:s(function(R){if(_(R),R.length===0)return".";for(var A=R.charCodeAt(0),w=A===47,L=-1,x=!0,O=R.length-1;O>=1;--O)if((A=R.charCodeAt(O))===47){if(!x){L=O;break}}else x=!1;return L===-1?w?"/":".":w&&L===1?"//":R.slice(0,L)},"dirname"),basename:s(function(R,A){if(A!==void 0&&typeof A!="string")throw new TypeError('"ext" argument must be a string');_(R);var w,L=0,x=-1,O=!0;if(A!==void 0&&A.length>0&&A.length<=R.length){if(A.length===R.length&&A===R)return"";var z=A.length-1,M=-1;for(w=R.length-1;w>=0;--w){var X=R.charCodeAt(w);if(X===47){if(!O){L=w+1;break}}else M===-1&&(O=!1,M=w+1),z>=0&&(X===A.charCodeAt(z)?--z==-1&&(x=w):(z=-1,x=M))}return L===x?x=M:x===-1&&(x=R.length),R.slice(L,x)}for(w=R.length-1;w>=0;--w)if(R.charCodeAt(w)===47){if(!O){L=w+1;break}}else x===-1&&(O=!1,x=w+1);return x===-1?"":R.slice(L,x)},"basename"),extname:s(function(R){_(R);for(var A=-1,w=0,L=-1,x=!0,O=0,z=R.length-1;z>=0;--z){var M=R.charCodeAt(z);if(M!==47)L===-1&&(x=!1,L=z+1),M===46?A===-1?A=z:O!==1&&(O=1):A!==-1&&(O=-1);else if(!x){w=z+1;break}}return A===-1||L===-1||O===0||O===1&&A===L-1&&A===w+1?"":R.slice(A,L)},"extname"),format:s(function(R){if(R===null||typeof R!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof R);return function(A,w){var L=w.dir||w.root,x=w.base||(w.name||"")+(w.ext||"");return L?L===w.root?L+x:L+"/"+x:x}(0,R)},"format"),parse:s(function(R){_(R);var A={root:"",dir:"",base:"",ext:"",name:""};if(R.length===0)return A;var w,L=R.charCodeAt(0),x=L===47;x?(A.root="/",w=1):w=0;for(var O=-1,z=0,M=-1,X=!0,H=R.length-1,Z=0;H>=w;--H)if((L=R.charCodeAt(H))!==47)M===-1&&(X=!1,M=H+1),L===46?O===-1?O=H:Z!==1&&(Z=1):O!==-1&&(Z=-1);else if(!X){z=H+1;break}return O===-1||M===-1||Z===0||Z===1&&O===M-1&&O===z+1?M!==-1&&(A.base=A.name=z===0&&x?R.slice(1,M):R.slice(z,M)):(z===0&&x?(A.name=R.slice(1,O),A.base=R.slice(1,M)):(A.name=R.slice(z,O),A.base=R.slice(z,M)),A.ext=R.slice(O,M)),z>0?A.dir=R.slice(0,z-1):x&&(A.dir="/"),A},"parse"),sep:"/",delimiter:":",win32:null,posix:null};I.posix=I,k.exports=I}},e={};function r(k){var _=e[k];if(_!==void 0)return _.exports;var $=e[k]={exports:{}};return t[k]($,$.exports,r),$.exports}s(r,"r"),r.d=(k,_)=>{for(var $ in _)r.o(_,$)&&!r.o(k,$)&&Object.defineProperty(k,$,{enumerable:!0,get:_[$]})},r.o=(k,_)=>Object.prototype.hasOwnProperty.call(k,_),r.r=k=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(k,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(k,"__esModule",{value:!0})};var n={};let a;r.r(n),r.d(n,{URI:s(()=>p,"URI"),Utils:s(()=>he,"Utils")}),typeof process=="object"?a=process.platform==="win32":typeof navigator=="object"&&(a=navigator.userAgent.indexOf("Windows")>=0);const i=/^\w[\w\d+.-]*$/,o=/^\//,u=/^\/\//;function l(k,_){if(!k.scheme&&_)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${k.authority}", path: "${k.path}", query: "${k.query}", fragment: "${k.fragment}"}`);if(k.scheme&&!i.test(k.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(k.path){if(k.authority){if(!o.test(k.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(u.test(k.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}s(l,"a");const c="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,ue=class ue{constructor(_,$,I,R,A,w=!1){Br(this,"scheme");Br(this,"authority");Br(this,"path");Br(this,"query");Br(this,"fragment");typeof _=="object"?(this.scheme=_.scheme||c,this.authority=_.authority||c,this.path=_.path||c,this.query=_.query||c,this.fragment=_.fragment||c):(this.scheme=function(L,x){return L||x?L:"file"}(_,w),this.authority=$||c,this.path=function(L,x){switch(L){case"https":case"http":case"file":x?x[0]!==f&&(x=f+x):x=f}return x}(this.scheme,I||c),this.query=R||c,this.fragment=A||c,l(this,w))}static isUri(_){return _ instanceof ue||!!_&&typeof _.authority=="string"&&typeof _.fragment=="string"&&typeof _.path=="string"&&typeof _.query=="string"&&typeof _.scheme=="string"&&typeof _.fsPath=="string"&&typeof _.with=="function"&&typeof _.toString=="function"}get fsPath(){return S(this,!1)}with(_){if(!_)return this;let{scheme:$,authority:I,path:R,query:A,fragment:w}=_;return $===void 0?$=this.scheme:$===null&&($=c),I===void 0?I=this.authority:I===null&&(I=c),R===void 0?R=this.path:R===null&&(R=c),A===void 0?A=this.query:A===null&&(A=c),w===void 0?w=this.fragment:w===null&&(w=c),$===this.scheme&&I===this.authority&&R===this.path&&A===this.query&&w===this.fragment?this:new y($,I,R,A,w)}static parse(_,$=!1){const I=d.exec(_);return I?new y(I[2]||c,ne(I[4]||c),ne(I[5]||c),ne(I[7]||c),ne(I[9]||c),$):new y(c,c,c,c,c)}static file(_){let $=c;if(a&&(_=_.replace(/\\/g,f)),_[0]===f&&_[1]===f){const I=_.indexOf(f,2);I===-1?($=_.substring(2),_=f):($=_.substring(2,I),_=_.substring(I)||f)}return new y("file",$,_,c,c)}static from(_){const $=new y(_.scheme,_.authority,_.path,_.query,_.fragment);return l($,!0),$}toString(_=!1){return b(this,_)}toJSON(){return this}static revive(_){if(_){if(_ instanceof ue)return _;{const $=new y(_);return $._formatted=_.external,$._fsPath=_._sep===h?_.fsPath:null,$}}return _}};s(ue,"l");let p=ue;const h=a?1:void 0,ot=class ot extends p{constructor(){super(...arguments);Br(this,"_formatted",null);Br(this,"_fsPath",null)}get fsPath(){return this._fsPath||(this._fsPath=S(this,!1)),this._fsPath}toString($=!1){return $?b(this,!0):(this._formatted||(this._formatted=b(this,!1)),this._formatted)}toJSON(){const $={$mid:1};return this._fsPath&&($.fsPath=this._fsPath,$._sep=h),this._formatted&&($.external=this._formatted),this.path&&($.path=this.path),this.scheme&&($.scheme=this.scheme),this.authority&&($.authority=this.authority),this.query&&($.query=this.query),this.fragment&&($.fragment=this.fragment),$}};s(ot,"d");let y=ot;const v={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function E(k,_,$){let I,R=-1;for(let A=0;A<k.length;A++){const w=k.charCodeAt(A);if(w>=97&&w<=122||w>=65&&w<=90||w>=48&&w<=57||w===45||w===46||w===95||w===126||_&&w===47||$&&w===91||$&&w===93||$&&w===58)R!==-1&&(I+=encodeURIComponent(k.substring(R,A)),R=-1),I!==void 0&&(I+=k.charAt(A));else{I===void 0&&(I=k.substr(0,A));const L=v[w];L!==void 0?(R!==-1&&(I+=encodeURIComponent(k.substring(R,A)),R=-1),I+=L):R===-1&&(R=A)}}return R!==-1&&(I+=encodeURIComponent(k.substring(R))),I!==void 0?I:k}s(E,"m");function T(k){let _;for(let $=0;$<k.length;$++){const I=k.charCodeAt($);I===35||I===63?(_===void 0&&(_=k.substr(0,$)),_+=v[I]):_!==void 0&&(_+=k[$])}return _!==void 0?_:k}s(T,"y");function S(k,_){let $;return $=k.authority&&k.path.length>1&&k.scheme==="file"?`//${k.authority}${k.path}`:k.path.charCodeAt(0)===47&&(k.path.charCodeAt(1)>=65&&k.path.charCodeAt(1)<=90||k.path.charCodeAt(1)>=97&&k.path.charCodeAt(1)<=122)&&k.path.charCodeAt(2)===58?_?k.path.substr(1):k.path[1].toLowerCase()+k.path.substr(2):k.path,a&&($=$.replace(/\//g,"\\")),$}s(S,"v");function b(k,_){const $=_?T:E;let I="",{scheme:R,authority:A,path:w,query:L,fragment:x}=k;if(R&&(I+=R,I+=":"),(A||R==="file")&&(I+=f,I+=f),A){let O=A.indexOf("@");if(O!==-1){const z=A.substr(0,O);A=A.substr(O+1),O=z.lastIndexOf(":"),O===-1?I+=$(z,!1,!1):(I+=$(z.substr(0,O),!1,!1),I+=":",I+=$(z.substr(O+1),!1,!0)),I+="@"}A=A.toLowerCase(),O=A.lastIndexOf(":"),O===-1?I+=$(A,!1,!0):(I+=$(A.substr(0,O),!1,!0),I+=A.substr(O))}if(w){if(w.length>=3&&w.charCodeAt(0)===47&&w.charCodeAt(2)===58){const O=w.charCodeAt(1);O>=65&&O<=90&&(w=`/${String.fromCharCode(O+32)}:${w.substr(3)}`)}else if(w.length>=2&&w.charCodeAt(1)===58){const O=w.charCodeAt(0);O>=65&&O<=90&&(w=`${String.fromCharCode(O+32)}:${w.substr(2)}`)}I+=$(w,!0,!1)}return L&&(I+="?",I+=$(L,!1,!1)),x&&(I+="#",I+=_?x:E(x,!1,!1)),I}s(b,"b");function N(k){try{return decodeURIComponent(k)}catch{return k.length>3?k.substr(0,3)+N(k.substr(3)):k}}s(N,"C");const B=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ne(k){return k.match(B)?k.replace(B,_=>N(_)):k}s(ne,"w");var J=r(975);const me=J.posix||J,Ee="/";var he;(function(k){k.joinPath=function(_,...$){return _.with({path:me.join(_.path,...$)})},k.resolvePath=function(_,...$){let I=_.path,R=!1;I[0]!==Ee&&(I=Ee+I,R=!0);let A=me.resolve(I,...$);return R&&A[0]===Ee&&!_.authority&&(A=A.substring(1)),_.with({path:A})},k.dirname=function(_){if(_.path.length===0||_.path===Ee)return _;let $=me.dirname(_.path);return $.length===1&&$.charCodeAt(0)===46&&($=""),_.with({path:$})},k.basename=function(_){return me.basename(_.path)},k.extname=function(_){return me.extname(_.path)}})(he||(he={})),UN=n})();var{URI:It,Utils:ji}=UN,dt;(function(t){t.basename=ji.basename,t.dirname=ji.dirname,t.extname=ji.extname,t.joinPath=ji.joinPath,t.resolvePath=ji.resolvePath;const e=typeof process=="object"&&(process==null?void 0:process.platform)==="win32";function r(o,u){return(o==null?void 0:o.toString())===(u==null?void 0:u.toString())}s(r,"equals"),t.equals=r;function n(o,u){const l=typeof o=="string"?It.parse(o).path:o.path,c=typeof u=="string"?It.parse(u).path:u.path,f=l.split("/").filter(v=>v.length>0),d=c.split("/").filter(v=>v.length>0);if(e){const v=/^[A-Z]:$/;if(f[0]&&v.test(f[0])&&(f[0]=f[0].toLowerCase()),d[0]&&v.test(d[0])&&(d[0]=d[0].toLowerCase()),f[0]!==d[0])return c.substring(1)}let p=0;for(;p<f.length&&f[p]===d[p];p++);const h="../".repeat(f.length-p),y=d.slice(p).join("/");return h+y}s(n,"relative"),t.relative=n;function a(o){return It.parse(o.toString()).toString()}s(a,"normalize"),t.normalize=a;function i(o,u){let l=typeof o=="string"?o:o.path,c=typeof u=="string"?u:u.path;return c.charAt(c.length-1)==="/"&&(c=c.slice(0,-1)),l.charAt(l.length-1)==="/"&&(l=l.slice(0,-1)),c===l?!0:c.length<l.length||c.charAt(l.length)!=="/"?!1:c.startsWith(l)}s(i,"contains"),t.contains=i})(dt||(dt={}));var fl,jg=(fl=class{constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return dt.normalize(e)}clear(){this.root.children.clear()}insert(e,r){const n=this.getNode(this.normalizeUri(e),!0);n.element=r}delete(e){const 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){const r=this.normalizeUri(e),n=this.getNode(r,!1);if(n)return{name:n.name,uri:dt.joinPath(It.parse(r),n.name).toString(),element:n.element}}findChildren(e){const r=this.normalizeUri(e),n=this.getNode(r,!1);return n?Array.from(n.children.values()).map(a=>({name:a.name,uri:dt.joinPath(It.parse(r),a.name).toString(),element:a.element})):[]}all(){return this.collectValues(this.root)}findAll(e){const r=this.getNode(dt.normalize(e),!1);return r?this.collectValues(r):[]}getNode(e,r){const n=e.split("/");e.charAt(e.length-1)==="/"&&n.pop();let a=this.root;for(const i of n){let o=a.children.get(i);if(!o)if(r)o={name:i,children:new Map,parent:a},a.children.set(i,o);else return;a=o}return a}collectValues(e){const r=[];e.element&&r.push(e.element);for(const n of e.children.values())r.push(...this.collectValues(n));return r}},s(fl,"UriTrie"),fl),Q;(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"})(Q||(Q={}));var dl,KN=(dl=class{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=Re.CancellationToken.None){const n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??It.parse(e.uri),Re.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return Re.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){const a=this.parse(e,r,n);return this.createLangiumDocument(a,e,void 0,r)}else if("$model"in r){const a={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(a,e)}else{const a=this.parse(e,r.getText(),n);return this.createLangiumDocument(a,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){const a=await this.parseAsync(e,r,n);return this.createLangiumDocument(a,e,void 0,r)}else{const a=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(a,e,r)}}createLangiumDocument(e,r,n,a){let i;if(n)i={parseResult:e,uri:r,state:Q.Parsed,references:[],textDocument:n};else{const o=this.createTextDocumentGetter(r,a);i={parseResult:e,uri:r,state:Q.Parsed,references:[],get textDocument(){return o()}}}return e.value.$document=i,i}async update(e,r){var o,u;const n=(o=e.parseResult.value.$cstNode)==null?void 0:o.root.fullText,a=(u=this.textDocuments)==null?void 0:u.get(e.uri.toString()),i=a?a.getText():await this.fileSystemProvider.readFile(e.uri);if(a)Object.defineProperty(e,"textDocument",{value:a});else{const l=this.createTextDocumentGetter(e.uri,i);Object.defineProperty(e,"textDocument",{get:l})}return n!==i&&(e.parseResult=await this.parseAsync(e.uri,i,r),e.parseResult.value.$document=e),e.state=Q.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){const n=this.serviceRegistry;let a;return()=>a??(a=wf.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},s(dl,"DefaultLangiumDocumentFactory"),dl),pl,WN=(pl=class{constructor(e){this.documentTrie=new jg,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return fe(this.documentTrie.all())}addDocument(e){const 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){const r=e.toString();return this.documentTrie.find(r)}getDocuments(e){const 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(a=>(this.addDocument(a),a));{const a=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(a),a}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){const r=e.toString(),n=this.documentTrie.find(r);return n&&this.documentBuilder().resetToState(n,Q.Changed),n}deleteDocument(e){const r=e.toString(),n=this.documentTrie.find(r);return n&&(n.state=Q.Changed,this.documentTrie.delete(r)),n}deleteDocuments(e){const r=e.toString(),n=this.documentTrie.findAll(r);for(const a of n)a.state=Q.Changed;return this.documentTrie.delete(r),n}},s(pl,"DefaultLangiumDocuments"),pl),gn=Symbol("RefResolving"),ml,qN=(ml=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=Re.CancellationToken.None){var n;if((n=this.profiler)!=null&&n.isActive("linking")){const a=this.profiler.createTask("linking",this.languageId);a.start();try{for(const i of Vt(e.parseResult.value))await Ve(r),ei(i).forEach(o=>{const u=`${i.$type}:${o.property}`;a.startSubTask(u);try{this.doLink(o,e)}finally{a.stopSubTask(u)}})}finally{a.stop()}}else for(const a of Vt(e.parseResult.value))await Ve(r),ei(a).forEach(i=>this.doLink(i,e))}doLink(e,r){const n=e.reference;if("_ref"in n&&n._ref===void 0){n._ref=gn;try{const a=this.getCandidate(e);if(Rn(a))n._ref=a;else{n._nodeDescription=a;const i=this.loadAstNode(a);n._ref=i??this.createLinkingError(e,a)}}catch(a){console.error(`An error occurred while resolving reference to '${n.$refText}':`,a);const i=a.message??String(a);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${i}`}}r.references.push(n)}else if("_items"in n&&n._items===void 0){n._items=gn;try{const a=this.getCandidates(e),i=[];if(Rn(a))n._linkingError=a;else for(const o of a){const u=this.loadAstNode(o);u&&i.push({ref:u,$nodeDescription:o})}n._items=i}catch(a){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${a}`},n._items=[]}r.references.push(n)}}unlink(e){for(const 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){const n=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(a=>`${a.documentUri}#${a.path}`).toArray();return n.length>0?n:this.createLinkingError(e)}buildReference(e,r,n,a){const i=this,o={$refNode:n,$refText:a,_ref:void 0,get ref(){if(Be(this._ref))return this._ref;if(bh(this._nodeDescription)){const u=i.loadAstNode(this._nodeDescription);this._ref=u??i.createLinkingError({reference:o,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=gn;const u=Va(e).$document,l=i.getLinkedNode({reference:o,container:e,property:r});if(l.error&&u&&u.state<Q.ComputedScopes)return this._ref=void 0;this._ref=l.node??l.error,this._nodeDescription=l.descr,u==null||u.references.push(this)}else this._ref===gn&&i.throwCyclicReferenceError(e,r,a);return Be(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return Rn(this._ref)?this._ref:void 0}};return o}buildMultiReference(e,r,n,a){const i=this,o={$refNode:n,$refText:a,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(this._items===void 0){this._items=gn;const u=Va(e).$document,l=i.getCandidates({reference:o,container:e,property:r}),c=[];if(Rn(l))this._linkingError=l;else for(const f of l){const d=i.loadAstNode(f);d&&c.push({ref:d,$nodeDescription:f})}this._items=c,u==null||u.references.push(this)}else this._items===gn&&i.throwCyclicReferenceError(e,r,a);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(!(this.items.length>0))return this._linkingError=i.createLinkingError({reference:o,container:e,property:r})}};return o}throwCyclicReferenceError(e,r,n){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${n}')`)}getLinkedNode(e){try{const r=this.getCandidate(e);if(Rn(r))return{error:r};const 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);const 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;const r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){const n=Va(e.container).$document;n&&n.state<Q.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`);const a=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${a} named '${e.reference.$refText}'.`,targetDescription:r}}},s(ml,"DefaultLinker"),ml);function Bg(t){return typeof t.name=="string"}s(Bg,"isNamed");var hl,VN=(hl=class{getName(e){if(Bg(e))return e.name}getNameNode(e){return Yf(e.$cstNode,"name")}},s(hl,"DefaultNameProvider"),hl),yl,HN=(yl=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=Vt(e.Grammar).some(r=>Hn(r)&&r.isMulti)}findDeclarations(e){if(e){const r=yy(e),n=e.astNode;if(r&&n){const a=n[r.feature];if(ft(a)||fr(a))return qc(a);if(Array.isArray(a)){for(const i of a)if((ft(i)||fr(i))&&i.$refNode&&i.$refNode.offset<=e.offset&&i.$refNode.end>=e.end)return qc(i)}}if(n){const a=this.nameProvider.getNameNode(n);if(a&&(a===e||Yh(e,a)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){const r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(r.head());if(n){for(const a of ei(n))if(fr(a.reference)&&a.reference.items.some(i=>i.ref===e))return a.reference.items.map(i=>i.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;const r=this.documents.getDocument(e.sourceUri);if(r)return this.nodeLocator.getAstNode(r.parseResult.value,e.sourcePath)}findDeclarationNodes(e){const r=this.findDeclarations(e),n=[];for(const a of r){const i=this.nameProvider.getNameNode(a)??a.$cstNode;i&&n.push(i)}return n}findReferences(e,r){const n=[];r.includeDeclaration&&n.push(...this.getSelfReferences(e));let a=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(a=a.filter(i=>dt.equals(i.sourceUri,r.documentUri))),n.push(...a),fe(n)}getSelfReferences(e){const r=this.getSelfNodes(e),n=[];for(const a of r){const i=this.nameProvider.getNameNode(a);if(i){const o=qt(a),u=this.nodeLocator.getAstNodePath(a);n.push({sourceUri:o.uri,sourcePath:u,targetUri:o.uri,targetPath:u,segment:ni(i),local:!0})}}return n}},s(yl,"DefaultReferences"),yl),gl,xr=(gl=class{constructor(e){if(this.map=new Map,e)for(const[r,n]of e)this.add(r,n)}get size(){return bs.sum(fe(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{const n=this.map.get(e);if(n){const a=n.indexOf(r);if(a>=0)return n.length===1?this.map.delete(e):n.splice(a,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){const r=this.map.get(e);return r?fe(r):Ja}has(e,r){if(r===void 0)return this.map.has(e);{const n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(a=>e(a,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return fe(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return fe(this.map.keys())}values(){return fe(this.map.values()).flat()}entriesGroupedByKey(){return fe(this.map.entries())}},s(gl,"MultiMap"),gl),vl,Nf=(vl=class{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}},s(vl,"BiMap"),vl),Tl,YN=(Tl=class{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,r=Re.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,r)}async collectExportedSymbolsForNode(e,r,n=Gu,a=Re.CancellationToken.None){const i=[];this.addExportedSymbol(e,i,r);for(const o of n(e))await Ve(a),this.addExportedSymbol(o,i,r);return i}addExportedSymbol(e,r,n){const a=this.nameProvider.getName(e);a&&r.push(this.descriptions.createDescription(e,a,n))}async collectLocalSymbols(e,r=Re.CancellationToken.None){const n=e.parseResult.value,a=new xr;for(const i of Mr(n))await Ve(r),this.addLocalSymbol(i,e,a);return a}addLocalSymbol(e,r,n){const a=e.$container;if(a){const i=this.nameProvider.getName(e);i&&n.add(a,this.descriptions.createDescription(e,i,r))}}},s(Tl,"DefaultScopeComputation"),Tl),$l,Jm=($l=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){const r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(a=>a.name.toLowerCase()===r):this.elements.find(a=>a.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){const r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(a=>a.name.toLowerCase()===r):this.elements.filter(a=>a.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},s($l,"StreamScope"),$l),Rl,Uj=(Rl=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(const a of e){const i=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(i,a)}this.outerScope=r}getElement(e){const r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){const r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r),a=n?[n]:[];return(this.concatOuterScope||a.length>0)&&this.outerScope?fe(a).concat(this.outerScope.getElements(e)):fe(a)}getAllElements(){let e=fe(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},s(Rl,"MapScope"),Rl),Al,XN=(Al=class{constructor(e,r,n){this.elements=new xr,this.caseInsensitive=(n==null?void 0:n.caseInsensitive)??!1,this.concatOuterScope=(n==null?void 0:n.concatOuterScope)??!0;for(const a of e){const i=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.add(i,a)}this.outerScope=r}getElement(e){const 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){const r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);return(this.concatOuterScope||n.length===0)&&this.outerScope?fe(n).concat(this.outerScope.getElements(e)):fe(n)}getAllElements(){let e=fe(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},s(Al,"MultiMapScope"),Al),Kj={getElement(){},getElements(){return Ja},getAllElements(){return Ja}},El,Gd=(El=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(El,"DisposableCache"),El),Cl,Ug=(Cl=class extends Gd{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){const n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},s(Cl,"SimpleCache"),Cl),bl,Fd=(bl=class extends Gd{constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();const a=this.cacheForContext(e);if(a.has(r))return a.get(r);if(n){const i=n();return a.set(r,i),i}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){const r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){const r=this.converter(e);let n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},s(bl,"ContextCache"),bl),_l,JN=(_l=class extends Fd{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,a)=>{for(const i of a)this.clear(i)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,a)=>{const i=n.concat(a);for(const o of i)this.clear(o)}))}},s(_l,"DocumentCache"),_l),Sl,Kg=(Sl=class extends Ug{constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,a)=>{a.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},s(Sl,"WorkspaceCache"),Sl),wl,ZN=(wl=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 Kg(e.shared)}getScope(e){const r=[],n=this.reflection.getReferenceType(e),a=qt(e.container).localSymbols;if(a){let o=e.container;do a.has(o)&&r.push(a.getStream(o).filter(u=>this.reflection.isSubtype(u.type,n))),o=o.$container;while(o)}let i=this.getGlobalScope(n,e);for(let o=r.length-1;o>=0;o--)i=this.createScope(r[o],i);return i}createScope(e,r,n){return new Jm(fe(e),r,n)}createScopeForNodes(e,r,n){const a=fe(e).map(i=>{const o=this.nameProvider.getName(i);if(o)return this.descriptions.createDescription(i,o)}).nonNullable();return new Jm(a,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new XN(this.indexManager.allElements(e)))}},s(wl,"DefaultScopeProvider"),wl);function Wg(t){return typeof t.$comment=="string"}s(Wg,"isAstNodeWithComment");function Zm(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}s(Zm,"isIntermediateReference");var Il,QN=(Il=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){const n=r??{},a=r==null?void 0:r.replacer,i=s((u,l)=>this.replacer(u,l,n),"defaultReplacer"),o=a?(u,l)=>a(u,l,i):i;try{return this.currentDocument=qt(e),JSON.stringify(e,o,r==null?void 0:r.space)}finally{this.currentDocument=void 0}}deserialize(e,r){const n=r??{},a=JSON.parse(e);return this.linkNode(a,a,n),a}replacer(e,r,{refText:n,sourceText:a,textRegions:i,comments:o,uriConverter:u}){var l,c,f;if(!this.ignoreProperties.has(e))if(ft(r)){const d=r.ref,p=n?r.$refText:void 0;if(d){const h=qt(d);let y="";this.currentDocument&&this.currentDocument!==h&&(u?y=u(h.uri,d):y=h.uri.toString());const v=this.astNodeLocator.getAstNodePath(d);return{$ref:`${y}#${v}`,$refText:p}}else return{$error:((l=r.error)==null?void 0:l.message)??"Could not resolve reference",$refText:p}}else if(fr(r)){const d=n?r.$refText:void 0,p=[];for(const h of r.items){const y=h.ref,v=qt(h.ref);let E="";this.currentDocument&&this.currentDocument!==v&&(u?E=u(v.uri,y):E=v.uri.toString());const T=this.astNodeLocator.getAstNodePath(y);p.push(`${E}#${T}`)}return{$refs:p,$refText:d}}else if(Be(r)){let d;if(i&&(d=this.addAstNodeRegionWithAssignmentsTo({...r}),(!e||r.$document)&&(d!=null&&d.$textRegion)&&(d.$textRegion.documentURI=(c=this.currentDocument)==null?void 0:c.uri.toString())),a&&!e&&(d??(d={...r}),d.$sourceText=(f=r.$cstNode)==null?void 0:f.text),o){d??(d={...r});const p=this.commentProvider.getComment(r);p&&(d.$comment=p.replace(/\r/g,""))}return d??r}else return r}addAstNodeRegionWithAssignmentsTo(e){const r=s(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){const n=e.$textRegion=r(e.$cstNode),a=n.assignments={};return Object.keys(e).filter(i=>!i.startsWith("$")).forEach(i=>{const o=my(e.$cstNode,i).map(r);o.length!==0&&(a[i]=o)}),e}}linkNode(e,r,n,a,i,o){for(const[l,c]of Object.entries(e))if(Array.isArray(c))for(let f=0;f<c.length;f++){const d=c[f];Zm(d)?c[f]=this.reviveReference(e,l,r,d,n):Be(d)&&this.linkNode(d,r,n,e,l,f)}else Zm(c)?e[l]=this.reviveReference(e,l,r,c,n):Be(c)&&this.linkNode(c,r,n,e,l);const u=e;u.$container=a,u.$containerProperty=i,u.$containerIndex=o}reviveReference(e,r,n,a,i){let o=a.$refText,u=a.$error,l;if(a.$ref){const c=this.getRefNode(n,a.$ref,i.uriConverter);if(Be(c))return o||(o=this.nameProvider.getName(c)),{$refText:o??"",ref:c};u=c}else if(a.$refs){const c=[];for(const f of a.$refs){const d=this.getRefNode(n,f,i.uriConverter);Be(d)&&c.push({ref:d})}if(c.length===0)l={$refText:o??"",items:c},u??(u="Could not resolve multi-reference");else return{$refText:o??"",items:c}}if(u)return l??(l={$refText:o??"",ref:void 0}),l.error={info:{container:e,property:r,reference:l},message:u},l}getRefNode(e,r,n){try{const a=r.indexOf("#");if(a===0){const l=this.astNodeLocator.getAstNode(e,r.substring(1));return l||"Could not resolve path: "+r}if(a<0){const l=n?n(r):It.parse(r),c=this.langiumDocuments.getDocument(l);return c?c.parseResult.value:"Could not find document for URI: "+r}const i=n?n(r.substring(0,a)):It.parse(r.substring(0,a)),o=this.langiumDocuments.getDocument(i);if(!o)return"Could not find document for URI: "+r;if(a===r.length-1)return o.parseResult.value;const u=this.astNodeLocator.getAstNode(o.parseResult.value,r.substring(a+1));return u||"Could not resolve URI: "+r}catch(a){return String(a)}}},s(Il,"DefaultJsonSerializer"),Il),Nl,eP=(Nl=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){const r=e.LanguageMetaData;for(const n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);if(r.fileNames)for(const 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 o,u;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");const r=(u=(o=this.textDocuments)==null?void 0:o.get(e))==null?void 0:u.languageId;if(r!==void 0){const l=this.languageIdMap.get(r);if(l)return l}const n=dt.extname(e),a=dt.basename(e),i=this.fileNameMap.get(a)??this.fileExtensionMap.get(n);if(!i)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 i}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}},s(Nl,"DefaultServiceRegistry"),Nl);function Dn(t){return{code:t}}s(Dn,"diagnosticData");var Pf;(function(t){t.defaults=["fast","slow","built-in"],t.all=t.defaults})(Pf||(Pf={}));var Pl,tP=(Pl=class{constructor(e){this.entries=new xr,this.knownCategories=new Set(Pf.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(const[a,i]of Object.entries(e)){const o=i;if(Array.isArray(o))for(const u of o){const l={check:this.wrapValidationException(u,r),category:n};this.addEntry(a,l)}else if(typeof o=="function"){const u={check:this.wrapValidationException(o,r),category:n};this.addEntry(a,u)}else tn()}}wrapValidationException(e,r){return async(n,a,i)=>{await this.handleException(()=>e.call(r,n,a,i),"An error occurred during validation",a,n)}}async handleException(e,r,n,a){try{await e()}catch(i){if(ca(i))throw i;console.error(`${r}:`,i),i instanceof Error&&i.stack&&console.error(i.stack);const o=i instanceof Error?i.message:String(i);n("error",`${r}: ${o}`,{node:a})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(const n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=fe(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(a=>r.includes(a.category))),n.map(a=>a.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(a,i,o,u)=>{await this.handleException(()=>e.call(n,a,i,o,u),r,i,a)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},s(Pl,"ValidationRegistry"),Pl),rP=Object.freeze({validateNode:!0,validateChildren:!0}),kl,nP=(kl=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=Re.CancellationToken.None){const a=e.parseResult,i=[];if(await Ve(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(a,i,r),r.stopAfterLexingErrors&&i.some(o=>{var u;return((u=o.data)==null?void 0:u.code)===Mt.LexingError})||(this.processParsingErrors(a,i,r),r.stopAfterParsingErrors&&i.some(o=>{var u;return((u=o.data)==null?void 0:u.code)===Mt.ParsingError}))||(this.processLinkingErrors(e,i,r),r.stopAfterLinkingErrors&&i.some(o=>{var u;return((u=o.data)==null?void 0:u.code)===Mt.LinkingError}))))return i;try{i.push(...await this.validateAst(a.value,r,n))}catch(o){if(ca(o))throw o;console.error("An error occurred during validation:",o)}return await Ve(n),i}processLexingErrors(e,r,n){var i;const a=[...e.lexerErrors,...((i=e.lexerReport)==null?void 0:i.diagnostics)??[]];for(const o of a){const u=o.severity??"error",l={severity:Es(u),range:{start:{line:o.line-1,character:o.column-1},end:{line:o.line-1,character:o.column+o.length-1}},message:o.message,data:Vg(u),source:this.getSource()};r.push(l)}}processParsingErrors(e,r,n){for(const a of e.parserErrors){let i;if(isNaN(a.token.startOffset)){if("previousToken"in a){const o=a.previousToken;if(isNaN(o.startOffset)){const u={line:0,character:0};i={start:u,end:u}}else{const u={line:o.endLine-1,character:o.endColumn};i={start:u,end:u}}}}else i=_s(a.token);if(i){const o={severity:Es("error"),range:i,message:a.message,data:Dn(Mt.ParsingError),source:this.getSource()};r.push(o)}}}processLinkingErrors(e,r,n){var a;for(const i of e.references){const o=i.error;if(o){const u={node:o.info.container,range:(a=i.$refNode)==null?void 0:a.range,property:o.info.property,index:o.info.index,data:{code:Mt.LinkingError,containerType:o.info.container.$type,property:o.info.property,refText:o.info.reference.$refText}};r.push(this.toDiagnostic("error",o.message,u))}}}async validateAst(e,r,n=Re.CancellationToken.None){const a=[],i=s((o,u,l)=>{a.push(this.toDiagnostic(o,u,l))},"acceptor");return await this.validateAstBefore(e,r,i,n),await this.validateAstNodes(e,r,i,n),await this.validateAstAfter(e,r,i,n),a}async validateAstBefore(e,r,n,a=Re.CancellationToken.None){const i=this.validationRegistry.checksBefore;for(const o of i)await Ve(a),await o(e,n,r.categories??[],a)}async validateAstNodes(e,r,n,a=Re.CancellationToken.None){var i;if((i=this.profiler)!=null&&i.isActive("validating")){const o=this.profiler.createTask("validating",this.languageId);o.start();try{const u=Vt(e).iterator();for(const l of u){o.startSubTask(l.$type);const c=this.validateSingleNodeOptions(l,r);if(c.validateNode)try{const f=this.validationRegistry.getChecks(l.$type,r.categories);for(const d of f)await d(l,n,a)}finally{o.stopSubTask(l.$type)}c.validateChildren||u.prune()}}finally{o.stop()}}else{const o=Vt(e).iterator();for(const u of o){await Ve(a);const l=this.validateSingleNodeOptions(u,r);if(l.validateNode){const c=this.validationRegistry.getChecks(u.$type,r.categories);for(const f of c)await f(u,n,a)}l.validateChildren||o.prune()}}}validateSingleNodeOptions(e,r){return rP}async validateAstAfter(e,r,n,a=Re.CancellationToken.None){const i=this.validationRegistry.checksAfter;for(const o of i)await Ve(a),await o(e,n,r.categories??[],a)}toDiagnostic(e,r,n){return{message:r,range:qg(n),severity:Es(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}},s(kl,"DefaultDocumentValidator"),kl);function qg(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=Yf(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=hy(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(qg,"getDiagnosticRange");function Es(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}s(Es,"toDiagnosticSeverity");function Vg(t){switch(t){case"error":return Dn(Mt.LexingError);case"warning":return Dn(Mt.LexingWarning);case"info":return Dn(Mt.LexingInfo);case"hint":return Dn(Mt.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}s(Vg,"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 Ol,aP=(Ol=class{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){const a=n??qt(e);r??(r=this.nameProvider.getName(e));const i=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${i} has no name.`);let o;const u=s(()=>o??(o=ni(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return u()},selectionSegment:ni(e.$cstNode),type:e.$type,documentUri:a.uri,path:i}}},s(Ol,"DefaultAstNodeDescriptionProvider"),Ol),Ll,iP=(Ll=class{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=Re.CancellationToken.None){const n=[],a=e.parseResult.value;for(const i of Vt(a))await Ve(r),ei(i).forEach(o=>{o.reference.error||n.push(...this.createInfoDescriptions(o))});return n}createInfoDescriptions(e){const r=e.reference;if(r.error||!r.$refNode)return[];let n=[];ft(r)&&r.$nodeDescription?n=[r.$nodeDescription]:fr(r)&&(n=r.items.map(l=>l.$nodeDescription).filter(l=>l!==void 0));const a=qt(e.container).uri,i=this.nodeLocator.getAstNodePath(e.container),o=[],u=ni(r.$refNode);for(const l of n)o.push({sourceUri:a,sourcePath:i,targetUri:l.documentUri,targetPath:l.path,segment:u,local:dt.equals(l.documentUri,a)});return o}},s(Ll,"DefaultReferenceDescriptionProvider"),Ll),Dl,sP=(Dl=class{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((a,i)=>{if(!a||i.length===0)return a;const o=i.indexOf(this.indexSeparator);if(o>0){const u=i.substring(0,o),l=parseInt(i.substring(o+1)),c=a[u];return c==null?void 0:c[l]}return a[i]},e)}},s(Dl,"DefaultAstNodeLocator"),Dl),zd={};Lf(zd,Rh(ci(),1));var xl,oP=(xl=class{constructor(e){this._ready=new Dr,this.onConfigurationSectionUpdateEmitter=new zd.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){const r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){const r=this.serviceRegistry.all.map(a=>({section:this.toSectionName(a.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((a,i)=>{this.updateSectionConfiguration(a.section,n[i])})}}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;const n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},s(xl,"DefaultConfigurationProvider"),xl),uc=Rh($k(),1),Gn;(function(t){function e(r){return{dispose:s(async()=>await r(),"dispose")}}s(e,"create"),t.create=e})(Gn||(Gn={}));var Ml,lP=(Ml=class{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new xr,this.documentPhaseListeners=new xr,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Q.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=Re.CancellationToken.None){var a;for(const i of e){const o=i.uri.toString();if(i.state===Q.Validated){if(typeof r.validation=="boolean"&&r.validation)this.resetToState(i,Q.IndexedReferences);else if(typeof r.validation=="object"){const u=this.findMissingValidationCategories(i,r);u.length>0&&(this.buildState.set(o,{completed:!1,options:{validation:{categories:u}},result:(a=this.buildState.get(o))==null?void 0:a.result}),i.state=Q.IndexedReferences)}}else this.buildState.delete(o)}this.currentState=Q.Changed,await this.emitUpdate(e.map(i=>i.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=Re.CancellationToken.None){this.currentState=Q.Changed;const a=[];for(const l of r){const c=this.langiumDocuments.deleteDocuments(l);for(const f of c)a.push(f.uri),this.cleanUpDeleted(f)}const i=(await Promise.all(e.map(l=>this.findChangedUris(l)))).flat();for(const l of i){let c=this.langiumDocuments.getDocument(l);c===void 0&&(c=this.langiumDocumentFactory.fromModel({$type:"INVALID"},l),c.state=Q.Changed,this.langiumDocuments.addDocument(c)),this.resetToState(c,Q.Changed)}const o=fe(i).concat(a).map(l=>l.toString()).toSet();this.langiumDocuments.all.filter(l=>!o.has(l.uri.toString())&&this.shouldRelink(l,o)).forEach(l=>this.resetToState(l,Q.ComputedScopes)),await this.emitUpdate(i,a),await Ve(n);const u=this.sortDocuments(this.langiumDocuments.all.filter(l=>{var c;return l.state<Q.Validated||!((c=this.buildState.get(l.uri.toString()))!=null&&c.completed)||this.resultsAreIncomplete(l,this.updateBuildOptions)}).toArray());await this.buildDocuments(u,this.updateBuildOptions,n)}resultsAreIncomplete(e,r){return this.findMissingValidationCategories(e,r).length>=1}findMissingValidationCategories(e,r){var u,l;const n=this.buildState.get(e.uri.toString()),a=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),i=(u=n==null?void 0:n.result)!=null&&u.validationChecks?new Set((l=n==null?void 0:n.result)==null?void 0:l.validationChecks):n!=null&&n.completed?a:new Set,o=r===void 0||r.validation===!0?a:typeof r.validation=="object"?r.validation.categories??a:[];return fe(o).filter(c=>!i.has(c)).toArray()}async findChangedUris(e){var n;if(this.langiumDocuments.getDocument(e)??((n=this.textDocuments)==null?void 0:n.get(e)))return[e];try{const a=await this.fileSystemProvider.stat(e);if(a.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(a))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),Gn.create(()=>{const r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}resetToState(e,r){switch(r){case Q.Changed:case Q.Parsed:this.indexManager.removeContent(e.uri);case Q.IndexedContent:e.localSymbols=void 0;case Q.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case Q.Linked:this.indexManager.removeReferences(e.uri);case Q.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case Q.Validated:}e.state>r&&(e.state=r)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=Q.Changed}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,Q.Parsed,n,o=>this.langiumDocumentFactory.update(o,n)),await this.runCancelable(e,Q.IndexedContent,n,o=>this.indexManager.updateContent(o,n)),await this.runCancelable(e,Q.ComputedScopes,n,async o=>{const u=this.serviceRegistry.getServices(o.uri).references.ScopeComputation;o.localSymbols=await u.collectLocalSymbols(o,n)});const a=e.filter(o=>this.shouldLink(o));await this.runCancelable(a,Q.Linked,n,o=>this.serviceRegistry.getServices(o.uri).references.Linker.link(o,n)),await this.runCancelable(a,Q.IndexedReferences,n,o=>this.indexManager.updateReferences(o,n));const i=e.filter(o=>this.shouldValidate(o)?!0:(this.markAsCompleted(o),!1));await this.runCancelable(i,Q.Validated,n,async o=>{await this.validate(o,n),this.markAsCompleted(o)})}markAsCompleted(e){const r=this.buildState.get(e.uri.toString());r&&(r.completed=!0)}prepareBuild(e,r){for(const n of e){const a=n.uri.toString(),i=this.buildState.get(a);(!i||i.completed)&&this.buildState.set(a,{completed:!1,options:r,result:i==null?void 0:i.result})}}async runCancelable(e,r,n,a){for(const o of e)o.state<r&&(await Ve(n),await a(o),o.state=r,await this.notifyDocumentPhase(o,r,n));const i=e.filter(o=>o.state===r);await this.notifyBuildPhase(i,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),Gn.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),Gn.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let a;return r&&"path"in r?a=r:n=r,n??(n=Re.CancellationToken.None),a?this.awaitDocumentState(e,a,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,r,n){const a=this.langiumDocuments.getDocument(r);if(a){if(a.state>=e)return Promise.resolve(r);if(n.isCancellationRequested)return Promise.reject(cr);if(this.currentState>=e&&e>a.state)return Promise.reject(new uc.ResponseError(uc.LSPErrorCodes.RequestFailed,`Document state of ${r.toString()} is ${Q[a.state]}, requiring ${Q[e]}, but workspace state is already ${Q[this.currentState]}. Returning undefined.`))}else return Promise.reject(new uc.ResponseError(uc.LSPErrorCodes.ServerCancelled,`No document found for URI: ${r.toString()}`));return new Promise((i,o)=>{const u=this.onDocumentPhase(e,c=>{dt.equals(c.uri,r)&&(u.dispose(),l.dispose(),i(c.uri))}),l=n.onCancellationRequested(()=>{u.dispose(),l.dispose(),o(cr)})})}awaitBuilderState(e,r){return this.currentState>=e?Promise.resolve():r.isCancellationRequested?Promise.reject(cr):new Promise((n,a)=>{const i=this.onBuildPhase(e,()=>{i.dispose(),o.dispose(),n()}),o=r.onCancellationRequested(()=>{i.dispose(),o.dispose(),a(cr)})})}async notifyDocumentPhase(e,r,n){const i=this.documentPhaseListeners.get(r).slice();for(const o of i)try{await Ve(n),await o(e,n)}catch(u){if(!ca(u))throw u}}async notifyBuildPhase(e,r,n){if(e.length===0)return;const i=this.buildPhaseListeners.get(r).slice();for(const o of i)await Ve(n),await o(e,n)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){const n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,a=this.getBuildOptions(e),i=typeof a.validation=="object"?{...a.validation}:{};i.categories=this.findMissingValidationCategories(e,a);const o=await n.validateDocument(e,i,r);e.diagnostics?e.diagnostics.push(...o):e.diagnostics=o;const u=this.buildState.get(e.uri.toString());u&&(u.result??(u.result={}),u.result.validationChecks?u.result.validationChecks=fe(u.result.validationChecks).concat(i.categories).distinct().toArray():u.result.validationChecks=[...i.categories])}getBuildOptions(e){var r;return((r=this.buildState.get(e.uri.toString()))==null?void 0:r.options)??{}}},s(Ml,"DefaultDocumentBuilder"),Ml),Gl,uP=(Gl=class{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new Fd,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){const n=qt(e).uri,a=[];return this.referenceIndex.forEach(i=>{i.forEach(o=>{dt.equals(o.targetUri,n)&&o.targetPath===r&&a.push(o)})}),fe(a)}allElements(e,r){let n=fe(this.symbolIndex.keys());return r&&(n=n.filter(a=>!r||r.has(a))),n.map(a=>this.getFileDescriptions(a,e)).flat()}getFileDescriptions(e,r){return r?this.symbolByTypeIndex.get(e,r,()=>(this.symbolIndex.get(e)??[]).filter(i=>this.astReflection.isSubtype(i.type,r))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){const r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r)}removeReferences(e){const r=e.toString();this.referenceIndex.delete(r)}async updateContent(e,r=Re.CancellationToken.None){const a=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,r),i=e.uri.toString();this.symbolIndex.set(i,a),this.symbolByTypeIndex.clear(i)}async updateReferences(e,r=Re.CancellationToken.None){const a=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),a)}isAffected(e,r){const n=this.referenceIndex.get(e.uri.toString());return n?n.some(a=>!a.local&&r.has(a.targetUri.toString())):!1}},s(Gl,"DefaultIndexManager"),Gl),Fl,cP=(Fl=class{constructor(e){this.initialBuildOptions={},this._ready=new Dr,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=Re.CancellationToken.None){const n=await this.performStartup(e);await Ve(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){const r=[],n=s(o=>{r.push(o),this.langiumDocuments.hasDocument(o.uri)||this.langiumDocuments.addDocument(o)},"collector");await this.loadAdditionalDocuments(e,n);const a=[];await Promise.all(e.map(o=>this.getRootFolder(o)).map(async o=>this.traverseFolder(o,a)));const i=fe(a).distinct(o=>o.toString()).filter(o=>!this.langiumDocuments.hasDocument(o));return await this.loadWorkspaceDocuments(i,n),this._ready.resolve(),r}async loadWorkspaceDocuments(e,r){await Promise.all(e.map(async n=>{const a=await this.langiumDocuments.getOrCreateDocument(n);r(a)}))}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return It.parse(e.uri)}async traverseFolder(e,r){try{const n=await this.fileSystemProvider.readDirectory(e);await Promise.all(n.map(async a=>{this.shouldIncludeEntry(a)&&(a.isDirectory?await this.traverseFolder(a.uri,r):a.isFile&&r.push(a.uri))}))}catch(n){console.error("Failure to read directory content of "+e.toString(!0),n)}}async searchFolder(e){const r=[];return await this.traverseFolder(e,r),r}shouldIncludeEntry(e){const r=dt.basename(e.uri);return r.startsWith(".")?!1:e.isDirectory?r!=="node_modules"&&r!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}},s(Fl,"DefaultWorkspaceManager"),Fl),zl,fP=(zl=class{buildUnexpectedCharactersMessage(e,r,n,a,i){return km.buildUnexpectedCharactersMessage(e,r,n,a,i)}buildUnableToPopLexerModeMessage(e){return km.buildUnableToPopLexerModeMessage(e)}},s(zl,"DefaultLexerErrorMessageProvider"),zl),Hg={mode:"full"},jl,Yg=(jl=class{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);const n=kf(r)?Object.values(r):r,a=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new pt(n,{positionTracking:"full",skipValidations:a,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=Hg){var a,i;const n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:(i=(a=this.tokenBuilder).flushLexingReport)==null?void 0:i.call(a,e)}}toTokenTypeDictionary(e){if(kf(e))return e;const r=Bd(e)?Object.values(e.modes).flat():e,n={};return r.forEach(a=>n[a.name]=a),n}},s(jl,"DefaultLexer"),jl);function jd(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}s(jd,"isTokenTypeArray");function Bd(t){return t&&"modes"in t&&"defaultMode"in t}s(Bd,"isIMultiModeLexerDefinition");function kf(t){return!jd(t)&&!Bd(t)}s(kf,"isTokenTypeDictionary");xu();function Xg(t,e,r){let n,a;typeof t=="string"?(a=e,n=r):(a=t.range.start,n=e),a||(a=oe.create(0,0));const i=Zg(t),o=Ud(n),u=dP({lines:i,position:a,options:o});return hP({index:0,tokens:u,position:a})}s(Xg,"parseJSDoc");function Jg(t,e){const r=Ud(e),n=Zg(t);if(n.length===0)return!1;const a=n[0],i=n[n.length-1],o=r.start,u=r.end;return!!(o!=null&&o.exec(a))&&!!(u!=null&&u.exec(i))}s(Jg,"isJSDoc");function Zg(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(yR)}s(Zg,"getLines");var wT=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,Wj=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function dP(t){var a,i,o;const e=[];let r=t.position.line,n=t.position.character;for(let u=0;u<t.lines.length;u++){const l=u===0,c=u===t.lines.length-1;let f=t.lines[u],d=0;if(l&&t.options.start){const h=(a=t.options.start)==null?void 0:a.exec(f);h&&(d=h.index+h[0].length)}else{const h=(i=t.options.line)==null?void 0:i.exec(f);h&&(d=h.index+h[0].length)}if(c){const h=(o=t.options.end)==null?void 0:o.exec(f);h&&(f=f.substring(0,h.index))}if(f=f.substring(0,mP(f)),Of(f,d)>=f.length){if(e.length>0){const h=oe.create(r,n);e.push({type:"break",content:"",range:ee.create(h,h)})}}else{wT.lastIndex=d;const h=wT.exec(f);if(h){const y=h[0],v=h[1],E=oe.create(r,n+d),T=oe.create(r,n+d+y.length);e.push({type:"tag",content:v,range:ee.create(E,T)}),d+=y.length,d=Of(f,d)}if(d<f.length){const y=f.substring(d),v=Array.from(y.matchAll(Wj));e.push(...pP(v,y,r,n+d))}}r++,n=0}return e.length>0&&e[e.length-1].type==="break"?e.slice(0,-1):e}s(dP,"tokenize");function pP(t,e,r,n){const a=[];if(t.length===0){const i=oe.create(r,n),o=oe.create(r,n+e.length);a.push({type:"text",content:e,range:ee.create(i,o)})}else{let i=0;for(const u of t){const l=u.index,c=e.substring(i,l);c.length>0&&a.push({type:"text",content:e.substring(i,l),range:ee.create(oe.create(r,i+n),oe.create(r,l+n))});let f=c.length+1;const d=u[1];if(a.push({type:"inline-tag",content:d,range:ee.create(oe.create(r,i+f+n),oe.create(r,i+f+d.length+n))}),f+=d.length,u.length===4){f+=u[2].length;const p=u[3];a.push({type:"text",content:p,range:ee.create(oe.create(r,i+f+n),oe.create(r,i+f+p.length+n))})}else a.push({type:"text",content:"",range:ee.create(oe.create(r,i+f+n),oe.create(r,i+f+n))});i=l+u[0].length}const o=e.substring(i);o.length>0&&a.push({type:"text",content:o,range:ee.create(oe.create(r,i+n),oe.create(r,i+n+o.length))})}return a}s(pP,"buildInlineTokens");var qj=/\S/,Vj=/\s*$/;function Of(t,e){const r=t.substring(e).match(qj);return r?e+r.index:t.length}s(Of,"skipWhitespace");function mP(t){const e=t.match(Vj);if(e&&typeof e.index=="number")return e.index}s(mP,"lastCharacter");function hP(t){var i,o;const e=oe.create(t.position.line,t.position.character);if(t.tokens.length===0)return new IT([],ee.create(e,e));const r=[];for(;t.index<t.tokens.length;){const u=yP(t,r[r.length-1]);u&&r.push(u)}const n=((i=r[0])==null?void 0:i.range.start)??e,a=((o=r[r.length-1])==null?void 0:o.range.end)??e;return new IT(r,ee.create(n,a))}s(hP,"parseJSDocComment");function yP(t,e){const r=t.tokens[t.index];if(r.type==="tag")return ev(t,!1);if(r.type==="text"||r.type==="inline-tag")return Qg(t);gP(r,e),t.index++}s(yP,"parseJSDocElement");function gP(t,e){if(e){const r=new RP("",t.range);"inlines"in e?e.inlines.push(r):e.content.inlines.push(r)}}s(gP,"appendEmptyLine");function Qg(t){let e=t.tokens[t.index];const r=e;let n=e;const a=[];for(;e&&e.type!=="break"&&e.type!=="tag";)a.push(vP(t)),n=e,e=t.tokens[t.index];return new Qm(a,ee.create(r.range.start,n.range.end))}s(Qg,"parseJSDocText");function vP(t){return t.tokens[t.index].type==="inline-tag"?ev(t,!0):tv(t)}s(vP,"parseJSDocInline");function ev(t,e){const r=t.tokens[t.index++],n=r.content.substring(1),a=t.tokens[t.index];if((a==null?void 0:a.type)==="text")if(e){const i=tv(t);return new Qd(n,new Qm([i],i.range),e,ee.create(r.range.start,i.range.end))}else{const i=Qg(t);return new Qd(n,i,e,ee.create(r.range.start,i.range.end))}else{const i=r.range;return new Qd(n,new Qm([],i),e,i)}}s(ev,"parseJSDocTag");function tv(t){const e=t.tokens[t.index++];return new RP(e.content,e.range)}s(tv,"parseJSDocLine");function Ud(t){if(!t)return Ud({start:"/**",end:"*/",line:"*"});const{start:e,end:r,line:n}=t;return{start:jc(e,!0),end:jc(r,!1),line:jc(n,!0)}}s(Ud,"normalizeOptions");function jc(t,e){if(typeof t=="string"||typeof t=="object"){const r=typeof t=="string"?di(t):t.source;return e?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}else return t}s(jc,"normalizeOption");var Bl,IT=(Bl=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(const r of this.elements)if(e.length===0)e=r.toString();else{const n=r.toString();e+=eh(e)+n}return e.trim()}toMarkdown(e){let r="";for(const n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{const a=n.toMarkdown(e);r+=eh(r)+a}return r.trim()}},s(Bl,"JSDocCommentImpl"),Bl),Ul,Qd=(Ul=class{constructor(e,r,n,a){this.name=e,this.content=r,this.inline=n,this.range=a}toString(){let e=`@${this.name}`;const r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e}
152
+ ${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){const r=this.content.toMarkdown(e);if(this.inline){const i=TP(this.name,r,e??{});if(typeof i=="string")return i}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 a=`${n}@${this.name}${n}`;return this.content.inlines.length===1?a=`${a} — ${r}`:this.content.inlines.length>1&&(a=`${a}
153
+ ${r}`),this.inline?`{${a}}`:a}},s(Ul,"JSDocTagImpl"),Ul);function TP(t,e,r){var n;if(t==="linkplain"||t==="linkcode"||t==="link"){const a=e.indexOf(" ");let i=e;if(a>0){const u=Of(e,a);i=e.substring(u),e=e.substring(0,a)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(i=`\`${i}\``),((n=r.renderLink)==null?void 0:n.call(r,e,i))??$P(e,i)}}s(TP,"renderInlineTag");function $P(t,e){try{return It.parse(t,!0),`[${e}](${t})`}catch{return t}}s($P,"renderLinkDefault");var Kl,Qm=(Kl=class{constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;r<this.inlines.length;r++){const n=this.inlines[r],a=this.inlines[r+1];e+=n.toString(),a&&a.range.start.line>n.range.start.line&&(e+=`
154
+ `)}return e}toMarkdown(e){let r="";for(let n=0;n<this.inlines.length;n++){const a=this.inlines[n],i=this.inlines[n+1];r+=a.toMarkdown(e),i&&i.range.start.line>a.range.start.line&&(r+=`
155
+ `)}return r}},s(Kl,"JSDocTextImpl"),Kl),Wl,RP=(Wl=class{constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}},s(Wl,"JSDocLineImpl"),Wl);function eh(t){return t.endsWith(`
156
+ `)?`
157
+ `:`
158
+
159
+ `}s(eh,"fillNewlines");var ql,AP=(ql=class{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const r=this.commentProvider.getComment(e);if(r&&Jg(r))return Xg(r).toMarkdown({renderLink:s((a,i)=>this.documentationLinkRenderer(e,a,i),"renderLink"),renderTag:s(a=>this.documentationTagRenderer(e,a),"renderTag")})}documentationLinkRenderer(e,r,n){const a=this.findNameInLocalSymbols(e,r)??this.findNameInGlobalScope(e,r);if(a&&a.nameSegment){const i=a.nameSegment.range.start.line+1,o=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${i},${o}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(e,r){}findNameInLocalSymbols(e,r){const a=qt(e).localSymbols;if(!a)return;let i=e;do{const u=a.getStream(i).find(l=>l.name===r);if(u)return u;i=i.$container}while(i)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(a=>a.name===r)}},s(ql,"JSDocDocumentationProvider"),ql),Vl,EP=(Vl=class{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return Wg(e)?e.$comment:(r=Qh(e.$cstNode,this.grammarConfig().multilineCommentRules))==null?void 0:r.text}},s(Vl,"DefaultCommentProvider"),Vl),Hl,CP=(Hl=class{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},s(Hl,"DefaultAsyncParser"),Hl),Yl,Hj=(Yl=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;){const e=this.createWorker();e.onReady(()=>{if(this.queue.length>0){const r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){const n=await this.acquireParserWorker(r),a=new Dr;let i;const o=r.onCancellationRequested(()=>{i=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(u=>{const l=this.hydrator.hydrate(u);a.resolve(l)}).catch(u=>{a.reject(u)}).finally(()=>{o.dispose(),clearTimeout(i)}),a.promise}terminateWorker(e){e.terminate();const r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(const n of this.workerPool)if(n.ready)return n.lock(),n;const r=new Dr;return e.onCancellationRequested(()=>{const n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(cr)}),this.queue.push(r),r.promise}},s(Yl,"AbstractThreadedAsyncParser"),Yl),Xl,Yj=(Xl=class{get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,a){this.onReadyEmitter=new zd.Emitter,this.deferred=new Dr,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=a,r(i=>{const o=i;this.deferred.resolve(o),this.unlock()}),n(i=>{this.deferred.reject(i),this.unlock()})}terminate(){this.deferred.reject(cr),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 Dr,this.sendMessage(e),this.deferred.promise}},s(Xl,"ParserWorker"),Xl),Jl,bP=(Jl=class{constructor(){this.previousTokenSource=new Re.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();const r=Md();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=Re.CancellationToken.None){const a=new Dr,i={action:r,deferred:a,cancellationToken:n};return e.push(i),this.performNextOperation(),a.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:a})=>{try{const i=await Promise.resolve().then(()=>r(a));n.resolve(i)}catch(i){ca(i)?n.resolve(void 0):n.reject(i)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},s(Jl,"DefaultWorkspaceLock"),Jl),Zl,_P=(Zl=class{constructor(e){this.grammarElementIdMap=new Nf,this.tokenTypeIdMap=new Nf,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){const r=new Map,n=new Map;for(const a of Vt(e))r.set(a,{});if(e.$cstNode)for(const a of ri(e.$cstNode))n.set(a,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){const n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(const[a,i]of Object.entries(e))if(!a.startsWith("$"))if(Array.isArray(i)){const o=[];n[a]=o;for(const u of i)Be(u)?o.push(this.dehydrateAstNode(u,r)):ft(u)?o.push(this.dehydrateReference(u,r)):o.push(u)}else Be(i)?n[a]=this.dehydrateAstNode(i,r):ft(i)?n[a]=this.dehydrateReference(i,r):i!==void 0&&(n[a]=i);return n}dehydrateReference(e,r){const n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){const n=r.cstNodes.get(e);return Mf(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),Sr(e)?n.content=e.content.map(a=>this.dehydrateCstNode(a,r)):Wn(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){const r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){const r=new Map,n=new Map;for(const i of Vt(e))r.set(i,{});let a;if(e.$cstNode)for(const i of ri(e.$cstNode)){let o;"fullText"in i?(o=new Ig(i.fullText),a=o):"content"in i?o=new kd:"tokenType"in i&&(o=this.hydrateCstLeafNode(i)),o&&(n.set(i,o),o.root=a)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){const n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(const[a,i]of Object.entries(e))if(!a.startsWith("$"))if(Array.isArray(i)){const o=[];n[a]=o;for(const u of i)Be(u)?o.push(this.setParent(this.hydrateAstNode(u,r),n)):ft(u)?o.push(this.hydrateReference(u,n,a,r)):o.push(u)}else Be(i)?n[a]=this.setParent(this.hydrateAstNode(i,r),n):ft(i)?n[a]=this.hydrateReference(i,n,a,r):i!==void 0&&(n[a]=i);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,a){return this.linker.buildReference(r,n,a.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){const a=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(a.grammarSource=this.getGrammarElement(e.grammarSource)),a.astNode=r.astNodes.get(e.astNode),Sr(a))for(const i of e.content){const o=this.hydrateCstNode(i,r,n++);a.content.push(o)}return a}hydrateCstLeafNode(e){const r=this.getTokenType(e.tokenType),n=e.offset,a=e.length,i=e.startLine,o=e.startColumn,u=e.endLine,l=e.endColumn,c=e.hidden;return new bf(n,a,{start:{line:i,character:o},end:{line:u,character:l}},r,c)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(const r of Vt(this.grammar))Gf(r)&&this.grammarElementIdMap.set(r,e++)}},s(Zl,"DefaultHydrator"),Zl);function He(t){return{documentation:{CommentProvider:s(e=>new EP(e),"CommentProvider"),DocumentationProvider:s(e=>new AP(e),"DocumentationProvider")},parser:{AsyncParser:s(e=>new CP(e),"AsyncParser"),GrammarConfig:s(e=>Ey(e),"GrammarConfig"),LangiumParser:s(e=>Dg(e),"LangiumParser"),CompletionParser:s(e=>Lg(e),"CompletionParser"),ValueConverter:s(()=>new Mg,"ValueConverter"),TokenBuilder:s(()=>new Dd,"TokenBuilder"),Lexer:s(e=>new Yg(e),"Lexer"),ParserErrorMessageProvider:s(()=>new Pg,"ParserErrorMessageProvider"),LexerErrorMessageProvider:s(()=>new fP,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:s(()=>new sP,"AstNodeLocator"),AstNodeDescriptionProvider:s(e=>new aP(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:s(e=>new iP(e),"ReferenceDescriptionProvider")},references:{Linker:s(e=>new qN(e),"Linker"),NameProvider:s(()=>new VN,"NameProvider"),ScopeProvider:s(e=>new ZN(e),"ScopeProvider"),ScopeComputation:s(e=>new YN(e),"ScopeComputation"),References:s(e=>new HN(e),"References")},serializer:{Hydrator:s(e=>new _P(e),"Hydrator"),JsonSerializer:s(e=>new QN(e),"JsonSerializer")},validation:{DocumentValidator:s(e=>new nP(e),"DocumentValidator"),ValidationRegistry:s(e=>new tP(e),"ValidationRegistry")},shared:s(()=>t.shared,"shared")}}s(He,"createDefaultCoreModule");function Ye(t){return{ServiceRegistry:s(e=>new eP(e),"ServiceRegistry"),workspace:{LangiumDocuments:s(e=>new WN(e),"LangiumDocuments"),LangiumDocumentFactory:s(e=>new KN(e),"LangiumDocumentFactory"),DocumentBuilder:s(e=>new lP(e),"DocumentBuilder"),IndexManager:s(e=>new uP(e),"IndexManager"),WorkspaceManager:s(e=>new cP(e),"WorkspaceManager"),FileSystemProvider:s(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:s(()=>new bP,"WorkspaceLock"),ConfigurationProvider:s(e=>new oP(e),"ConfigurationProvider")},profilers:{}}}s(Ye,"createDefaultSharedCoreModule");var th;(function(t){t.merge=(e,r)=>oi(oi({},e),r)})(th||(th={}));function re(t,e,r,n,a,i,o,u,l){const c=[t,e,r,n,a,i,o,u,l].reduce(oi,{});return nv(c)}s(re,"inject");var SP=Symbol("isProxy");function rv(t){if(t&&t[SP])for(const e of Object.values(t))rv(e);return t}s(rv,"eagerLoad");function nv(t,e){const r=new Proxy({},{deleteProperty:s(()=>!1,"deleteProperty"),set:s(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:s((n,a)=>a===SP?!0:rh(n,a,t,e||r),"get"),getOwnPropertyDescriptor:s((n,a)=>(rh(n,a,t,e||r),Object.getOwnPropertyDescriptor(n,a)),"getOwnPropertyDescriptor"),has:s((n,a)=>a in t,"has"),ownKeys:s(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}s(nv,"_inject");var NT=Symbol();function rh(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]===NT)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){const a=r[e];t[e]=NT;try{t[e]=typeof a=="function"?a(n):nv(a,n)}catch(i){throw t[e]=i instanceof Error?i:void 0,i}return t[e]}else return}s(rh,"_resolve");function oi(t,e){if(e){for(const[r,n]of Object.entries(e))if(n!=null)if(typeof n=="object"){const a=t[r];typeof a=="object"&&a!==null?t[r]=oi(a,n):t[r]=oi({},n)}else t[r]=n}return t}s(oi,"_merge");var nh={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]},xn;(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(xn||(xn={}));var Ql,wP=(Ql=class extends Dd{constructor(e=nh){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...nh,...e},this.indentTokenType=Ya({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=Ya({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){const n=super.buildTokens(e,r);if(!jd(n))throw new Error("Invalid tokens built by default builder");const{indentTokenName:a,dedentTokenName:i,whitespaceTokenName:o,ignoreIndentationDelimiters:u}=this.options;let l,c,f;const d=[];for(const p of n){for(const[h,y]of u)p.name===h?p.PUSH_MODE=xn.IGNORE_INDENTATION:p.name===y&&(p.POP_MODE=!0);p.name===i?l=p:p.name===a?c=p:p.name===o?f=p:d.push(p)}if(!l||!c||!f)throw new Error("Some indentation/whitespace tokens not found!");return u.length>0?{modes:{[xn.REGULAR]:[l,c,...d,f],[xn.IGNORE_INDENTATION]:[...d,f]},defaultMode:xn.REGULAR}:[l,c,f,...d]}flushLexingReport(e){return{...super.flushLexingReport(e),remainingDedents:this.flushRemainingDedents(e)}}isStartOfLine(e,r){return r===0||`\r
160
+ `.includes(e[r-1])}matchWhitespace(e,r,n,a){this.whitespaceRegExp.lastIndex=r;const i=this.whitespaceRegExp.exec(e);return{currIndentLevel:(i==null?void 0:i[0].length)??0,prevIndentLevel:this.indentationStack.at(-1),match:i}}createIndentationTokenInstance(e,r,n,a){const i=this.getLineNumber(r,a);return Qu(e,n,a,a+n.length,i,i,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,a){if(!this.isStartOfLine(e,r))return null;const{currIndentLevel:i,prevIndentLevel:o,match:u}=this.matchWhitespace(e,r,n,a);return i<=o?null:(this.indentationStack.push(i),u)}dedentMatcher(e,r,n,a){var d,p;if(!this.isStartOfLine(e,r))return null;const{currIndentLevel:i,prevIndentLevel:o,match:u}=this.matchWhitespace(e,r,n,a);if(i>=o)return null;const l=this.indentationStack.lastIndexOf(i);if(l===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${i} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:((d=u==null?void 0:u[0])==null?void 0:d.length)??0,line:this.getLineNumber(e,r),column:1}),null;const c=this.indentationStack.length-l-1,f=((p=e.substring(0,r).match(/[\r\n]+$/))==null?void 0:p[0].length)??1;for(let h=0;h<c;h++){const y=this.createIndentationTokenInstance(this.dedentTokenType,e,"",r-(f-1));n.push(y),this.indentationStack.pop()}return null}buildTerminalToken(e){const r=super.buildTerminalToken(e),{indentTokenName:n,dedentTokenName:a,whitespaceTokenName:i}=this.options;return r.name===n?this.indentTokenType:r.name===a?this.dedentTokenType:r.name===i?Ya({name:i,pattern:this.whitespaceRegExp,group:pt.SKIPPED}):r}flushRemainingDedents(e){const r=[];for(;this.indentationStack.length>1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},s(Ql,"IndentationAwareTokenBuilder"),Ql),eu,Xj=(eu=class extends Yg{constructor(e){if(super(e),e.parser.TokenBuilder instanceof wP)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=Hg){const n=super.tokenize(e),a=n.report;(r==null?void 0:r.mode)==="full"&&n.tokens.push(...a.remainingDedents),a.remainingDedents=[];const{indentTokenType:i,dedentTokenType:o}=this.indentationTokenBuilder,u=i.tokenTypeIdx,l=o.tokenTypeIdx,c=[],f=n.tokens.length-1;for(let d=0;d<f;d++){const p=n.tokens[d],h=n.tokens[d+1];if(p.tokenTypeIdx===u&&h.tokenTypeIdx===l){d++;continue}c.push(p)}return f>=0&&c.push(n.tokens[f]),n.tokens=c,n}},s(eu,"IndentationAwareLexer"),eu),av={};en(av,{AstUtils:()=>Sh,BiMap:()=>Nf,Cancellation:()=>Re,ContextCache:()=>Fd,CstUtils:()=>Ch,DONE_RESULT:()=>ct,Deferred:()=>Dr,Disposable:()=>Gn,DisposableCache:()=>Gd,DocumentCache:()=>JN,EMPTY_STREAM:()=>Ja,ErrorWithLocation:()=>Wf,GrammarUtils:()=>ny,MultiMap:()=>xr,OperationCancelled:()=>cr,Reduction:()=>bs,RegExpUtils:()=>iy,SimpleCache:()=>Ug,StreamImpl:()=>ur,TreeStreamImpl:()=>Za,URI:()=>It,UriTrie:()=>jg,UriUtils:()=>dt,WorkspaceCache:()=>Kg,assertCondition:()=>ay,assertUnreachable:()=>tn,delayNextTick:()=>xd,interruptAndCheck:()=>Ve,isOperationCancelled:()=>ca,loadGrammarFromJson:()=>Xe,setInterruptionPeriod:()=>Gg,startCancelableOperation:()=>Md,stream:()=>fe});Lf(av,zd);var tu,IP=(tu=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(tu,"EmptyFileSystemProvider"),tu),it={fileSystemProvider:s(()=>new IP,"fileSystemProvider")},Jj={Grammar:s(()=>{},"Grammar"),LanguageMetaData:s(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Zj={AstReflection:s(()=>new Hh,"AstReflection")};function NP(){const t=re(Ye(it),Zj),e=re(He({shared:t}),Jj);return t.ServiceRegistry.register(e),e}s(NP,"createMinimalGrammarServices");function Xe(t){const e=NP(),r=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(r,It.parse(`memory:/${r.name??"grammar"}.langium`)),r}s(Xe,"loadGrammarFromJson");Lf(j$,av);var ru,Qj=(ru=class{constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new xr}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 PP(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()}`);const n=[];for(const o of r.entries.keys()){const u=r.entries.get(o),l=u.reduce((c,f)=>c+f);n.push({name:`${r.identifier}.${o}`,count:u.length,duration:l})}const a=r.duration-n.map(o=>o.duration).reduce((o,u)=>o+u,0);n.push({name:r.identifier,count:1,duration:a}),n.sort((o,u)=>u.duration-o.duration);function i(o){return Math.round(100*o)/100}return s(i,"Round"),console.table(n.map(o=>({Element:o.name,Count:o.count,"Self %":i(100*o.duration/r.duration),"Time (ms)":i(o.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(ru,"DefaultLangiumProfiler"),ru),nu,PP=(nu=class{constructor(e,r){this.stack=[],this.entries=new xr,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(", ")}.`);const 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){const 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.`);const n=performance.now()-r.start;this.stack.at(-1)!==void 0&&(this.stack[this.stack.length-1].content+=n);const a=n-r.content;this.entries.add(e,a)}},s(nu,"ProfilingTask"),nu),ah;(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 ]+)\]/}})(ah||(ah={}));var ih;(t=>{t.Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(ih||(ih={}));var sh;(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]*/}})(sh||(sh={}));var oh;(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])?/}})(oh||(oh={}));var lh;(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]*/}})(lh||(lh={}));var uh;(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]*/}})(uh||(uh={}));var ch;(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]*/}})(ch||(ch={}));var fh;(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]*/}})(fh||(fh={}));var dh;(t=>{t.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/}})(dh||(dh={}));var ph;(t=>{t.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/}})(ph||(ph={}));var mh;(t=>{t.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//}})(mh||(mh={}));var hh;(t=>{t.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/}})(hh||(hh={}));var yh;(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:/"[^"]*"|'[^']*'/}})(yh||(yh={}));var gh;(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]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/}})(gh||(gh={}));var vh;(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]*/}})(vh||(vh={}));({...ah.Terminals,...ih.Terminals,...sh.Terminals,...oh.Terminals,...lh.Terminals,...uh.Terminals,...ch.Terminals,...fh.Terminals,...dh.Terminals,...ph.Terminals,...mh.Terminals,...hh.Terminals,...gh.Terminals,...yh.Terminals,...vh.Terminals});var PT={$type:"AbnfAlternation",alternatives:"alternatives"},kT={$type:"AbnfConcatenation",elements:"elements"},ep={$type:"AbnfElement",primary:"primary",repeat:"repeat"},OT={$type:"AbnfGroup",element:"element"},LT={$type:"AbnfNumVal",value:"value"},DT={$type:"AbnfOptionalGroup",element:"element"},va={$type:"AbnfPrimary"},tp={$type:"AbnfRule",definition:"definition",name:"name"},xT={$type:"AbnfRuleName",name:"name"},MT={$type:"AbnfStringLiteral",value:"value"},cc={$type:"Accelerator",name:"name",x:"x",y:"y"},rp={$type:"Alignment",direction:"direction",members:"members"},fc={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},Bi={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},np={$type:"Annotations",x:"x",y:"y"},ir={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function eB(t){return ze.isInstance(t,ir.$type)}s(eB,"isArchitecture");var dc={$type:"Axis",label:"label",name:"name"},Bc={$type:"Branch",name:"name",order:"order"};function tB(t){return ze.isInstance(t,Bc.$type)}s(tB,"isBranch");var GT={$type:"Checkout",branch:"branch"},pc={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},ap={$type:"ClassDefStatement",className:"className",styleText:"styleText"},Na={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function rB(t){return ze.isInstance(t,Na.$type)}s(rB,"isCommit");var mc={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},on={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},hc={$type:"Curve",entries:"entries",label:"label",name:"name"},vn={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};function nB(t){return ze.isInstance(t,vn.$type)}s(nB,"isCynefin");var yc={$type:"Deaccelerator",name:"name",x:"x",y:"y"},FT={$type:"Decorator",strategy:"strategy"},Ta={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},Uc={$type:"DomainBlock",domain:"domain",items:"items"};function aB(t){return ze.isInstance(t,Uc.$type)}s(aB,"isDomainBlock");var Th={$type:"DomainItem",label:"label"};function iB(t){return ze.isInstance(t,Th.$type)}s(iB,"isDomainItem");var zT={$type:"EbnfChoice",alternatives:"alternatives"},jT={$type:"EbnfExceptionPostfix",except:"except"},BT={$type:"EbnfGroup",element:"element"},UT={$type:"EbnfNonTerminal",name:"name"},KT={$type:"EbnfOneOrMorePostfix",operator:"operator"},WT={$type:"EbnfOptional",element:"element"},qT={$type:"EbnfOptionalPostfix",operator:"operator"},Ui={$type:"EbnfPostfix"},ln={$type:"EbnfPrimary"},VT={$type:"EbnfRepetition",element:"element"},ip={$type:"EbnfRule",definition:"definition",name:"name"},HT={$type:"EbnfSequence",elements:"elements"},YT={$type:"EbnfSpecial",text:"text"},sp={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},XT={$type:"EbnfTerminal",value:"value"},JT={$type:"EbnfZeroOrMorePostfix",operator:"operator"},nr={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},$a={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},un={$type:"EmFrame"},Ki={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},ZT={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},op={$type:"EmModelEntity",name:"name"};function sB(t){return t==="rmo"||t==="readmodel"||t==="ui"||t==="cmd"||t==="command"||t==="evt"||t==="event"||t==="pcr"||t==="processor"}s(sB,"isEmModelEntityType");var gc={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},Er={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};function oB(t){return ze.isInstance(t,Er.$type)}s(oB,"isEmResetFrame");var Ur={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},lp={$type:"Entry",axis:"axis",value:"value"},$r={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},QT={$type:"Evolution",stages:"stages"},vc={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},up={$type:"Evolve",component:"component",target:"target"},Tn={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function lB(t){return ze.isInstance(t,Tn.$type)}s(lB,"isGitGraph");var Wi={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},os={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function uB(t){return ze.isInstance(t,os.$type)}s(uB,"isInfo");var qi={$type:"Item",classSelector:"classSelector",name:"name"},cp={$type:"Junction",id:"id",in:"in"},Vi={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},Tc={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},cn={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},Pa={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function cB(t){return ze.isInstance(t,Pa.$type)}s(cB,"isMerge");var $c={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},fp={$type:"Option",name:"name",value:"value"},ka={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function fB(t){return ze.isInstance(t,ka.$type)}s(fB,"isPacket");var Oa={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function dB(t){return ze.isInstance(t,Oa.$type)}s(dB,"isPacketBlock");var e$={$type:"PegAny",dot:"dot"},t$={$type:"PegGroup",element:"element"},r$={$type:"PegIdentifier",name:"name"},n$={$type:"PegLiteral",value:"value"},a$={$type:"PegOrderedChoice",alternatives:"alternatives"},dp={$type:"PegPrefix",operator:"operator",suffix:"suffix"},Hi={$type:"PegPrimary"},pp={$type:"PegRule",definition:"definition",name:"name"},i$={$type:"PegSequence",elements:"elements"},mp={$type:"PegSuffix",operator:"operator",primary:"primary"},$n={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function pB(t){return ze.isInstance(t,$n.$type)}s(pB,"isPie");var Kc={$type:"PieSection",label:"label",value:"value"};function mB(t){return ze.isInstance(t,Kc.$type)}s(mB,"isPieSection");var hp={$type:"Pipeline",components:"components",parent:"parent"},Rc={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},fn={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},La={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function hB(t){return ze.isInstance(t,La.$type)}s(hB,"isRailroad");var Da={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function yB(t){return ze.isInstance(t,Da.$type)}s(yB,"isRailroadAbnf");var s$={$type:"RailroadChoiceExpr",alternatives:"alternatives"},xa={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function gB(t){return ze.isInstance(t,xa.$type)}s(gB,"isRailroadEbnf");var Rr={$type:"RailroadExpression"},o$={$type:"RailroadNonTerminalExpr",name:"name"},l$={$type:"RailroadOneOrMoreExpr",element:"element"},u$={$type:"RailroadOptionalExpr",element:"element"},Ma={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function vB(t){return ze.isInstance(t,Ma.$type)}s(vB,"isRailroadPeg");var yp={$type:"RailroadRule",definition:"definition",name:"name"},c$={$type:"RailroadSequenceExpr",elements:"elements"},f$={$type:"RailroadSpecialExpr",text:"text"},d$={$type:"RailroadTerminalExpr",value:"value"},p$={$type:"RailroadZeroOrMoreExpr",element:"element"},gp={$type:"Section",classSelector:"classSelector",name:"name"},Ra={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},vp={$type:"Size",height:"height",width:"width"},Aa={$type:"Statement"},ls={$type:"Transition",from:"from",label:"label",to:"to"};function TB(t){return ze.isInstance(t,ls.$type)}s(TB,"isTransition");var Ga={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function $B(t){return ze.isInstance(t,Ga.$type)}s($B,"isTreemap");var Tp={$type:"TreemapRow",indent:"indent",item:"item"},Ea={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},Yi={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},et={$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 RB(t){return ze.isInstance(t,et.$type)}s(RB,"isWardley");var au,kP=(au=class extends _h{constructor(){super(...arguments),this.types={AbnfAlternation:{name:PT.$type,properties:{alternatives:{name:PT.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:kT.$type,properties:{elements:{name:kT.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:ep.$type,properties:{primary:{name:ep.primary},repeat:{name:ep.repeat}},superTypes:[]},AbnfGroup:{name:OT.$type,properties:{element:{name:OT.element}},superTypes:[va.$type]},AbnfNumVal:{name:LT.$type,properties:{value:{name:LT.value}},superTypes:[va.$type]},AbnfOptionalGroup:{name:DT.$type,properties:{element:{name:DT.element}},superTypes:[va.$type]},AbnfPrimary:{name:va.$type,properties:{},superTypes:[]},AbnfRule:{name:tp.$type,properties:{definition:{name:tp.definition},name:{name:tp.name}},superTypes:[]},AbnfRuleName:{name:xT.$type,properties:{name:{name:xT.name}},superTypes:[va.$type]},AbnfStringLiteral:{name:MT.$type,properties:{value:{name:MT.value}},superTypes:[va.$type]},Accelerator:{name:cc.$type,properties:{name:{name:cc.name},x:{name:cc.x},y:{name:cc.y}},superTypes:[]},Alignment:{name:rp.$type,properties:{direction:{name:rp.direction},members:{name:rp.members,defaultValue:[]}},superTypes:[]},Anchor:{name:fc.$type,properties:{evolution:{name:fc.evolution},name:{name:fc.name},visibility:{name:fc.visibility}},superTypes:[]},Annotation:{name:Bi.$type,properties:{number:{name:Bi.number},text:{name:Bi.text},x:{name:Bi.x},y:{name:Bi.y}},superTypes:[]},Annotations:{name:np.$type,properties:{x:{name:np.x},y:{name:np.y}},superTypes:[]},Architecture:{name:ir.$type,properties:{accDescr:{name:ir.accDescr},accTitle:{name:ir.accTitle},alignments:{name:ir.alignments,defaultValue:[]},edges:{name:ir.edges,defaultValue:[]},groups:{name:ir.groups,defaultValue:[]},junctions:{name:ir.junctions,defaultValue:[]},services:{name:ir.services,defaultValue:[]},title:{name:ir.title}},superTypes:[]},Axis:{name:dc.$type,properties:{label:{name:dc.label},name:{name:dc.name}},superTypes:[]},Branch:{name:Bc.$type,properties:{name:{name:Bc.name},order:{name:Bc.order}},superTypes:[Aa.$type]},Checkout:{name:GT.$type,properties:{branch:{name:GT.branch}},superTypes:[Aa.$type]},CherryPicking:{name:pc.$type,properties:{id:{name:pc.id},parent:{name:pc.parent},tags:{name:pc.tags,defaultValue:[]}},superTypes:[Aa.$type]},ClassDefStatement:{name:ap.$type,properties:{className:{name:ap.className},styleText:{name:ap.styleText}},superTypes:[]},Commit:{name:Na.$type,properties:{id:{name:Na.id},message:{name:Na.message},tags:{name:Na.tags,defaultValue:[]},type:{name:Na.type}},superTypes:[Aa.$type]},Common:{name:mc.$type,properties:{accDescr:{name:mc.accDescr},accTitle:{name:mc.accTitle},title:{name:mc.title}},superTypes:[]},Component:{name:on.$type,properties:{decorator:{name:on.decorator},evolution:{name:on.evolution},inertia:{name:on.inertia,defaultValue:!1},label:{name:on.label},name:{name:on.name},visibility:{name:on.visibility}},superTypes:[]},Curve:{name:hc.$type,properties:{entries:{name:hc.entries,defaultValue:[]},label:{name:hc.label},name:{name:hc.name}},superTypes:[]},Cynefin:{name:vn.$type,properties:{accDescr:{name:vn.accDescr},accTitle:{name:vn.accTitle},domains:{name:vn.domains,defaultValue:[]},title:{name:vn.title},transitions:{name:vn.transitions,defaultValue:[]}},superTypes:[]},Deaccelerator:{name:yc.$type,properties:{name:{name:yc.name},x:{name:yc.x},y:{name:yc.y}},superTypes:[]},Decorator:{name:FT.$type,properties:{strategy:{name:FT.strategy}},superTypes:[]},Direction:{name:Ta.$type,properties:{accDescr:{name:Ta.accDescr},accTitle:{name:Ta.accTitle},dir:{name:Ta.dir},statements:{name:Ta.statements,defaultValue:[]},title:{name:Ta.title}},superTypes:[Tn.$type]},DomainBlock:{name:Uc.$type,properties:{domain:{name:Uc.domain},items:{name:Uc.items,defaultValue:[]}},superTypes:[]},DomainItem:{name:Th.$type,properties:{label:{name:Th.label}},superTypes:[]},EbnfChoice:{name:zT.$type,properties:{alternatives:{name:zT.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:jT.$type,properties:{except:{name:jT.except}},superTypes:[Ui.$type]},EbnfGroup:{name:BT.$type,properties:{element:{name:BT.element}},superTypes:[ln.$type]},EbnfNonTerminal:{name:UT.$type,properties:{name:{name:UT.name}},superTypes:[ln.$type]},EbnfOneOrMorePostfix:{name:KT.$type,properties:{operator:{name:KT.operator}},superTypes:[Ui.$type]},EbnfOptional:{name:WT.$type,properties:{element:{name:WT.element}},superTypes:[ln.$type]},EbnfOptionalPostfix:{name:qT.$type,properties:{operator:{name:qT.operator}},superTypes:[Ui.$type]},EbnfPostfix:{name:Ui.$type,properties:{},superTypes:[]},EbnfPrimary:{name:ln.$type,properties:{},superTypes:[]},EbnfRepetition:{name:VT.$type,properties:{element:{name:VT.element}},superTypes:[ln.$type]},EbnfRule:{name:ip.$type,properties:{definition:{name:ip.definition},name:{name:ip.name}},superTypes:[]},EbnfSequence:{name:HT.$type,properties:{elements:{name:HT.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:YT.$type,properties:{text:{name:YT.text}},superTypes:[ln.$type]},EbnfTerm:{name:sp.$type,properties:{base:{name:sp.base},postfixes:{name:sp.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:XT.$type,properties:{value:{name:XT.value}},superTypes:[ln.$type]},EbnfZeroOrMorePostfix:{name:JT.$type,properties:{operator:{name:JT.operator}},superTypes:[Ui.$type]},Edge:{name:nr.$type,properties:{lhsDir:{name:nr.lhsDir},lhsGroup:{name:nr.lhsGroup,defaultValue:!1},lhsId:{name:nr.lhsId},lhsInto:{name:nr.lhsInto,defaultValue:!1},rhsDir:{name:nr.rhsDir},rhsGroup:{name:nr.rhsGroup,defaultValue:!1},rhsId:{name:nr.rhsId},rhsInto:{name:nr.rhsInto,defaultValue:!1},title:{name:nr.title}},superTypes:[]},EmDataEntity:{name:$a.$type,properties:{dataBlockValue:{name:$a.dataBlockValue},dataType:{name:$a.dataType},name:{name:$a.name}},superTypes:[]},EmFrame:{name:un.$type,properties:{},superTypes:[]},EmGwt:{name:Ki.$type,properties:{givenStatements:{name:Ki.givenStatements,defaultValue:[]},sourceFrame:{name:Ki.sourceFrame,referenceType:un.$type},thenStatements:{name:Ki.thenStatements,defaultValue:[]},whenStatements:{name:Ki.whenStatements,defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:ZT.$type,properties:{entityIdentifier:{name:ZT.entityIdentifier,referenceType:op.$type}},superTypes:[]},EmModelEntity:{name:op.$type,properties:{name:{name:op.name}},superTypes:[]},EmNoteEntity:{name:gc.$type,properties:{dataBlockValue:{name:gc.dataBlockValue},dataType:{name:gc.dataType},sourceFrame:{name:gc.sourceFrame,referenceType:un.$type}},superTypes:[]},EmResetFrame:{name:Er.$type,properties:{dataInlineValue:{name:Er.dataInlineValue},dataReference:{name:Er.dataReference,referenceType:$a.$type},dataType:{name:Er.dataType},entityIdentifier:{name:Er.entityIdentifier},modelEntityType:{name:Er.modelEntityType},name:{name:Er.name},sourceFrames:{name:Er.sourceFrames,defaultValue:[],referenceType:un.$type}},superTypes:[un.$type]},EmTimeFrame:{name:Ur.$type,properties:{dataInlineValue:{name:Ur.dataInlineValue},dataReference:{name:Ur.dataReference,referenceType:$a.$type},dataType:{name:Ur.dataType},entityIdentifier:{name:Ur.entityIdentifier},modelEntityType:{name:Ur.modelEntityType},name:{name:Ur.name},sourceFrames:{name:Ur.sourceFrames,defaultValue:[],referenceType:un.$type}},superTypes:[un.$type]},Entry:{name:lp.$type,properties:{axis:{name:lp.axis,referenceType:dc.$type},value:{name:lp.value}},superTypes:[]},EventModel:{name:$r.$type,properties:{accDescr:{name:$r.accDescr},accTitle:{name:$r.accTitle},dataEntities:{name:$r.dataEntities,defaultValue:[]},frames:{name:$r.frames,defaultValue:[]},gwtEntities:{name:$r.gwtEntities,defaultValue:[]},modelEntities:{name:$r.modelEntities,defaultValue:[]},noteEntities:{name:$r.noteEntities,defaultValue:[]},title:{name:$r.title}},superTypes:[]},Evolution:{name:QT.$type,properties:{stages:{name:QT.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:vc.$type,properties:{boundary:{name:vc.boundary},name:{name:vc.name},secondName:{name:vc.secondName}},superTypes:[]},Evolve:{name:up.$type,properties:{component:{name:up.component},target:{name:up.target}},superTypes:[]},GitGraph:{name:Tn.$type,properties:{accDescr:{name:Tn.accDescr},accTitle:{name:Tn.accTitle},statements:{name:Tn.statements,defaultValue:[]},title:{name:Tn.title}},superTypes:[]},Group:{name:Wi.$type,properties:{icon:{name:Wi.icon},id:{name:Wi.id},in:{name:Wi.in},title:{name:Wi.title}},superTypes:[]},Info:{name:os.$type,properties:{accDescr:{name:os.accDescr},accTitle:{name:os.accTitle},title:{name:os.title}},superTypes:[]},Item:{name:qi.$type,properties:{classSelector:{name:qi.classSelector},name:{name:qi.name}},superTypes:[]},Junction:{name:cp.$type,properties:{id:{name:cp.id},in:{name:cp.in}},superTypes:[]},Label:{name:Vi.$type,properties:{negX:{name:Vi.negX,defaultValue:!1},negY:{name:Vi.negY,defaultValue:!1},offsetX:{name:Vi.offsetX},offsetY:{name:Vi.offsetY}},superTypes:[]},Leaf:{name:Tc.$type,properties:{classSelector:{name:Tc.classSelector},name:{name:Tc.name},value:{name:Tc.value}},superTypes:[qi.$type]},Link:{name:cn.$type,properties:{arrow:{name:cn.arrow},from:{name:cn.from},fromPort:{name:cn.fromPort},linkLabel:{name:cn.linkLabel},to:{name:cn.to},toPort:{name:cn.toPort}},superTypes:[]},Merge:{name:Pa.$type,properties:{branch:{name:Pa.branch},id:{name:Pa.id},tags:{name:Pa.tags,defaultValue:[]},type:{name:Pa.type}},superTypes:[Aa.$type]},Note:{name:$c.$type,properties:{evolution:{name:$c.evolution},text:{name:$c.text},visibility:{name:$c.visibility}},superTypes:[]},Option:{name:fp.$type,properties:{name:{name:fp.name},value:{name:fp.value,defaultValue:!1}},superTypes:[]},Packet:{name:ka.$type,properties:{accDescr:{name:ka.accDescr},accTitle:{name:ka.accTitle},blocks:{name:ka.blocks,defaultValue:[]},title:{name:ka.title}},superTypes:[]},PacketBlock:{name:Oa.$type,properties:{bits:{name:Oa.bits},end:{name:Oa.end},label:{name:Oa.label},start:{name:Oa.start}},superTypes:[]},PegAny:{name:e$.$type,properties:{dot:{name:e$.dot}},superTypes:[Hi.$type]},PegGroup:{name:t$.$type,properties:{element:{name:t$.element}},superTypes:[Hi.$type]},PegIdentifier:{name:r$.$type,properties:{name:{name:r$.name}},superTypes:[Hi.$type]},PegLiteral:{name:n$.$type,properties:{value:{name:n$.value}},superTypes:[Hi.$type]},PegOrderedChoice:{name:a$.$type,properties:{alternatives:{name:a$.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:dp.$type,properties:{operator:{name:dp.operator},suffix:{name:dp.suffix}},superTypes:[]},PegPrimary:{name:Hi.$type,properties:{},superTypes:[]},PegRule:{name:pp.$type,properties:{definition:{name:pp.definition},name:{name:pp.name}},superTypes:[]},PegSequence:{name:i$.$type,properties:{elements:{name:i$.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:mp.$type,properties:{operator:{name:mp.operator},primary:{name:mp.primary}},superTypes:[]},Pie:{name:$n.$type,properties:{accDescr:{name:$n.accDescr},accTitle:{name:$n.accTitle},sections:{name:$n.sections,defaultValue:[]},showData:{name:$n.showData,defaultValue:!1},title:{name:$n.title}},superTypes:[]},PieSection:{name:Kc.$type,properties:{label:{name:Kc.label},value:{name:Kc.value}},superTypes:[]},Pipeline:{name:hp.$type,properties:{components:{name:hp.components,defaultValue:[]},parent:{name:hp.parent}},superTypes:[]},PipelineComponent:{name:Rc.$type,properties:{evolution:{name:Rc.evolution},label:{name:Rc.label},name:{name:Rc.name}},superTypes:[]},Radar:{name:fn.$type,properties:{accDescr:{name:fn.accDescr},accTitle:{name:fn.accTitle},axes:{name:fn.axes,defaultValue:[]},curves:{name:fn.curves,defaultValue:[]},options:{name:fn.options,defaultValue:[]},title:{name:fn.title}},superTypes:[]},Railroad:{name:La.$type,properties:{accDescr:{name:La.accDescr},accTitle:{name:La.accTitle},rules:{name:La.rules,defaultValue:[]},title:{name:La.title}},superTypes:[]},RailroadAbnf:{name:Da.$type,properties:{accDescr:{name:Da.accDescr},accTitle:{name:Da.accTitle},rules:{name:Da.rules,defaultValue:[]},title:{name:Da.title}},superTypes:[]},RailroadChoiceExpr:{name:s$.$type,properties:{alternatives:{name:s$.alternatives,defaultValue:[]}},superTypes:[Rr.$type]},RailroadEbnf:{name:xa.$type,properties:{accDescr:{name:xa.accDescr},accTitle:{name:xa.accTitle},rules:{name:xa.rules,defaultValue:[]},title:{name:xa.title}},superTypes:[]},RailroadExpression:{name:Rr.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:o$.$type,properties:{name:{name:o$.name}},superTypes:[Rr.$type]},RailroadOneOrMoreExpr:{name:l$.$type,properties:{element:{name:l$.element}},superTypes:[Rr.$type]},RailroadOptionalExpr:{name:u$.$type,properties:{element:{name:u$.element}},superTypes:[Rr.$type]},RailroadPeg:{name:Ma.$type,properties:{accDescr:{name:Ma.accDescr},accTitle:{name:Ma.accTitle},rules:{name:Ma.rules,defaultValue:[]},title:{name:Ma.title}},superTypes:[]},RailroadRule:{name:yp.$type,properties:{definition:{name:yp.definition},name:{name:yp.name}},superTypes:[]},RailroadSequenceExpr:{name:c$.$type,properties:{elements:{name:c$.elements,defaultValue:[]}},superTypes:[Rr.$type]},RailroadSpecialExpr:{name:f$.$type,properties:{text:{name:f$.text}},superTypes:[Rr.$type]},RailroadTerminalExpr:{name:d$.$type,properties:{value:{name:d$.value}},superTypes:[Rr.$type]},RailroadZeroOrMoreExpr:{name:p$.$type,properties:{element:{name:p$.element}},superTypes:[Rr.$type]},Section:{name:gp.$type,properties:{classSelector:{name:gp.classSelector},name:{name:gp.name}},superTypes:[qi.$type]},Service:{name:Ra.$type,properties:{icon:{name:Ra.icon},iconText:{name:Ra.iconText},id:{name:Ra.id},in:{name:Ra.in},title:{name:Ra.title}},superTypes:[]},Size:{name:vp.$type,properties:{height:{name:vp.height},width:{name:vp.width}},superTypes:[]},Statement:{name:Aa.$type,properties:{},superTypes:[]},Transition:{name:ls.$type,properties:{from:{name:ls.from},label:{name:ls.label},to:{name:ls.to}},superTypes:[]},TreeNode:{name:Ea.$type,properties:{classAnnotation:{name:Ea.classAnnotation},descAnnotation:{name:Ea.descAnnotation},iconAnnotation:{name:Ea.iconAnnotation},indent:{name:Ea.indent},name:{name:Ea.name}},superTypes:[]},TreeView:{name:Yi.$type,properties:{accDescr:{name:Yi.accDescr},accTitle:{name:Yi.accTitle},nodes:{name:Yi.nodes,defaultValue:[]},title:{name:Yi.title}},superTypes:[]},Treemap:{name:Ga.$type,properties:{accDescr:{name:Ga.accDescr},accTitle:{name:Ga.accTitle},title:{name:Ga.title},TreemapRows:{name:Ga.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Tp.$type,properties:{indent:{name:Tp.indent},item:{name:Tp.item}},superTypes:[]},Wardley:{name:et.$type,properties:{accDescr:{name:et.accDescr},accelerators:{name:et.accelerators,defaultValue:[]},accTitle:{name:et.accTitle},anchors:{name:et.anchors,defaultValue:[]},annotation:{name:et.annotation,defaultValue:[]},annotations:{name:et.annotations,defaultValue:[]},components:{name:et.components,defaultValue:[]},deaccelerators:{name:et.deaccelerators,defaultValue:[]},evolution:{name:et.evolution},evolves:{name:et.evolves,defaultValue:[]},links:{name:et.links,defaultValue:[]},notes:{name:et.notes,defaultValue:[]},pipelines:{name:et.pipelines,defaultValue:[]},size:{name:et.size},title:{name:et.title}},superTypes:[]}}}},s(au,"MermaidAstReflection"),au),ze=new kP,m$,AB=s(()=>m$??(m$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),h$,EB=s(()=>h$??(h$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"-->"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"CynefinGrammarGrammar"),y$,CB=s(()=>y$??(y$=Xe('{"$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"),g$,bB=s(()=>g$??(g$=Xe(`{"$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"),v$,_B=s(()=>v$??(v$=Xe(`{"$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"),T$,SB=s(()=>T$??(T$=Xe(`{"$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"),$$,wB=s(()=>$$??($$=Xe(`{"$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"),R$,IB=s(()=>R$??(R$=Xe(`{"$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"),A$,NB=s(()=>A$??(A$=Xe('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),E$,PB=s(()=>E$??(E$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}`)),"RailroadEbnfGrammarGrammar"),C$,kB=s(()=>C$??(C$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}`)),"RailroadGrammarGrammar"),b$,OB=s(()=>b$??(b$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}`)),"RailroadPegGrammarGrammar"),_$,LB=s(()=>_$??(_$=Xe(`{"$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"),S$,DB=s(()=>S$??(S$=Xe(`{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}`)),"TreeViewGrammarGrammar"),w$,xB=s(()=>w$??(w$=Xe(`{"$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"),MB={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},GB={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},FB={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},zB={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},jB={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},BB={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},UB={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},KB={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},WB={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},qB={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},VB={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},HB={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},YB={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},XB={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},JB={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Tt={AstReflection:s(()=>new kP,"AstReflection")},ZB={Grammar:s(()=>AB(),"Grammar"),LanguageMetaData:s(()=>MB,"LanguageMetaData"),parser:{}},QB={Grammar:s(()=>EB(),"Grammar"),LanguageMetaData:s(()=>GB,"LanguageMetaData"),parser:{}},eU={Grammar:s(()=>CB(),"Grammar"),LanguageMetaData:s(()=>FB,"LanguageMetaData"),parser:{}},tU={Grammar:s(()=>bB(),"Grammar"),LanguageMetaData:s(()=>zB,"LanguageMetaData"),parser:{}},rU={Grammar:s(()=>_B(),"Grammar"),LanguageMetaData:s(()=>jB,"LanguageMetaData"),parser:{}},nU={Grammar:s(()=>SB(),"Grammar"),LanguageMetaData:s(()=>BB,"LanguageMetaData"),parser:{}},aU={Grammar:s(()=>wB(),"Grammar"),LanguageMetaData:s(()=>UB,"LanguageMetaData"),parser:{}},iU={Grammar:s(()=>IB(),"Grammar"),LanguageMetaData:s(()=>KB,"LanguageMetaData"),parser:{}},sU={Grammar:s(()=>NB(),"Grammar"),LanguageMetaData:s(()=>WB,"LanguageMetaData"),parser:{}},oU={Grammar:s(()=>PB(),"Grammar"),LanguageMetaData:s(()=>qB,"LanguageMetaData"),parser:{}},lU={Grammar:s(()=>kB(),"Grammar"),LanguageMetaData:s(()=>VB,"LanguageMetaData"),parser:{}},uU={Grammar:s(()=>OB(),"Grammar"),LanguageMetaData:s(()=>HB,"LanguageMetaData"),parser:{}},cU={Grammar:s(()=>LB(),"Grammar"),LanguageMetaData:s(()=>YB,"LanguageMetaData"),parser:{}},fU={Grammar:s(()=>DB(),"Grammar"),LanguageMetaData:s(()=>XB,"LanguageMetaData"),parser:{}},dU={Grammar:s(()=>xB(),"Grammar"),LanguageMetaData:s(()=>JB,"LanguageMetaData"),parser:{}},pU=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,mU=/accTitle[\t ]*:([^\n\r]*)/,hU=/title([\t ][^\n\r]*|)/,yU={ACC_DESCR:pU,ACC_TITLE:mU,TITLE:hU},iu,vr=(iu=class extends Mg{runConverter(e,r,n){let a=this.runCommonConverter(e,r,n);return a===void 0&&(a=this.runCustomConverter(e,r,n)),a===void 0?super.runConverter(e,r,n):a}runCommonConverter(e,r,n){const a=yU[e.name];if(a===void 0)return;const i=a.exec(r);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
161
+ `)}}},s(iu,"AbstractMermaidValueConverter"),iu),su,$i=(su=class extends vr{runCustomConverter(e,r,n){}},s(su,"CommonValueConverter"),su),ou,$t=(ou=class extends Dd{constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,r,n){const a=super.buildKeywordTokens(e,r,n);return a.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),a}},s(ou,"AbstractMermaidTokenBuilder"),ou),lu;lu=class extends $t{},s(lu,"CommonTokenBuilder");/*! Bundled license information:
162
+
163
+ lodash-es/lodash.js:
164
+ (**
165
+ * @license
166
+ * Lodash (Custom Build) <https://lodash.com/>
167
+ * Build: `lodash modularize exports="es" -o ./`
168
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
169
+ * Released under MIT license <https://lodash.com/license>
170
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
171
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
172
+ *)
173
+ */var uu,gU=(uu=class extends $t{constructor(){super(["radar-beta"])}},s(uu,"RadarTokenBuilder"),uu),vU={parser:{TokenBuilder:s(()=>new gU,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")}};function TU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),iU,vU);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}s(TU,"createRadarServices");var cu,$U=(cu=class extends $t{constructor(){super(["railroad-beta"])}},s(cu,"RailroadTokenBuilder"),cu),I$=s(t=>{const e=t.slice(1,-1);let r="";for(let n=0;n<e.length;n++){const a=e[n];if(a==="\\"&&n+1<e.length){n++;const i=e[n];switch(i){case"n":r+=`
174
+ `;break;case"r":r+="\r";break;case"t":r+=" ";break;default:r+=i}continue}r+=a}return r},"decodeEscapedString"),fu,RU=(fu=class extends vr{runConverter(e,r,n){const a=super.runConverter(e,r,n);if(e.name==="TITLE"&&typeof a=="string"){const i=a.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return I$(i)}return a}runCustomConverter(e,r,n){if(e.name==="RR_STRING")return I$(r)}},s(fu,"RailroadValueConverter"),fu),AU={parser:{TokenBuilder:s(()=>new $U,"TokenBuilder"),ValueConverter:s(()=>new RU,"ValueConverter")}};function EU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),lU,AU);return e.ServiceRegistry.register(r),{shared:e,Railroad:r}}s(EU,"createRailroadServices");var du,CU=(du=class extends $t{constructor(){super(["railroad-ebnf-beta"])}},s(du,"RailroadEbnfTokenBuilder"),du),N$=s(t=>{const e=t.slice(1,-1);let r="";for(let n=0;n<e.length;n++){const a=e[n];if(a==="\\"&&n+1<e.length){n++;const i=e[n];switch(i){case"n":r+=`
175
+ `;break;case"r":r+="\r";break;case"t":r+=" ";break;default:r+=i}continue}r+=a}return r},"decodeEscapedString"),pu,bU=(pu=class extends vr{runConverter(e,r,n){const a=super.runConverter(e,r,n);if(e.name==="TITLE"&&typeof a=="string"){const i=a.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return N$(i)}return a}runCustomConverter(e,r,n){if(e.name==="EBNF_STRING")return N$(r);if(e.name==="EBNF_SPECIAL_SEQUENCE")return r.slice(1,-1).trim()}},s(pu,"RailroadEbnfValueConverter"),pu),_U={parser:{TokenBuilder:s(()=>new CU,"TokenBuilder"),ValueConverter:s(()=>new bU,"ValueConverter")}};function SU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),oU,_U);return e.ServiceRegistry.register(r),{shared:e,RailroadEbnf:r}}s(SU,"createRailroadEbnfServices");var mu,wU=(mu=class extends $t{constructor(){super(["railroad-abnf-beta"])}},s(mu,"RailroadAbnfTokenBuilder"),mu),hu,IU=(hu=class extends vr{runConverter(e,r,n){const a=super.runConverter(e,r,n);if(e.name==="TITLE"&&typeof a=="string"){const i=a.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return i.slice(1,-1)}return a}runCustomConverter(e,r,n){if(e.name==="ABNF_STRING")return r.slice(1,-1)}},s(hu,"RailroadAbnfValueConverter"),hu),NU={parser:{TokenBuilder:s(()=>new wU,"TokenBuilder"),ValueConverter:s(()=>new IU,"ValueConverter")}};function PU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),sU,NU);return e.ServiceRegistry.register(r),{shared:e,RailroadAbnf:r}}s(PU,"createRailroadAbnfServices");var yu,kU=(yu=class extends $t{constructor(){super(["railroad-peg-beta"])}},s(yu,"RailroadPegTokenBuilder"),yu),P$=s(t=>{const e=t.slice(1,-1);let r="";for(let n=0;n<e.length;n++){const a=e[n];if(a==="\\"&&n+1<e.length){n++;const i=e[n];switch(i){case"n":r+=`
176
+ `;break;case"r":r+="\r";break;case"t":r+=" ";break;default:r+=i}continue}r+=a}return r},"decodeEscapedString"),gu,OU=(gu=class extends vr{runConverter(e,r,n){const a=super.runConverter(e,r,n);if(e.name==="TITLE"&&typeof a=="string"){const i=a.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return P$(i)}return a}runCustomConverter(e,r,n){if(e.name==="PEG_STRING")return P$(r)}},s(gu,"RailroadPegValueConverter"),gu),LU={parser:{TokenBuilder:s(()=>new kU,"TokenBuilder"),ValueConverter:s(()=>new OU,"ValueConverter")}};function DU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),uU,LU);return e.ServiceRegistry.register(r),{shared:e,RailroadPeg:r}}s(DU,"createRailroadPegServices");var vu,xU=(vu=class extends $t{constructor(){super(["treemap"])}},s(vu,"TreemapTokenBuilder"),vu),MU=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,Tu,GU=(Tu=class extends vr{runCustomConverter(e,r,n){if(e.name==="NUMBER2")return parseFloat(r.replace(/,/g,""));if(e.name==="SEPARATOR")return r.substring(1,r.length-1);if(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;const a=MU.exec(r);if(a)return{$type:"ClassDefStatement",className:a[1],styleText:a[2]||void 0}}}},s(Tu,"TreemapValueConverter"),Tu);function OP(t){const e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){const n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}s(OP,"registerValidationChecks");var $u,FU=($u=class{checkSingleRoot(e,r){let n;for(const a of e.TreemapRows)a.item&&(n===void 0&&a.indent===void 0?n=0:a.indent===void 0?r("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}):n!==void 0&&n>=parseInt(a.indent,10)&&r("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}))}},s($u,"TreemapValidator"),$u),zU={parser:{TokenBuilder:s(()=>new xU,"TokenBuilder"),ValueConverter:s(()=>new GU,"ValueConverter")},validation:{TreemapValidator:s(()=>new FU,"TreemapValidator")}};function jU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),cU,zU);return e.ServiceRegistry.register(r),OP(r),{shared:e,Treemap:r}}s(jU,"createTreemapServices");var Ru,BU=(Ru=class extends vr{runCustomConverter(e,r,n){switch(e.name.toUpperCase()){case"LINK_LABEL":return r.substring(1).trim();default:return}}},s(Ru,"WardleyValueConverter"),Ru),UU={parser:{ValueConverter:s(()=>new BU,"ValueConverter")}};function KU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),dU,UU);return e.ServiceRegistry.register(r),{shared:e,Wardley:r}}s(KU,"createWardleyServices");var Au,WU=(Au=class extends $t{constructor(){super(["cynefin-beta"])}},s(Au,"CynefinTokenBuilder"),Au),qU={parser:{TokenBuilder:s(()=>new WU,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")}};function VU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),QB,qU);return e.ServiceRegistry.register(r),{shared:e,Cynefin:r}}s(VU,"createCynefinServices");var Eu,HU=(Eu=class extends $t{constructor(){super(["gitGraph"])}},s(Eu,"GitGraphTokenBuilder"),Eu),YU={parser:{TokenBuilder:s(()=>new HU,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")}};function XU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),tU,YU);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}s(XU,"createGitGraphServices");var Cu,JU=(Cu=class extends $t{constructor(){super(["info","showInfo"])}},s(Cu,"InfoTokenBuilder"),Cu),ZU={parser:{TokenBuilder:s(()=>new JU,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")}};function QU(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),rU,ZU);return e.ServiceRegistry.register(r),{shared:e,Info:r}}s(QU,"createInfoServices");var bu,eK=(bu=class extends $t{constructor(){super(["packet"])}},s(bu,"PacketTokenBuilder"),bu),tK={parser:{TokenBuilder:s(()=>new eK,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")}};function rK(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),nU,tK);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}s(rK,"createPacketServices");var _u,nK=(_u=class extends $t{constructor(){super(["pie","showData"])}},s(_u,"PieTokenBuilder"),_u),Su,aK=(Su=class extends vr{runCustomConverter(e,r,n){if(e.name==="PIE_SECTION_LABEL")return r.replace(/"/g,"").trim()}},s(Su,"PieValueConverter"),Su),iK={parser:{TokenBuilder:s(()=>new nK,"TokenBuilder"),ValueConverter:s(()=>new aK,"ValueConverter")}};function sK(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),aU,iK);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}s(sK,"createPieServices");var wu,oK=(wu=class extends vr{runCustomConverter(e,r,n){if(e.name==="INDENTATION")return(r==null?void 0:r.length)||0;if(e.name==="QUOTED_NAME")return r.substring(1,r.length-1);if(e.name==="BARE_NAME")return r.replace(/[\t ]+$/,"");if(e.name==="CLASS_ANNOTATION")return r.trim().substring(3).trim();if(e.name==="ICON_ANNOTATION"){const a=r.trim();return a.substring(5,a.length-1)}if(e.name==="DESC_ANNOTATION")return r.trim().substring(2).trim()}},s(wu,"TreeViewValueConverter"),wu),Iu,lK=(Iu=class extends $t{constructor(){super(["treeView-beta"])}},s(Iu,"TreeViewTokenBuilder"),Iu),uK={parser:{TokenBuilder:s(()=>new lK,"TokenBuilder"),ValueConverter:s(()=>new oK,"ValueConverter")}};function cK(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),fU,uK);return e.ServiceRegistry.register(r),{shared:e,TreeView:r}}s(cK,"createTreeViewServices");var Nu,fK=(Nu=class extends $t{constructor(){super(["architecture"])}},s(Nu,"ArchitectureTokenBuilder"),Nu),Pu,dK=(Pu=class extends vr{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 a=r.replace(/^\[|]$/g,"").trim();return(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))&&(a=a.slice(1,-1),a=a.replace(/\\"/g,'"').replace(/\\'/g,"'")),a.trim()}}},s(Pu,"ArchitectureValueConverter"),Pu),pK={parser:{TokenBuilder:s(()=>new fK,"TokenBuilder"),ValueConverter:s(()=>new dK,"ValueConverter")}};function mK(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),ZB,pK);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}s(mK,"createArchitectureServices");var ku,hK=(ku=class extends $t{constructor(){super(["eventmodeling"])}},s(ku,"EventModelingTokenBuilder"),ku),k$=new Set(["cmd","command"]),O$=new Set(["evt","event"]),$p=new Set(["rmo","readmodel"]),L$=new Set(["pcr","processor"]),D$=new Set(["ui"]);function LP(t){const e=t.validation.EventModelingValidator,r=t.validation.ValidationRegistry;if(r){const n={EmTimeFrame:e.checkSourceFrameTypes.bind(e),EmResetFrame:e.checkSourceFrameTypes.bind(e)};r.register(n,e)}}s(LP,"registerValidationChecks");var Ou,yK=(Ou=class{checkSourceFrameTypes(e,r){e.sourceFrames.length!==0&&(k$.has(e.modelEntityType)?this.validateSources(e,new Set([...D$,...L$]),"command","ui or processor",r):O$.has(e.modelEntityType)?this.validateSources(e,k$,"event","command",r):$p.has(e.modelEntityType)?this.validateSources(e,O$,"read model","event",r):L$.has(e.modelEntityType)?this.validateSources(e,$p,"processor","read model",r):D$.has(e.modelEntityType)&&this.validateSources(e,$p,"ui","read model",r))}validateSources(e,r,n,a,i){for(const o of e.sourceFrames){const u=o.ref;u!==void 0&&!r.has(u.modelEntityType)&&i("error",`A ${n} can only receive input from a ${a}, not from '${u.modelEntityType}'.`,{node:e,property:"sourceFrames"})}}},s(Ou,"EventModelingValidator"),Ou),gK={parser:{TokenBuilder:s(()=>new hK,"TokenBuilder"),ValueConverter:s(()=>new $i,"ValueConverter")},validation:{EventModelingValidator:s(()=>new yK,"EventModelingValidator")}};function vK(t=it){const e=re(Ye(t),Tt),r=re(He({shared:e}),eU,gK);return e.ServiceRegistry.register(r),LP(r),{shared:e,EventModel:r}}s(vK,"createEventModelingServices");var tt={},TK={info:s(async()=>{const{createInfoServices:t}=await ut(()=>import("./info-DKCQHKI2-80cda47a.js"),["assets/info-DKCQHKI2-80cda47a.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Info.parser.LangiumParser;tt.info=e},"info"),packet:s(async()=>{const{createPacketServices:t}=await ut(()=>import("./packet-7NZHBO7P-210a82b7.js"),["assets/packet-7NZHBO7P-210a82b7.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Packet.parser.LangiumParser;tt.packet=e},"packet"),pie:s(async()=>{const{createPieServices:t}=await ut(()=>import("./pie-RZYD4A2V-73eec97d.js"),["assets/pie-RZYD4A2V-73eec97d.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Pie.parser.LangiumParser;tt.pie=e},"pie"),treeView:s(async()=>{const{createTreeViewServices:t}=await ut(()=>import("./treeView-QDETBFTQ-43fc69f6.js"),["assets/treeView-QDETBFTQ-43fc69f6.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().TreeView.parser.LangiumParser;tt.treeView=e},"treeView"),architecture:s(async()=>{const{createArchitectureServices:t}=await ut(()=>import("./architecture-TIHT7OUA-d5d177f8.js"),["assets/architecture-TIHT7OUA-d5d177f8.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Architecture.parser.LangiumParser;tt.architecture=e},"architecture"),gitGraph:s(async()=>{const{createGitGraphServices:t}=await ut(()=>import("./gitGraph-TEB2WS4Q-9ae1b586.js"),["assets/gitGraph-TEB2WS4Q-9ae1b586.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().GitGraph.parser.LangiumParser;tt.gitGraph=e},"gitGraph"),eventmodeling:s(async()=>{const{createEventModelingServices:t}=await ut(()=>import("./eventmodeling-45OFAUF4-bf8d119c.js"),["assets/eventmodeling-45OFAUF4-bf8d119c.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().EventModel.parser.LangiumParser;tt.eventmodeling=e},"eventmodeling"),radar:s(async()=>{const{createRadarServices:t}=await ut(()=>import("./radar-I7S5WNFK-c5c9960b.js"),["assets/radar-I7S5WNFK-c5c9960b.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Radar.parser.LangiumParser;tt.radar=e},"radar"),railroad:s(async()=>{const{createRailroadServices:t}=await ut(()=>import("./railroad-3IZDKUUU-feac18dd.js"),["assets/railroad-3IZDKUUU-feac18dd.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Railroad.parser.LangiumParser;tt.railroad=e},"railroad"),railroadEbnf:s(async()=>{const{createRailroadEbnfServices:t}=await ut(()=>import("./railroad-ebnf-EBAXGLYW-ff768dd6.js"),["assets/railroad-ebnf-EBAXGLYW-ff768dd6.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().RailroadEbnf.parser.LangiumParser;tt.railroadEbnf=e},"railroadEbnf"),railroadAbnf:s(async()=>{const{createRailroadAbnfServices:t}=await ut(()=>import("./railroad-abnf-AHOZXSZD-4c0ebd35.js"),["assets/railroad-abnf-AHOZXSZD-4c0ebd35.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().RailroadAbnf.parser.LangiumParser;tt.railroadAbnf=e},"railroadAbnf"),railroadPeg:s(async()=>{const{createRailroadPegServices:t}=await ut(()=>import("./railroad-peg-LSFZ7HO6-1635744c.js"),["assets/railroad-peg-LSFZ7HO6-1635744c.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().RailroadPeg.parser.LangiumParser;tt.railroadPeg=e},"railroadPeg"),treemap:s(async()=>{const{createTreemapServices:t}=await ut(()=>import("./treemap-6X3UGDF4-d8139088.js"),["assets/treemap-6X3UGDF4-d8139088.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Treemap.parser.LangiumParser;tt.treemap=e},"treemap"),wardley:s(async()=>{const{createWardleyServices:t}=await ut(()=>import("./wardley-OPB4EBWU-39974587.js"),["assets/wardley-OPB4EBWU-39974587.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Wardley.parser.LangiumParser;tt.wardley=e},"wardley"),cynefin:s(async()=>{const{createCynefinServices:t}=await ut(()=>import("./cynefin-VYW2F7L2-69957a6c.js"),["assets/cynefin-VYW2F7L2-69957a6c.js","assets/index-67d0461e.js","assets/index-042bd23d.css"]),e=t().Cynefin.parser.LangiumParser;tt.cynefin=e},"cynefin")};async function $K(t,e){const r=TK[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);tt[t]||await r();const a=tt[t].parse(e);if(a.lexerErrors.length>0||a.parserErrors.length>0)throw new RK(a);return a.value}s($K,"parse");var Lu,RK=(Lu=class extends Error{constructor(e){const r=e.lexerErrors.map(a=>{const i=a.line!==void 0&&!isNaN(a.line)?a.line:"?",o=a.column!==void 0&&!isNaN(a.column)?a.column:"?";return`Lexer error on line ${i}, column ${o}: ${a.message}`}).join(`
177
+ `),n=e.parserErrors.map(a=>{const i=a.token.startLine!==void 0&&!isNaN(a.token.startLine)?a.token.startLine:"?",o=a.token.startColumn!==void 0&&!isNaN(a.token.startColumn)?a.token.startColumn:"?";return`Parse error on line ${i}, column ${o}: ${a.message}`}).join(`
178
+ `);super(`Parsing failed: ${r} ${n}`),this.result=e}},s(Lu,"MermaidParseError"),Lu);export{pK as A,qU as C,gK as E,YU as G,ZU as I,RK as M,tK as P,vU as R,uK as T,UU as W,rK as a,iK as b,QU as c,sK as d,cK as e,mK as f,XU as g,vK as h,TU as i,AU as j,EU as k,_U as l,SU as m,NU as n,PU as o,LU as p,DU as q,zU as r,jU as s,KU as t,VU as u,$K as v,oB as w};