UNPKG

mermaid

Version:

Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.

137 lines • 659 kB
import{a as o}from"./chunk-QVIEFLGF.mjs";var _$=Object.create,li=Object.defineProperty,S$=Object.getOwnPropertyDescriptor,ac=Object.getOwnPropertyNames,w$=Object.getPrototypeOf,I$=Object.prototype.hasOwnProperty,i=o((e,t)=>li(e,"name",{value:t,configurable:!0}),"__name"),P$=o((e,t)=>o(function(){return e&&(t=(0,e[ac(e)[0]])(e=0)),t},"__init"),"__esm"),Y=o((e,t)=>o(function(){return t||(0,e[ac(e)[0]])((t={exports:{}}).exports,t),t.exports},"__require"),"__commonJS"),N$=o((e,t)=>{for(var r in t)li(e,r,{get:t[r],enumerable:!0})},"__export"),Rd=o((e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ac(t))!I$.call(e,a)&&a!==r&&li(e,a,{get:o(()=>t[a],"get"),enumerable:!(n=S$(t,a))||n.enumerable});return e},"__copyProps"),ic=o((e,t,r)=>(r=e!=null?_$(w$(e)):{},Rd(t||!e||!e.__esModule?li(r,"default",{value:e,enumerable:!0}):r,e)),"__toESM"),sc=o(e=>Rd(li({},"__esModule",{value:!0}),e),"__toCommonJS"),ui=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/is.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=r,e.number=n,e.error=a,e.func=s,e.array=l,e.stringArray=u;function t(c){return c===!0||c===!1}o(t,"boolean"),i(t,"boolean");function r(c){return typeof c=="string"||c instanceof String}o(r,"string"),i(r,"string");function n(c){return typeof c=="number"||c instanceof Number}o(n,"number"),i(n,"number");function a(c){return c instanceof Error}o(a,"error"),i(a,"error");function s(c){return typeof c=="function"}o(s,"func"),i(s,"func");function l(c){return Array.isArray(c)}o(l,"array"),i(l,"array");function u(c){return l(c)&&c.every(f=>r(f))}o(u,"stringArray"),i(u,"stringArray")}}),Ad=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messages.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(A,v,_,k){k===void 0&&(k=_);var S=Object.getOwnPropertyDescriptor(v,_);(!S||("get"in S?!v.__esModule:S.writable||S.configurable))&&(S={enumerable:!0,get:i(function(){return v[_]},"get")}),Object.defineProperty(A,k,S)}):(function(A,v,_,k){k===void 0&&(k=_),A[k]=v[_]})),r=e&&e.__setModuleDefault||(Object.create?(function(A,v){Object.defineProperty(A,"default",{enumerable:!0,value:v})}):function(A,v){A.default=v}),n=e&&e.__importStar||(function(){var A=i(function(v){return A=Object.getOwnPropertyNames||function(_){var k=[];for(var S in _)Object.prototype.hasOwnProperty.call(_,S)&&(k[k.length]=S);return k},A(v)},"ownKeys");return function(v){if(v&&v.__esModule)return v;var _={};if(v!=null)for(var k=A(v),S=0;S<k.length;S++)k[S]!=="default"&&t(_,v,k[S]);return r(_,v),_}})();Object.defineProperty(e,"__esModule",{value:!0}),e.Message=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType=e.RequestType0=e.AbstractMessageSignature=e.ParameterStructures=e.ResponseError=e.ErrorCodes=void 0;var a=n(ui()),s;(function(A){A.ParseError=-32700,A.InvalidRequest=-32600,A.MethodNotFound=-32601,A.InvalidParams=-32602,A.InternalError=-32603,A.jsonrpcReservedErrorRangeStart=-32099,A.serverErrorStart=-32099,A.MessageWriteError=-32099,A.MessageReadError=-32098,A.PendingResponseRejected=-32097,A.ConnectionInactive=-32096,A.ServerNotInitialized=-32002,A.UnknownErrorCode=-32001,A.jsonrpcReservedErrorRangeEnd=-32e3,A.serverErrorEnd=-32e3})(s||(e.ErrorCodes=s={}));var l=class Ed extends Error{static{o(this,"_ResponseError")}static{i(this,"ResponseError")}code;data;constructor(v,_,k){super(_),this.code=a.number(v)?v:s.UnknownErrorCode,this.data=k,Object.setPrototypeOf(this,Ed.prototype)}toJson(){let v={code:this.code,message:this.message};return this.data!==void 0&&(v.data=this.data),v}};e.ResponseError=l;var u=class pr{static{o(this,"_ParameterStructures")}static{i(this,"ParameterStructures")}kind;static auto=new pr("auto");static byPosition=new pr("byPosition");static byName=new pr("byName");constructor(v){this.kind=v}static is(v){return v===pr.auto||v===pr.byName||v===pr.byPosition}toString(){return this.kind}};e.ParameterStructures=u;var c=class{static{o(this,"AbstractMessageSignature")}static{i(this,"AbstractMessageSignature")}method;numberOfParams;constructor(A,v){this.method=A,this.numberOfParams=v}get parameterStructures(){return u.auto}};e.AbstractMessageSignature=c;var f=class extends c{static{o(this,"RequestType0")}static{i(this,"RequestType0")}_;constructor(A){super(A,0)}};e.RequestType0=f;var d=class extends c{static{o(this,"RequestType")}static{i(this,"RequestType")}_parameterStructures;_;constructor(A,v=u.auto){super(A,1),this._parameterStructures=v}get parameterStructures(){return this._parameterStructures}};e.RequestType=d;var y=class extends c{static{o(this,"RequestType1")}static{i(this,"RequestType1")}_parameterStructures;_;constructor(A,v=u.auto){super(A,1),this._parameterStructures=v}get parameterStructures(){return this._parameterStructures}};e.RequestType1=y;var g=class extends c{static{o(this,"RequestType2")}static{i(this,"RequestType2")}_;constructor(A){super(A,2)}};e.RequestType2=g;var m=class extends c{static{o(this,"RequestType3")}static{i(this,"RequestType3")}_;constructor(A){super(A,3)}};e.RequestType3=m;var E=class extends c{static{o(this,"RequestType4")}static{i(this,"RequestType4")}_;constructor(A){super(A,4)}};e.RequestType4=E;var $=class extends c{static{o(this,"RequestType5")}static{i(this,"RequestType5")}_;constructor(A){super(A,5)}};e.RequestType5=$;var T=class extends c{static{o(this,"RequestType6")}static{i(this,"RequestType6")}_;constructor(A){super(A,6)}};e.RequestType6=T;var R=class extends c{static{o(this,"RequestType7")}static{i(this,"RequestType7")}_;constructor(A){super(A,7)}};e.RequestType7=R;var w=class extends c{static{o(this,"RequestType8")}static{i(this,"RequestType8")}_;constructor(A){super(A,8)}};e.RequestType8=w;var b=class extends c{static{o(this,"RequestType9")}static{i(this,"RequestType9")}_;constructor(A){super(A,9)}};e.RequestType9=b;var M=class extends c{static{o(this,"NotificationType")}static{i(this,"NotificationType")}_parameterStructures;_;constructor(A,v=u.auto){super(A,1),this._parameterStructures=v}get parameterStructures(){return this._parameterStructures}};e.NotificationType=M;var L=class extends c{static{o(this,"NotificationType0")}static{i(this,"NotificationType0")}_;constructor(A){super(A,0)}};e.NotificationType0=L;var G=class extends c{static{o(this,"NotificationType1")}static{i(this,"NotificationType1")}_parameterStructures;_;constructor(A,v=u.auto){super(A,1),this._parameterStructures=v}get parameterStructures(){return this._parameterStructures}};e.NotificationType1=G;var K=class extends c{static{o(this,"NotificationType2")}static{i(this,"NotificationType2")}_;constructor(A){super(A,2)}};e.NotificationType2=K;var Z=class extends c{static{o(this,"NotificationType3")}static{i(this,"NotificationType3")}_;constructor(A){super(A,3)}};e.NotificationType3=Z;var ne=class extends c{static{o(this,"NotificationType4")}static{i(this,"NotificationType4")}_;constructor(A){super(A,4)}};e.NotificationType4=ne;var X=class extends c{static{o(this,"NotificationType5")}static{i(this,"NotificationType5")}_;constructor(A){super(A,5)}};e.NotificationType5=X;var D=class extends c{static{o(this,"NotificationType6")}static{i(this,"NotificationType6")}_;constructor(A){super(A,6)}};e.NotificationType6=D;var N=class extends c{static{o(this,"NotificationType7")}static{i(this,"NotificationType7")}_;constructor(A){super(A,7)}};e.NotificationType7=N;var F=class extends c{static{o(this,"NotificationType8")}static{i(this,"NotificationType8")}_;constructor(A){super(A,8)}};e.NotificationType8=F;var j=class extends c{static{o(this,"NotificationType9")}static{i(this,"NotificationType9")}_;constructor(A){super(A,9)}};e.NotificationType9=j;var P;(function(A){function v(S){let O=S;return O&&a.string(O.method)&&(a.string(O.id)||a.number(O.id))}o(v,"isRequest"),i(v,"isRequest"),A.isRequest=v;function _(S){let O=S;return O&&a.string(O.method)&&S.id===void 0}o(_,"isNotification"),i(_,"isNotification"),A.isNotification=_;function k(S){let O=S;return O&&(O.result!==void 0||!!O.error)&&(a.string(O.id)||a.number(O.id)||O.id===null)}o(k,"isResponse"),i(k,"isResponse"),A.isResponse=k})(P||(e.Message=P={}))}}),Cd=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.LRUCache=e.LinkedMap=e.Touch=void 0;var t;(function(a){a.None=0,a.First=1,a.AsOld=a.First,a.Last=2,a.AsNew=a.Last})(t||(e.Touch=t={}));var r=class{static{o(this,"LinkedMap")}static{i(this,"LinkedMap")}[Symbol.toStringTag]="LinkedMap";_map;_head;_tail;_size;_state;constructor(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}before(a){let s=this._map.get(a);return s?s.previous?.value:void 0}after(a){let s=this._map.get(a);return s?s.next?.value:void 0}has(a){return this._map.has(a)}get(a,s=t.None){let l=this._map.get(a);if(l)return s!==t.None&&this.touch(l,s),l.value}set(a,s,l=t.None){let u=this._map.get(a);if(u)u.value=s,l!==t.None&&this.touch(u,l);else{switch(u={key:a,value:s,next:void 0,previous:void 0},l){case t.None:this.addItemLast(u);break;case t.First:this.addItemFirst(u);break;case t.Last:this.addItemLast(u);break;default:this.addItemLast(u);break}this._map.set(a,u),this._size++}return this}delete(a){return!!this.remove(a)}remove(a){let s=this._map.get(a);if(s)return this._map.delete(a),this.removeItem(s),this._size--,s.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let a=this._head;return this._map.delete(a.key),this.removeItem(a),this._size--,a.value}forEach(a,s){let l=this._state,u=this._head;for(;u;){if(s?a.bind(s)(u.value,u.key,this):a(u.value,u.key,this),this._state!==l)throw new Error("LinkedMap got modified during iteration.");u=u.next}}keys(){let a=this._state,s=this._head,l={[Symbol.iterator]:()=>l,next:i(()=>{if(this._state!==a)throw new Error("LinkedMap got modified during iteration.");if(s){let u={value:s.key,done:!1};return s=s.next,u}else return{value:void 0,done:!0}},"next")};return l}values(){let a=this._state,s=this._head,l={[Symbol.iterator]:()=>l,next:i(()=>{if(this._state!==a)throw new Error("LinkedMap got modified during iteration.");if(s){let u={value:s.value,done:!1};return s=s.next,u}else return{value:void 0,done:!0}},"next")};return l}entries(){let a=this._state,s=this._head,l={[Symbol.iterator]:()=>l,next:i(()=>{if(this._state!==a)throw new Error("LinkedMap got modified during iteration.");if(s){let u={value:[s.key,s.value],done:!1};return s=s.next,u}else return{value:void 0,done:!0}},"next")};return l}[Symbol.iterator](){return this.entries()}trimOld(a){if(a>=this.size)return;if(a===0){this.clear();return}let s=this._head,l=this.size;for(;s&&l>a;)this._map.delete(s.key),s=s.next,l--;this._head=s,this._size=l,s&&(s.previous=void 0),this._state++}addItemFirst(a){if(!this._head&&!this._tail)this._tail=a;else if(this._head)a.next=this._head,this._head.previous=a;else throw new Error("Invalid list");this._head=a,this._state++}addItemLast(a){if(!this._head&&!this._tail)this._head=a;else if(this._tail)a.previous=this._tail,this._tail.next=a;else throw new Error("Invalid list");this._tail=a,this._state++}removeItem(a){if(a===this._head&&a===this._tail)this._head=void 0,this._tail=void 0;else if(a===this._head){if(!a.next)throw new Error("Invalid list");a.next.previous=void 0,this._head=a.next}else if(a===this._tail){if(!a.previous)throw new Error("Invalid list");a.previous.next=void 0,this._tail=a.previous}else{let s=a.next,l=a.previous;if(!s||!l)throw new Error("Invalid list");s.previous=l,l.next=s}a.next=void 0,a.previous=void 0,this._state++}touch(a,s){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(s!==t.First&&s!==t.Last)){if(s===t.First){if(a===this._head)return;let l=a.next,u=a.previous;a===this._tail?(u.next=void 0,this._tail=u):(l.previous=u,u.next=l),a.previous=void 0,a.next=this._head,this._head.previous=a,this._head=a,this._state++}else if(s===t.Last){if(a===this._tail)return;let l=a.next,u=a.previous;a===this._head?(l.previous=void 0,this._head=l):(l.previous=u,u.next=l),a.next=void 0,a.previous=this._tail,this._tail.next=a,this._tail=a,this._state++}}}toJSON(){let a=[];return this.forEach((s,l)=>{a.push([l,s])}),a}fromJSON(a){this.clear();for(let[s,l]of a)this.set(s,l)}};e.LinkedMap=r;var n=class extends r{static{o(this,"LRUCache")}static{i(this,"LRUCache")}_limit;_ratio;constructor(a,s=1){super(),this._limit=a,this._ratio=Math.min(Math.max(0,s),1)}get limit(){return this._limit}set limit(a){this._limit=a,this.checkTrim()}get ratio(){return this._ratio}set ratio(a){this._ratio=Math.min(Math.max(0,a),1),this.checkTrim()}get(a,s=t.AsNew){return super.get(a,s)}peek(a){return super.get(a,t.None)}set(a,s){return super.set(a,s,t.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};e.LRUCache=n}}),k$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/disposable.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Disposable=void 0;var t;(function(r){function n(a){return{dispose:a}}o(n,"create"),i(n,"create"),r.create=n})(t||(e.Disposable=t={}))}}),wr=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/ral.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t;function r(){if(t===void 0)throw new Error("No runtime abstraction layer installed");return t}o(r,"RAL"),i(r,"RAL"),(function(n){function a(s){if(s===void 0)throw new Error("No runtime abstraction layer provided");t=s}o(a,"install"),i(a,"install"),n.install=a})(r||(r={})),e.default=r}}),ci=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/events.js"(e){"use strict";var t=e&&e.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(e,"__esModule",{value:!0}),e.Emitter=e.Event=void 0;var r=t(wr()),n;(function(l){let u={dispose(){}};l.None=function(){return u}})(n||(e.Event=n={}));var a=class{static{o(this,"CallbackList")}static{i(this,"CallbackList")}_callbacks;_contexts;add(l,u=null,c){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(l),this._contexts.push(u),Array.isArray(c)&&c.push({dispose:i(()=>this.remove(l,u),"dispose")})}remove(l,u=null){if(!this._callbacks)return;let c=!1;for(let f=0,d=this._callbacks.length;f<d;f++)if(this._callbacks[f]===l)if(this._contexts[f]===u){this._callbacks.splice(f,1),this._contexts.splice(f,1);return}else c=!0;if(c)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...l){if(!this._callbacks)return[];let u=[],c=this._callbacks.slice(0),f=this._contexts.slice(0);for(let d=0,y=c.length;d<y;d++)try{u.push(c[d].apply(f[d],l))}catch(g){(0,r.default)().console.error(g)}return u}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},s=class bd{static{o(this,"_Emitter")}static{i(this,"Emitter")}_options;static _noop=i(function(){},"_noop");_event;_callbacks;constructor(u){this._options=u}get event(){return this._event||(this._event=(u,c,f)=>{this._callbacks||(this._callbacks=new a),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(u,c);let d={dispose:i(()=>{this._callbacks&&(this._callbacks.remove(u,c),d.dispose=bd._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(u){this._callbacks&&this._callbacks.invoke.call(this._callbacks,u)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};e.Emitter=s}}),oc=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(g,m,E,$){$===void 0&&($=E);var T=Object.getOwnPropertyDescriptor(m,E);(!T||("get"in T?!m.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:i(function(){return m[E]},"get")}),Object.defineProperty(g,$,T)}):(function(g,m,E,$){$===void 0&&($=E),g[$]=m[E]})),r=e&&e.__setModuleDefault||(Object.create?(function(g,m){Object.defineProperty(g,"default",{enumerable:!0,value:m})}):function(g,m){g.default=m}),n=e&&e.__importStar||(function(){var g=i(function(m){return g=Object.getOwnPropertyNames||function(E){var $=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&($[$.length]=T);return $},g(m)},"ownKeys");return function(m){if(m&&m.__esModule)return m;var E={};if(m!=null)for(var $=g(m),T=0;T<$.length;T++)$[T]!=="default"&&t(E,m,$[T]);return r(E,m),E}})(),a=e&&e.__importDefault||function(g){return g&&g.__esModule?g:{default:g}};Object.defineProperty(e,"__esModule",{value:!0}),e.CancellationTokenSource=e.CancellationToken=void 0;var s=a(wr()),l=n(ui()),u=ci(),c;(function(g){g.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:u.Event.None}),g.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:u.Event.None});function m(E){let $=E;return $&&($===g.None||$===g.Cancelled||l.boolean($.isCancellationRequested)&&!!$.onCancellationRequested)}o(m,"is"),i(m,"is"),g.is=m})(c||(e.CancellationToken=c={}));var f=Object.freeze(function(g,m){let E=(0,s.default)().timer.setTimeout(g.bind(m),0);return{dispose(){E.dispose()}}}),d=class{static{o(this,"MutableToken")}static{i(this,"MutableToken")}_isCancelled=!1;_emitter;cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?f:(this._emitter||(this._emitter=new u.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},y=class{static{o(this,"CancellationTokenSource2")}static{i(this,"CancellationTokenSource")}_token;get token(){return this._token||(this._token=new d),this._token}cancel(){this._token?this._token.cancel():this._token=c.Cancelled}dispose(){this._token?this._token instanceof d&&this._token.dispose():this._token=c.None}};e.CancellationTokenSource=y}}),O$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=void 0;var t=oc(),r;(function(u){u.Continue=0,u.Cancelled=1})(r||(r={}));var n=class{static{o(this,"SharedArraySenderStrategy")}static{i(this,"SharedArraySenderStrategy")}buffers;constructor(){this.buffers=new Map}enableCancellation(u){if(u.id===null)return;let c=new SharedArrayBuffer(4),f=new Int32Array(c,0,1);f[0]=r.Continue,this.buffers.set(u.id,c),u.$cancellationData=c}async sendCancellation(u,c){let f=this.buffers.get(c);if(f===void 0)return;let d=new Int32Array(f,0,1);Atomics.store(d,0,r.Cancelled)}cleanup(u){this.buffers.delete(u)}dispose(){this.buffers.clear()}};e.SharedArraySenderStrategy=n;var a=class{static{o(this,"SharedArrayBufferCancellationToken")}static{i(this,"SharedArrayBufferCancellationToken")}data;constructor(u){this.data=new Int32Array(u,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=class{static{o(this,"SharedArrayBufferCancellationTokenSource")}static{i(this,"SharedArrayBufferCancellationTokenSource")}token;constructor(u){this.token=new a(u)}cancel(){}dispose(){}},l=class{static{o(this,"SharedArrayReceiverStrategy")}static{i(this,"SharedArrayReceiverStrategy")}kind="request";createCancellationTokenSource(u){let c=u.$cancellationData;return c===void 0?new t.CancellationTokenSource:new s(c)}};e.SharedArrayReceiverStrategy=l}}),_d=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(e){"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.Semaphore=void 0;var r=t(wr()),n=class{static{o(this,"Semaphore")}static{i(this,"Semaphore")}_capacity;_active;_waiting;constructor(a=1){if(a<=0)throw new Error("Capacity must be greater than 0");this._capacity=a,this._active=0,this._waiting=[]}lock(a){return new Promise((s,l)=>{this._waiting.push({thunk:a,resolve:s,reject:l}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,r.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let a=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("Too many thunks active");try{let s=a.thunk();s instanceof Promise?s.then(l=>{this._active--,a.resolve(l),this.runNext()},l=>{this._active--,a.reject(l),this.runNext()}):(this._active--,a.resolve(s),this.runNext())}catch(s){this._active--,a.reject(s),this.runNext()}}};e.Semaphore=n}}),M$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(m,E,$,T){T===void 0&&(T=$);var R=Object.getOwnPropertyDescriptor(E,$);(!R||("get"in R?!E.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:i(function(){return E[$]},"get")}),Object.defineProperty(m,T,R)}):(function(m,E,$,T){T===void 0&&(T=$),m[T]=E[$]})),r=e&&e.__setModuleDefault||(Object.create?(function(m,E){Object.defineProperty(m,"default",{enumerable:!0,value:E})}):function(m,E){m.default=E}),n=e&&e.__importStar||(function(){var m=i(function(E){return m=Object.getOwnPropertyNames||function($){var T=[];for(var R in $)Object.prototype.hasOwnProperty.call($,R)&&(T[T.length]=R);return T},m(E)},"ownKeys");return function(E){if(E&&E.__esModule)return E;var $={};if(E!=null)for(var T=m(E),R=0;R<T.length;R++)T[R]!=="default"&&t($,E,T[R]);return r($,E),$}})(),a=e&&e.__importDefault||function(m){return m&&m.__esModule?m:{default:m}};Object.defineProperty(e,"__esModule",{value:!0}),e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=void 0;var s=a(wr()),l=n(ui()),u=ci(),c=_d(),f;(function(m){function E($){let T=$;return T&&l.func(T.listen)&&l.func(T.dispose)&&l.func(T.onError)&&l.func(T.onClose)&&l.func(T.onPartialMessage)}o(E,"is"),i(E,"is"),m.is=E})(f||(e.MessageReader=f={}));var d=class{static{o(this,"AbstractMessageReader")}static{i(this,"AbstractMessageReader")}errorEmitter;closeEmitter;partialMessageEmitter;constructor(){this.errorEmitter=new u.Emitter,this.closeEmitter=new u.Emitter,this.partialMessageEmitter=new u.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose(),this.partialMessageEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(m){this.errorEmitter.fire(this.asError(m))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(m){this.partialMessageEmitter.fire(m)}asError(m){return m instanceof Error?m:new Error(`Reader received error. Reason: ${l.string(m.message)?m.message:"unknown"}`)}};e.AbstractMessageReader=d;var y;(function(m){function E($){let T,R,w,b=new Map,M,L=new Map;if($===void 0||typeof $=="string")T=$??"utf-8";else{if(T=$.charset??"utf-8",$.contentDecoder!==void 0&&(w=$.contentDecoder,b.set(w.name,w)),$.contentDecoders!==void 0)for(let G of $.contentDecoders)b.set(G.name,G);if($.contentTypeDecoder!==void 0&&(M=$.contentTypeDecoder,L.set(M.name,M)),$.contentTypeDecoders!==void 0)for(let G of $.contentTypeDecoders)L.set(G.name,G)}return M===void 0&&(M=(0,s.default)().applicationJson.decoder,L.set(M.name,M)),{charset:T,contentDecoder:w,contentDecoders:b,contentTypeDecoder:M,contentTypeDecoders:L}}o(E,"fromOptions"),i(E,"fromOptions"),m.fromOptions=E})(y||(y={}));var g=class extends d{static{o(this,"ReadableStreamMessageReader")}static{i(this,"ReadableStreamMessageReader")}readable;options;callback;nextMessageLength;messageToken;buffer;partialMessageTimer;_partialMessageTimeout;readSemaphore;constructor(m,E){super(),this.readable=m,this.options=y.fromOptions(E),this.buffer=(0,s.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new c.Semaphore(1)}set partialMessageTimeout(m){this._partialMessageTimeout=m}get partialMessageTimeout(){return this._partialMessageTimeout}listen(m){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=m;let E=this.readable.onData($=>{this.onData($)});return this.readable.onError($=>this.fireError($)),this.readable.onClose(()=>this.fireClose()),E}onData(m){try{for(this.buffer.append(m);;){if(this.nextMessageLength===-1){let $=this.buffer.tryReadHeaders(!0);if(!$)return;let T=$.get("content-length");if(!T){this.fireError(new Error(`Header must provide a Content-Length property.
${JSON.stringify(Object.fromEntries($))}`));return}let R=parseInt(T);if(isNaN(R)){this.fireError(new Error(`Content-Length value must be a number. Got ${T}`));return}this.nextMessageLength=R}let E=this.buffer.tryReadBody(this.nextMessageLength);if(E===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let $=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(E):E,T=await this.options.contentTypeDecoder.decode($,this.options);this.callback(T)}).catch($=>{this.fireError($)})}}catch(E){this.fireError(E)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,s.default)().timer.setTimeout((m,E)=>{this.partialMessageTimer=void 0,m===this.messageToken&&(this.firePartialMessage({messageToken:m,waitingTime:E}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};e.ReadableStreamMessageReader=g}}),D$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function($,T,R,w){w===void 0&&(w=R);var b=Object.getOwnPropertyDescriptor(T,R);(!b||("get"in b?!T.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:i(function(){return T[R]},"get")}),Object.defineProperty($,w,b)}):(function($,T,R,w){w===void 0&&(w=R),$[w]=T[R]})),r=e&&e.__setModuleDefault||(Object.create?(function($,T){Object.defineProperty($,"default",{enumerable:!0,value:T})}):function($,T){$.default=T}),n=e&&e.__importStar||(function(){var $=i(function(T){return $=Object.getOwnPropertyNames||function(R){var w=[];for(var b in R)Object.prototype.hasOwnProperty.call(R,b)&&(w[w.length]=b);return w},$(T)},"ownKeys");return function(T){if(T&&T.__esModule)return T;var R={};if(T!=null)for(var w=$(T),b=0;b<w.length;b++)w[b]!=="default"&&t(R,T,w[b]);return r(R,T),R}})(),a=e&&e.__importDefault||function($){return $&&$.__esModule?$:{default:$}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=void 0;var s=a(wr()),l=n(ui()),u=_d(),c=ci(),f="Content-Length: ",d=`\r
`,y;(function($){function T(R){let w=R;return w&&l.func(w.dispose)&&l.func(w.onClose)&&l.func(w.onError)&&l.func(w.write)}o(T,"is"),i(T,"is"),$.is=T})(y||(e.MessageWriter=y={}));var g=class{static{o(this,"AbstractMessageWriter")}static{i(this,"AbstractMessageWriter")}errorEmitter;closeEmitter;constructor(){this.errorEmitter=new c.Emitter,this.closeEmitter=new c.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError($,T,R){this.errorEmitter.fire([this.asError($),T,R])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError($){return $ instanceof Error?$:new Error(`Writer received error. Reason: ${l.string($.message)?$.message:"unknown"}`)}};e.AbstractMessageWriter=g;var m;(function($){function T(R){return R===void 0||typeof R=="string"?{charset:R??"utf-8",contentTypeEncoder:(0,s.default)().applicationJson.encoder}:{charset:R.charset??"utf-8",contentEncoder:R.contentEncoder,contentTypeEncoder:R.contentTypeEncoder??(0,s.default)().applicationJson.encoder}}o(T,"fromOptions"),i(T,"fromOptions"),$.fromOptions=T})(m||(m={}));var E=class extends g{static{o(this,"WriteableStreamMessageWriter")}static{i(this,"WriteableStreamMessageWriter")}writable;options;errorCount;writeSemaphore;constructor($,T){super(),this.writable=$,this.options=m.fromOptions(T),this.errorCount=0,this.writeSemaphore=new u.Semaphore(1),this.writable.onError(R=>this.fireError(R)),this.writable.onClose(()=>this.fireClose())}async write($){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode($,this.options).then(R=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(R):R).then(R=>{let w=[];return w.push(f,R.byteLength.toString(),d),w.push(d),this.doWrite($,w,R)},R=>{throw this.fireError(R),R}))}async doWrite($,T,R){try{return await this.writable.write(T.join(""),"ascii"),this.writable.write(R)}catch(w){return this.handleError(w,$),Promise.reject(w)}}handleError($,T){this.errorCount++,this.fireError($,T,this.errorCount)}end(){this.writable.end()}};e.WriteableStreamMessageWriter=E}}),L$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMessageBuffer=void 0;var t=13,r=10,n=`\r
`,a=class{static{o(this,"AbstractMessageBuffer")}static{i(this,"AbstractMessageBuffer")}_encoding;_chunks;_totalLength;constructor(s="utf-8"){this._encoding=s,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(s){let l=typeof s=="string"?this.fromString(s,this._encoding):s;this._chunks.push(l),this._totalLength+=l.byteLength}tryReadHeaders(s=!1){if(this._chunks.length===0)return;let l=0,u=0,c=0,f=0;e:for(;u<this._chunks.length;){let m=this._chunks[u];for(c=0;c<m.length;){switch(m[c]){case t: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,c++;break e;default:l=0}break;default:l=0}c++}f+=m.byteLength,u++}if(l!==4)return;let d=this._read(f+c),y=new Map,g=this.toString(d,"ascii").split(n);if(g.length<2)return y;for(let m=0;m<g.length-2;m++){let E=g[m],$=E.indexOf(":");if($===-1)throw new Error(`Message header must separate key and value using ':'
${E}`);let T=E.substr(0,$),R=E.substr($+1).trim();y.set(s?T.toLowerCase():T,R)}return y}tryReadBody(s){if(!(this._totalLength<s))return this._read(s)}get numberOfBytes(){return this._totalLength}_read(s){if(s===0)return this.emptyBuffer();if(s>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===s){let f=this._chunks[0];return this._chunks.shift(),this._totalLength-=s,this.asNative(f)}if(this._chunks[0].byteLength>s){let f=this._chunks[0],d=this.asNative(f,s);return this._chunks[0]=f.slice(s),this._totalLength-=s,d}let l=this.allocNative(s),u=0,c=0;for(;s>0;){let f=this._chunks[c];if(f.byteLength>s){let d=f.slice(0,s);l.set(d,u),u+=s,this._chunks[c]=f.slice(s),this._totalLength-=s,s-=s}else l.set(f,u),u+=f.byteLength,this._chunks.shift(),this._totalLength-=f.byteLength,s-=f.byteLength}return l}};e.AbstractMessageBuffer=a}}),x$=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/connection.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(v,_,k,S){S===void 0&&(S=k);var O=Object.getOwnPropertyDescriptor(_,k);(!O||("get"in O?!_.__esModule:O.writable||O.configurable))&&(O={enumerable:!0,get:i(function(){return _[k]},"get")}),Object.defineProperty(v,S,O)}):(function(v,_,k,S){S===void 0&&(S=k),v[S]=_[k]})),r=e&&e.__setModuleDefault||(Object.create?(function(v,_){Object.defineProperty(v,"default",{enumerable:!0,value:_})}):function(v,_){v.default=_}),n=e&&e.__importStar||(function(){var v=i(function(_){return v=Object.getOwnPropertyNames||function(k){var S=[];for(var O in k)Object.prototype.hasOwnProperty.call(k,O)&&(S[S.length]=O);return S},v(_)},"ownKeys");return function(_){if(_&&_.__esModule)return _;var k={};if(_!=null)for(var S=v(_),O=0;O<S.length;O++)S[O]!=="default"&&t(k,_,S[O]);return r(k,_),k}})(),a=e&&e.__importDefault||function(v){return v&&v.__esModule?v:{default:v}};Object.defineProperty(e,"__esModule",{value:!0}),e.ConnectionOptions=e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.ConnectionStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.TraceValue=e.Trace=e.NullLogger=e.ProgressType=e.ProgressToken=void 0,e.createMessageConnection=A;var s=a(wr()),l=n(ui()),u=Ad(),c=Cd(),f=ci(),d=oc(),y;(function(v){v.type=new u.NotificationType("$/cancelRequest")})(y||(y={}));var g;(function(v){function _(k){return typeof k=="string"||typeof k=="number"}o(_,"is"),i(_,"is"),v.is=_})(g||(e.ProgressToken=g={}));var m;(function(v){v.type=new u.NotificationType("$/progress")})(m||(m={}));var E=class{static{o(this,"ProgressType")}static{i(this,"ProgressType")}__;_pr;constructor(){}};e.ProgressType=E;var $;(function(v){function _(k){return l.func(k)}o(_,"is"),i(_,"is"),v.is=_})($||($={})),e.NullLogger=Object.freeze({error:i(()=>{},"error"),warn:i(()=>{},"warn"),info:i(()=>{},"info"),log:i(()=>{},"log")});var T;(function(v){v[v.Off=0]="Off",v[v.Messages=1]="Messages",v[v.Compact=2]="Compact",v[v.Verbose=3]="Verbose"})(T||(e.Trace=T={}));var R;(function(v){v.Off="off",v.Messages="messages",v.Compact="compact",v.Verbose="verbose"})(R||(e.TraceValue=R={})),e.TraceValues=R,(function(v){function _(S){if(!l.string(S))return v.Off;switch(S=S.toLowerCase(),S){case"off":return v.Off;case"messages":return v.Messages;case"compact":return v.Compact;case"verbose":return v.Verbose;default:return v.Off}}o(_,"fromString"),i(_,"fromString"),v.fromString=_;function k(S){switch(S){case v.Off:return"off";case v.Messages:return"messages";case v.Compact:return"compact";case v.Verbose:return"verbose";default:return"off"}}o(k,"toString3"),i(k,"toString"),v.toString=k})(T||(e.Trace=T={}));var w;(function(v){v.Text="text",v.JSON="json"})(w||(e.TraceFormat=w={})),(function(v){function _(k){return l.string(k)?(k=k.toLowerCase(),k==="json"?v.JSON:v.Text):v.Text}o(_,"fromString"),i(_,"fromString"),v.fromString=_})(w||(e.TraceFormat=w={}));var b;(function(v){v.type=new u.NotificationType("$/setTrace")})(b||(e.SetTraceNotification=b={}));var M;(function(v){v.type=new u.NotificationType("$/logTrace")})(M||(e.LogTraceNotification=M={}));var L;(function(v){v[v.Closed=1]="Closed",v[v.Disposed=2]="Disposed",v[v.AlreadyListening=3]="AlreadyListening"})(L||(e.ConnectionErrors=L={}));var G=class Sd extends Error{static{o(this,"_ConnectionError")}static{i(this,"ConnectionError")}code;constructor(_,k){super(k),this.code=_,Object.setPrototypeOf(this,Sd.prototype)}};e.ConnectionError=G;var K;(function(v){function _(k){let S=k;return S&&l.func(S.cancelUndispatched)}o(_,"is"),i(_,"is"),v.is=_})(K||(e.ConnectionStrategy=K={}));var Z;(function(v){function _(k){let S=k;return S&&(S.kind===void 0||S.kind==="id")&&l.func(S.createCancellationTokenSource)&&(S.dispose===void 0||l.func(S.dispose))}o(_,"is"),i(_,"is"),v.is=_})(Z||(e.IdCancellationReceiverStrategy=Z={}));var ne;(function(v){function _(k){let S=k;return S&&S.kind==="request"&&l.func(S.createCancellationTokenSource)&&(S.dispose===void 0||l.func(S.dispose))}o(_,"is"),i(_,"is"),v.is=_})(ne||(e.RequestCancellationReceiverStrategy=ne={}));var X;(function(v){v.Message=Object.freeze({createCancellationTokenSource(k){return new d.CancellationTokenSource}});function _(k){return Z.is(k)||ne.is(k)}o(_,"is"),i(_,"is"),v.is=_})(X||(e.CancellationReceiverStrategy=X={}));var D;(function(v){v.Message=Object.freeze({sendCancellation(k,S){return k.sendNotification(y.type,{id:S})},cleanup(k){}});function _(k){let S=k;return S&&l.func(S.sendCancellation)&&l.func(S.cleanup)}o(_,"is"),i(_,"is"),v.is=_})(D||(e.CancellationSenderStrategy=D={}));var N;(function(v){v.Message=Object.freeze({receiver:X.Message,sender:D.Message});function _(k){let S=k;return S&&X.is(S.receiver)&&D.is(S.sender)}o(_,"is"),i(_,"is"),v.is=_})(N||(e.CancellationStrategy=N={}));var F;(function(v){function _(k){let S=k;return S&&l.func(S.handleMessage)}o(_,"is"),i(_,"is"),v.is=_})(F||(e.MessageStrategy=F={}));var j;(function(v){function _(k){let S=k;return S&&(N.is(S.cancellationStrategy)||K.is(S.connectionStrategy)||F.is(S.messageStrategy)||l.number(S.maxParallelism))}o(_,"is"),i(_,"is"),v.is=_})(j||(e.ConnectionOptions=j={}));var P;(function(v){v[v.New=1]="New",v[v.Listening=2]="Listening",v[v.Closed=3]="Closed",v[v.Disposed=4]="Disposed"})(P||(P={}));function A(v,_,k,S){let O=k!==void 0?k:e.NullLogger,q=0,H=0,V=0,Ee="2.0",te=S?.maxParallelism??-1,pe=0,oe,be=new Map,ze,Ve=new Map,zt=new Map,xr,ot=new c.LinkedMap,Ze=new Map,er=new Set,Ut=new Map,ie=T.Off,lt=w.Text,ye,Qe=P.New,Gr=new f.Emitter,Wn=new f.Emitter,Vn=new f.Emitter,Hn=new f.Emitter,Yn=new f.Emitter,et=S&&S.cancellationStrategy?S.cancellationStrategy:N.Message;function Fr(h){}o(Fr,"cancelUndispatched"),i(Fr,"cancelUndispatched");function tr(){return Qe===P.Listening}o(tr,"isListening"),i(tr,"isListening");function jr(){return Qe===P.Closed}o(jr,"isClosed"),i(jr,"isClosed");function ut(){return Qe===P.Disposed}o(ut,"isDisposed"),i(ut,"isDisposed");function zr(){(Qe===P.New||Qe===P.Listening)&&(Qe=P.Closed,Wn.fire(void 0))}o(zr,"closeHandler"),i(zr,"closeHandler");function Xn(h){Gr.fire([h,void 0,void 0])}o(Xn,"readErrorHandler"),i(Xn,"readErrorHandler");function Jn(h){Gr.fire(h)}o(Jn,"writeErrorHandler"),i(Jn,"writeErrorHandler"),v.onClose(zr),v.onError(Xn),_.onClose(zr),_.onError(Jn);function Ur(h){if(h===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+h.toString()}o(Ur,"createRequestQueueKey"),i(Ur,"createRequestQueueKey");function Zn(h){return h===null?"res-unknown-"+(++V).toString():"res-"+h.toString()}o(Zn,"createResponseQueueKey"),i(Zn,"createResponseQueueKey");function Qn(){return"not-"+(++H).toString()}o(Qn,"createNotificationQueueKey"),i(Qn,"createNotificationQueueKey");function ea(h,I){u.Message.isRequest(I)?h.set(Ur(I.id),I):u.Message.isResponse(I)?te===-1?h.set(Zn(I.id),I):Br(I):h.set(Qn(),I)}o(ea,"addMessageToQueue"),i(ea,"addMessageToQueue");function rr(){xr||ot.size===0||te!==-1&&pe>=te||(xr=(0,s.default)().timer.setImmediate(async()=>{if(xr=void 0,ot.size===0||te!==-1&&pe>=te)return;let h=ot.shift(),I;try{pe++;let x=S?.messageStrategy;F.is(x)?I=x.handleMessage(h,Kr):I=Kr(h)}catch(x){O.error(`Processing message queue failed: ${x.toString()}`)}finally{I instanceof Promise?I.then(()=>{pe--,rr()}).catch(x=>{O.error(`Processing message queue failed: ${x.toString()}`)}):pe--,rr()}}))}o(rr,"triggerMessageQueue"),i(rr,"triggerMessageQueue");async function Kr(h){return u.Message.isRequest(h)?ta(h):u.Message.isNotification(h)?ra(h):u.Message.isResponse(h)?Br(h):na(h)}o(Kr,"handleMessage"),i(Kr,"handleMessage");let Ti=i(h=>{try{if(u.Message.isNotification(h)&&h.method===y.type.method){let I=h.params.id,x=Ur(I),z=ot.get(x);if(u.Message.isRequest(z)){let de=S?.connectionStrategy,se=de&&de.cancelUndispatched?de.cancelUndispatched(z,Fr):void 0;if(se&&(se.error!==void 0||se.result!==void 0)){ot.delete(x),Ut.delete(I),se.id=z.id,nr(se,h.method,Date.now()),_.write(se).catch(()=>O.error("Sending response for canceled message failed."));return}}let ee=Ut.get(I);if(ee!==void 0){ee.cancel(),ar(h);return}else er.add(I)}ea(ot,h)}finally{rr()}},"callback");async function ta(h){if(ut())return Promise.resolve();function I(_e,Ne,ge){let ve={jsonrpc:Ee,id:h.id};return _e instanceof u.ResponseError?ve.error=_e.toJson():ve.result=_e===void 0?null:_e,nr(ve,Ne,ge),_.write(ve)}o(I,"reply"),i(I,"reply");function x(_e,Ne,ge){let ve={jsonrpc:Ee,id:h.id,error:_e.toJson()};return nr(ve,Ne,ge),_.write(ve)}o(x,"replyError"),i(x,"replyError"),sa(h);let z=be.get(h.method),ee,de;z&&(ee=z.type,de=z.handler);let se=Date.now();if(de||oe){let _e=h.id??String(Date.now()),Ne=Z.is(et.receiver)?et.receiver.createCancellationTokenSource(_e):et.receiver.createCancellationTokenSource(h);h.id!==null&&er.has(h.id)&&Ne.cancel(),h.id!==null&&Ut.set(_e,Ne);try{let ge;if(de)if(h.params===void 0){if(ee!==void 0&&ee.numberOfParams!==0)return x(new u.ResponseError(u.ErrorCodes.InvalidParams,`Request ${h.method} defines ${ee.numberOfParams} params but received none.`),h.method,se);ge=de(Ne.token)}else if(Array.isArray(h.params)){if(ee!==void 0&&ee.parameterStructures===u.ParameterStructures.byName)return x(new u.ResponseError(u.ErrorCodes.InvalidParams,`Request ${h.method} defines parameters by name but received parameters by position`),h.method,se);ge=de(...h.params,Ne.token)}else{if(ee!==void 0&&ee.parameterStructures===u.ParameterStructures.byPosition)return x(new u.ResponseError(u.ErrorCodes.InvalidParams,`Request ${h.method} defines parameters by position but received parameters by name`),h.method,se);ge=de(h.params,Ne.token)}else oe&&(ge=oe(h.method,h.params,Ne.token));let ve=await ge;await I(ve,h.method,se)}catch(ge){ge instanceof u.ResponseError?await I(ge,h.method,se):ge&&l.string(ge.message)?await x(new u.ResponseError(u.ErrorCodes.InternalError,`Request ${h.method} failed with message: ${ge.message}`),h.method,se):await x(new u.ResponseError(u.ErrorCodes.InternalError,`Request ${h.method} failed unexpectedly without providing any details.`),h.method,se)}finally{Ut.delete(_e)}}else await x(new u.ResponseError(u.ErrorCodes.MethodNotFound,`Unhandled method ${h.method}`),h.method,se)}o(ta,"handleRequest"),i(ta,"handleRequest");function Br(h){if(!ut())if(h.id===null)h.error?O.error(`Received response message without id: Error is: 
${JSON.stringify(h.error,void 0,4)}`):O.error("Received response message without id. No further error information provided.");else{let I=h.id,x=Ze.get(I);if(oa(h,x),x!==void 0){Ze.delete(I);try{if(h.error){let z=h.error;x.reject(new u.ResponseError(z.code,z.message,z.data))}else if(h.result!==void 0)x.resolve(h.result);else throw new Error("Should never happen.")}catch(z){z.message?O.error(`Response handler '${x.method}' failed with message: ${z.message}`):O.error(`Response handler '${x.method}' failed unexpectedly.`)}}}}o(Br,"handleResponse"),i(Br,"handleResponse");async function ra(h){if(ut())return;let I,x;if(h.method===y.type.method){let z=h.params.id;er.delete(z),ar(h);return}else{let z=Ve.get(h.method);z&&(x=z.handler,I=z.type)}if(x||ze)try{if(ar(h),x)if(h.params===void 0)I!==void 0&&I.numberOfParams!==0&&I.parameterStructures!==u.ParameterStructures.byName&&O.error(`Notification ${h.method} defines ${I.numberOfParams} params but received none.`),await x();else if(Array.isArray(h.params)){let z=h.params;h.method===m.type.method&&z.length===2&&g.is(z[0])?await x({token:z[0],value:z[1]}):(I!==void 0&&(I.parameterStructures===u.ParameterStructures.byName&&O.error(`Notification ${h.method} defines parameters by name but received parameters by position`),I.numberOfParams!==h.params.length&&O.error(`Notification ${h.method} defines ${I.numberOfParams} params but received ${z.length} arguments`)),await x(...z))}else I!==void 0&&I.parameterStructures===u.ParameterStructures.byPosition&&O.error(`Notification ${h.method} defines parameters by position but received parameters by name`),await x(h.params);else ze&&await ze(h.method,h.params)}catch(z){z.message?O.error(`Notification handler '${h.method}' failed with message: ${z.message}`):O.error(`Notification handler '${h.method}' failed unexpectedly.`)}else Vn.fire(h)}o(ra,"handleNotification"),i(ra,"handleNotification");function na(h){if(!h){O.error("Received empty message.");return}O.error(`Received message which is neither a response nor a notification message:
${JSON.stringify(h,null,4)}`);let I=h;if(l.string(I.id)||l.number(I.id)){let x=I.id,z=Ze.get(x);z&&z.reject(new Error("The received response has neither a result nor an error property."))}}o(na,"handleInvalidMessage"),i(na,"handleInvalidMessage");function He(h){if(h!=null)switch(ie){case T.Verbose:return JSON.stringify(h,null,4);case T.Compact:return JSON.stringify(h);default:return}}o(He,"stringifyTrace"),i(He,"stringifyTrace");function aa(h){if(!(ie===T.Off||!ye))if(lt===w.Text){let I;(ie===T.Verbose||ie===T.Compact)&&h.params&&(I=`Params: ${He(h.params)}`),ye.log(`Sending request '${h.method} - (${h.id})'.`,I)}else ct("send-request",h)}o(aa,"traceSendingRequest"),i(aa,"traceSendingRequest");function ia(h){if(!(ie===T.Off||!ye))if(lt===w.Text){let I;(ie===T.Verbose||ie===T.Compact)&&(h.params?I=`Params: ${He(h.params)}`:I="No parameters provided."),ye.log(`Sending notification '${h.method}'.`,I)}else ct("send-notification",h)}o(ia,"traceSendingNotification"),i(ia,"traceSendingNotification");function nr(h,I,x){if(!(ie===T.Off||!ye))if(lt===w.Text){let z;(ie===T.Verbose||ie===T.Compact)&&(h.error&&h.error.data?z=`Error data: ${He(h.error.data)}`:h.result?z=`Result: ${He(h.result)}`:h.error===void 0&&(z="No result returned."));let ee=h.error?` Request failed: ${h.error.message} (${h.error.code}).`:"";ye.log(`Sending response '${I} - (${h.id})'. Processing request took ${Date.now()-x}ms.${ee}`,z)}else ct("send-response",h)}o(nr,"traceSendingResponse"),i(nr,"traceSendingResponse");function sa(h){if(!(ie===T.Off||!ye))if(lt===w.Text){let I;(ie===T.Verbose||ie===T.Compact)&&h.params&&(I=`Params: ${He(h.params)}`),ye.log(`Received request '${h.method} - (${h.id})'.`,I)}else ct("receive-request",h)}o(sa,"traceReceivedRequest"),i(sa,"traceReceivedRequest");function ar(h){if(!(ie===T.Off||!ye||h.method===M.type.method))if(lt===w.Text){let I;(ie===T.Verbose||ie===T.Compact)&&(h.params?I=`Params: ${He(h.params)}`:I="No parameters provided."),ye.log(`Received notification '${h.method}'.`,I)}else ct("receive-notification",h)}o(ar,"traceReceivedNotification"),i(ar,"traceReceivedNotification");function oa(h,I){if(!(ie===T.Off||!ye))if(lt===w.Text){let x;if((ie===T.Verbose||ie===T.Compact)&&(h.error&&h.error.data?x=`Error data: ${He(h.error.data)}`:h.result?x=`Result: ${He(h.result)}`:h.error===void 0&&(x="No result returned.")),I){let z=h.error?` Request failed: ${h.error.message} (${h.error.code}).`:"";ye.log(`Received response '${I.method} - (${h.id})' in ${Date.now()-I.timerStart}ms.${z}`,x)}else ye.log(`Received response ${h.id} without active response promise.`,x)}else ct("receive-response",h)}o(oa,"traceReceivedResponse"),i(oa,"traceReceivedResponse");function ct(h,I){if(!ye||ie===T.Off)return;let x={isLSPMessage:!0,type:h,message:I,timestamp:Date.now()};ye.log(x)}o(ct,"logLSPMessage"),i(ct,"logLSPMessage");function At(){if(jr())throw new G(L.Closed,"Connection is closed.");if(ut())throw new G(L.Disposed,"Connection is disposed.")}o(At,"throwIfClosedOrDisposed"),i(At,"throwIfClosedOrDisposed");function la(){if(tr())throw new G(L.AlreadyListening,"Connection is already listening")}o(la,"throwIfListening"),i(la,"throwIfListening");function ua(){if(!tr())throw new Error("Call listen() first.")}o(ua,"throwIfNotListening"),i(ua,"throwIfNotListening");function Et(h){return h===void 0?null:h}o(Et,"undefinedToNull"),i(Et,"undefinedToNull");function qr(h){if(h!==null)return h}o(qr,"nullToUndefined"),i(qr,"nullToUndefined");function Wr(h){return h!=null&&!Array.isArray(h)&&typeof h=="object"}o(Wr,"isNamedParam"),i(Wr,"isNamedParam");function p(h,I){switch(h){case u.ParameterStructures.auto:return Wr(I)?qr(I):[Et(I)];case u.ParameterStructures.byName:if(!Wr(I))throw new Error("Received parameters by name but param is not an object literal.");return qr(I);case u.ParameterStructures.byPosition:return[Et(I)];default:throw new Error(`Unknown parameter structure ${h.toString()}`)}}o(p,"computeSingleParam"),i(p,"computeSingleParam");function U(h,I){let x,z=h.numberOfParams;switch(z){case 0:x=void 0;break;case 1:x=p(h.parameterStructures,I[0]);break;default:x=[];for(let ee=0;ee<I.length&&ee<z;ee++)x.push(Et(I[ee]));if(I.length<z)for(let ee=I.length;ee<z;ee++)x.push(null);break}return x}o(U,"computeMessageParams"),i(U,"computeMessageParams");let W={sendNotification:i((h,...I)=>{At();let x,z;if(l.string(h)){x=h;let de=I[0],se=0,_e=u.ParameterStructures.auto;u.ParameterStructures.is(de)&&(se=1,_e=de);let Ne=I.length,ge=Ne-se;switch(ge){case 0:z=void 0;break;case 1:z=p(_e,I[se]);break;default:if(_e===u.ParameterStructures.byName)throw new Error(`Received ${ge} parameters for 'by Name' notification parameter structure.`);z=I.slice(se,Ne).map(ve=>Et(ve));break}}else{let de=I;x=h.method,z=U(h,de)}let ee={jsonrpc:Ee,method:x,params:z};return ia(ee),_.write(ee).catch(de=>{throw O.error("Sending notification failed."),de})},"sendNotification"),onNotification:i((h,I)=>{At();let x;return l.func(h)?ze=h:I&&(l.string(h)?(x=h,Ve.set(h,{type:void 0,handler:I})):(x=h.method,Ve.set(h.method,{type:h,handler:I}))),{dispose:i(()=>{x!==void 0?Ve.get(x)?.handler===I&&Ve.delete(x):ze===h&&(ze=void 0)},"dispose")}},"onNotification"),onProgress:i((h,I,x)=>{if(zt.has(I))throw new Error(`Progress handler for token ${I} already registered`);return zt.set(I,x),{dispose:i(()=>{zt.get(I)===x&&zt.delete(I)},"dispose")}},"onProgress"),sendProgress:i((h,I,x)=>W.sendNotification(m.type,{token:I,value:x}),"sendProgress"),onUnhandledProgress:Hn.event,sendRequest:i((h,...I)=>{At(),ua();function x(ve,tt){let Ct=et.sender.sendCancellation(ve,tt);Ct===void 0?O.log(`Received no promise from cancellation strategy when cancelling id ${tt}`):Ct.catch(()=>{O.log(`Sending cancellation messages for id ${tt} failed.`)})}o(x,"sendCancellation"),i(x,"sendCancellation");let z,ee,de;if(l.string(h)){z=h;let ve=I[0],tt=I[I.length-1],Ct=0,ca=u.ParameterStructures.auto;u.ParameterStructures.is(ve)&&(Ct=1,ca=ve);let ir=I.length;d.CancellationToken.is(tt)&&(ir=ir-1,de=tt);let bt=ir-Ct;switch(bt){case 0:ee=void 0;break;case 1:ee=p(ca,I[Ct]);break;default:if(ca===u.ParameterStructures.byName)throw new Error(`Received ${bt} parameters for 'by Name' request parameter structure.`);ee=I.slice(Ct,ir).map(b$=>Et(b$));break}}else{let ve=I;z=h.method,ee=U(h,ve);let tt=h.numberOfParams;de=d.CancellationToken.is(ve[tt])?ve[tt]:void 0}let se=q++,_e,Ne=!1;de!==void 0&&(de.isCancellationRequested?Ne=!0:_e=de.onCancellationRequested(()=>{x(W,se)}));let ge={jsonrpc:Ee,id:se,method:z,params:ee};return aa(ge),typeof et.sender.enableCancellation=="function"&&et.sender.enableCancellation(ge),new Promise(async(ve,tt)=>{let Ct=i(bt=>{ve(bt),et.sender.cleanup(se),_e?.dispose()},"resolveWithCleanup"),ca=i(bt=>{tt(bt),et.sender.cleanup(se),_e?.dispose()},"rejectWithCleanup"),ir={method:z,timerStart:Date.now(),resolve:Ct,reject:ca};try{Ze.set(se,ir),await _.write(ge),Ne&&x(W,se)}catch(bt){Ze.delete(se),ir.reject(new u.ResponseError(u.ErrorCodes.MessageWriteError,bt.message?bt.message:"Unknown reason")),O.error("Sending request failed.")}})},"sendRequest"),onRequest:i((h,I)=>{At();let x=null;return $.is(h)?(x=void 0,oe=h):l.string(h)?(x=null,I!==void 0&&(x=h,be.set(h,{handler:I,type:void 0}))):I!==void 0&&(x=h.method,be.set(h.method,{type:h,handler:I})),{dispose:i(()=>{x!==null&&(x!==void 0?be.get(x)?.handler===I&&be.delete(x):oe===h&&(oe=void 0))},"dispose")}},"onRequest"),hasPendingResponse:i(()=>Ze.size>0,"hasPendingResponse"),trace:i(async(h,I,x)=>{let z=!1,ee=w.Text;x!==void 0&&(l.boolean(x)?z=x:(z=x.sendNotification||!1,ee=x.traceFormat||w.Text)),ie=h,lt=ee,ie===T.Off?ye=void 0:ye=I,z&&!jr()&&!ut()&&await W.sendNotification(b.type,{value:T.toString(h)})},"trace"),onError:Gr.event,onClose:Wn.event,onUnhandledNotification:Vn.event,onDispose:Yn.event,end:i(()=>{_.end()},"end"),dispose:i(()=>{if(ut())return;Qe=P.Disposed,Yn.fire(void 0);let h=new u.ResponseError(u.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let I of Ze.values())I.reject(h);Ze=new Map,Ut=new Map,er=new Set,ot=new c.LinkedMap,l.func(_.dispose)&&_.dispose(),l.func(v.dispose)&&v.dispose()},"dispose"),listen:i(()=>{At(),la(),Qe=P.Listening,v.listen(Ti)},"listen"),inspect:i(()=>{(0,s.default)().console.log("inspect")},"inspect")};return W.onNotification(M.type,h=>{if(ie===T.Off||!ye)return;let I=ie===T.Verbose||ie===T.Compact;ye.log(h.message,I?h.verbose:void 0)}),W.onNotification(m.type,async h=>{let I=zt.get(h.token);I?await I(h.value):Hn.fire(h)}),W}o(A,"createMessageConnection"),i(A,"createMessageConnection")}}),fi=Y({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/api.js"(e){"use strict";var t=e&&e.__importDefault||function(m){return m&&m.__esModule?m:{default:m}};Object.defineProperty(e,"__esModule",{value:!0}),e.ProgressType=e.ProgressToken=e.createMessageConnection=e.NullLogger=e.ConnectionOptions=e.ConnectionStrategy=e.AbstractMessageBuffer=e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=e.CancellationToken=e.CancellationTokenSource=e.Emitter=e.Event=e.Disposable=e.LRUCache=e.Touch=e.LinkedMap=e.ParameterStructures=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.ErrorCodes=e.ResponseError=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType0=e.RequestType=e.Message=e.RAL=void 0,e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.CancellationReceiverStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.TraceValue=e.Trace=void 0;var r=Ad();Object.defineProperty(e,"Message",{enumerable:!0,get:i(function(){return r.Message},"get")}),Object.defineProperty(e,"RequestType",{enumerable:!0,get:i(function(){return r.RequestType},"get")}),Object.defineProperty(e,"RequestType0",{enumerable:!0,get:i(function(){return r.RequestType0},"get")}),Object.defineProperty(e,"RequestType1",{enumerable:!0,get:i(function(){return r.RequestType1},"get")}),Object.defineProperty(e,"RequestType2",{enumerable:!0,get:i(function(){return r.RequestType2},"get")}),Object.defineProperty(e,"RequestType3",{enumerable:!0,get:i(function(){return r.RequestType3},"get")}),Object.defineProperty(e,"RequestType4",{enumerable:!0,get:i(function(){return r.RequestType4},"get")}),Object.defineProperty(e,"RequestType5",{enumerable:!0,get:i(function(){return r.RequestType5},"get")}),Object.defineProperty(e,"RequestType6",{enumerable:!0,get:i(function(){return r.RequestType6},"get")}),Object.defineProperty(e,"RequestType7",{enumerable:!0,get:i(function(){return r.RequestType7},"get")}),Object.defineProperty(e,"RequestType8",{enumerable:!0,get:i(function(){return r.RequestType8},"get")}),Object.defineProperty(e,"RequestType9",{enumerable:!0,get:i(function(){return r.RequestType9},"get")}),Object.defineProperty(e,"ResponseError",{enumerable:!0,get:i(function(){return r.ResponseError},"get")}),Object.defineProperty(e,"ErrorCodes",{enumerable:!0,get:i(function(){return r.ErrorCodes},"get")}),Object.defineProperty(e,"NotificationType",{enumerable:!0,get:i(function(){return r.NotificationType},"get")}),Object.defineProperty(e,"NotificationType0",{enumerable:!0,get:i(function(){return r.NotificationType0},"get")}),Object.defineProperty(e,"NotificationType1",{enumerable:!0,get:i(function(){return r.NotificationType1},"get")}),Object.defineProperty(e,"NotificationType2",{enumerable:!0,get:i(function(){return r.NotificationType2},"get")}),Object.defineProperty(e,"NotificationType3",{enumerable:!0,get:i(function(){return r.NotificationType3},"get")}),Object.defineProperty(e,"NotificationType4",{enumerable:!0,get:i(function(){return r.NotificationType4},"get")}),Object.defineProperty(e,"NotificationType5",{enumerable:!0,get:i(function(){return r.NotificationType5},"get")}),Object.defineProperty(e,"NotificationType6",{enumerable:!0,get:i(function(){return r.NotificationType6},"get")}),Object.defineProperty(e,"NotificationType7",{enumerable:!0,get:i(function(){return r.NotificationType7},"get")}),Object.defineProperty(e,"NotificationType8",{enumerable:!0,get:i(function(){return r.NotificationType8},"get")}),Object.defineProperty(e,"NotificationType9",{enumerable:!0,get:i(function(){return r.NotificationType9},"get")}),Object.defineProperty(e,"ParameterStructures",{enumerable:!0,get:i(function(){return r.ParameterStructures},"get")});var n=Cd();Object.defineProperty(e,"LinkedMap",{enumerable:!0,get:i(function(){return n.LinkedMap},"get")}),Object.defineProperty(e,"LRUCache",{enumerable:!0,get:i(function(){return n.LRUCache},"get")}),Object.defineProperty(e,"Touch",{enumerable:!0,get:i(function(){return n.Touch},"get")});var a=k$();Object.defineProperty(e,"Disposable",{enumerable:!0,get:i(function(){return a.Disposable},"get")});var s=ci();Object.defineProperty(e,"Event",{enumerable:!0,get:i(function(){return s.Event},"get")}),Object.defineProperty(e,"Emitter",{enumerable:!0,get:i(function(){return s.Emitter},"get")});var l=oc();Object.defineProperty(e,"CancellationTokenSource",{enumerable:!0,get:i(function(){return l.CancellationTokenSource},"get")}),Object.defineProperty(e,"CancellationToken",{enumerable:!0,get:i(function(){return l.CancellationToken},"get")});var u=O$();Object.defineProperty(e,"SharedArraySenderStrategy",{enumerable:!0,get:i(function(){return u.SharedArraySenderStrategy},"get")}),Object.defineProperty(e,"SharedArrayReceiverStrategy",{enumerable:!0,get:i(function(){return u.SharedArrayReceiverStrategy},"get")});var c=M$();Object.defineProperty(e,"MessageReader",{enumerable:!0,get:i(function(){return c.MessageReader},"get")}),Object.defineProperty(e,"AbstractMessageReader",{enumerable:!0,get:i(function(){return c.AbstractMessageReader},"get")}),Object.defineProperty(e,"ReadableStreamMessageReader",{enumerable:!0,get:i(function(){return c.ReadableStreamMessageReader},"get")});var f=D$();Object.defineProperty(e,"MessageWriter",{enumerable:!0,get:i(function(){return f.MessageWriter},"get")}),Object.defineProperty(e,"AbstractMessageWriter",{enumerable:!0,get:i(function(){return f.AbstractMessageWriter},"get")}),Object.defineProperty(e,"WriteableStreamMessageWriter",{enumerable:!0,get:i(function(){return f.WriteableStreamMessageWriter},"get")});var d=L$();Object.defineProperty(e,"AbstractMessageBuffer",{enumerable:!0,get:i(function(){return d.AbstractMessageBuffer},"get")});var y=x$();Object.defineProperty(e,"ConnectionStrategy",{enumerable:!0,get:i(function(){return y.ConnectionStrategy},"get")}),Object.defineProperty(e,"ConnectionOptions",{enumerable:!0,get:i(function(){return y.ConnectionOptions},"get")}),Object.defineProperty(e,"NullLogger",{enumerable:!0,get:i(function(){return y.NullLogger},"get")}),Object.defineProperty(e,"createMessageConnection",{enumerable:!0,get:i(function(){return y.createMessageConnection},"get")}),Object.defineProperty(e,"ProgressToken",{enumerable:!0,get:i(function(){return y.ProgressToken},"get")}),Object.defineProperty(e,"ProgressType",{enumerable:!0,get:i(function(){return y.ProgressType},"get")}),Object.defineProperty(e,"Trace",{enumerable:!0,get:i(function(){return y.Trace},"get")}),Object.defineProperty(e,"TraceValue",{enumerable:!0,get:i(function(){return y.TraceValue},"get")}),Object.defineProperty(e,"TraceFormat",{enumerable:!0,get:i(function(){return y.TraceFormat},"get")}),Object.defineProperty(e,"SetTraceNotification",{enumerable:!0,get:i(function(){return y.SetTraceNotification},"get")}),Object.defineProperty(e,"LogTraceNotification",{enumerable:!0,get:i(function(){return y.LogTraceNotification},"get")}),Object.defineProperty(e,"ConnectionErrors",{enumerable:!0,get:i(function(){return y.ConnectionErrors},"get")}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:i(function(){return y.ConnectionError},"get")}),Object.defineProperty(e,"CancellationReceiverStrategy",{enumerable:!0,get:i(function(){return y.CancellationReceiverStrategy},"get")}),Object.defineProperty(e,"IdCancellationReceiverStrategy",{enumerable:!0,get:i(function(){return y.IdCancellationReceiverStrategy},"get")}),Object.defineProperty(e,"RequestCancellationReceiverStrategy",{enumerable:!0,get:i(function(){return y.RequestCancellationReceiverStrategy},"get")}),Object.defineProperty(e,"CancellationSenderStrategy",{enumerable:!0,get:i(function(){return y.CancellationSenderStrategy},"get")}),Object.defineProperty(e,"CancellationStrategy",{enumerable:!0,get:i(function(){return y.CancellationStrategy},"get")}),Object.defineProperty(e,"MessageStrategy",{enumerable:!0,get:i(function(){return y.MessageStrategy},"get")}),Object.defineProperty(e,"TraceValues",{enumerable:!0,get:i(function(){return y.TraceValues},"get")});var g=t(wr());e.RAL=g.default}}),Gs={};N$(Gs,{AnnotatedTextEdit:o(()=>wt,"AnnotatedTextEdit"),ApplyKind:o(()=>dl,"ApplyKind"),ChangeAnnotation:o(()=>Bt,"ChangeAnnotation"),ChangeAnnotationIdentifier:o(()=>Se,"ChangeAnnotationIdentifier"),CodeAction:o(()=>Il,"CodeAction"),CodeActionContext:o(()=>wl,"CodeActionContext"),CodeActionKind:o(()=>Sl,"CodeActionKind"),CodeActionTag:o(()=>qi,"CodeActionTag"),CodeActionTriggerKind:o(()=>Na,"CodeActionTriggerKind"),CodeDescription:o(()=>rl,"CodeDescription"),CodeLens:o(()=>Pl,"CodeLens"),Color:o(()=>zi,"Color"),ColorInformation:o(()=>Xo,"ColorInformation"),ColorPresentation:o(()=>Jo,"ColorPresentation"),Command:o(()=>dr,"Command"),CompletionItem:o(()=>hl,"CompletionItem"),CompletionItemKind:o(()=>ll,"CompletionItemKind"),CompletionItemLabelDetails:o(()=>ml,"CompletionItemLabelDetails"),CompletionItemTag:o(()=>cl,"CompletionItemTag"),CompletionList:o(()=>yl,"CompletionList"),CreateFile:o(()=>tn,"CreateFile"),DeleteFile:o(()=>nn,"DeleteFile"),Diagnostic:o(()=>Sa,"Diagnostic"),DiagnosticRelatedInformation:o(()=>Ui,"DiagnosticRelatedInformation"),DiagnosticSeverity:o(()=>el,"DiagnosticSeverity"),DiagnosticTag:o(()=>tl,"DiagnosticTag"),DocumentHighlight:o(()=>Rl,"DocumentHighlight"),DocumentHighlightKind:o(()=>$l,"DocumentHighlightKind"),DocumentLink:o(()=>kl,"DocumentLink"),DocumentSymbol:o(()=>_l,"DocumentSymbol"),DocumentUri:o(()=>Vo,"DocumentUri"),EOL:o(()=>Id,"EOL"),FoldingRange:o(()=>Qo,"FoldingRange"),FoldingRangeKind:o(()=>Zo,"FoldingRangeKind"),FormattingOptions:o(()=>Nl,"FormattingOptions"),Hover:o(()=>gl,"Hover"),InlayHint:o(()=>zl,"InlayHint"),InlayHintKind:o(()=>Wi,"InlayHintKind"),InlayHintLabelPart:o(()=>Vi,"InlayHintLabelPart"),InlineCompletionContext:o(()=>Wl,"InlineCompletionContext"),InlineCompletionItem:o(()=>Ul,"InlineCompletionItem"),InlineCompletionList:o(()=>Kl,"InlineCompletionList"),InlineCompletionTriggerKind:o(()=>Bl,"InlineCompletionTriggerKind"),InlineValueContext:o(()=>jl,"InlineValueContext"),InlineValueEvaluatableExpression:o(()=>Fl,"InlineValueEvaluatableExpression"),InlineValueText:o(()=>xl,"InlineValueText"),InlineValueVariableLookup:o(()=>Gl,"InlineValueVariableLookup"),InsertReplaceEdit:o(()=>fl,"InsertReplaceEdit"),InsertTextFormat:o(()=>ul,"InsertTextFormat"),InsertTextMode:o(()=>pl,"InsertTextMode"),LanguageKind:o(()=>sl,"LanguageKind"),Location:o(()=>_a,"Location"),LocationLink:o(()=>Yo,"LocationLink"),MarkedString:o(()=>Pa,"MarkedString"),MarkupContent:o(()=>qt,"MarkupContent"),MarkupKind:o(()=>Bi,"MarkupKind"),OptionalVersionedTextDocumentIdentifier:o(()=>Ia,"OptionalVersionedTextDocumentIdentifier"),ParameterInformation:o(()=>vl,"ParameterInformation"),Position:o(()=>ae,"Position"),Range:o(()=>Q,"Range"),RenameFile:o(()=>rn,"RenameFile"),SelectedCompletionInfo:o(()=>ql,"SelectedCompletionInfo"),SelectionRange:o(()=>Ol,"SelectionRange"),SemanticTokenModifiers:o(()=>Dl,"SemanticTokenModifiers"),SemanticTokenTypes:o(()=>Ml,"SemanticTokenTypes"),SemanticTokens:o(()=>Ll,"SemanticTokens"),SignatureInformation:o(()=>Tl,"SignatureInformation"),SnippetTextEdit:o(()=>nl,"SnippetTextEdit"),StringValue:o(()=>Hi,"StringValue"),SymbolInformation:o(()=>Cl,"SymbolInformation"),SymbolKind:o(()=>Al,"SymbolKind"),SymbolTag:o(()=>El,"SymbolTag"),TextDocument:o(()=>Hl,"TextDocument"),TextDocumentEdit:o(()=>wa,"TextDocumentEdit"),TextDocumentIdentifier:o(()=>al,"TextDocumentIdentifier"),TextDocumentItem:o(()=>ol,"TextDocumentItem"),TextEdit:o(()=>pt,"TextEdit"),URI:o(()=>ji,"URI"),VersionedTextDocumentIdentifier:o(()=>il,"VersionedTextDocumentIdentifier"),WorkspaceChange:o(()=>wd,"WorkspaceChange"),WorkspaceEdit:o(()=>Ki,"WorkspaceEdit"),WorkspaceFolder:o(()=>Vl,"WorkspaceFolder"),WorkspaceSymbol:o(()=>bl,"WorkspaceSymbol"),integer:o(()=>Ho,"integer"),uinteger:o(()=>ba,"uinteger")});var Vo,ji,Ho,ba,ae,Q,_a,Yo,zi,Xo,Jo,Zo,Qo,Ui,el,tl,rl,Sa,dr,pt,Bt,Se,wt,wa,tn,rn,nn,Ki,fa,nl,go,wd,al,il,Ia,sl,ol,Bi,qt,ll,ul,cl,fl,pl,dl,ml,hl,yl,Pa,gl,vl,Tl,$l,Rl,Al,El,Cl,bl,_l,Sl,Na,wl,qi,Il,Pl,Nl,kl,Ol,Ml,Dl,Ll,xl,Gl,Fl,jl,Wi,Vi,zl,Hi,Ul,Kl,Bl,ql,Wl,Vl,Id,Hl,Af,C,Fs=P$({"../../node_modules/.pnpm/vscode-languageserver-types@3.18.4/node_modules/vscode-languageserver-types/lib/esm/main.js"(){"use strict";(function(e){function t(r){return typeof r=="string"}o(t,"is"),i(t,"is"),e.is=t})(Vo||(Vo={})),(function(e){function t(r){return typeof r=="string"}o(t,"is"),i(t,"is"),e.is=t})(ji||(ji={})),(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),i(t,"is"),e.is=t})(Ho||(Ho={})),(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),i(t,"is"),e.is=t})(ba||(ba={})),(function(e){function t(n,a){return n===Number.MAX_VALUE&&(n=ba.MAX_VALUE),a===Number.MAX_VALUE&&(a=ba.MAX_VALUE),{line:n,character:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&C.uinteger(a.line)&&C.uinteger(a.character)}o(r,"is"),i(r,"is"),e.is=r})(ae||(ae={})),(function(e){function t(n,a,s,l){if(C.uinteger(n)&&C.uinteger(a)&&C.uinteger(s)&&C.uinteger(l))return{start:ae.create(n,a),end:ae.create(s,l)};if(ae.is(n)&&ae.is(a))return{start:n,end:a};throw new Error(`Range#create called with invalid arguments[${n}, ${a}, ${s}, ${l}]`)}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&ae.is(a.start)&&ae.is(a.end)}o(r,"is"),i(r,"is"),e.is=r})(Q||(Q={})),(function(e){function t(n,a){return{uri:n,range:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&Q.is(a.range)&&(C.string(a.uri)||C.undefined(a.uri))}o(r,"is"),i(r,"is"),e.is=r})(_a||(_a={})),(function(e){function t(n,a,s,l){return{targetUri:n,targetRange:a,targetSelectionRange:s,originSelectionRange:l}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&Q.is(a.targetRange)&&C.string(a.targetUri)&&Q.is(a.targetSelectionRange)&&(Q.is(a.originSelectionRange)||C.undefined(a.originSelectionRange))}o(r,"is"),i(r,"is"),e.is=r})(Yo||(Yo={})),(function(e){function t(n,a,s,l){return{red:n,green:a,blue:s,alpha:l}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&C.numberRange(a.red,0,1)&&C.numberRange(a.green,0,1)&&C.numberRange(a.blue,0,1)&&C.numberRange(a.alpha,0,1)}o(r,"is"),i(r,"is"),e.is=r})(zi||(zi={})),(function(e){function t(n,a){return{range:n,color:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&Q.is(a.range)&&zi.is(a.color)}o(r,"is"),i(r,"is"),e.is=r})(Xo||(Xo={})),(function(e){function t(n,a,s){return{label:n,textEdit:a,additionalTextEdits:s}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&C.string(a.label)&&(C.undefined(a.textEdit)||pt.is(a))&&(C.undefined(a.additionalTextEdits)||C.typedArray(a.additionalTextEdits,pt.is))}o(r,"is"),i(r,"is"),e.is=r})(Jo||(Jo={})),(function(e){e.Comment="comment",e.Imports="imports",e.Region="region"})(Zo||(Zo={})),(function(e){function t(n,a,s,l,u,c){let f={startLine:n,endLine:a};return C.defined(s)&&(f.startCharacter=s),C.defined(l)&&(f.endCharacter=l),C.defined(u)&&(f.kind=u),C.defined(c)&&(f.collapsedText=c),f}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&C.uinteger(a.startLine)&&C.uinteger(a.startLine)&&(C.undefined(a.startCharacter)||C.uinteger(a.startCharacter))&&(C.undefined(a.endCharacter)||C.uinteger(a.endCharacter))&&(C.undefined(a.kind)||C.string(a.kind))}o(r,"is"),i(r,"is"),e.is=r})(Qo||(Qo={})),(function(e){function t(n,a){return{location:n,message:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&_a.is(a.location)&&C.string(a.message)}o(r,"is"),i(r,"is"),e.is=r})(Ui||(Ui={})),(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(el||(el={})),(function(e){e.Unnecessary=1,e.Deprecated=2})(tl||(tl={})),(function(e){function t(r){let n=r;return C.objectLiteral(n)&&C.string(n.href)}o(t,"is"),i(t,"is"),e.is=t})(rl||(rl={})),(function(e){function t(s,l,u,c,f,d){let y={range:s,message:l};return C.defined(u)&&(y.severity=u),C.defined(c)&&(y.code=c),C.defined(f)&&(y.source=f),C.defined(d)&&(y.relatedInformation=d),y}o(t,"create"),i(t,"create"),e.create=t;function r(s){var l;let u=s;return C.defined(u)&&Q.is(u.range)&&(C.string(u.message)||qt.is(u.message))&&(C.number(u.severity)||C.undefined(u.severity))&&(C.integer(u.code)||C.string(u.code)||C.undefined(u.code))&&(C.undefined(u.codeDescription)||C.string((l=u.codeDescription)===null||l===void 0?void 0:l.href))&&(C.string(u.source)||C.undefined(u.source))&&(C.undefined(u.relatedInformation)||C.typedArray(u.relatedInformation,Ui.is))}o(r,"is"),i(r,"is"),e.is=r;function n(s){return C.string(s.message)}o(n,"is3_17"),i(n,"is3_17"),e.is3_17=n;function a(s){if(C.string(s.message))return s.message;if(qt.is(s.message))return s.message.value;throw new Error(`Unknown message type ${typeof s.message}`)}o(a,"getMessageString"),i(a,"getMessageString"),e.getMessageString=a})(Sa||(Sa={})),(function(e){function t(n,a,...s){let l={title:n,command:a};return C.defined(s)&&s.length>0&&(l.arguments=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.string(a.title)&&(a.tooltip===void 0||C.string(a.tooltip))&&C.string(a.command)}o(r,"is"),i(r,"is"),e.is=r})(dr||(dr={})),(function(e){function t(s,l){return{range:s,newText:l}}o(t,"replace"),i(t,"replace"),e.replace=t;function r(s,l){return{range:{start:s,end:s},newText:l}}o(r,"insert"),i(r,"insert"),e.insert=r;function n(s){return{range:s,newText:""}}o(n,"del"),i(n,"del"),e.del=n;function a(s){let l=s;return C.objectLiteral(l)&&C.string(l.newText)&&Q.is(l.range)}o(a,"is"),i(a,"is"),e.is=a})(pt||(pt={})),(function(e){function t(n,a,s){let l={label:n};return a!==void 0&&(l.needsConfirmation=a),s!==void 0&&(l.description=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&C.string(a.label)&&(C.boolean(a.needsConfirmation)||a.needsConfirmation===void 0)&&(C.string(a.description)||a.description===void 0)}o(r,"is"),i(r,"is"),e.is=r})(Bt||(Bt={})),(function(e){function t(r){let n=r;return C.string(n)}o(t,"is"),i(t,"is"),e.is=t})(Se||(Se={})),(function(e){function t(s,l,u){return{range:s,newText:l,annotationId:u}}o(t,"replace"),i(t,"replace"),e.replace=t;function r(s,l,u){return{range:{start:s,end:s},newText:l,annotationId:u}}o(r,"insert"),i(r,"insert"),e.insert=r;function n(s,l){return{range:s,newText:"",annotationId:l}}o(n,"del"),i(n,"del"),e.del=n;function a(s){let l=s;return pt.is(l)&&(Bt.is(l.annotationId)||Se.is(l.annotationId))}o(a,"is"),i(a,"is"),e.is=a})(wt||(wt={})),(function(e){function t(n,a){return{textDocument:n,edits:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&Ia.is(a.textDocument)&&Array.isArray(a.edits)}o(r,"is"),i(r,"is"),e.is=r})(wa||(wa={})),(function(e){function t(n,a,s){let l={kind:"create",uri:n};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="create"&&C.string(a.uri)&&(a.options===void 0||(a.options.overwrite===void 0||C.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||C.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Se.is(a.annotationId))}o(r,"is"),i(r,"is"),e.is=r})(tn||(tn={})),(function(e){function t(n,a,s,l){let u={kind:"rename",oldUri:n,newUri:a};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(u.options=s),l!==void 0&&(u.annotationId=l),u}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="rename"&&C.string(a.oldUri)&&C.string(a.newUri)&&(a.options===void 0||(a.options.overwrite===void 0||C.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||C.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Se.is(a.annotationId))}o(r,"is"),i(r,"is"),e.is=r})(rn||(rn={})),(function(e){function t(n,a,s){let l={kind:"delete",uri:n};return a!==void 0&&(a.recursive!==void 0||a.ignoreIfNotExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="delete"&&C.string(a.uri)&&(a.options===void 0||(a.options.recursive===void 0||C.boolean(a.options.recursive))&&(a.options.ignoreIfNotExists===void 0||C.boolean(a.options.ignoreIfNotExists)))&&(a.annotationId===void 0||Se.is(a.annotationId))}o(r,"is"),i(r,"is"),e.is=r})(nn||(nn={})),(function(e){function t(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(a=>C.string(a.kind)?tn.is(a)||rn.is(a)||nn.is(a):wa.is(a)))}o(t,"is"),i(t,"is"),e.is=t})(Ki||(Ki={})),fa=class{static{o(this,"TextEditChangeImpl")}static{i(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,a;if(r===void 0?n=pt.insert(e,t):Se.is(r)?(a=r,n=wt.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=wt.insert(e,t,a)),this.edits.push(n),a!==void 0)return a}replace(e,t,r){let n,a;if(r===void 0?n=pt.replace(e,t):Se.is(r)?(a=r,n=wt.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=wt.replace(e,t,a)),this.edits.push(n),a!==void 0)return a}delete(e,t){let r,n;if(t===void 0?r=pt.del(e):Se.is(t)?(n=t,r=wt.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=wt.del(e,n)),this.edits.push(r),n!==void 0)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},(function(e){function t(r){let n=r;return C.objectLiteral(n)&&Q.is(n.range)&&Hi.isSnippet(n.snippet)&&(n.annotationId===void 0||Bt.is(n.annotationId)||Se.is(n.annotationId))}o(t,"is"),i(t,"is"),e.is=t})(nl||(nl={})),go=class{static{o(this,"ChangeAnnotations")}static{i(this,"ChangeAnnotations")}constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(Se.is(e)?r=e:(r=this.nextId(),t=e),this._annotations[r]!==void 0)throw new Error(`Id ${r} is already in use.`);if(t===void 0)throw new Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},wd=class{static{o(this,"WorkspaceChange")}static{i(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new go(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(t=>{if(wa.is(t)){let r=new fa(t.edits,this._changeAnnotations);this._textEditChanges[t.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach(t=>{let r=new fa(e.changes[t]);this._textEditChanges[t]=r})):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(e){if(Ia.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let t={uri:e.uri,version:e.version},r=this._textEditChanges[t.uri];if(!r){let n=[],a={textDocument:t,edits:n};this._workspaceEdit.documentChanges.push(a),r=new fa(n,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){let r=[];this._workspaceEdit.changes[e]=r,t=new fa(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new go,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;Bt.is(t)||Se.is(t)?n=t:r=t;let a,s;if(n===void 0?a=tn.create(e,r):(s=Se.is(n)?n:this._changeAnnotations.manage(n),a=tn.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}renameFile(e,t,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let a;Bt.is(r)||Se.is(r)?a=r:n=r;let s,l;if(a===void 0?s=rn.create(e,t,n):(l=Se.is(a)?a:this._changeAnnotations.manage(a),s=rn.create(e,t,n,l)),this._workspaceEdit.documentChanges.push(s),l!==void 0)return l}deleteFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;Bt.is(t)||Se.is(t)?n=t:r=t;let a,s;if(n===void 0?a=nn.create(e,r):(s=Se.is(n)?n:this._changeAnnotations.manage(n),a=nn.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}},(function(e){function t(n){return{uri:n}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.string(a.uri)}o(r,"is"),i(r,"is"),e.is=r})(al||(al={})),(function(e){function t(n,a){return{uri:n,version:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.string(a.uri)&&C.integer(a.version)}o(r,"is"),i(r,"is"),e.is=r})(il||(il={})),(function(e){function t(n,a){return{uri:n,version:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.string(a.uri)&&(a.version===null||C.integer(a.version))}o(r,"is"),i(r,"is"),e.is=r})(Ia||(Ia={})),(function(e){e.ABAP="abap",e.WindowsBat="bat",e.BibTeX="bibtex",e.Clojure="clojure",e.Coffeescript="coffeescript",e.C="c",e.CPP="cpp",e.CSharp="csharp",e.CSS="css",e.D="d",e.Delphi="pascal",e.Diff="diff",e.Dart="dart",e.Dockerfile="dockerfile",e.Elixir="elixir",e.Erlang="erlang",e.FSharp="fsharp",e.GitCommit="git-commit",e.GitRebase="git-rebase",e.Go="go",e.Groovy="groovy",e.Handlebars="handlebars",e.Haskell="haskell",e.HTML="html",e.Ini="ini",e.Java="java",e.JavaScript="javascript",e.JavaScriptReact="javascriptreact",e.JSON="json",e.LaTeX="latex",e.Less="less",e.Lua="lua",e.Makefile="makefile",e.Markdown="markdown",e.ObjectiveC="objective-c",e.ObjectiveCPP="objective-cpp",e.Pascal="pascal",e.Perl="perl",e.Perl6="perl6",e.PHP="php",e.Plaintext="plaintext",e.Powershell="powershell",e.Pug="jade",e.Python="python",e.R="r",e.Razor="razor",e.Ruby="ruby",e.Rust="rust",e.SCSS="scss",e.SASS="sass",e.Scala="scala",e.ShaderLab="shaderlab",e.ShellScript="shellscript",e.SQL="sql",e.Swift="swift",e.TypeScript="typescript",e.TypeScriptReact="typescriptreact",e.TeX="tex",e.VisualBasic="vb",e.XML="xml",e.XSL="xsl",e.YAML="yaml"})(sl||(sl={})),(function(e){function t(n,a,s,l){return{uri:n,languageId:a,version:s,text:l}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.string(a.uri)&&C.string(a.languageId)&&C.integer(a.version)&&C.string(a.text)}o(r,"is"),i(r,"is"),e.is=r})(ol||(ol={})),(function(e){e.PlainText="plaintext",e.Markdown="markdown";function t(r){let n=r;return n===e.PlainText||n===e.Markdown}o(t,"is"),i(t,"is"),e.is=t})(Bi||(Bi={})),(function(e){function t(r){let n=r;return C.objectLiteral(r)&&Bi.is(n.kind)&&C.string(n.value)}o(t,"is"),i(t,"is"),e.is=t})(qt||(qt={})),(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(ll||(ll={})),(function(e){e.PlainText=1,e.Snippet=2})(ul||(ul={})),(function(e){e.Deprecated=1})(cl||(cl={})),(function(e){function t(n,a,s){return{newText:n,insert:a,replace:s}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&C.string(a.newText)&&Q.is(a.insert)&&Q.is(a.replace)}o(r,"is"),i(r,"is"),e.is=r})(fl||(fl={})),(function(e){e.asIs=1,e.adjustIndentation=2})(pl||(pl={})),(function(e){e.Replace=1,e.Merge=2})(dl||(dl={})),(function(e){function t(r){let n=r;return n&&(C.string(n.detail)||n.detail===void 0)&&(C.string(n.description)||n.description===void 0)}o(t,"is"),i(t,"is"),e.is=t})(ml||(ml={})),(function(e){function t(r){return{label:r}}o(t,"create"),i(t,"create"),e.create=t})(hl||(hl={})),(function(e){function t(r,n){return{items:r||[],isIncomplete:!!n}}o(t,"create"),i(t,"create"),e.create=t})(yl||(yl={})),(function(e){function t(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(t,"fromPlainText"),i(t,"fromPlainText"),e.fromPlainText=t;function r(n){let a=n;return C.string(a)||C.objectLiteral(a)&&C.string(a.language)&&C.string(a.value)}o(r,"is"),i(r,"is"),e.is=r})(Pa||(Pa={})),(function(e){function t(r){let n=r;return!!n&&C.objectLiteral(n)&&(qt.is(n.contents)||Pa.is(n.contents)||C.typedArray(n.contents,Pa.is))&&(r.range===void 0||Q.is(r.range))}o(t,"is"),i(t,"is"),e.is=t})(gl||(gl={})),(function(e){function t(r,n){return n?{label:r,documentation:n}:{label:r}}o(t,"create"),i(t,"create"),e.create=t})(vl||(vl={})),(function(e){function t(r,n,...a){let s={label:r};return C.defined(n)&&(s.documentation=n),C.defined(a)?s.parameters=a:s.parameters=[],s}o(t,"create"),i(t,"create"),e.create=t})(Tl||(Tl={})),(function(e){e.Text=1,e.Read=2,e.Write=3})($l||($l={})),(function(e){function t(r,n){let a={range:r};return C.number(n)&&(a.kind=n),a}o(t,"create"),i(t,"create"),e.create=t})(Rl||(Rl={})),(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(Al||(Al={})),(function(e){e.Deprecated=1})(El||(El={})),(function(e){function t(r,n,a,s,l){let u={name:r,kind:n,location:{uri:s,range:a}};return l&&(u.containerName=l),u}o(t,"create"),i(t,"create"),e.create=t})(Cl||(Cl={})),(function(e){function t(r,n,a,s){return s!==void 0?{name:r,kind:n,location:{uri:a,range:s}}:{name:r,kind:n,location:{uri:a}}}o(t,"create"),i(t,"create"),e.create=t})(bl||(bl={})),(function(e){function t(n,a,s,l,u,c){let f={name:n,detail:a,kind:s,range:l,selectionRange:u};return c!==void 0&&(f.children=c),f}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&C.string(a.name)&&C.number(a.kind)&&Q.is(a.range)&&Q.is(a.selectionRange)&&(a.detail===void 0||C.string(a.detail))&&(a.deprecated===void 0||C.boolean(a.deprecated))&&(a.children===void 0||Array.isArray(a.children))&&(a.tags===void 0||Array.isArray(a.tags))}o(r,"is"),i(r,"is"),e.is=r})(_l||(_l={})),(function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorMove="refactor.move",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll",e.Notebook="notebook"})(Sl||(Sl={})),(function(e){e.Invoked=1,e.Automatic=2})(Na||(Na={})),(function(e){function t(n,a,s){let l={diagnostics:n};return a!=null&&(l.only=a),s!=null&&(l.triggerKind=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.typedArray(a.diagnostics,Sa.is)&&(a.only===void 0||C.typedArray(a.only,C.string))&&(a.triggerKind===void 0||a.triggerKind===Na.Invoked||a.triggerKind===Na.Automatic)}o(r,"is"),i(r,"is"),e.is=r})(wl||(wl={})),(function(e){e.LLMGenerated=1;function t(r){return C.defined(r)&&r===e.LLMGenerated}o(t,"is"),i(t,"is"),e.is=t})(qi||(qi={})),(function(e){function t(n,a,s){let l={title:n},u=!0;return typeof a=="string"?(u=!1,l.kind=a):dr.is(a)?l.command=a:l.edit=a,u&&s!==void 0&&(l.kind=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a&&C.string(a.title)&&(a.diagnostics===void 0||C.typedArray(a.diagnostics,Sa.is))&&(a.kind===void 0||C.string(a.kind))&&(a.edit!==void 0||a.command!==void 0)&&(a.command===void 0||dr.is(a.command))&&(a.isPreferred===void 0||C.boolean(a.isPreferred))&&(a.edit===void 0||Ki.is(a.edit))&&(a.tags===void 0||C.typedArray(a.tags,qi.is))}o(r,"is"),i(r,"is"),e.is=r})(Il||(Il={})),(function(e){function t(n,a){let s={range:n};return C.defined(a)&&(s.data=a),s}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&Q.is(a.range)&&(C.undefined(a.command)||dr.is(a.command))}o(r,"is"),i(r,"is"),e.is=r})(Pl||(Pl={})),(function(e){function t(n,a){return{tabSize:n,insertSpaces:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&C.uinteger(a.tabSize)&&C.boolean(a.insertSpaces)}o(r,"is"),i(r,"is"),e.is=r})(Nl||(Nl={})),(function(e){function t(n,a,s){return{range:n,target:a,data:s}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&Q.is(a.range)&&(C.undefined(a.target)||C.string(a.target))}o(r,"is"),i(r,"is"),e.is=r})(kl||(kl={})),(function(e){function t(n,a){return{range:n,parent:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&Q.is(a.range)&&(a.parent===void 0||e.is(a.parent))}o(r,"is"),i(r,"is"),e.is=r})(Ol||(Ol={})),(function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator",e.label="label"})(Ml||(Ml={})),(function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"})(Dl||(Dl={})),(function(e){function t(r){let n=r;return C.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(t,"is"),i(t,"is"),e.is=t})(Ll||(Ll={})),(function(e){function t(n,a){return{range:n,text:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a!=null&&Q.is(a.range)&&C.string(a.text)}o(r,"is"),i(r,"is"),e.is=r})(xl||(xl={})),(function(e){function t(n,a,s){return{range:n,variableName:a,caseSensitiveLookup:s}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a!=null&&Q.is(a.range)&&C.boolean(a.caseSensitiveLookup)&&(C.string(a.variableName)||a.variableName===void 0)}o(r,"is"),i(r,"is"),e.is=r})(Gl||(Gl={})),(function(e){function t(n,a){return{range:n,expression:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return a!=null&&Q.is(a.range)&&(C.string(a.expression)||a.expression===void 0)}o(r,"is"),i(r,"is"),e.is=r})(Fl||(Fl={})),(function(e){function t(n,a){return{frameId:n,stoppedLocation:a}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.defined(a)&&Q.is(n.stoppedLocation)}o(r,"is"),i(r,"is"),e.is=r})(jl||(jl={})),(function(e){e.Type=1,e.Parameter=2;function t(r){return r===1||r===2}o(t,"is"),i(t,"is"),e.is=t})(Wi||(Wi={})),(function(e){function t(n){return{value:n}}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&(a.tooltip===void 0||C.string(a.tooltip)||qt.is(a.tooltip))&&(a.location===void 0||_a.is(a.location))&&(a.command===void 0||dr.is(a.command))}o(r,"is"),i(r,"is"),e.is=r})(Vi||(Vi={})),(function(e){function t(n,a,s){let l={position:n,label:a};return s!==void 0&&(l.kind=s),l}o(t,"create"),i(t,"create"),e.create=t;function r(n){let a=n;return C.objectLiteral(a)&&ae.is(a.position)&&(C.string(a.label)||C.typedArray(a.label,Vi.is))&&(a.kind===void 0||Wi.is(a.kind))&&a.textEdits===void 0||C.typedArray(a.textEdits,pt.is)&&(a.tooltip===void 0||C.string(a.tooltip)||qt.is(a.tooltip))&&(a.paddingLeft===void 0||C.boolean(a.paddingLeft))&&(a.paddingRight===void 0||C.boolean(a.paddingRight))}o(r,"is"),i(r,"is"),e.is=r})(zl||(zl={})),(function(e){function t(n){return{kind:"snippet",value:n}}o(t,"createSnippet"),i(t,"createSnippet"),e.createSnippet=t;function r(n){let a=n;return C.objectLiteral(a)&&a.kind==="snippet"&&C.string(a.value)}o(r,"isSnippet"),i(r,"isSnippet"),e.isSnippet=r})(Hi||(Hi={})),(function(e){function t(r,n,a,s){return{insertText:r,filterText:n,range:a,command:s}}o(t,"create"),i(t,"create"),e.create=t})(Ul||(Ul={})),(function(e){function t(r){return{items:r}}o(t,"create"),i(t,"create"),e.create=t})(Kl||(Kl={})),(function(e){e.Invoked=1,e.Automatic=2})(Bl||(Bl={})),(function(e){function t(r,n){return{range:r,text:n}}o(t,"create"),i(t,"create"),e.create=t})(ql||(ql={})),(function(e){function t(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(t,"create"),i(t,"create"),e.create=t})(Wl||(Wl={})),(function(e){function t(r){let n=r;return C.objectLiteral(n)&&ji.is(n.uri)&&C.string(n.name)}o(t,"is"),i(t,"is"),e.is=t})(Vl||(Vl={})),Id=[`
`,`\r
`,"\r"],(function(e){function t(s,l,u,c){return new Af(s,l,u,c)}o(t,"create"),i(t,"create"),e.create=t;function r(s){let l=s;return!!(C.defined(l)&&C.string(l.uri)&&(C.undefined(l.languageId)||C.string(l.languageId))&&C.uinteger(l.lineCount)&&C.func(l.getText)&&C.func(l.positionAt)&&C.func(l.offsetAt))}o(r,"is"),i(r,"is"),e.is=r;function n(s,l){let u=s.getText(),c=a(l,(d,y)=>{let g=d.range.start.line-y.range.start.line;return g===0?d.range.start.character-y.range.start.character:g}),f=u.length;for(let d=c.length-1;d>=0;d--){let y=c[d],g=s.offsetAt(y.range.start),m=s.offsetAt(y.range.end);if(m<=f)u=u.substring(0,g)+y.newText+u.substring(m,u.length);else throw new Error("Overlapping edit");f=g}return u}o(n,"applyEdits"),i(n,"applyEdits"),e.applyEdits=n;function a(s,l){if(s.length<=1)return s;let u=s.length/2|0,c=s.slice(0,u),f=s.slice(u);a(c,l),a(f,l);let d=0,y=0,g=0;for(;d<c.length&&y<f.length;)l(c[d],f[y])<=0?s[g++]=c[d++]:s[g++]=f[y++];for(;d<c.length;)s[g++]=c[d++];for(;y<f.length;)s[g++]=f[y++];return s}o(a,"mergeSort2"),i(a,"mergeSort")})(Hl||(Hl={})),Af=class{static{o(this,"FullTextDocument")}static{i(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let a=t.charAt(n);r=a==="\r"||a===`
`,a==="\r"&&n+1<t.length&&t.charAt(n+1)===`
`&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(n===0)return ae.create(0,e);for(;r<n;){let s=Math.floor((r+n)/2);t[s]>e?n=s:r=s+1}let a=r-1;return ae.create(a,e-t[a])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}},(function(e){let t=Object.prototype.toString;function r(m){return typeof m<"u"}o(r,"defined"),i(r,"defined"),e.defined=r;function n(m){return typeof m>"u"}o(n,"undefined2"),i(n,"undefined"),e.undefined=n;function a(m){return m===!0||m===!1}o(a,"boolean"),i(a,"boolean"),e.boolean=a;function s(m){return t.call(m)==="[object String]"}o(s,"string"),i(s,"string"),e.string=s;function l(m){return t.call(m)==="[object Number]"}o(l,"number"),i(l,"number"),e.number=l;function u(m,E,$){return t.call(m)==="[object Number]"&&E<=m&&m<=$}o(u,"numberRange"),i(u,"numberRange"),e.numberRange=u;function c(m){return t.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(c,"integer2"),i(c,"integer"),e.integer=c;function f(m){return t.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(f,"uinteger2"),i(f,"uinteger"),e.uinteger=f;function d(m){return t.call(m)==="[object Function]"}o(d,"func"),i(d,"func"),e.func=d;function y(m){return m!==null&&typeof m=="object"}o(y,"objectLiteral"),i(y,"objectLiteral"),e.objectLiteral=y;function g(m,E){return Array.isArray(m)&&m.every(E)}o(g,"typedArray"),i(g,"typedArray"),e.typedArray=g})(C||(C={}))}}),fe=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CM=e.ProtocolNotificationType=e.ProtocolNotificationType0=e.ProtocolRequestType=e.ProtocolRequestType0=e.RegistrationType=e.MessageDirection=void 0;var t=fi(),r;(function(f){f.clientToServer="clientToServer",f.serverToClient="serverToClient",f.both="both"})(r||(e.MessageDirection=r={}));var n=class{static{o(this,"RegistrationType")}static{i(this,"RegistrationType")}____;method;constructor(f){this.method=f}};e.RegistrationType=n;var a=class extends t.RequestType0{static{o(this,"ProtocolRequestType0")}static{i(this,"ProtocolRequestType0")}__;___;____;_pr;constructor(f){super(f)}};e.ProtocolRequestType0=a;var s=class extends t.RequestType{static{o(this,"ProtocolRequestType")}static{i(this,"ProtocolRequestType")}__;___;____;_pr;constructor(f){super(f,t.ParameterStructures.byName)}};e.ProtocolRequestType=s;var l=class extends t.NotificationType0{static{o(this,"ProtocolNotificationType0")}static{i(this,"ProtocolNotificationType0")}___;____;constructor(f){super(f)}};e.ProtocolNotificationType0=l;var u=class extends t.NotificationType{static{o(this,"ProtocolNotificationType")}static{i(this,"ProtocolNotificationType")}___;____;constructor(f){super(f,t.ParameterStructures.byName)}};e.ProtocolNotificationType=u;var c;(function(f){function d(y,g){return{client:y,server:g}}o(d,"create"),i(d,"create"),f.create=d})(c||(e.CM=c={}))}}),lc=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=r,e.number=n,e.error=a,e.func=s,e.array=l,e.stringArray=u,e.typedArray=c,e.objectLiteral=f;function t(d){return d===!0||d===!1}o(t,"boolean"),i(t,"boolean");function r(d){return typeof d=="string"||d instanceof String}o(r,"string"),i(r,"string");function n(d){return typeof d=="number"||d instanceof Number}o(n,"number"),i(n,"number");function a(d){return d instanceof Error}o(a,"error"),i(a,"error");function s(d){return typeof d=="function"}o(s,"func"),i(s,"func");function l(d){return Array.isArray(d)}o(l,"array"),i(l,"array");function u(d){return l(d)&&d.every(y=>r(y))}o(u,"stringArray"),i(u,"stringArray");function c(d,y){return Array.isArray(d)&&d.every(y)}o(c,"typedArray"),i(c,"typedArray");function f(d){return d!==null&&typeof d=="object"}o(f,"objectLiteral"),i(f,"objectLiteral")}}),G$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ImplementationRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/implementation",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.implementation","implementationProvider")})(r||(e.ImplementationRequest=r={}))}}),F$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeDefinitionRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/typeDefinition",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.typeDefinition","typeDefinitionProvider")})(r||(e.TypeDefinitionRequest=r={}))}}),j$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=void 0;var t=fe(),r;(function(a){a.method="workspace/workspaceFolders",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType0(a.method),a.capabilities=t.CM.create("workspace.workspaceFolders","workspace.workspaceFolders")})(r||(e.WorkspaceFoldersRequest=r={}));var n;(function(a){a.method="workspace/didChangeWorkspaceFolders",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolNotificationType(a.method),a.capabilities=t.CM.create(void 0,"workspace.workspaceFolders.changeNotifications")})(n||(e.DidChangeWorkspaceFoldersNotification=n={}))}}),z$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigurationRequest=void 0;var t=fe(),r;(function(n){n.method="workspace/configuration",n.messageDirection=t.MessageDirection.serverToClient,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("workspace.configuration",void 0)})(r||(e.ConfigurationRequest=r={}))}}),U$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorPresentationRequest=e.DocumentColorRequest=void 0;var t=fe(),r;(function(a){a.method="textDocument/documentColor",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolRequestType(a.method),a.capabilities=t.CM.create("textDocument.colorProvider","colorProvider")})(r||(e.DocumentColorRequest=r={}));var n;(function(a){a.method="textDocument/colorPresentation",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolRequestType(a.method),a.capabilities=t.CM.create("textDocument.colorProvider","colorProvider")})(n||(e.ColorPresentationRequest=n={}))}}),K$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=void 0;var t=fe(),r;(function(a){a.method="textDocument/foldingRange",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolRequestType(a.method),a.capabilities=t.CM.create("textDocument.foldingRange","foldingRangeProvider")})(r||(e.FoldingRangeRequest=r={}));var n;(function(a){a.method="workspace/foldingRange/refresh",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType0(a.method),a.capabilities=t.CM.create("workspace.foldingRange.refreshSupport",void 0)})(n||(e.FoldingRangeRefreshRequest=n={}))}}),B$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DeclarationRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/declaration",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.declaration","declarationProvider")})(r||(e.DeclarationRequest=r={}))}}),q$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionRangeRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/selectionRange",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.selectionRange","selectionRangeProvider")})(r||(e.SelectionRangeRequest=r={}))}}),W$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=void 0;var t=fi(),r=fe(),n;(function(l){l.type=new t.ProgressType;function u(c){return c===l.type}o(u,"is"),i(u,"is"),l.is=u})(n||(e.WorkDoneProgress=n={}));var a;(function(l){l.method="window/workDoneProgress/create",l.messageDirection=r.MessageDirection.serverToClient,l.type=new r.ProtocolRequestType(l.method),l.capabilities=r.CM.create("window.workDoneProgress",void 0)})(a||(e.WorkDoneProgressCreateRequest=a={}));var s;(function(l){l.method="window/workDoneProgress/cancel",l.messageDirection=r.MessageDirection.clientToServer,l.type=new r.ProtocolNotificationType(l.method)})(s||(e.WorkDoneProgressCancelNotification=s={}))}}),V$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.CallHierarchyPrepareRequest=void 0;var t=fe(),r;(function(s){s.method="textDocument/prepareCallHierarchy",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.callHierarchy","callHierarchyProvider")})(r||(e.CallHierarchyPrepareRequest=r={}));var n;(function(s){s.method="callHierarchy/incomingCalls",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.callHierarchy","callHierarchyProvider")})(n||(e.CallHierarchyIncomingCallsRequest=n={}));var a;(function(s){s.method="callHierarchy/outgoingCalls",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.callHierarchy","callHierarchyProvider")})(a||(e.CallHierarchyOutgoingCallsRequest=a={}))}}),H$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.SemanticTokensRegistrationType=e.TokenFormat=void 0;var t=fe(),r;(function(c){c.Relative="relative"})(r||(e.TokenFormat=r={}));var n;(function(c){c.method="textDocument/semanticTokens",c.type=new t.RegistrationType(c.method)})(n||(e.SemanticTokensRegistrationType=n={}));var a;(function(c){c.method="textDocument/semanticTokens/full",c.messageDirection=t.MessageDirection.clientToServer,c.type=new t.ProtocolRequestType(c.method),c.registrationMethod=n.method,c.capabilities=t.CM.create("textDocument.semanticTokens","semanticTokensProvider")})(a||(e.SemanticTokensRequest=a={}));var s;(function(c){c.method="textDocument/semanticTokens/full/delta",c.messageDirection=t.MessageDirection.clientToServer,c.type=new t.ProtocolRequestType(c.method),c.registrationMethod=n.method,c.capabilities=t.CM.create("textDocument.semanticTokens.requests.full.delta","semanticTokensProvider.full.delta")})(s||(e.SemanticTokensDeltaRequest=s={}));var l;(function(c){c.method="textDocument/semanticTokens/range",c.messageDirection=t.MessageDirection.clientToServer,c.type=new t.ProtocolRequestType(c.method),c.registrationMethod=n.method,c.capabilities=t.CM.create("textDocument.semanticTokens.requests.range","semanticTokensProvider.range")})(l||(e.SemanticTokensRangeRequest=l={}));var u;(function(c){c.method="workspace/semanticTokens/refresh",c.messageDirection=t.MessageDirection.serverToClient,c.type=new t.ProtocolRequestType0(c.method),c.capabilities=t.CM.create("workspace.semanticTokens.refreshSupport",void 0)})(u||(e.SemanticTokensRefreshRequest=u={}))}}),Y$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ShowDocumentRequest=void 0;var t=fe(),r;(function(n){n.method="window/showDocument",n.messageDirection=t.MessageDirection.serverToClient,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("window.showDocument.support",void 0)})(r||(e.ShowDocumentRequest=r={}))}}),X$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedEditingRangeRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/linkedEditingRange",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.linkedEditingRange","linkedEditingRangeProvider")})(r||(e.LinkedEditingRangeRequest=r={}))}}),J$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.DidRenameFilesNotification=e.WillRenameFilesRequest=e.DidCreateFilesNotification=e.WillCreateFilesRequest=e.FileOperationPatternKind=void 0;var t=fe(),r;(function(f){f.file="file",f.folder="folder"})(r||(e.FileOperationPatternKind=r={}));var n;(function(f){f.method="workspace/willCreateFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolRequestType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.willCreate","workspace.fileOperations.willCreate")})(n||(e.WillCreateFilesRequest=n={}));var a;(function(f){f.method="workspace/didCreateFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolNotificationType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.didCreate","workspace.fileOperations.didCreate")})(a||(e.DidCreateFilesNotification=a={}));var s;(function(f){f.method="workspace/willRenameFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolRequestType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.willRename","workspace.fileOperations.willRename")})(s||(e.WillRenameFilesRequest=s={}));var l;(function(f){f.method="workspace/didRenameFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolNotificationType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.didRename","workspace.fileOperations.didRename")})(l||(e.DidRenameFilesNotification=l={}));var u;(function(f){f.method="workspace/didDeleteFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolNotificationType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.didDelete","workspace.fileOperations.didDelete")})(u||(e.DidDeleteFilesNotification=u={}));var c;(function(f){f.method="workspace/willDeleteFiles",f.messageDirection=t.MessageDirection.clientToServer,f.type=new t.ProtocolRequestType(f.method),f.capabilities=t.CM.create("workspace.fileOperations.willDelete","workspace.fileOperations.willDelete")})(c||(e.WillDeleteFilesRequest=c={}))}}),Z$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=void 0;var t=fe(),r;(function(s){s.document="document",s.project="project",s.group="group",s.scheme="scheme",s.global="global"})(r||(e.UniquenessLevel=r={}));var n;(function(s){s.$import="import",s.$export="export",s.local="local"})(n||(e.MonikerKind=n={}));var a;(function(s){s.method="textDocument/moniker",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.moniker","monikerProvider")})(a||(e.MonikerRequest=a={}))}}),Q$=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHierarchySubtypesRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t=fe(),r;(function(s){s.method="textDocument/prepareTypeHierarchy",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.typeHierarchy","typeHierarchyProvider")})(r||(e.TypeHierarchyPrepareRequest=r={}));var n;(function(s){s.method="typeHierarchy/supertypes",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method)})(n||(e.TypeHierarchySupertypesRequest=n={}));var a;(function(s){s.method="typeHierarchy/subtypes",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method)})(a||(e.TypeHierarchySubtypesRequest=a={}))}}),eR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InlineValueRefreshRequest=e.InlineValueRequest=void 0;var t=fe(),r;(function(a){a.method="textDocument/inlineValue",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolRequestType(a.method),a.capabilities=t.CM.create("textDocument.inlineValue","inlineValueProvider")})(r||(e.InlineValueRequest=r={}));var n;(function(a){a.method="workspace/inlineValue/refresh",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType0(a.method),a.capabilities=t.CM.create("workspace.inlineValue.refreshSupport",void 0)})(n||(e.InlineValueRefreshRequest=n={}))}}),tR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=void 0;var t=fe(),r;(function(s){s.method="textDocument/inlayHint",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.inlayHint","inlayHintProvider")})(r||(e.InlayHintRequest=r={}));var n;(function(s){s.method="inlayHint/resolve",s.messageDirection=t.MessageDirection.clientToServer,s.type=new t.ProtocolRequestType(s.method),s.capabilities=t.CM.create("textDocument.inlayHint.resolveSupport","inlayHintProvider.resolveProvider")})(n||(e.InlayHintResolveRequest=n={}));var a;(function(s){s.method="workspace/inlayHint/refresh",s.messageDirection=t.MessageDirection.serverToClient,s.type=new t.ProtocolRequestType0(s.method),s.capabilities=t.CM.create("workspace.inlayHint.refreshSupport",void 0)})(a||(e.InlayHintRefreshRequest=a={}))}}),rR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(g,m,E,$){$===void 0&&($=E);var T=Object.getOwnPropertyDescriptor(m,E);(!T||("get"in T?!m.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:i(function(){return m[E]},"get")}),Object.defineProperty(g,$,T)}):(function(g,m,E,$){$===void 0&&($=E),g[$]=m[E]})),r=e&&e.__setModuleDefault||(Object.create?(function(g,m){Object.defineProperty(g,"default",{enumerable:!0,value:m})}):function(g,m){g.default=m}),n=e&&e.__importStar||(function(){var g=i(function(m){return g=Object.getOwnPropertyNames||function(E){var $=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&($[$.length]=T);return $},g(m)},"ownKeys");return function(m){if(m&&m.__esModule)return m;var E={};if(m!=null)for(var $=g(m),T=0;T<$.length;T++)$[T]!=="default"&&t(E,m,$[T]);return r(E,m),E}})();Object.defineProperty(e,"__esModule",{value:!0}),e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=void 0;var a=fi(),s=n(lc()),l=fe(),u;(function(g){function m(E){let $=E;return $&&s.boolean($.retriggerRequest)}o(m,"is"),i(m,"is"),g.is=m})(u||(e.DiagnosticServerCancellationData=u={}));var c;(function(g){g.Full="full",g.Unchanged="unchanged"})(c||(e.DocumentDiagnosticReportKind=c={}));var f;(function(g){g.method="textDocument/diagnostic",g.messageDirection=l.MessageDirection.clientToServer,g.type=new l.ProtocolRequestType(g.method),g.partialResult=new a.ProgressType,g.capabilities=l.CM.create("textDocument.diagnostic","diagnosticProvider")})(f||(e.DocumentDiagnosticRequest=f={}));var d;(function(g){g.method="workspace/diagnostic",g.messageDirection=l.MessageDirection.clientToServer,g.type=new l.ProtocolRequestType(g.method),g.partialResult=new a.ProgressType,g.capabilities=l.CM.create("workspace.diagnostics","diagnosticProvider.workspaceDiagnostics")})(d||(e.WorkspaceDiagnosticRequest=d={}));var y;(function(g){g.method="workspace/diagnostic/refresh",g.messageDirection=l.MessageDirection.serverToClient,g.type=new l.ProtocolRequestType0(g.method),g.capabilities=l.CM.create("workspace.diagnostics.refreshSupport",void 0)})(y||(e.DiagnosticRefreshRequest=y={}))}}),nR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(R,w,b,M){M===void 0&&(M=b);var L=Object.getOwnPropertyDescriptor(w,b);(!L||("get"in L?!w.__esModule:L.writable||L.configurable))&&(L={enumerable:!0,get:i(function(){return w[b]},"get")}),Object.defineProperty(R,M,L)}):(function(R,w,b,M){M===void 0&&(M=b),R[M]=w[b]})),r=e&&e.__setModuleDefault||(Object.create?(function(R,w){Object.defineProperty(R,"default",{enumerable:!0,value:w})}):function(R,w){R.default=w}),n=e&&e.__importStar||(function(){var R=i(function(w){return R=Object.getOwnPropertyNames||function(b){var M=[];for(var L in b)Object.prototype.hasOwnProperty.call(b,L)&&(M[M.length]=L);return M},R(w)},"ownKeys");return function(w){if(w&&w.__esModule)return w;var b={};if(w!=null)for(var M=R(w),L=0;L<M.length;L++)M[L]!=="default"&&t(b,w,M[L]);return r(b,w),b}})();Object.defineProperty(e,"__esModule",{value:!0}),e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=void 0;var a=(Fs(),sc(Gs)),s=n(lc()),l=fe(),u;(function(R){R.Markup=1,R.Code=2;function w(b){return b===1||b===2}o(w,"is"),i(w,"is"),R.is=w})(u||(e.NotebookCellKind=u={}));var c;(function(R){function w(L,G){let K={executionOrder:L};return(G===!0||G===!1)&&(K.success=G),K}o(w,"create"),i(w,"create"),R.create=w;function b(L){let G=L;return s.objectLiteral(G)&&a.uinteger.is(G.executionOrder)&&(G.success===void 0||s.boolean(G.success))}o(b,"is"),i(b,"is"),R.is=b;function M(L,G){return L===G?!0:L==null||G===null||G===void 0?!1:L.executionOrder===G.executionOrder&&L.success===G.success}o(M,"equals"),i(M,"equals"),R.equals=M})(c||(e.ExecutionSummary=c={}));var f;(function(R){function w(G,K){return{kind:G,document:K}}o(w,"create"),i(w,"create"),R.create=w;function b(G){let K=G;return s.objectLiteral(K)&&u.is(K.kind)&&a.DocumentUri.is(K.document)&&(K.metadata===void 0||s.objectLiteral(K.metadata))}o(b,"is"),i(b,"is"),R.is=b;function M(G,K){let Z=new Set;return G.document!==K.document&&Z.add("document"),G.kind!==K.kind&&Z.add("kind"),G.executionSummary!==K.executionSummary&&Z.add("executionSummary"),(G.metadata!==void 0||K.metadata!==void 0)&&!L(G.metadata,K.metadata)&&Z.add("metadata"),(G.executionSummary!==void 0||K.executionSummary!==void 0)&&!c.equals(G.executionSummary,K.executionSummary)&&Z.add("executionSummary"),Z}o(M,"diff"),i(M,"diff"),R.diff=M;function L(G,K){if(G===K)return!0;if(G==null||K===null||K===void 0||typeof G!=typeof K||typeof G!="object")return!1;let Z=Array.isArray(G),ne=Array.isArray(K);if(Z!==ne)return!1;if(Z&&ne){if(G.length!==K.length)return!1;for(let X=0;X<G.length;X++)if(!L(G[X],K[X]))return!1}if(s.objectLiteral(G)&&s.objectLiteral(K)){let X=Object.keys(G),D=Object.keys(K);if(X.length!==D.length||(X.sort(),D.sort(),!L(X,D)))return!1;for(let N=0;N<X.length;N++){let F=X[N];if(!L(G[F],K[F]))return!1}}return!0}o(L,"equalsMetadata"),i(L,"equalsMetadata")})(f||(e.NotebookCell=f={}));var d;(function(R){function w(M,L,G,K){return{uri:M,notebookType:L,version:G,cells:K}}o(w,"create"),i(w,"create"),R.create=w;function b(M){let L=M;return s.objectLiteral(L)&&s.string(L.uri)&&a.integer.is(L.version)&&s.typedArray(L.cells,f.is)}o(b,"is"),i(b,"is"),R.is=b})(d||(e.NotebookDocument=d={}));var y;(function(R){R.method="notebookDocument/sync",R.messageDirection=l.MessageDirection.clientToServer,R.type=new l.RegistrationType(R.method)})(y||(e.NotebookDocumentSyncRegistrationType=y={}));var g;(function(R){R.method="notebookDocument/didOpen",R.messageDirection=l.MessageDirection.clientToServer,R.type=new l.ProtocolNotificationType(R.method),R.registrationMethod=y.method})(g||(e.DidOpenNotebookDocumentNotification=g={}));var m;(function(R){function w(M){let L=M;return s.objectLiteral(L)&&a.uinteger.is(L.start)&&a.uinteger.is(L.deleteCount)&&(L.cells===void 0||s.typedArray(L.cells,f.is))}o(w,"is"),i(w,"is"),R.is=w;function b(M,L,G){let K={start:M,deleteCount:L};return G!==void 0&&(K.cells=G),K}o(b,"create"),i(b,"create"),R.create=b})(m||(e.NotebookCellArrayChange=m={}));var E;(function(R){R.method="notebookDocument/didChange",R.messageDirection=l.MessageDirection.clientToServer,R.type=new l.ProtocolNotificationType(R.method),R.registrationMethod=y.method})(E||(e.DidChangeNotebookDocumentNotification=E={}));var $;(function(R){R.method="notebookDocument/didSave",R.messageDirection=l.MessageDirection.clientToServer,R.type=new l.ProtocolNotificationType(R.method),R.registrationMethod=y.method})($||(e.DidSaveNotebookDocumentNotification=$={}));var T;(function(R){R.method="notebookDocument/didClose",R.messageDirection=l.MessageDirection.clientToServer,R.type=new l.ProtocolNotificationType(R.method),R.registrationMethod=y.method})(T||(e.DidCloseNotebookDocumentNotification=T={}))}}),aR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InlineCompletionRequest=void 0;var t=fe(),r;(function(n){n.method="textDocument/inlineCompletion",n.messageDirection=t.MessageDirection.clientToServer,n.type=new t.ProtocolRequestType(n.method),n.capabilities=t.CM.create("textDocument.inlineCompletion","inlineCompletionProvider")})(r||(e.InlineCompletionRequest=r={}))}}),iR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.textDocumentContent.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=void 0;var t=fe(),r;(function(a){a.method="workspace/textDocumentContent",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolRequestType(a.method),a.capabilities=t.CM.create("workspace.textDocumentContent","workspace.textDocumentContent")})(r||(e.TextDocumentContentRequest=r={}));var n;(function(a){a.method="workspace/textDocumentContent/refresh",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType(a.method)})(n||(e.TextDocumentContentRefreshRequest=n={}))}}),sR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(p,U,W,h){h===void 0&&(h=W);var I=Object.getOwnPropertyDescriptor(U,W);(!I||("get"in I?!U.__esModule:I.writable||I.configurable))&&(I={enumerable:!0,get:i(function(){return U[W]},"get")}),Object.defineProperty(p,h,I)}):(function(p,U,W,h){h===void 0&&(h=W),p[h]=U[W]})),r=e&&e.__setModuleDefault||(Object.create?(function(p,U){Object.defineProperty(p,"default",{enumerable:!0,value:U})}):function(p,U){p.default=U}),n=e&&e.__importStar||(function(){var p=i(function(U){return p=Object.getOwnPropertyNames||function(W){var h=[];for(var I in W)Object.prototype.hasOwnProperty.call(W,I)&&(h[h.length]=I);return h},p(U)},"ownKeys");return function(U){if(U&&U.__esModule)return U;var W={};if(U!=null)for(var h=p(U),I=0;I<h.length;I++)h[I]!=="default"&&t(W,U,h[I]);return r(W,U),W}})();Object.defineProperty(e,"__esModule",{value:!0}),e.CodeActionRequest=e.DocumentSymbolRequest=e.DocumentHighlightRequest=e.ReferencesRequest=e.DefinitionRequest=e.SignatureHelpRequest=e.SignatureHelpTriggerKind=e.HoverRequest=e.CompletionResolveRequest=e.CompletionRequest=e.CompletionTriggerKind=e.PublishDiagnosticsNotification=e.WatchKind=e.GlobPattern=e.RelativePattern=e.FileChangeType=e.DidChangeWatchedFilesNotification=e.WillSaveTextDocumentWaitUntilRequest=e.WillSaveTextDocumentNotification=e.TextDocumentSaveReason=e.DidSaveTextDocumentNotification=e.DidCloseTextDocumentNotification=e.DidChangeTextDocumentNotification=e.TextDocumentContentChangeEvent=e.DidOpenTextDocumentNotification=e.TextDocumentSyncKind=e.TelemetryEventNotification=e.LogMessageNotification=e.ShowMessageRequest=e.ShowMessageNotification=e.MessageType=e.DidChangeConfigurationNotification=e.ExitNotification=e.ShutdownRequest=e.InitializedNotification=e.InitializeErrorCodes=e.InitializeRequest=e.WorkDoneProgressOptions=e.TextDocumentRegistrationOptions=e.StaticRegistrationOptions=e.PositionEncodingKind=e.RegularExpressionEngineKind=e.FailureHandlingKind=e.ResourceOperationKind=e.UnregistrationRequest=e.RegistrationRequest=e.DocumentSelector=e.NotebookCellTextDocumentFilter=e.NotebookDocumentFilter=e.TextDocumentFilter=void 0,e.UniquenessLevel=e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.WillRenameFilesRequest=e.DidRenameFilesNotification=e.WillCreateFilesRequest=e.DidCreateFilesNotification=e.FileOperationPatternKind=e.LinkedEditingRangeRequest=e.ShowDocumentRequest=e.SemanticTokensRegistrationType=e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.TokenFormat=e.CallHierarchyPrepareRequest=e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=e.SelectionRangeRequest=e.DeclarationRequest=e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=e.ColorPresentationRequest=e.DocumentColorRequest=e.ConfigurationRequest=e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=e.TypeDefinitionRequest=e.ImplementationRequest=e.ApplyWorkspaceEditRequest=e.ExecuteCommandRequest=e.PrepareRenameRequest=e.RenameRequest=e.PrepareSupportDefaultBehavior=e.DocumentOnTypeFormattingRequest=e.DocumentRangesFormattingRequest=e.DocumentRangeFormattingRequest=e.DocumentFormattingRequest=e.DocumentLinkResolveRequest=e.DocumentLinkRequest=e.CodeLensRefreshRequest=e.CodeLensResolveRequest=e.CodeLensRequest=e.WorkspaceSymbolResolveRequest=e.WorkspaceSymbolRequest=e.CodeActionResolveRequest=void 0,e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=e.InlineCompletionRequest=e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=e.InlineValueRefreshRequest=e.InlineValueRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchySubtypesRequest=e.TypeHierarchyPrepareRequest=e.MonikerRequest=e.MonikerKind=void 0;var a=fe(),s=(Fs(),sc(Gs)),l=n(lc()),u=G$();Object.defineProperty(e,"ImplementationRequest",{enumerable:!0,get:i(function(){return u.ImplementationRequest},"get")});var c=F$();Object.defineProperty(e,"TypeDefinitionRequest",{enumerable:!0,get:i(function(){return c.TypeDefinitionRequest},"get")});var f=j$();Object.defineProperty(e,"WorkspaceFoldersRequest",{enumerable:!0,get:i(function(){return f.WorkspaceFoldersRequest},"get")}),Object.defineProperty(e,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:i(function(){return f.DidChangeWorkspaceFoldersNotification},"get")});var d=z$();Object.defineProperty(e,"ConfigurationRequest",{enumerable:!0,get:i(function(){return d.ConfigurationRequest},"get")});var y=U$();Object.defineProperty(e,"DocumentColorRequest",{enumerable:!0,get:i(function(){return y.DocumentColorRequest},"get")}),Object.defineProperty(e,"ColorPresentationRequest",{enumerable:!0,get:i(function(){return y.ColorPresentationRequest},"get")});var g=K$();Object.defineProperty(e,"FoldingRangeRequest",{enumerable:!0,get:i(function(){return g.FoldingRangeRequest},"get")}),Object.defineProperty(e,"FoldingRangeRefreshRequest",{enumerable:!0,get:i(function(){return g.FoldingRangeRefreshRequest},"get")});var m=B$();Object.defineProperty(e,"DeclarationRequest",{enumerable:!0,get:i(function(){return m.DeclarationRequest},"get")});var E=q$();Object.defineProperty(e,"SelectionRangeRequest",{enumerable:!0,get:i(function(){return E.SelectionRangeRequest},"get")});var $=W$();Object.defineProperty(e,"WorkDoneProgress",{enumerable:!0,get:i(function(){return $.WorkDoneProgress},"get")}),Object.defineProperty(e,"WorkDoneProgressCreateRequest",{enumerable:!0,get:i(function(){return $.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(e,"WorkDoneProgressCancelNotification",{enumerable:!0,get:i(function(){return $.WorkDoneProgressCancelNotification},"get")});var T=V$();Object.defineProperty(e,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:i(function(){return T.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:i(function(){return T.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyPrepareRequest",{enumerable:!0,get:i(function(){return T.CallHierarchyPrepareRequest},"get")});var R=H$();Object.defineProperty(e,"TokenFormat",{enumerable:!0,get:i(function(){return R.TokenFormat},"get")}),Object.defineProperty(e,"SemanticTokensRequest",{enumerable:!0,get:i(function(){return R.SemanticTokensRequest},"get")}),Object.defineProperty(e,"SemanticTokensDeltaRequest",{enumerable:!0,get:i(function(){return R.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(e,"SemanticTokensRangeRequest",{enumerable:!0,get:i(function(){return R.SemanticTokensRangeRequest},"get")}),Object.defineProperty(e,"SemanticTokensRefreshRequest",{enumerable:!0,get:i(function(){return R.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(e,"SemanticTokensRegistrationType",{enumerable:!0,get:i(function(){return R.SemanticTokensRegistrationType},"get")});var w=Y$();Object.defineProperty(e,"ShowDocumentRequest",{enumerable:!0,get:i(function(){return w.ShowDocumentRequest},"get")});var b=X$();Object.defineProperty(e,"LinkedEditingRangeRequest",{enumerable:!0,get:i(function(){return b.LinkedEditingRangeRequest},"get")});var M=J$();Object.defineProperty(e,"FileOperationPatternKind",{enumerable:!0,get:i(function(){return M.FileOperationPatternKind},"get")}),Object.defineProperty(e,"DidCreateFilesNotification",{enumerable:!0,get:i(function(){return M.DidCreateFilesNotification},"get")}),Object.defineProperty(e,"WillCreateFilesRequest",{enumerable:!0,get:i(function(){return M.WillCreateFilesRequest},"get")}),Object.defineProperty(e,"DidRenameFilesNotification",{enumerable:!0,get:i(function(){return M.DidRenameFilesNotification},"get")}),Object.defineProperty(e,"WillRenameFilesRequest",{enumerable:!0,get:i(function(){return M.WillRenameFilesRequest},"get")}),Object.defineProperty(e,"DidDeleteFilesNotification",{enumerable:!0,get:i(function(){return M.DidDeleteFilesNotification},"get")}),Object.defineProperty(e,"WillDeleteFilesRequest",{enumerable:!0,get:i(function(){return M.WillDeleteFilesRequest},"get")});var L=Z$();Object.defineProperty(e,"UniquenessLevel",{enumerable:!0,get:i(function(){return L.UniquenessLevel},"get")}),Object.defineProperty(e,"MonikerKind",{enumerable:!0,get:i(function(){return L.MonikerKind},"get")}),Object.defineProperty(e,"MonikerRequest",{enumerable:!0,get:i(function(){return L.MonikerRequest},"get")});var G=Q$();Object.defineProperty(e,"TypeHierarchyPrepareRequest",{enumerable:!0,get:i(function(){return G.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(e,"TypeHierarchySubtypesRequest",{enumerable:!0,get:i(function(){return G.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(e,"TypeHierarchySupertypesRequest",{enumerable:!0,get:i(function(){return G.TypeHierarchySupertypesRequest},"get")});var K=eR();Object.defineProperty(e,"InlineValueRequest",{enumerable:!0,get:i(function(){return K.InlineValueRequest},"get")}),Object.defineProperty(e,"InlineValueRefreshRequest",{enumerable:!0,get:i(function(){return K.InlineValueRefreshRequest},"get")});var Z=tR();Object.defineProperty(e,"InlayHintRequest",{enumerable:!0,get:i(function(){return Z.InlayHintRequest},"get")}),Object.defineProperty(e,"InlayHintResolveRequest",{enumerable:!0,get:i(function(){return Z.InlayHintResolveRequest},"get")}),Object.defineProperty(e,"InlayHintRefreshRequest",{enumerable:!0,get:i(function(){return Z.InlayHintRefreshRequest},"get")});var ne=rR();Object.defineProperty(e,"DiagnosticServerCancellationData",{enumerable:!0,get:i(function(){return ne.DiagnosticServerCancellationData},"get")}),Object.defineProperty(e,"DocumentDiagnosticReportKind",{enumerable:!0,get:i(function(){return ne.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(e,"DocumentDiagnosticRequest",{enumerable:!0,get:i(function(){return ne.DocumentDiagnosticRequest},"get")}),Object.defineProperty(e,"WorkspaceDiagnosticRequest",{enumerable:!0,get:i(function(){return ne.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(e,"DiagnosticRefreshRequest",{enumerable:!0,get:i(function(){return ne.DiagnosticRefreshRequest},"get")});var X=nR();Object.defineProperty(e,"NotebookCellKind",{enumerable:!0,get:i(function(){return X.NotebookCellKind},"get")}),Object.defineProperty(e,"ExecutionSummary",{enumerable:!0,get:i(function(){return X.ExecutionSummary},"get")}),Object.defineProperty(e,"NotebookCell",{enumerable:!0,get:i(function(){return X.NotebookCell},"get")}),Object.defineProperty(e,"NotebookDocument",{enumerable:!0,get:i(function(){return X.NotebookDocument},"get")}),Object.defineProperty(e,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:i(function(){return X.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(e,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:i(function(){return X.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(e,"NotebookCellArrayChange",{enumerable:!0,get:i(function(){return X.NotebookCellArrayChange},"get")}),Object.defineProperty(e,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:i(function(){return X.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:i(function(){return X.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:i(function(){return X.DidCloseNotebookDocumentNotification},"get")});var D=aR();Object.defineProperty(e,"InlineCompletionRequest",{enumerable:!0,get:i(function(){return D.InlineCompletionRequest},"get")});var N=iR();Object.defineProperty(e,"TextDocumentContentRequest",{enumerable:!0,get:i(function(){return N.TextDocumentContentRequest},"get")}),Object.defineProperty(e,"TextDocumentContentRefreshRequest",{enumerable:!0,get:i(function(){return N.TextDocumentContentRefreshRequest},"get")});var F;(function(p){function U(W){let h=W;return l.string(h)||l.string(h.language)||l.string(h.scheme)||tr.is(h.pattern)}o(U,"is"),i(U,"is"),p.is=U})(F||(e.TextDocumentFilter=F={}));var j;(function(p){function U(W){let h=W;return l.objectLiteral(h)&&(l.string(h.notebookType)||l.string(h.scheme)||l.string(h.pattern))}o(U,"is"),i(U,"is"),p.is=U})(j||(e.NotebookDocumentFilter=j={}));var P;(function(p){function U(W){let h=W;return l.objectLiteral(h)&&(l.string(h.notebook)||j.is(h.notebook))&&(h.language===void 0||l.string(h.language))}o(U,"is"),i(U,"is"),p.is=U})(P||(e.NotebookCellTextDocumentFilter=P={}));var A;(function(p){function U(W){if(!Array.isArray(W))return!1;for(let h of W)if(!l.string(h)&&!F.is(h)&&!P.is(h))return!1;return!0}o(U,"is"),i(U,"is"),p.is=U})(A||(e.DocumentSelector=A={}));var v;(function(p){p.method="client/registerCapability",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolRequestType(p.method)})(v||(e.RegistrationRequest=v={}));var _;(function(p){p.method="client/unregisterCapability",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolRequestType(p.method)})(_||(e.UnregistrationRequest=_={}));var k;(function(p){p.Create="create",p.Rename="rename",p.Delete="delete"})(k||(e.ResourceOperationKind=k={}));var S;(function(p){p.Abort="abort",p.Transactional="transactional",p.TextOnlyTransactional="textOnlyTransactional",p.Undo="undo"})(S||(e.FailureHandlingKind=S={}));var O;(function(p){p.ES2020="ES2020"})(O||(e.RegularExpressionEngineKind=O={}));var q;(function(p){p.UTF8="utf-8",p.UTF16="utf-16",p.UTF32="utf-32"})(q||(e.PositionEncodingKind=q={}));var H;(function(p){function U(W){let h=W;return h&&l.string(h.id)&&h.id.length>0}o(U,"hasId"),i(U,"hasId"),p.hasId=U})(H||(e.StaticRegistrationOptions=H={}));var V;(function(p){function U(W){let h=W;return h&&(h.documentSelector===null||A.is(h.documentSelector))}o(U,"is"),i(U,"is"),p.is=U})(V||(e.TextDocumentRegistrationOptions=V={}));var Ee;(function(p){function U(h){let I=h;return l.objectLiteral(I)&&(I.workDoneProgress===void 0||l.boolean(I.workDoneProgress))}o(U,"is"),i(U,"is"),p.is=U;function W(h){let I=h;return I&&l.boolean(I.workDoneProgress)}o(W,"hasWorkDoneProgress"),i(W,"hasWorkDoneProgress"),p.hasWorkDoneProgress=W})(Ee||(e.WorkDoneProgressOptions=Ee={}));var te;(function(p){p.method="initialize",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method)})(te||(e.InitializeRequest=te={}));var pe;(function(p){p.unknownProtocolVersion=1})(pe||(e.InitializeErrorCodes=pe={}));var oe;(function(p){p.method="initialized",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method)})(oe||(e.InitializedNotification=oe={}));var be;(function(p){p.method="shutdown",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType0(p.method)})(be||(e.ShutdownRequest=be={}));var ze;(function(p){p.method="exit",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType0(p.method)})(ze||(e.ExitNotification=ze={}));var Ve;(function(p){p.method="workspace/didChangeConfiguration",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("workspace.didChangeConfiguration",void 0)})(Ve||(e.DidChangeConfigurationNotification=Ve={}));var zt;(function(p){p.Error=1,p.Warning=2,p.Info=3,p.Log=4,p.Debug=5})(zt||(e.MessageType=zt={}));var xr;(function(p){p.method="window/showMessage",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("window.showMessage",void 0)})(xr||(e.ShowMessageNotification=xr={}));var ot;(function(p){p.method="window/showMessageRequest",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("window.showMessage",void 0)})(ot||(e.ShowMessageRequest=ot={}));var Ze;(function(p){p.method="window/logMessage",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolNotificationType(p.method)})(Ze||(e.LogMessageNotification=Ze={}));var er;(function(p){p.method="telemetry/event",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolNotificationType(p.method)})(er||(e.TelemetryEventNotification=er={}));var Ut;(function(p){p.None=0,p.Full=1,p.Incremental=2})(Ut||(e.TextDocumentSyncKind=Ut={}));var ie;(function(p){p.method="textDocument/didOpen",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.synchronization","textDocumentSync.openClose")})(ie||(e.DidOpenTextDocumentNotification=ie={}));var lt;(function(p){function U(h){let I=h;return I!=null&&typeof I.text=="string"&&I.range!==void 0&&(I.rangeLength===void 0||typeof I.rangeLength=="number")}o(U,"isIncremental"),i(U,"isIncremental"),p.isIncremental=U;function W(h){let I=h;return I!=null&&typeof I.text=="string"&&I.range===void 0&&I.rangeLength===void 0}o(W,"isFull"),i(W,"isFull"),p.isFull=W})(lt||(e.TextDocumentContentChangeEvent=lt={}));var ye;(function(p){p.method="textDocument/didChange",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.synchronization","textDocumentSync")})(ye||(e.DidChangeTextDocumentNotification=ye={}));var Qe;(function(p){p.method="textDocument/didClose",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.synchronization","textDocumentSync.openClose")})(Qe||(e.DidCloseTextDocumentNotification=Qe={}));var Gr;(function(p){p.method="textDocument/didSave",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.synchronization.didSave","textDocumentSync.save")})(Gr||(e.DidSaveTextDocumentNotification=Gr={}));var Wn;(function(p){p.Manual=1,p.AfterDelay=2,p.FocusOut=3})(Wn||(e.TextDocumentSaveReason=Wn={}));var Vn;(function(p){p.method="textDocument/willSave",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.synchronization.willSave","textDocumentSync.willSave")})(Vn||(e.WillSaveTextDocumentNotification=Vn={}));var Hn;(function(p){p.method="textDocument/willSaveWaitUntil",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.synchronization.willSaveWaitUntil","textDocumentSync.willSaveWaitUntil")})(Hn||(e.WillSaveTextDocumentWaitUntilRequest=Hn={}));var Yn;(function(p){p.method="workspace/didChangeWatchedFiles",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("workspace.didChangeWatchedFiles",void 0)})(Yn||(e.DidChangeWatchedFilesNotification=Yn={}));var et;(function(p){p.Created=1,p.Changed=2,p.Deleted=3})(et||(e.FileChangeType=et={}));var Fr;(function(p){function U(W){let h=W;return l.objectLiteral(h)&&(s.URI.is(h.baseUri)||s.WorkspaceFolder.is(h.baseUri))&&l.string(h.pattern)}o(U,"is"),i(U,"is"),p.is=U})(Fr||(e.RelativePattern=Fr={}));var tr;(function(p){function U(W){let h=W;return l.string(h)||Fr.is(h)}o(U,"is"),i(U,"is"),p.is=U})(tr||(e.GlobPattern=tr={}));var jr;(function(p){p.Create=1,p.Change=2,p.Delete=4})(jr||(e.WatchKind=jr={}));var ut;(function(p){p.method="textDocument/publishDiagnostics",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolNotificationType(p.method),p.capabilities=a.CM.create("textDocument.publishDiagnostics",void 0)})(ut||(e.PublishDiagnosticsNotification=ut={}));var zr;(function(p){p.Invoked=1,p.TriggerCharacter=2,p.TriggerForIncompleteCompletions=3})(zr||(e.CompletionTriggerKind=zr={}));var Xn;(function(p){p.method="textDocument/completion",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.completion","completionProvider")})(Xn||(e.CompletionRequest=Xn={}));var Jn;(function(p){p.method="completionItem/resolve",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.completion.completionItem.resolveSupport","completionProvider.resolveProvider")})(Jn||(e.CompletionResolveRequest=Jn={}));var Ur;(function(p){p.method="textDocument/hover",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.hover","hoverProvider")})(Ur||(e.HoverRequest=Ur={}));var Zn;(function(p){p.Invoked=1,p.TriggerCharacter=2,p.ContentChange=3})(Zn||(e.SignatureHelpTriggerKind=Zn={}));var Qn;(function(p){p.method="textDocument/signatureHelp",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.signatureHelp","signatureHelpProvider")})(Qn||(e.SignatureHelpRequest=Qn={}));var ea;(function(p){p.method="textDocument/definition",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.definition","definitionProvider")})(ea||(e.DefinitionRequest=ea={}));var rr;(function(p){p.method="textDocument/references",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.references","referencesProvider")})(rr||(e.ReferencesRequest=rr={}));var Kr;(function(p){p.method="textDocument/documentHighlight",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.documentHighlight","documentHighlightProvider")})(Kr||(e.DocumentHighlightRequest=Kr={}));var Ti;(function(p){p.method="textDocument/documentSymbol",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.documentSymbol","documentSymbolProvider")})(Ti||(e.DocumentSymbolRequest=Ti={}));var ta;(function(p){p.method="textDocument/codeAction",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.codeAction","codeActionProvider")})(ta||(e.CodeActionRequest=ta={}));var Br;(function(p){p.method="codeAction/resolve",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.codeAction.resolveSupport","codeActionProvider.resolveProvider")})(Br||(e.CodeActionResolveRequest=Br={}));var ra;(function(p){p.method="workspace/symbol",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("workspace.symbol","workspaceSymbolProvider")})(ra||(e.WorkspaceSymbolRequest=ra={}));var na;(function(p){p.method="workspaceSymbol/resolve",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("workspace.symbol.resolveSupport","workspaceSymbolProvider.resolveProvider")})(na||(e.WorkspaceSymbolResolveRequest=na={}));var He;(function(p){p.method="textDocument/codeLens",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.codeLens","codeLensProvider")})(He||(e.CodeLensRequest=He={}));var aa;(function(p){p.method="codeLens/resolve",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.codeLens.resolveSupport","codeLensProvider.resolveProvider")})(aa||(e.CodeLensResolveRequest=aa={}));var ia;(function(p){p.method="workspace/codeLens/refresh",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolRequestType0(p.method),p.capabilities=a.CM.create("workspace.codeLens",void 0)})(ia||(e.CodeLensRefreshRequest=ia={}));var nr;(function(p){p.method="textDocument/documentLink",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.documentLink","documentLinkProvider")})(nr||(e.DocumentLinkRequest=nr={}));var sa;(function(p){p.method="documentLink/resolve",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.documentLink","documentLinkProvider.resolveProvider")})(sa||(e.DocumentLinkResolveRequest=sa={}));var ar;(function(p){p.method="textDocument/formatting",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.formatting","documentFormattingProvider")})(ar||(e.DocumentFormattingRequest=ar={}));var oa;(function(p){p.method="textDocument/rangeFormatting",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.rangeFormatting","documentRangeFormattingProvider")})(oa||(e.DocumentRangeFormattingRequest=oa={}));var ct;(function(p){p.method="textDocument/rangesFormatting",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.rangeFormatting.rangesSupport","documentRangeFormattingProvider.rangesSupport")})(ct||(e.DocumentRangesFormattingRequest=ct={}));var At;(function(p){p.method="textDocument/onTypeFormatting",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.onTypeFormatting","documentOnTypeFormattingProvider")})(At||(e.DocumentOnTypeFormattingRequest=At={}));var la;(function(p){p.Identifier=1})(la||(e.PrepareSupportDefaultBehavior=la={}));var ua;(function(p){p.method="textDocument/rename",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.rename","renameProvider")})(ua||(e.RenameRequest=ua={}));var Et;(function(p){p.method="textDocument/prepareRename",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("textDocument.rename.prepareSupport","renameProvider.prepareProvider")})(Et||(e.PrepareRenameRequest=Et={}));var qr;(function(p){p.method="workspace/executeCommand",p.messageDirection=a.MessageDirection.clientToServer,p.type=new a.ProtocolRequestType(p.method),p.capabilities=a.CM.create("workspace.executeCommand","executeCommandProvider")})(qr||(e.ExecuteCommandRequest=qr={}));var Wr;(function(p){p.method="workspace/applyEdit",p.messageDirection=a.MessageDirection.serverToClient,p.type=new a.ProtocolRequestType("workspace/applyEdit"),p.capabilities=a.CM.create("workspace.applyEdit",void 0)})(Wr||(e.ApplyWorkspaceEditRequest=Wr={}))}}),oR=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=r;var t=fi();function r(n,a,s,l){return t.ConnectionStrategy.is(l)&&(l={connectionStrategy:l}),(0,t.createMessageConnection)(n,a,s,l)}o(r,"createProtocolConnection"),i(r,"createProtocolConnection")}}),uc=Y({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/api.js"(e){"use strict";var t=e&&e.__createBinding||(Object.create?(function(s,l,u,c){c===void 0&&(c=u);var f=Object.getOwnPropertyDescriptor(l,u);(!f||("get"in f?!l.__esModule:f.writable||f.configurable))&&(f={enumerable:!0,get:i(function(){return l[u]},"get")}),Object.defineProperty(s,c,f)}):(function(s,l,u,c){c===void 0&&(c=u),s[c]=l[u]})),r=e&&e.__exportStar||function(s,l){for(var u in s)u!=="default"&&!Object.prototype.hasOwnProperty.call(l,u)&&t(l,s,u)};Object.defineProperty(e,"__esModule",{value:!0}),e.LSPErrorCodes=e.createProtocolConnection=void 0,r(fi(),e),r((Fs(),sc(Gs)),e),r(fe(),e),r(sR(),e);var n=oR();Object.defineProperty(e,"createProtocolConnection",{enumerable:!0,get:i(function(){return n.createProtocolConnection},"get")});var a;(function(s){s.lspReservedErrorRangeStart=-32899,s.RequestFailed=-32803,s.ServerCancelled=-32802,s.ContentModified=-32801,s.RequestCancelled=-32800,s.lspReservedErrorRangeEnd=-32800})(a||(e.LSPErrorCodes=a={}))}});function we(e){return typeof e=="object"&&e!==null&&typeof e.$type=="string"}o(we,"isAstNode");i(we,"isAstNode");function Xe(e){return typeof e=="object"&&e!==null&&typeof e.$refText=="string"&&"ref"in e}o(Xe,"isReference");i(Xe,"isReference");function Dt(e){return typeof e=="object"&&e!==null&&typeof e.$refText=="string"&&"items"in e}o(Dt,"isMultiReference");i(Dt,"isMultiReference");function Pd(e){return typeof e=="object"&&e!==null&&typeof e.name=="string"&&typeof e.type=="string"&&typeof e.path=="string"}o(Pd,"isAstNodeDescription");i(Pd,"isAstNodeDescription");function Cn(e){return typeof e=="object"&&e!==null&&typeof e.info=="object"&&typeof e.message=="string"}o(Cn,"isLinkingError");i(Cn,"isLinkingError");var Nd=class{static{o(this,"AbstractAstReflection")}static{i(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let t=this.types[e.container.$type];if(!t)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);let r=t.properties[e.property]?.referenceType;if(!r)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){let t=this.types[e];return t||{name:e,properties:{},superTypes:[]}}isInstance(e,t){return we(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});let n=r[t];if(n!==void 0)return n;{let a=this.types[e],s=a?a.superTypes.some(l=>this.isSubtype(l,t)):!1;return r[t]=s,s}}getAllSubTypes(e){let t=this.allSubtypes[e];if(t)return t;{let r=this.getAllTypes(),n=[];for(let a of r)this.isSubtype(a,e)&&n.push(a);return this.allSubtypes[e]=n,n}}isComplete(e){let t=this.getTypeMetaData(e.$type);for(let r of Object.keys(t.properties)){let n=t.properties[r];if(n.optional)continue;let a=e[n.name];if(a==null)return!1}return!0}};function In(e){return typeof e=="object"&&e!==null&&Array.isArray(e.content)}o(In,"isCompositeCstNode");i(In,"isCompositeCstNode");function cc(e){return typeof e=="object"&&e!==null&&typeof e.tokenType=="object"}o(cc,"isLeafCstNode");i(cc,"isLeafCstNode");function fc(e){return In(e)&&typeof e.fullText=="string"}o(fc,"isRootCstNode");i(fc,"isRootCstNode");var Vt=class It{static{o(this,"_StreamImpl")}static{i(this,"StreamImpl")}constructor(t,r){this.startFn=t,this.nextFn=r}iterator(){let t={state:this.startFn(),next:i(()=>this.nextFn(t.state),"next"),[Symbol.iterator]:()=>t};return t}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)r++,n=t.next();return r}toArray(){let t=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&t.push(n.value);while(!n.done);return t}toSet(){return new Set(this)}toMap(t,r){let n=this.map(a=>[t?t(a):a,r?r(a):a]);return new Map(n)}toString(){return this.join()}concat(t){return new It(()=>({first:this.startFn(),firstDone:!1,iterator:t[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 Ke})}join(t=","){let r=this.iterator(),n="",a,s=!1;do a=r.next(),a.done||(s&&(n+=t),n+=kd(a.value)),s=!0;while(!a.done);return n}indexOf(t,r=0){let n=this.iterator(),a=0,s=n.next();for(;!s.done;){if(a>=r&&s.value===t)return a;s=n.next(),a++}return-1}every(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(!t(n.value))return!1;n=r.next()}return!0}some(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return!0;n=r.next()}return!1}forEach(t){let r=this.iterator(),n=0,a=r.next();for(;!a.done;)t(a.value,n),a=r.next(),n++}map(t){return new It(this.startFn,r=>{let{done:n,value:a}=this.nextFn(r);return n?Ke:{done:!1,value:t(a)}})}filter(t){return new It(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&t(n.value))return n;while(!n.done);return Ke})}nonNullable(){return this.filter(t=>t!=null)}reduce(t,r){let n=this.iterator(),a=r,s=n.next();for(;!s.done;)a===void 0?a=s.value:a=t(a,s.value),s=n.next();return a}reduceRight(t,r){return this.recursiveReduce(this.iterator(),t,r)}recursiveReduce(t,r,n){let a=t.next();if(a.done)return n;let s=this.recursiveReduce(t,r,n);return s===void 0?a.value:r(s,a.value)}find(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return n.value;n=r.next()}}findIndex(t){let r=this.iterator(),n=0,a=r.next();for(;!a.done;){if(t(a.value))return n;a=r.next(),n++}return-1}includes(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===t)return!0;n=r.next()}return!1}flatMap(t){return new It(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let s=r.iterator.next();if(s.done)r.iterator=void 0;else return s}let{done:n,value:a}=this.nextFn(r.this);if(!n){let s=t(a);if(Ha(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(r.iterator);return Ke})}flat(t){if(t===void 0&&(t=1),t<=0)return this;let r=t>1?this.flat(t-1):this;return new It(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let l=n.iterator.next();if(l.done)n.iterator=void 0;else return l}let{done:a,value:s}=r.nextFn(n.this);if(!a)if(Ha(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(n.iterator);return Ke})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(t=1){return new It(()=>{let r=this.startFn();for(let n=0;n<t;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(t){return new It(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>t?Ke:this.nextFn(r.state)))}distinct(t){return new It(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let a=t?t(n.value):n.value;if(!r.set.has(a))return r.set.add(a),n}while(!n.done);return Ke})}exclude(t,r){let n=new Set;for(let a of t){let s=r?r(a):a;n.add(s)}return this.filter(a=>{let s=r?r(a):a;return!n.has(s)})}};function kd(e){return typeof e=="string"?e:typeof e>"u"?"undefined":typeof e.toString=="function"?e.toString():Object.prototype.toString.call(e)}o(kd,"toString");i(kd,"toString");function Ha(e){return!!e&&typeof e[Symbol.iterator]=="function"}o(Ha,"isIterable");i(Ha,"isIterable");var Od=new Vt(()=>{},()=>Ke),Ke=Object.freeze({done:!0,value:void 0});function ce(...e){if(e.length===1){let t=e[0];if(t instanceof Vt)return t;if(Ha(t))return new Vt(()=>t[Symbol.iterator](),r=>r.next());if(typeof t.length=="number")return new Vt(()=>({index:0}),r=>r.index<t.length?{done:!1,value:t[r.index++]}:Ke)}return e.length>1?new Vt(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let r=t.iterator.next();if(!r.done)return r;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){let r=e[t.collIndex++];Ha(r)?t.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length);return Ke}):Od}o(ce,"stream");i(ce,"stream");var vs=class extends Vt{static{o(this,"TreeStreamImpl")}static{i(this,"TreeStreamImpl")}constructor(e,t,r){super(()=>({iterators:r?.includeRoot?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),n=>{for(n.pruned&&(n.iterators.pop(),n.pruned=!1);n.iterators.length>0;){let s=n.iterators[n.iterators.length-1].next();if(s.done)n.iterators.pop();else return n.iterators.push(t(s.value)[Symbol.iterator]()),s}return Ke})}iterator(){let e={state:this.startFn(),next:i(()=>this.nextFn(e.state),"next"),prune:i(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}},Yl;(function(e){function t(s){return s.reduce((l,u)=>l+u,0)}o(t,"sum"),i(t,"sum"),e.sum=t;function r(s){return s.reduce((l,u)=>l*u,0)}o(r,"product"),i(r,"product"),e.product=r;function n(s){return s.reduce((l,u)=>Math.min(l,u))}o(n,"min2"),i(n,"min"),e.min=n;function a(s){return s.reduce((l,u)=>Math.max(l,u))}o(a,"max"),i(a,"max"),e.max=a})(Yl||(Yl={}));function Ts(e,t={}){for(let[r,n]of Object.entries(e))r.startsWith("$")||(Array.isArray(n)?n.forEach((a,s)=>{we(a)&&(a.$container=e,a.$containerProperty=r,a.$containerIndex=s,t.deep&&Ts(a,t))}):we(n)&&(n.$container=e,n.$containerProperty=r,t.deep&&Ts(n,t)))}o(Ts,"linkContentToContainer");i(Ts,"linkContentToContainer");function pi(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}o(pi,"getContainerOfType");i(pi,"getContainerOfType");function ht(e){let r=Ka(e).$document;if(!r)throw new Error("AST node has no document.");return r}o(ht,"getDocument");i(ht,"getDocument");function Ka(e){for(;e.$container;)e=e.$container;return e}o(Ka,"findRootNode");i(Ka,"findRootNode");function Xl(e){return Xe(e)?e.ref?[e.ref]:[]:Dt(e)?e.items.map(t=>t.ref):[]}o(Xl,"getReferenceNodes");i(Xl,"getReferenceNodes");function js(e,t){if(!e)throw new Error("Node must be an AstNode.");let r=t?.range;return new Vt(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){let a=n.keys[n.keyIndex];if(!a.startsWith("$")){let s=e[a];if(we(s)){if(n.keyIndex++,$s(s,r))return{done:!1,value:s}}else if(Array.isArray(s)){for(;n.arrayIndex<s.length;){let l=n.arrayIndex++,u=s[l];if(we(u)&&$s(u,r))return{done:!1,value:u}}n.arrayIndex=0}}n.keyIndex++}return Ke})}o(js,"streamContents");i(js,"streamContents");function Mn(e,t){if(!e)throw new Error("Root node must be an AstNode.");return new vs(e,r=>js(r,t))}o(Mn,"streamAllContents");i(Mn,"streamAllContents");function yt(e,t){if(e){if(t?.range&&!$s(e,t.range))return new vs(e,()=>[])}else throw new Error("Root node must be an AstNode.");return new vs(e,r=>js(r,t),{includeRoot:!0})}o(yt,"streamAst");i(yt,"streamAst");function $s(e,t){if(!t)return!0;let r=e.$cstNode?.range;return r?nm(r,t):!1}o($s,"isAstNodeInRange");i($s,"isAstNodeInRange");function Ya(e){return new Vt(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){let r=t.keys[t.keyIndex];if(!r.startsWith("$")){let n=e[r];if(Xe(n)||Dt(n))return t.keyIndex++,{done:!1,value:{reference:n,container:e,property:r}};if(Array.isArray(n)){for(;t.arrayIndex<n.length;){let a=t.arrayIndex++,s=n[a];if(Xe(s)||Dt(s))return{done:!1,value:{reference:s,container:e,property:r,index:a}}}t.arrayIndex=0}}t.keyIndex++}return Ke})}o(Ya,"streamReferences");i(Ya,"streamReferences");function Md(e,t){let r=e.getTypeMetaData(t.$type),n=t;for(let a of Object.values(r.properties))a.defaultValue!==void 0&&n[a.name]===void 0&&(n[a.name]=pc(a.defaultValue))}o(Md,"assignMandatoryProperties");i(Md,"assignMandatoryProperties");function pc(e){return Array.isArray(e)?[...e.map(pc)]:e}o(pc,"copyDefaultValue");i(pc,"copyDefaultValue");var Ue={$type:"AbstractElement",cardinality:"cardinality"};function Dd(e){return re.isInstance(e,Ue.$type)}o(Dd,"isAbstractElement");i(Dd,"isAbstractElement");var Yi={$type:"AbstractParserRule"};function Dn(e){return re.isInstance(e,Yi.$type)}o(Dn,"isAbstractParserRule");i(Dn,"isAbstractParserRule");var $i={$type:"AbstractRule"},rt={$type:"AbstractType"},mr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function di(e){return re.isInstance(e,mr.$type)}o(di,"isAction");i(di,"isAction");var Xi={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function dc(e){return re.isInstance(e,Xi.$type)}o(dc,"isAlternatives");i(dc,"isAlternatives");var Ef={$type:"ArrayLiteral",elements:"elements"},Cf={$type:"ArrayType",elementType:"elementType"},hr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Ht(e){return re.isInstance(e,hr.$type)}o(Ht,"isAssignment");i(Ht,"isAssignment");var Jl={$type:"BooleanLiteral",true:"true"};function Ld(e){return re.isInstance(e,Jl.$type)}o(Ld,"isBooleanLiteral");i(Ld,"isBooleanLiteral");var yr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function xd(e){return re.isInstance(e,yr.$type)}o(xd,"isCharacterRange");i(xd,"isCharacterRange");var Vr={$type:"Condition"},Ji={$type:"Conjunction",left:"left",right:"right"};function Gd(e){return re.isInstance(e,Ji.$type)}o(Gd,"isConjunction");i(Gd,"isConjunction");var gr={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function mi(e){return re.isInstance(e,gr.$type)}o(mi,"isCrossReference");i(mi,"isCrossReference");var Zi={$type:"Disjunction",left:"left",right:"right"};function Fd(e){return re.isInstance(e,Zi.$type)}o(Fd,"isDisjunction");i(Fd,"isDisjunction");var Zl={$type:"EndOfFile",cardinality:"cardinality"};function jd(e){return re.isInstance(e,Zl.$type)}o(jd,"isEndOfFile");i(jd,"isEndOfFile");var sr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},bf={$type:"GrammarImport",path:"path"},an={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function zs(e){return re.isInstance(e,an.$type)}o(zs,"isGroup");i(zs,"isGroup");var Ql={$type:"InferredType",name:"name"};function mc(e){return re.isInstance(e,Ql.$type)}o(mc,"isInferredType");i(mc,"isInferredType");var Pt={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Xa(e){return re.isInstance(e,Pt.$type)}o(Xa,"isInfixRule");i(Xa,"isInfixRule");var vo={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},_f={$type:"InfixRuleOperators",precedences:"precedences"},ka={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function zd(e){return re.isInstance(e,ka.$type)}o(zd,"isInterface");i(zd,"isInterface");var Oa={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Yt(e){return re.isInstance(e,Oa.$type)}o(Yt,"isKeyword");i(Yt,"isKeyword");var Ri={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},sn={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Ud(e){return re.isInstance(e,sn.$type)}o(Ud,"isNegatedToken");i(Ud,"isNegatedToken");var eu={$type:"Negation",value:"value"};function Kd(e){return re.isInstance(e,eu.$type)}o(Kd,"isNegation");i(Kd,"isNegation");var Sf={$type:"NumberLiteral",value:"value"},Ai={$type:"Parameter",name:"name"},tu={$type:"ParameterReference",parameter:"parameter"};function Bd(e){return re.isInstance(e,tu.$type)}o(Bd,"isParameterReference");i(Bd,"isParameterReference");var dt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function Tt(e){return re.isInstance(e,dt.$type)}o(Tt,"isParserRule");i(Tt,"isParserRule");var To={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},on={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function qd(e){return re.isInstance(e,on.$type)}o(qd,"isRegexToken");i(qd,"isRegexToken");var ru={$type:"ReturnType",name:"name"};function Wd(e){return re.isInstance(e,ru.$type)}o(Wd,"isReturnType");i(Wd,"isReturnType");var ln={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Xt(e){return re.isInstance(e,ln.$type)}o(Xt,"isRuleCall");i(Xt,"isRuleCall");var Ma={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Vd(e){return re.isInstance(e,Ma.$type)}o(Vd,"isSimpleType");i(Vd,"isSimpleType");var wf={$type:"StringLiteral",value:"value"},un={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Hd(e){return re.isInstance(e,un.$type)}o(Hd,"isTerminalAlternatives");i(Hd,"isTerminalAlternatives");var Ye={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},cn={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Yd(e){return re.isInstance(e,cn.$type)}o(Yd,"isTerminalGroup");i(Yd,"isTerminalGroup");var Wt={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function $t(e){return re.isInstance(e,Wt.$type)}o($t,"isTerminalRule");i($t,"isTerminalRule");var fn={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function hc(e){return re.isInstance(e,fn.$type)}o(hc,"isTerminalRuleCall");i(hc,"isTerminalRuleCall");var Qi={$type:"Type",name:"name",type:"type"};function Xd(e){return re.isInstance(e,Qi.$type)}o(Xd,"isType");i(Xd,"isType");var pa={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},da={$type:"TypeDefinition"},If={$type:"UnionType",types:"types"},es={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function yc(e){return re.isInstance(e,es.$type)}o(yc,"isUnorderedGroup");i(yc,"isUnorderedGroup");var pn={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Jd(e){return re.isInstance(e,pn.$type)}o(Jd,"isUntilToken");i(Jd,"isUntilToken");var ma={$type:"ValueLiteral"},Da={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Zd(e){return re.isInstance(e,Da.$type)}o(Zd,"isWildcard");i(Zd,"isWildcard");var Qd=class extends Nd{static{o(this,"LangiumGrammarAstReflection")}static{i(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:Ue.$type,properties:{cardinality:{name:Ue.cardinality,optional:!0}},superTypes:[]},AbstractParserRule:{name:Yi.$type,properties:{},superTypes:[$i.$type,rt.$type]},AbstractRule:{name:$i.$type,properties:{},superTypes:[]},AbstractType:{name:rt.$type,properties:{},superTypes:[]},Action:{name:mr.$type,properties:{cardinality:{name:mr.cardinality,optional:!0},feature:{name:mr.feature,optional:!0},inferredType:{name:mr.inferredType,optional:!0},operator:{name:mr.operator,optional:!0},type:{name:mr.type,referenceType:rt.$type,optional:!0}},superTypes:[Ue.$type]},Alternatives:{name:Xi.$type,properties:{cardinality:{name:Xi.cardinality,optional:!0},elements:{name:Xi.elements,defaultValue:[]}},superTypes:[Ue.$type]},ArrayLiteral:{name:Ef.$type,properties:{elements:{name:Ef.elements,defaultValue:[]}},superTypes:[ma.$type]},ArrayType:{name:Cf.$type,properties:{elementType:{name:Cf.elementType}},superTypes:[da.$type]},Assignment:{name:hr.$type,properties:{cardinality:{name:hr.cardinality,optional:!0},feature:{name:hr.feature},operator:{name:hr.operator},predicate:{name:hr.predicate,optional:!0},terminal:{name:hr.terminal}},superTypes:[Ue.$type]},BooleanLiteral:{name:Jl.$type,properties:{true:{name:Jl.true,defaultValue:!1}},superTypes:[Vr.$type,ma.$type]},CharacterRange:{name:yr.$type,properties:{cardinality:{name:yr.cardinality,optional:!0},left:{name:yr.left},lookahead:{name:yr.lookahead,optional:!0},parenthesized:{name:yr.parenthesized,defaultValue:!1,optional:!0},right:{name:yr.right,optional:!0}},superTypes:[Ye.$type]},Condition:{name:Vr.$type,properties:{},superTypes:[]},Conjunction:{name:Ji.$type,properties:{left:{name:Ji.left},right:{name:Ji.right}},superTypes:[Vr.$type]},CrossReference:{name:gr.$type,properties:{cardinality:{name:gr.cardinality,optional:!0},deprecatedSyntax:{name:gr.deprecatedSyntax,defaultValue:!1},isMulti:{name:gr.isMulti,defaultValue:!1},terminal:{name:gr.terminal,optional:!0},type:{name:gr.type,referenceType:rt.$type}},superTypes:[Ue.$type]},Disjunction:{name:Zi.$type,properties:{left:{name:Zi.left},right:{name:Zi.right}},superTypes:[Vr.$type]},EndOfFile:{name:Zl.$type,properties:{cardinality:{name:Zl.cardinality,optional:!0}},superTypes:[Ue.$type]},Grammar:{name:sr.$type,properties:{imports:{name:sr.imports,defaultValue:[]},interfaces:{name:sr.interfaces,defaultValue:[]},isDeclared:{name:sr.isDeclared,defaultValue:!1},name:{name:sr.name,optional:!0},rules:{name:sr.rules,defaultValue:[]},types:{name:sr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:bf.$type,properties:{path:{name:bf.path}},superTypes:[]},Group:{name:an.$type,properties:{cardinality:{name:an.cardinality,optional:!0},elements:{name:an.elements,defaultValue:[]},guardCondition:{name:an.guardCondition,optional:!0},predicate:{name:an.predicate,optional:!0}},superTypes:[Ue.$type]},InferredType:{name:Ql.$type,properties:{name:{name:Ql.name}},superTypes:[rt.$type]},InfixRule:{name:Pt.$type,properties:{call:{name:Pt.call},dataType:{name:Pt.dataType,optional:!0},inferredType:{name:Pt.inferredType,optional:!0},name:{name:Pt.name},operators:{name:Pt.operators},parameters:{name:Pt.parameters,defaultValue:[]},returnType:{name:Pt.returnType,referenceType:rt.$type,optional:!0}},superTypes:[Yi.$type]},InfixRuleOperatorList:{name:vo.$type,properties:{associativity:{name:vo.associativity,optional:!0},operators:{name:vo.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:_f.$type,properties:{precedences:{name:_f.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ka.$type,properties:{attributes:{name:ka.attributes,defaultValue:[]},name:{name:ka.name},superTypes:{name:ka.superTypes,defaultValue:[],referenceType:rt.$type}},superTypes:[rt.$type]},Keyword:{name:Oa.$type,properties:{cardinality:{name:Oa.cardinality,optional:!0},predicate:{name:Oa.predicate,optional:!0},value:{name:Oa.value}},superTypes:[Ue.$type]},NamedArgument:{name:Ri.$type,properties:{calledByName:{name:Ri.calledByName,defaultValue:!1},parameter:{name:Ri.parameter,referenceType:Ai.$type,optional:!0},value:{name:Ri.value}},superTypes:[]},NegatedToken:{name:sn.$type,properties:{cardinality:{name:sn.cardinality,optional:!0},lookahead:{name:sn.lookahead,optional:!0},parenthesized:{name:sn.parenthesized,defaultValue:!1,optional:!0},terminal:{name:sn.terminal}},superTypes:[Ye.$type]},Negation:{name:eu.$type,properties:{value:{name:eu.value}},superTypes:[Vr.$type]},NumberLiteral:{name:Sf.$type,properties:{value:{name:Sf.value}},superTypes:[ma.$type]},Parameter:{name:Ai.$type,properties:{name:{name:Ai.name}},superTypes:[]},ParameterReference:{name:tu.$type,properties:{parameter:{name:tu.parameter,referenceType:Ai.$type}},superTypes:[Vr.$type]},ParserRule:{name:dt.$type,properties:{dataType:{name:dt.dataType,optional:!0},definition:{name:dt.definition},entry:{name:dt.entry,defaultValue:!1},fragment:{name:dt.fragment,defaultValue:!1},inferredType:{name:dt.inferredType,optional:!0},name:{name:dt.name},parameters:{name:dt.parameters,defaultValue:[]},returnType:{name:dt.returnType,referenceType:rt.$type,optional:!0}},superTypes:[Yi.$type]},ReferenceType:{name:To.$type,properties:{isMulti:{name:To.isMulti,defaultValue:!1},referenceType:{name:To.referenceType}},superTypes:[da.$type]},RegexToken:{name:on.$type,properties:{cardinality:{name:on.cardinality,optional:!0},lookahead:{name:on.lookahead,optional:!0},parenthesized:{name:on.parenthesized,defaultValue:!1,optional:!0},regex:{name:on.regex}},superTypes:[Ye.$type]},ReturnType:{name:ru.$type,properties:{name:{name:ru.name}},superTypes:[]},RuleCall:{name:ln.$type,properties:{arguments:{name:ln.arguments,defaultValue:[]},cardinality:{name:ln.cardinality,optional:!0},predicate:{name:ln.predicate,optional:!0},rule:{name:ln.rule,referenceType:$i.$type}},superTypes:[Ue.$type]},SimpleType:{name:Ma.$type,properties:{primitiveType:{name:Ma.primitiveType,optional:!0},stringType:{name:Ma.stringType,optional:!0},typeRef:{name:Ma.typeRef,referenceType:rt.$type,optional:!0}},superTypes:[da.$type]},StringLiteral:{name:wf.$type,properties:{value:{name:wf.value}},superTypes:[ma.$type]},TerminalAlternatives:{name:un.$type,properties:{cardinality:{name:un.cardinality,optional:!0},elements:{name:un.elements,defaultValue:[]},lookahead:{name:un.lookahead,optional:!0},parenthesized:{name:un.parenthesized,defaultValue:!1,optional:!0}},superTypes:[Ye.$type]},TerminalElement:{name:Ye.$type,properties:{cardinality:{name:Ye.cardinality,optional:!0},lookahead:{name:Ye.lookahead,optional:!0},parenthesized:{name:Ye.parenthesized,defaultValue:!1,optional:!0}},superTypes:[Ue.$type]},TerminalGroup:{name:cn.$type,properties:{cardinality:{name:cn.cardinality,optional:!0},elements:{name:cn.elements,defaultValue:[]},lookahead:{name:cn.lookahead,optional:!0},parenthesized:{name:cn.parenthesized,defaultValue:!1,optional:!0}},superTypes:[Ye.$type]},TerminalRule:{name:Wt.$type,properties:{definition:{name:Wt.definition},fragment:{name:Wt.fragment,defaultValue:!1},hidden:{name:Wt.hidden,defaultValue:!1},name:{name:Wt.name},type:{name:Wt.type,optional:!0}},superTypes:[$i.$type]},TerminalRuleCall:{name:fn.$type,properties:{cardinality:{name:fn.cardinality,optional:!0},lookahead:{name:fn.lookahead,optional:!0},parenthesized:{name:fn.parenthesized,defaultValue:!1,optional:!0},rule:{name:fn.rule,referenceType:Wt.$type}},superTypes:[Ye.$type]},Type:{name:Qi.$type,properties:{name:{name:Qi.name},type:{name:Qi.type}},superTypes:[rt.$type]},TypeAttribute:{name:pa.$type,properties:{defaultValue:{name:pa.defaultValue,optional:!0},isOptional:{name:pa.isOptional,defaultValue:!1},name:{name:pa.name},type:{name:pa.type}},superTypes:[]},TypeDefinition:{name:da.$type,properties:{},superTypes:[]},UnionType:{name:If.$type,properties:{types:{name:If.types,defaultValue:[]}},superTypes:[da.$type]},UnorderedGroup:{name:es.$type,properties:{cardinality:{name:es.cardinality,optional:!0},elements:{name:es.elements,defaultValue:[]}},superTypes:[Ue.$type]},UntilToken:{name:pn.$type,properties:{cardinality:{name:pn.cardinality,optional:!0},lookahead:{name:pn.lookahead,optional:!0},parenthesized:{name:pn.parenthesized,defaultValue:!1,optional:!0},terminal:{name:pn.terminal}},superTypes:[Ye.$type]},ValueLiteral:{name:ma.$type,properties:{},superTypes:[]},Wildcard:{name:Da.$type,properties:{cardinality:{name:Da.cardinality,optional:!0},lookahead:{name:Da.lookahead,optional:!0},parenthesized:{name:Da.parenthesized,defaultValue:!1,optional:!0}},superTypes:[Ye.$type]}}}},re=new Qd;function Rs(e){return new vs(e,t=>In(t)?t.content:[],{includeRoot:!0})}o(Rs,"streamCst");i(Rs,"streamCst");function em(e,t){for(;e.container;)if(e=e.container,e===t)return!0;return!1}o(em,"isChildNode");i(em,"isChildNode");function tm(e){return{start:{line:e.startLine-1,character:e.startColumn-1},end:{line:e.endLine-1,character:e.endColumn}}}o(tm,"tokenToRange");i(tm,"tokenToRange");function As(e){let{startOffset:t,endOffset:r}=e;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&typeof r=="number"&&Number.isFinite(r)&&r>=t}o(As,"isValidTokenRange");i(As,"isValidTokenRange");function Ja(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}o(Ja,"toDocumentSegment");i(Ja,"toDocumentSegment");var Ot;(function(e){e[e.Before=0]="Before",e[e.After=1]="After",e[e.OverlapFront=2]="OverlapFront",e[e.OverlapBack=3]="OverlapBack",e[e.Inside=4]="Inside",e[e.Outside=5]="Outside"})(Ot||(Ot={}));function rm(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return Ot.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return Ot.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?Ot.Inside:r?Ot.OverlapBack:n?Ot.OverlapFront:Ot.Outside}o(rm,"compareRange");i(rm,"compareRange");function nm(e,t){return rm(e,t)>Ot.After}o(nm,"inRange");i(nm,"inRange");var lR=/^[\w\p{L}]$/u;function am(e,t){if(e){let r=im(e,!0);if(r&&nu(r,t))return r;if(fc(e)){let n=e.content.findIndex(a=>!a.hidden);for(let a=n-1;a>=0;a--){let s=e.content[a];if(nu(s,t))return s}}}}o(am,"findCommentNode");i(am,"findCommentNode");function nu(e,t){return cc(e)&&t.includes(e.tokenType.name)}o(nu,"isCommentNode");i(nu,"isCommentNode");function im(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let a=r.content[n];if(t||!a.hidden)return a}e=r}}o(im,"getPreviousNode");i(im,"getPreviousNode");var sm=class extends Error{static{o(this,"ErrorWithLocation")}static{i(this,"ErrorWithLocation")}constructor(e,t){let r=typeof t=="string"?t:t();super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};function Ln(e,t="Error: Got unexpected value."){throw new Error(typeof t=="string"?t:t())}o(Ln,"assertUnreachable");i(Ln,"assertUnreachable");function B(e){return e.charCodeAt(0)}o(B,"cc");i(B,"cc");function ts(e,t){Array.isArray(e)?e.forEach(function(r){t.push(r)}):t.push(e)}o(ts,"insertToSet");i(ts,"insertToSet");function dn(e,t){if(e[t]===!0)throw"duplicate flag "+t;let r=e[t];e[t]=!0}o(dn,"addFlag");i(dn,"addFlag");function vr(e){if(e===void 0)throw Error("Internal Error - Should never get here!");return!0}o(vr,"ASSERT_EXISTS");i(vr,"ASSERT_EXISTS");function La(){throw Error("Internal Error - Should never get here!")}o(La,"ASSERT_NEVER_REACH_HERE");i(La,"ASSERT_NEVER_REACH_HERE");function au(e){return e.type==="Character"}o(au,"isCharacter");i(au,"isCharacter");var Es=[];for(let e=B("0");e<=B("9");e++)Es.push(e);var Cs=[B("_")].concat(Es);for(let e=B("a");e<=B("z");e++)Cs.push(e);for(let e=B("A");e<=B("Z");e++)Cs.push(e);var Pf=[B(" "),B("\f"),B(`
`),B("\r"),B("	"),B("\v"),B("	"),B("\xA0"),B("\u1680"),B("\u2000"),B("\u2001"),B("\u2002"),B("\u2003"),B("\u2004"),B("\u2005"),B("\u2006"),B("\u2007"),B("\u2008"),B("\u2009"),B("\u200A"),B("\u2028"),B("\u2029"),B("\u202F"),B("\u205F"),B("\u3000"),B("\uFEFF")],uR=/[0-9a-fA-F]/,Ei=/[0-9]/,cR=/[1-9]/,om=class{static{o(this,"RegExpParser")}static{i(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let t=this.disjunction();this.consumeChar("/");let r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":dn(r,"global");break;case"i":dn(r,"ignoreCase");break;case"m":dn(r,"multiLine");break;case"u":dn(r,"unicode");break;case"y":dn(r,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let t;switch(this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}break}}vr(t);let r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return La()}quantifier(e=!1){let t,r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":let n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),t={atLeast:n,atMost:a}):t={atLeast:n,atMost:1/0},this.consumeChar("}");break}if(e===!0&&t===void 0)return;vr(t);break}if(!(e===!0&&t===void 0)&&vr(t))return this.peekChar(0)==="?"?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t}atom(){let e,t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),vr(e)?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):La()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[B(`
`),B("\r"),B("\u2028"),B("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=Es;break;case"D":e=Es,t=!0;break;case"s":e=Pf;break;case"S":e=Pf,t=!0;break;case"w":e=Cs;break;case"W":e=Cs,t=!0;break}return vr(e)?{type:"Set",value:e,complement:t}:La()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=B("\f");break;case"n":e=B(`
`);break;case"r":e=B("\r");break;case"t":e=B("	");break;case"v":e=B("\v");break}return vr(e)?{type:"Character",value:e}:La()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:B("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:B(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:B(e)}}}characterClass(){let e=[],t=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),t=!0);this.isClassAtom();){let r=this.classAtom(),n=r.type==="Character";if(au(r)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(au(a)){if(a.value<r.value)throw Error("Range out of order in character class");e.push({from:r.value,to:a.value})}else ts(r.value,e),e.push(B("-")),ts(a.value,e)}else ts(r.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case`
`: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:B("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),e=!1;break;default:this.groupIdx++;break}let t=this.disjunction();this.consumeChar(")");let r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(cR.test(e)===!1)throw Error("Expecting a positive integer");for(;Ei.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(Ei.test(e)===!1)throw Error("Expecting an integer");for(;Ei.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case`
`: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:B(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 Ei.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case`
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!"||this.peekChar(2)==="<"&&(this.peekChar(3)==="="||this.peekChar(3)==="!"));default:return!1}}isQuantifier(){let e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let n=0;n<e;n++){let a=this.popChar();if(uR.test(a)===!1)throw Error("Expecting a HexDecimal digits");t+=a}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}},Us=class{static{o(this,"BaseRegExpVisitor")}static{i(this,"BaseRegExpVisitor")}visitChildren(e){for(let t in e){let r=e[t];e.hasOwnProperty(t)&&(r.type!==void 0?this.visit(r):Array.isArray(r)&&r.forEach(n=>{this.visit(n)},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){}},fR=/\r?\n/gm,pR=new om,dR=class extends Us{static{o(this,"TerminalRegExpVisitor")}static{i(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let t=String.fromCharCode(e.value);if(!this.multiline&&t===`
`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=hi(t);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitSet(e){if(!this.multiline){let t=this.regex.substring(e.loc.begin,e.loc.end),r=new RegExp(t);this.multiline=!!`
`.match(r)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},$o=new dR;function lm(e){try{return typeof e=="string"&&(e=new RegExp(e)),e=e.toString(),$o.reset(e),$o.visit(pR.pattern(e)),$o.multiline}catch{return!1}}o(lm,"isMultilineComment");i(lm,"isMultilineComment");var mR=`\f
\r	\v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");function gc(e){let t=typeof e=="string"?new RegExp(e):e;return mR.some(r=>t.test(r))}o(gc,"isWhitespace");i(gc,"isWhitespace");function hi(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}o(hi,"escapeRegExp");i(hi,"escapeRegExp");function um(e,t){let r=cm(e),n=t.match(r);return!!n&&n[0].length>0}o(um,"partialMatches");i(um,"partialMatches");function cm(e){typeof e=="string"&&(e=new RegExp(e));let t=e,r=e.source,n=0;function a(){let s="",l;function u(f){s+=r.substr(n,f),n+=f}o(u,"appendRaw"),i(u,"appendRaw");function c(f){s+="(?:"+r.substr(n,f)+"|$)",n+=f}for(o(c,"appendOptional"),i(c,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":c(3);break;case"x":c(4);break;case"u":t.unicode?r[n+2]==="{"?c(r.indexOf("}",n)-n+1):c(6):c(2);break;case"p":case"P":t.unicode?c(r.indexOf("}",n)-n+1):c(2);break;case"k":c(r.indexOf(">",n)-n+1);break;default:c(2);break}break;case"[":l=/\[(?:\\.|.)*?\]/g,l.lastIndex=n,l=l.exec(r)||[],c(l[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":u(1);break;case"{":l=/\{\d+,?\d*\}/g,l.lastIndex=n,l=l.exec(r),l?u(l[0].length):c(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":s+="(?:",n+=3,s+=a()+"|$)";break;case"=":s+="(?=",n+=3,s+=a()+")";break;case"!":l=n,n+=3,a(),s+=r.substr(l,n-l);break;case"<":switch(r[n+3]){case"=":case"!":l=n,n+=4,a(),s+=r.substr(l,n-l);break;default:u(r.indexOf(">",n)-n+1),s+=a()+"|$)";break}break}else u(1),s+=a()+"|$)";break;case")":return++n,s;default:c(1);break}return s}return o(a,"process2"),i(a,"process"),new RegExp(a(),e.flags)}o(cm,"partialRegExp");i(cm,"partialRegExp");function fm(e){return e.rules.find(t=>Tt(t)&&t.entry)}o(fm,"getEntryRule");i(fm,"getEntryRule");function pm(e){return e.rules.filter(t=>$t(t)&&t.hidden)}o(pm,"getHiddenRules");i(pm,"getHiddenRules");function vc(e,t){let r=new Set,n=fm(e);if(!n)return new Set(e.rules);let a=[n].concat(pm(e));for(let l of a)Tc(l,r,t);let s=new Set;for(let l of e.rules)(r.has(l.name)||$t(l)&&l.hidden)&&s.add(l);return s}o(vc,"getAllReachableRules");i(vc,"getAllReachableRules");function Tc(e,t,r){t.add(e.name),Mn(e).forEach(n=>{if(Xt(n)||r&&hc(n)){let a=n.rule.ref;a&&!t.has(a.name)&&Tc(a,t,r)}})}o(Tc,"ruleDfs");i(Tc,"ruleDfs");function dm(e){if(e.terminal)return e.terminal;if(e.type.ref)return Rc(e.type.ref)?.terminal}o(dm,"getCrossReferenceTerminal");i(dm,"getCrossReferenceTerminal");function mm(e){return e.hidden&&!gc(Bs(e))}o(mm,"isCommentTerminal");i(mm,"isCommentTerminal");function hm(e,t){return!e||!t?[]:Ks(e,t,e.astNode,!0)}o(hm,"findNodesForProperty");i(hm,"findNodesForProperty");function $c(e,t,r){if(!e||!t)return;let n=Ks(e,t,e.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}o($c,"findNodeForProperty");i($c,"findNodeForProperty");function Ks(e,t,r,n){if(!n){let a=pi(e.grammarSource,Ht);if(a&&a.feature===t)return[e]}return In(e)&&e.astNode===r?e.content.flatMap(a=>Ks(a,t,r,!1)):[]}o(Ks,"findNodesForPropertyInternal");i(Ks,"findNodesForPropertyInternal");function ym(e,t,r){if(!e)return;let n=gm(e,t,e?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}o(ym,"findNodeForKeyword");i(ym,"findNodeForKeyword");function gm(e,t,r){if(e.astNode!==r)return[];if(Yt(e.grammarSource)&&e.grammarSource.value===t)return[e];let n=Rs(e).iterator(),a,s=[];do if(a=n.next(),!a.done){let l=a.value;l.astNode===r?Yt(l.grammarSource)&&l.grammarSource.value===t&&s.push(l):n.prune()}while(!a.done);return s}o(gm,"findNodesForKeywordInternal");i(gm,"findNodesForKeywordInternal");function vm(e){let t=e.astNode;for(;t===e.container?.astNode;){let r=pi(e.grammarSource,Ht);if(r)return r;e=e.container}}o(vm,"findAssignment");i(vm,"findAssignment");function Rc(e){let t=e;return mc(t)&&(di(t.$container)?t=t.$container.$container:Dn(t.$container)?t=t.$container:Ln(t.$container)),Ac(e,t,new Map)}o(Rc,"findNameAssignment");i(Rc,"findNameAssignment");function Ac(e,t,r){function n(a,s){let l;return pi(a,Ht)||(l=Ac(s,s,r)),r.set(e,l),l}if(o(n,"go"),i(n,"go"),r.has(e))return r.get(e);r.set(e,void 0);for(let a of Mn(t)){if(Ht(a)&&a.feature.toLowerCase()==="name")return r.set(e,a),a;if(Xt(a)&&Tt(a.rule.ref))return n(a,a.rule.ref);if(Vd(a)&&a.typeRef?.ref)return n(a,a.typeRef.ref)}}o(Ac,"findNameAssignmentInternal");i(Ac,"findNameAssignmentInternal");function Ec(e){return Cc(e,new Set)}o(Ec,"isDataTypeRule");i(Ec,"isDataTypeRule");function Cc(e,t){if(t.has(e))return!0;t.add(e);for(let r of Mn(e))if(Xt(r)){if(!r.rule.ref||Tt(r.rule.ref)&&!Cc(r.rule.ref,t)||Xa(r.rule.ref))return!1}else{if(Ht(r))return!1;if(di(r))return!1}return!!e.definition}o(Cc,"isDataTypeRuleInternal");i(Cc,"isDataTypeRuleInternal");function bc(e){if(!$t(e)){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t)return t.name}}}o(bc,"getExplicitRuleType");i(bc,"getExplicitRuleType");function Pn(e){if(Dn(e))return Tt(e)&&Ec(e)?e.name:bc(e)??e.name;if(zd(e)||Xd(e)||Wd(e))return e.name;if(di(e)){let t=Tm(e);if(t)return t}else if(mc(e))return e.name;throw new Error("Cannot get name of Unknown Type")}o(Pn,"getTypeName");i(Pn,"getTypeName");function Tm(e){if(e.inferredType)return e.inferredType.name;if(e.type?.ref)return Pn(e.type.ref)}o(Tm,"getActionType");i(Tm,"getActionType");function $m(e){return $t(e)?e.type?.name??"string":bc(e)??e.name}o($m,"getRuleType");i($m,"getRuleType");function Bs(e){let t={s:!1,i:!1,u:!1},r=Ir(e.definition,t),n=Object.entries(t).filter(([,a])=>a).map(([a])=>a).join("");return new RegExp(r,n)}o(Bs,"terminalRegex");i(Bs,"terminalRegex");var _c=/[\s\S]/.source;function Ir(e,t){if(Hd(e))return Rm(e);if(Yd(e))return Am(e);if(xd(e))return bm(e);if(hc(e)){let r=e.rule.ref;if(!r)throw new Error("Missing rule reference.");return gt(Ir(r.definition),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}else{if(Ud(e))return Cm(e);if(Jd(e))return Em(e);if(qd(e)){let r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),a=e.regex.substring(r+1);return t&&(t.i=a.includes("i"),t.s=a.includes("s"),t.u=a.includes("u")),gt(n,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}else{if(Zd(e))return gt(_c,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized});throw new Error(`Invalid terminal element: ${e?.$type}, ${e?.$cstNode?.text}`)}}}o(Ir,"abstractElementToRegex");i(Ir,"abstractElementToRegex");function Rm(e){return gt(e.elements.map(t=>Ir(t)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(Rm,"terminalAlternativesToRegex");i(Rm,"terminalAlternativesToRegex");function Am(e){return gt(e.elements.map(t=>Ir(t)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(Am,"terminalGroupToRegex");i(Am,"terminalGroupToRegex");function Em(e){return gt(`${_c}*?${Ir(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}o(Em,"untilTokenToRegex");i(Em,"untilTokenToRegex");function Cm(e){return gt(`(?!${Ir(e.terminal)})${_c}*?`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}o(Cm,"negateTokenToRegex");i(Cm,"negateTokenToRegex");function bm(e){return e.right?gt(`[${rs(e.left)}-${rs(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1}):gt(rs(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}o(bm,"characterRangeToRegex");i(bm,"characterRangeToRegex");function rs(e){return hi(e.value)}o(rs,"keywordToRegex");i(rs,"keywordToRegex");function gt(e,t){return(t.parenthesized||t.lookahead||t.wrap!==!1)&&(e=`(${t.lookahead??(t.parenthesized?"":"?:")}${e})`),t.cardinality?`${e}${t.cardinality}`:e}o(gt,"withCardinality");i(gt,"withCardinality");function _m(e){let t=[],r=e.Grammar;for(let n of r.rules)$t(n)&&mm(n)&&lm(Bs(n))&&t.push(n.name);return{multilineCommentRules:t,nameRegexp:lR}}o(_m,"createGrammarConfig");i(_m,"createGrammarConfig");function bs(e){console&&console.error&&console.error(`Error: ${e}`)}o(bs,"PRINT_ERROR");i(bs,"PRINT_ERROR");function Sc(e){console&&console.warn&&console.warn(`Warning: ${e}`)}o(Sc,"PRINT_WARNING");i(Sc,"PRINT_WARNING");function wc(e){let t=new Date().getTime(),r=e();return{time:new Date().getTime()-t,value:r}}o(wc,"timer");i(wc,"timer");function Ic(e){function t(){}o(t,"FakeConstructor"),i(t,"FakeConstructor"),t.prototype=e;let r=new t;function n(){return typeof r.bar}return o(n,"fakeAccess"),i(n,"fakeAccess"),n(),n(),e;(0,eval)(e)}o(Ic,"toFastProperties");i(Ic,"toFastProperties");function Sm(e){return wm(e)?e.LABEL:e.name}o(Sm,"tokenLabel");i(Sm,"tokenLabel");function wm(e){return typeof e.LABEL=="string"&&e.LABEL!==""}o(wm,"hasTokenLabel");i(wm,"hasTokenLabel");var Rt=class{static{o(this,"AbstractProduction")}static{i(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(t=>{t.accept(e)})}},Me=class extends Rt{static{o(this,"NonTerminal")}static{i(this,"NonTerminal")}constructor(e){super([]),this.idx=1,Object.assign(this,st(e))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},xn=class extends Rt{static{o(this,"Rule")}static{i(this,"Rule")}constructor(e){super(e.definition),this.orgText="",Object.assign(this,st(e))}},Ge=class extends Rt{static{o(this,"Alternative")}static{i(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,st(e))}},Pe=class extends Rt{static{o(this,"Option")}static{i(this,"Option")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,st(e))}},qe=class extends Rt{static{o(this,"RepetitionMandatory")}static{i(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,st(e))}},We=class extends Rt{static{o(this,"RepetitionMandatoryWithSeparator")}static{i(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,st(e))}},Te=class extends Rt{static{o(this,"Repetition")}static{i(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,st(e))}},Fe=class extends Rt{static{o(this,"RepetitionWithSeparator")}static{i(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,st(e))}},je=class extends Rt{static{o(this,"Alternation")}static{i(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Object.assign(this,st(e))}},ue=class{static{o(this,"Terminal")}static{i(this,"Terminal")}constructor(e){this.idx=1,Object.assign(this,st(e))}accept(e){e.visit(this)}};function Im(e){return e.map(Ba)}o(Im,"serializeGrammar");i(Im,"serializeGrammar");function Ba(e){function t(r){return r.map(Ba)}if(o(t,"convertDefinition"),i(t,"convertDefinition"),e instanceof Me){let r={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return typeof e.label=="string"&&(r.label=e.label),r}else{if(e instanceof Ge)return{type:"Alternative",definition:t(e.definition)};if(e instanceof Pe)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof qe)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof We)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:Ba(new ue({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Fe)return{type:"RepetitionWithSeparator",idx:e.idx,separator:Ba(new ue({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Te)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof je)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof ue){let r={type:"Terminal",name:e.terminalType.name,label:Sm(e.terminalType),idx:e.idx};typeof e.label=="string"&&(r.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(r.pattern=n instanceof RegExp?n.source:n),r}else{if(e instanceof xn)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}}}o(Ba,"serializeProduction");i(Ba,"serializeProduction");function st(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}o(st,"pickOnlyDefined");i(st,"pickOnlyDefined");var Gn=class{static{o(this,"GAstVisitor")}static{i(this,"GAstVisitor")}visit(e){let t=e;switch(t.constructor){case Me:return this.visitNonTerminal(t);case Ge:return this.visitAlternative(t);case Pe:return this.visitOption(t);case qe:return this.visitRepetitionMandatory(t);case We:return this.visitRepetitionMandatoryWithSeparator(t);case Fe:return this.visitRepetitionWithSeparator(t);case Te:return this.visitRepetition(t);case je:return this.visitAlternation(t);case ue:return this.visitTerminal(t);case xn:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function Pm(e){return e instanceof Ge||e instanceof Pe||e instanceof Te||e instanceof qe||e instanceof We||e instanceof Fe||e instanceof ue||e instanceof xn}o(Pm,"isSequenceProd");i(Pm,"isSequenceProd");function Za(e,t=[]){return e instanceof Pe||e instanceof Te||e instanceof Fe?!0:e instanceof je?e.definition.some(n=>Za(n,t)):e instanceof Me&&t.includes(e)?!1:e instanceof Rt?(e instanceof Me&&t.push(e),e.definition.every(n=>Za(n,t))):!1}o(Za,"isOptionalProd");i(Za,"isOptionalProd");function Nm(e){return e instanceof je}o(Nm,"isBranchingProd");i(Nm,"isBranchingProd");function nt(e){if(e instanceof Me)return"SUBRULE";if(e instanceof Pe)return"OPTION";if(e instanceof je)return"OR";if(e instanceof qe)return"AT_LEAST_ONE";if(e instanceof We)return"AT_LEAST_ONE_SEP";if(e instanceof Fe)return"MANY_SEP";if(e instanceof Te)return"MANY";if(e instanceof ue)return"CONSUME";throw Error("non exhaustive match")}o(nt,"getProductionDslName");i(nt,"getProductionDslName");var qs=class{static{o(this,"RestWalker")}static{i(this,"RestWalker")}walk(e,t=[]){e.definition.forEach((r,n)=>{let a=e.definition.slice(n+1);if(r instanceof Me)this.walkProdRef(r,a,t);else if(r instanceof ue)this.walkTerminal(r,a,t);else if(r instanceof Ge)this.walkFlat(r,a,t);else if(r instanceof Pe)this.walkOption(r,a,t);else if(r instanceof qe)this.walkAtLeastOne(r,a,t);else if(r instanceof We)this.walkAtLeastOneSep(r,a,t);else if(r instanceof Fe)this.walkManySep(r,a,t);else if(r instanceof Te)this.walkMany(r,a,t);else if(r instanceof je)this.walkOr(r,a,t);else throw Error("non exhaustive match")})}walkTerminal(e,t,r){}walkProdRef(e,t,r){}walkFlat(e,t,r){let n=t.concat(r);this.walk(e,n)}walkOption(e,t,r){let n=t.concat(r);this.walk(e,n)}walkAtLeastOne(e,t,r){let n=[new Pe({definition:e.definition})].concat(t,r);this.walk(e,n)}walkAtLeastOneSep(e,t,r){let n=iu(e,t,r);this.walk(e,n)}walkMany(e,t,r){let n=[new Pe({definition:e.definition})].concat(t,r);this.walk(e,n)}walkManySep(e,t,r){let n=iu(e,t,r);this.walk(e,n)}walkOr(e,t,r){let n=t.concat(r);e.definition.forEach(a=>{let s=new Ge({definition:[a]});this.walk(s,n)})}};function iu(e,t,r){return[new Pe({definition:[new ue({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}o(iu,"restForRepetitionWithSeparator");i(iu,"restForRepetitionWithSeparator");function Fn(e){if(e instanceof Me)return Fn(e.referencedRule);if(e instanceof ue)return Mm(e);if(Pm(e))return km(e);if(Nm(e))return Om(e);throw Error("non exhaustive match")}o(Fn,"first");i(Fn,"first");function km(e){let t=[],r=e.definition,n=0,a=r.length>n,s,l=!0;for(;a&&l;)s=r[n],l=Za(s),t=t.concat(Fn(s)),n=n+1,a=r.length>n;return[...new Set(t)]}o(km,"firstForSequence");i(km,"firstForSequence");function Om(e){let t=e.definition.map(r=>Fn(r));return[...new Set(t.flat())]}o(Om,"firstForBranching");i(Om,"firstForBranching");function Mm(e){return[e.terminalType]}o(Mm,"firstForTerminal");i(Mm,"firstForTerminal");var Dm="_~IN~_",hR=class extends qs{static{o(this,"ResyncFollowsWalker")}static{i(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,r){}walkProdRef(e,t,r){let n=xm(e.referencedRule,e.idx)+this.topProd.name,a=t.concat(r),s=new Ge({definition:a}),l=Fn(s);this.follows[n]=l}};function Lm(e){let t={};return e.forEach(r=>{let n=new hR(r).startWalking();Object.assign(t,n)}),t}o(Lm,"computeAllProdsFollows");i(Lm,"computeAllProdsFollows");function xm(e,t){return e.name+t+Dm}o(xm,"buildBetweenProdsFollowPrefix");i(xm,"buildBetweenProdsFollowPrefix");var ns={},yR=new om;function jn(e){let t=e.toString();if(ns.hasOwnProperty(t))return ns[t];{let r=yR.pattern(t);return ns[t]=r,r}}o(jn,"getRegExpAst");i(jn,"getRegExpAst");function Gm(){ns={}}o(Gm,"clearRegExpParserCache");i(Gm,"clearRegExpParserCache");var Fm="Complement Sets are not supported for first char optimization",_s=`Unable to use "first char" lexer optimizations:
`;function jm(e,t=!1){try{let r=jn(e);return Ss(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Fm)t&&Sc(`${_s}	Unable to optimize: < ${e.toString()} >
	Complement Sets cannot be automatically optimized.
	This will disable the lexer's first char optimizations.
	See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";t&&(n=`
	This will disable the lexer's first char optimizations.
	See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),bs(`${_s}
	Failed parsing: < ${e.toString()} >
	Using the @chevrotain/regexp-to-ast library
	Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}o(jm,"getOptimizedStartCodesIndices");i(jm,"getOptimizedStartCodesIndices");function Ss(e,t,r){switch(e.type){case"Disjunction":for(let a=0;a<e.value.length;a++)Ss(e.value[a],t,r);break;case"Alternative":let n=e.value;for(let a=0;a<n.length;a++){let s=n[a];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let l=s;switch(l.type){case"Character":xa(l.value,t,r);break;case"Set":if(l.complement===!0)throw Error(Fm);l.value.forEach(c=>{if(typeof c=="number")xa(c,t,r);else{let f=c;if(r===!0)for(let d=f.from;d<=f.to;d++)xa(d,t,r);else{for(let d=f.from;d<=f.to&&d<Fa;d++)xa(d,t,r);if(f.to>=Fa){let d=f.from>=Fa?f.from:Fa,y=f.to,g=Lt(d),m=Lt(y);for(let E=g;E<=m;E++)t[E]=E}}}});break;case"Group":Ss(l.value,t,r);break;default:throw Error("Non Exhaustive Match")}let u=l.quantifier!==void 0&&l.quantifier.atLeast===0;if(l.type==="Group"&&ws(l)===!1||l.type!=="Group"&&u===!1)break}break;default:throw Error("non exhaustive match!")}return Object.values(t)}o(Ss,"firstCharOptimizedIndices");i(Ss,"firstCharOptimizedIndices");function xa(e,t,r){let n=Lt(e);t[n]=n,r===!0&&zm(e,t)}o(xa,"addOptimizedIdxToResult");i(xa,"addOptimizedIdxToResult");function zm(e,t){let r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){let a=Lt(n.charCodeAt(0));t[a]=a}else{let a=r.toLowerCase();if(a!==r){let s=Lt(a.charCodeAt(0));t[s]=s}}}o(zm,"handleIgnoreCase");i(zm,"handleIgnoreCase");function su(e,t){return e.value.find(r=>{if(typeof r=="number")return t.includes(r);{let n=r;return t.find(a=>n.from<=a&&a<=n.to)!==void 0}})}o(su,"findCode");i(su,"findCode");function ws(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?Array.isArray(e.value)?e.value.every(ws):ws(e.value):!1}o(ws,"isWholeOptional");i(ws,"isWholeOptional");var gR=class extends Us{static{o(this,"CharCodeFinder")}static{i(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){this.targetCharCodes.includes(e.value)&&(this.found=!0)}visitSet(e){e.complement?su(e,this.targetCharCodes)===void 0&&(this.found=!0):su(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};function Ws(e,t){if(t instanceof RegExp){let r=jn(t),n=new gR(e);return n.visit(r),n.found}else{for(let r of t){let n=r.charCodeAt(0);if(e.includes(n))return!0}return!1}}o(Ws,"canMatchCharCode");i(Ws,"canMatchCharCode");var _r="PATTERN",Ga="defaultMode",Ci="modes",ou=0,as=1,lu=2,uu=3;function Um(e,t){t=Object.assign({safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
`],tracer:i((w,b)=>b(),"tracer")},t);let r=t.tracer;r("initCharCodeToOptimizedIndexMap",()=>{uh()});let n;r("Reject Lexer.NA",()=>{n=e.filter(w=>w[_r]!==xe.NA)});let a=!1,s;r("Transform Patterns",()=>{a=!1,s=n.map(w=>{let b=w[_r];if(b instanceof RegExp){let M=b.source;return M.length===1&&M!=="^"&&M!=="$"&&M!=="."&&!b.ignoreCase?M:M.length===2&&M[0]==="\\"&&!["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"].includes(M[1])?M[1]:cu(b)}else{if(typeof b=="function")return a=!0,{exec:b};if(typeof b=="object")return a=!0,b;if(typeof b=="string"){if(b.length===1)return b;{let M=b.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),L=new RegExp(M);return cu(L)}}else throw Error("non exhaustive match")}})});let l,u,c,f,d;r("misc mapping",()=>{l=n.map(w=>w.tokenTypeIdx),u=n.map(w=>{let b=w.GROUP;if(b!==xe.SKIPPED){if(typeof b=="string")return b;if(b===void 0)return!1;throw Error("non exhaustive match")}}),c=n.map(w=>{let b=w.LONGER_ALT;if(b)return Array.isArray(b)?b.map(L=>n.indexOf(L)):[n.indexOf(b)]}),f=n.map(w=>w.PUSH_MODE),d=n.map(w=>Object.hasOwn(w,"POP_MODE"))});let y;r("Line Terminator Handling",()=>{let w=kc(t.lineTerminatorCharacters);y=n.map(b=>!1),t.positionTracking!=="onlyOffset"&&(y=n.map(b=>Object.hasOwn(b,"LINE_BREAKS")?!!b.LINE_BREAKS:Nc(b,w)===!1&&Ws(w,b.PATTERN)))});let g,m,E,$;r("Misc Mapping #2",()=>{g=n.map(Pc),m=s.map(oh),E=n.reduce((w,b)=>{let M=b.GROUP;return typeof M=="string"&&M!==xe.SKIPPED&&(w[M]=[]),w},{}),$=s.map((w,b)=>{let M=u[b]===void 0&&c[b]===void 0?Km(n[b].PATTERN):void 0;return{pattern:s[b],asciiClass:M,longerAlt:c[b],canLineTerminator:y[b],matchType:M!==void 0?uu:m[b]!==!1?ou:g[b]?as:lu,short:m[b],group:u[b],push:f[b],pop:d[b],tokenTypeIdx:l[b],tokenType:n[b]}})});let T=!0,R=[];return t.safeMode||r("First Char Optimization",()=>{R=n.reduce((w,b,M)=>{if(typeof b.PATTERN=="string"){let L=b.PATTERN.charCodeAt(0),G=Lt(L);is(w,G,$[M])}else if(Array.isArray(b.START_CHARS_HINT)){let L;b.START_CHARS_HINT.forEach(G=>{let K=typeof G=="string"?G.charCodeAt(0):G,Z=Lt(K);L!==Z&&(L=Z,is(w,Z,$[M]))})}else if(b.PATTERN instanceof RegExp)if(b.PATTERN.unicode)T=!1,t.ensureOptimizations&&bs(`${_s}	Unable to analyze < ${b.PATTERN.toString()} > pattern.
	The regexp unicode flag is not currently supported by the regexp-to-ast library.
	This will disable the lexer's first char optimizations.
	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let L=jm(b.PATTERN,t.ensureOptimizations);L.length===0&&(T=!1),L.forEach(G=>{is(w,G,$[M])})}else t.ensureOptimizations&&bs(`${_s}	TokenType: <${b.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
	This will disable the lexer's first char optimizations.
	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),T=!1;return w},[])}),{emptyGroups:E,patternIdxToConfig:$,charCodeToPatternIdxToConfig:R,hasCustom:a,canBeOptimized:T}}o(Um,"analyzeTokenTypes");i(Um,"analyzeTokenTypes");function Km(e){var t,r;if(!(e instanceof RegExp)||e.flags!=="")return;let n;try{n=jn(e)}catch{return}if(n.value.value.length!==1||n.value.value[0].value.length!==1)return;let a=n.value.value[0].value[0],s;for(;a.type==="Group";){if(a.capturing||a.quantifier!==void 0&&s!==void 0||a.value.value.length!==1||a.value.value[0].value.length!==1)return;s=(t=a.quantifier)!==null&&t!==void 0?t:s,a=a.value.value[0].value[0]}if(a.type!=="Set"||a.complement||a.quantifier!==void 0&&s!==void 0||(s=(r=a.quantifier)!==null&&r!==void 0?r:s,s?.atLeast!==1||s.atMost!==1/0||!s.greedy))return;let l=new Uint8Array(128);for(let u of a.value){let c=typeof u=="number"?u:u.from,f=typeof u=="number"?u:u.to;if(c<0||f>=l.length)return;l.fill(1,c,f+1)}return l}o(Km,"getAsciiClass");i(Km,"getAsciiClass");function Bm(e,t){let r=[],n=Wm(e);r=r.concat(n.errors);let a=Vm(n.valid),s=a.valid;return r=r.concat(a.errors),r=r.concat(qm(s)),r=r.concat(Qm(s)),r=r.concat(eh(s,t)),r=r.concat(th(s)),r}o(Bm,"validatePatterns");i(Bm,"validatePatterns");function qm(e){let t=[],r=e.filter(n=>n[_r]instanceof RegExp);return t=t.concat(Hm(r)),t=t.concat(Xm(r)),t=t.concat(Jm(r)),t=t.concat(Zm(r)),t=t.concat(Ym(r)),t}o(qm,"validateRegExpPattern");i(qm,"validateRegExpPattern");function Wm(e){let t=e.filter(a=>!Object.hasOwn(a,_r)),r=t.map(a=>({message:"Token Type: ->"+a.name+"<- missing static 'PATTERN' property",type:$e.MISSING_PATTERN,tokenTypes:[a]})),n=e.filter(a=>!t.includes(a));return{errors:r,valid:n}}o(Wm,"findMissingPatterns");i(Wm,"findMissingPatterns");function Vm(e){let t=e.filter(a=>{let s=a[_r];return!(s instanceof RegExp)&&typeof s!="function"&&!Object.hasOwn(s,"exec")&&typeof s!="string"}),r=t.map(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:$e.INVALID_PATTERN,tokenTypes:[a]})),n=e.filter(a=>!t.includes(a));return{errors:r,valid:n}}o(Vm,"findInvalidPatterns");i(Vm,"findInvalidPatterns");var vR=/[^\\][$]/;function Hm(e){class t extends Us{static{o(this,"EndAnchorFinder")}static{i(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}return e.filter(a=>{let s=a.PATTERN;try{let l=jn(s),u=new t;return u.visit(l),u.found}catch{return vR.test(s.source)}}).map(a=>({message:`Unexpected RegExp Anchor Error:
	Token Type: ->`+a.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
	See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS	for details.`,type:$e.EOI_ANCHOR_FOUND,tokenTypes:[a]}))}o(Hm,"findEndOfInputAnchor");i(Hm,"findEndOfInputAnchor");function Ym(e){return e.filter(n=>n.PATTERN.test("")).map(n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:$e.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}o(Ym,"findEmptyMatchRegExps");i(Ym,"findEmptyMatchRegExps");var TR=/[^\\[][\^]|^\^/;function Xm(e){class t extends Us{static{o(this,"StartAnchorFinder")}static{i(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}return e.filter(a=>{let s=a.PATTERN;try{let l=jn(s),u=new t;return u.visit(l),u.found}catch{return TR.test(s.source)}}).map(a=>({message:`Unexpected RegExp Anchor Error:
	Token Type: ->`+a.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
	See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS	for details.`,type:$e.SOI_ANCHOR_FOUND,tokenTypes:[a]}))}o(Xm,"findStartOfInputAnchor");i(Xm,"findStartOfInputAnchor");function Jm(e){return e.filter(n=>{let a=n[_r];return a instanceof RegExp&&(a.multiline||a.global)}).map(n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:$e.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}o(Jm,"findUnsupportedFlags");i(Jm,"findUnsupportedFlags");function Zm(e){let t=[],r=e.map(s=>e.reduce((l,u)=>(s.PATTERN.source===u.PATTERN.source&&!t.includes(u)&&u.PATTERN!==xe.NA&&(t.push(u),l.push(u)),l),[]));return r=r.filter(Boolean),r.filter(s=>s.length>1).map(s=>{let l=s.map(c=>c.name);return{message:`The same RegExp pattern ->${s[0].PATTERN}<-has been used in all of the following Token Types: ${l.join(", ")} <-`,type:$e.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}o(Zm,"findDuplicatePatterns");i(Zm,"findDuplicatePatterns");function Qm(e){return e.filter(n=>{if(!Object.hasOwn(n,"GROUP"))return!1;let a=n.GROUP;return a!==xe.SKIPPED&&a!==xe.NA&&typeof a!="string"}).map(n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:$e.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}o(Qm,"findInvalidGroupType");i(Qm,"findInvalidGroupType");function eh(e,t){return e.filter(a=>a.PUSH_MODE!==void 0&&!t.includes(a.PUSH_MODE)).map(a=>({message:`Token Type: ->${a.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${a.PUSH_MODE}<-which does not exist`,type:$e.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[a]}))}o(eh,"findModesThatDoNotExist");i(eh,"findModesThatDoNotExist");function th(e){let t=[],r=e.reduce((n,a,s)=>{let l=a.PATTERN;return l===xe.NA||(typeof l=="string"?n.push({str:l,idx:s,tokenType:a}):l instanceof RegExp&&nh(l)&&n.push({str:l.source,idx:s,tokenType:a})),n},[]);return e.forEach((n,a)=>{r.forEach(({str:s,idx:l,tokenType:u})=>{if(a<l&&rh(s,n.PATTERN)){let c=`Token: ->${u.name}<- can never be matched.
Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition.
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:c,type:$e.UNREACHABLE_PATTERN,tokenTypes:[n,u]})}})}),t}o(th,"findUnreachablePatterns");i(th,"findUnreachablePatterns");function rh(e,t){if(t instanceof RegExp){if(ah(t))return!1;let r=t.exec(e);return r!==null&&r.index===0}else{if(typeof t=="function")return t(e,0,[],{});if(Object.hasOwn(t,"exec"))return t.exec(e,0,[],{});if(typeof t=="string")return t===e;throw Error("non exhaustive match")}}o(rh,"tryToMatchStrToPattern");i(rh,"tryToMatchStrToPattern");function nh(e){return[".","\\","[","]","|","^","$","(",")","?","*","+","{"].find(r=>e.source.indexOf(r)!==-1)===void 0}o(nh,"noMetaChar");i(nh,"noMetaChar");function ah(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}o(ah,"usesLookAheadOrBehind");i(ah,"usesLookAheadOrBehind");function cu(e){let t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}o(cu,"addStickyFlag");i(cu,"addStickyFlag");function ih(e,t,r){let n=[];return Object.hasOwn(e,Ga)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ga+`> property in its definition
`,type:$e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Object.hasOwn(e,Ci)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ci+`> property in its definition
`,type:$e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Object.hasOwn(e,Ci)&&Object.hasOwn(e,Ga)&&!Object.hasOwn(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${Ga}: <${e.defaultMode}>which does not exist
`,type:$e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Object.hasOwn(e,Ci)&&Object.keys(e.modes).forEach(a=>{let s=e.modes[a];s.forEach((l,u)=>{l===void 0?n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${u}>
`,type:$e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):Object.hasOwn(l,"LONGER_ALT")&&(Array.isArray(l.LONGER_ALT)?l.LONGER_ALT:[l.LONGER_ALT]).forEach(f=>{f!==void 0&&!s.includes(f)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${f.name}> on token <${l.name}> outside of mode <${a}>
`,type:$e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),n}o(ih,"performRuntimeChecks");i(ih,"performRuntimeChecks");function sh(e,t,r){let n=[],a=!1,l=Object.values(e.modes||{}).flat().filter(Boolean).filter(c=>c[_r]!==xe.NA),u=kc(r);return t&&l.forEach(c=>{let f=Nc(c,u);if(f!==!1){let y={message:lh(c,f),type:f.issue,tokenType:c};n.push(y)}else Object.hasOwn(c,"LINE_BREAKS")?c.LINE_BREAKS===!0&&(a=!0):Ws(u,c.PATTERN)&&(a=!0)}),t&&!a&&n.push({message:`Warning: No LINE_BREAKS Found.
	This Lexer has been defined to track line and column information,
	But none of the Token Types can be identified as matching a line terminator.
	See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS 
	for details.`,type:$e.NO_LINE_BREAKS_FLAGS}),n}o(sh,"performWarningRuntimeChecks");i(sh,"performWarningRuntimeChecks");function Pc(e){let t=e.PATTERN;if(t instanceof RegExp)return!1;if(typeof t=="function")return!0;if(Object.hasOwn(t,"exec"))return!0;if(typeof t=="string")return!1;throw Error("non exhaustive match")}o(Pc,"isCustomPattern");i(Pc,"isCustomPattern");function oh(e){return typeof e=="string"&&e.length===1?e.charCodeAt(0):!1}o(oh,"isShortPattern");i(oh,"isShortPattern");var $R={test:i(function(e){let t=e.length;for(let r=this.lastIndex;r<t;r++){let n=e.charCodeAt(r);if(n===10)return this.lastIndex=r+1,!0;if(n===13)return e.charCodeAt(r+1)===10?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function Nc(e,t){if(Object.hasOwn(e,"LINE_BREAKS"))return!1;if(e.PATTERN instanceof RegExp){try{Ws(t,e.PATTERN)}catch(r){return{issue:$e.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(typeof e.PATTERN=="string")return!1;if(Pc(e))return{issue:$e.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}o(Nc,"checkLineBreaksIssues");i(Nc,"checkLineBreaksIssues");function lh(e,t){if(t.issue===$e.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
	The problem is in the <${e.name}> Token Type
	 Root cause: ${t.errMsg}.
	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===$e.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
	The problem is in the <${e.name}> Token Type
	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}o(lh,"buildLineBreakIssueMessage");i(lh,"buildLineBreakIssueMessage");function kc(e){return e.map(r=>typeof r=="string"?r.charCodeAt(0):r)}o(kc,"getCharCodes");i(kc,"getCharCodes");function is(e,t,r){e[t]===void 0?e[t]=[r]:e[t].push(r)}o(is,"addToMapOfArrays");i(is,"addToMapOfArrays");var Fa=256,ss=[];function Lt(e){return e<Fa?e:ss[e]}o(Lt,"charCodeToOptimizedIndex");i(Lt,"charCodeToOptimizedIndex");function uh(){if(ss.length===0){ss=new Array(65536);for(let e=0;e<65536;e++)ss[e]=e>255?255+~~(e/255):e}}o(uh,"initCharCodeToOptimizedIndexMap");i(uh,"initCharCodeToOptimizedIndexMap");function zn(e,t){let r=e.tokenTypeIdx;return r===t.tokenTypeIdx?!0:t.isParent===!0&&t.categoryMatchesMap[r]===!0}o(zn,"tokenStructuredMatcher");i(zn,"tokenStructuredMatcher");function Qa(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}o(Qa,"tokenStructuredMatcherNoCategories");i(Qa,"tokenStructuredMatcherNoCategories");var Nf=1,ch={};function Un(e){let t=fh(e);ph(t),mh(t),dh(t),t.forEach(r=>{r.isParent=r.categoryMatches.length>0})}o(Un,"augmentTokenTypes");i(Un,"augmentTokenTypes");function fh(e){let t=[...e],r=e,n=!0;for(;n;){r=r.map(s=>s.CATEGORIES).flat().filter(Boolean);let a=r.filter(s=>!t.includes(s));t=t.concat(a),a.length===0?n=!1:r=a}return t}o(fh,"expandCategories");i(fh,"expandCategories");function ph(e){e.forEach(t=>{Mc(t)||(ch[Nf]=t,t.tokenTypeIdx=Nf++),fu(t)&&!Array.isArray(t.CATEGORIES)&&(t.CATEGORIES=[t.CATEGORIES]),fu(t)||(t.CATEGORIES=[]),hh(t)||(t.categoryMatches=[]),yh(t)||(t.categoryMatchesMap={})})}o(ph,"assignTokenDefaultProps");i(ph,"assignTokenDefaultProps");function dh(e){e.forEach(t=>{t.categoryMatches=[],Object.keys(t.categoryMatchesMap).forEach(r=>{t.categoryMatches.push(ch[r].tokenTypeIdx)})})}o(dh,"assignCategoriesTokensProp");i(dh,"assignCategoriesTokensProp");function mh(e){e.forEach(t=>{Oc([],t)})}o(mh,"assignCategoriesMapProp");i(mh,"assignCategoriesMapProp");function Oc(e,t){e.forEach(r=>{t.categoryMatchesMap[r.tokenTypeIdx]=!0}),t.CATEGORIES.forEach(r=>{let n=e.concat(t);n.includes(r)||Oc(n,r)})}o(Oc,"singleAssignCategoriesToksMap");i(Oc,"singleAssignCategoriesToksMap");function Mc(e){return Object.hasOwn(e??{},"tokenTypeIdx")}o(Mc,"hasShortKeyProperty");i(Mc,"hasShortKeyProperty");function fu(e){return Object.hasOwn(e??{},"CATEGORIES")}o(fu,"hasCategoriesProperty");i(fu,"hasCategoriesProperty");function hh(e){return Object.hasOwn(e??{},"categoryMatches")}o(hh,"hasExtendingTokensTypesProperty");i(hh,"hasExtendingTokensTypesProperty");function yh(e){return Object.hasOwn(e??{},"categoryMatchesMap")}o(yh,"hasExtendingTokensTypesMapProperty");i(yh,"hasExtendingTokensTypesMapProperty");function gh(e){return Object.hasOwn(e??{},"tokenTypeIdx")}o(gh,"isTokenType");i(gh,"isTokenType");var pu={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,r,n,a,s){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`}},$e;(function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})($e||($e={}));var ja={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:pu,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(ja);var xe=class{static{o(this,"Lexer")}static{i(this,"Lexer")}constructor(e,t=ja){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.cachedGroupKeys=[],this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(n,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join("	");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${s}--> <${n}>`);let{time:l,value:u}=wc(a),c=l>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&c(`${s}<-- <${n}> time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof t=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
a boolean 2nd argument is no longer supported`);this.config=Object.assign({},ja,t);let r=this.config.traceInitPerf;r===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof r=="number"&&(this.traceInitMaxIdent=r,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let n,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===ja.lineTerminatorsPattern)this.config.lineTerminatorsPattern=$R;else if(this.config.lineTerminatorCharacters===ja.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Array.isArray(e)?n={modes:{defaultMode:[...e]},defaultMode:Ga}:(a=!1,n=Object.assign({},e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(ih(n,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(sh(n,this.trackStartLines,this.config.lineTerminatorCharacters))})),n.modes=n.modes?n.modes:{},Object.entries(n.modes).forEach(([l,u])=>{n.modes[l]=u.filter(c=>c!==void 0)});let s=Object.keys(n.modes);if(Object.entries(n.modes).forEach(([l,u])=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Bm(u,s))}),this.lexerDefinitionErrors.length===0){Un(u);let c;this.TRACE_INIT("analyzeTokenTypes",()=>{c=Um(u,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=c.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=c.charCodeToPatternIdxToConfig,this.emptyGroups=Object.assign({},this.emptyGroups,c.emptyGroups),this.hasCustom=c.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=c.canBeOptimized}})}),this.defaultMode=n.defaultMode,this.cachedGroupKeys=Object.keys(this.emptyGroups),this.lexerDefinitionErrors.length>0&&!this.config.deferDefinitionErrorsHandling){let u=this.lexerDefinitionErrors.map(c=>c.message).join(`-----------------------
`);throw new Error(`Errors detected in definition of Lexer:
`+u)}this.lexerDefinitionWarning.forEach(l=>{Sc(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(a&&(this.handleModes=()=>{}),this.trackStartLines===!1&&(this.computeNewColumn=l=>l),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=()=>{}),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=Object.entries(this.canModeBeOptimized).reduce((u,[c,f])=>(f===!1&&u.push(c),u),[]);if(t.ensureOptimizations&&l.length>0)throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized.
	 Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
	 Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Gm()}),this.TRACE_INIT("toFastProperties",()=>{Ic(this)})})}tokenize(e,t=this.defaultMode){if(this.lexerDefinitionErrors.length>0){let n=this.lexerDefinitionErrors.map(a=>a.message).join(`-----------------------
`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
`+n)}return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let r,n,a,s,l,u,c,f,d,y,g,m,E,$,T,R=e,w=R.length,b=0,M=0,L=this.hasCustom?0:Math.floor(e.length/10),G=new Array(L),K=[],Z=this.trackStartLines?1:void 0,ne=this.trackStartLines?1:void 0,X={};for(let H=0;H<this.cachedGroupKeys.length;H++)X[this.cachedGroupKeys[H]]=[];let D=this.trackStartLines,N=this.config.lineTerminatorsPattern,F=0,j=[],P=[],A=[],v=[];Object.freeze(v);let _=!1,k=i(H=>{if(A.length===1&&H.tokenType.PUSH_MODE===void 0){let V=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(H);K.push({offset:H.startOffset,line:H.startLine,column:H.startColumn,length:H.image.length,message:V})}else{A.pop();let V=A.at(-1);j=this.patternIdxToConfig[V],P=this.charCodeToPatternIdxToConfig[V],F=j.length;let Ee=this.canModeBeOptimized[V]&&this.config.safeMode===!1;P&&Ee?_=!0:_=!1}},"pop_mode");function S(H){A.push(H),P=this.charCodeToPatternIdxToConfig[H],j=this.patternIdxToConfig[H],F=j.length;let V=this.canModeBeOptimized[H]&&this.config.safeMode===!1;P&&V?_=!0:_=!1}o(S,"push_mode"),i(S,"push_mode"),S.call(this,t);let O,q=this.config.recoveryEnabled;for(;b<w;){u=null,d=-1;let H=R.charCodeAt(b),V;if(_){let te=Lt(H),pe=P[te];V=pe!==void 0?pe:v}else V=j;let Ee=V.length;for(r=0;r<Ee;r++){O=V[r];let te=O.pattern;switch(c=null,O.matchType){case ou:H===O.short&&(d=1,u=te);break;case as:T=te.exec(R,b,G,X),T!==null?(u=T[0],d=u.length,T.payload!==void 0&&(c=T.payload)):u=null;break;case uu:{let pe=O.asciiClass;if(pe[H]!==1){te.lastIndex=0;break}let oe=b+1;for(;pe[R.charCodeAt(oe)]===1;)oe++;d=oe-b,te.lastIndex=oe;break}case lu:te.lastIndex=b,d=this.matchLength(te,e,b);break}if(d!==-1){if(l=O.longerAlt,l!==void 0){u=e.substring(b,b+d);let pe=l.length;for(a=0;a<pe;a++){let oe=j[l[a]],be=oe.pattern;if(f=null,oe.matchType===as?(T=be.exec(R,b,G,X),T!==null?(s=T[0],T.payload!==void 0&&(f=T.payload)):s=null):(be.lastIndex=b,s=this.match(be,e,b)),s&&s.length>u.length){u=s,d=s.length,c=f,O=oe;break}}}break}}if(d!==-1){if(y=O.group,y!==void 0&&(u=u!==null?u:e.substring(b,b+d),g=O.tokenTypeIdx,m=this.createTokenInstance(u,b,g,O.tokenType,Z,ne,d),this.handlePayload(m,c),y===!1?M=this.addToken(G,M,m):X[y].push(m)),D===!0&&O.canLineTerminator===!0){let te=0,pe,oe;N.lastIndex=0;do u=u!==null?u:e.substring(b,b+d),pe=N.test(u),pe===!0&&(oe=N.lastIndex-1,te++);while(pe===!0);te!==0?(Z=Z+te,ne=d-oe,this.updateTokenEndLineColumnLocation(m,y,oe,te,Z,ne,d)):ne=this.computeNewColumn(ne,d)}else ne=this.computeNewColumn(ne,d);b=b+d,this.handleModes(O,k,S,m)}else{let te=b,pe=Z,oe=ne,be=q===!1;for(;be===!1&&b<w;)for(b++,n=0;n<F;n++){let ze=j[n],Ve=ze.pattern;switch(ze.matchType){case ou:R.charCodeAt(b)===ze.short&&(be=!0);break;case as:be=Ve.exec(R,b,G,X)!==null;break;case uu:case lu:Ve.lastIndex=b,be=Ve.exec(e)!==null;break}if(be===!0)break}if(E=b-te,ne=this.computeNewColumn(ne,E),$=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(R,te,E,pe,oe,A.at(-1)),K.push({offset:te,line:pe,column:oe,length:E,message:$}),q===!1)break}}return this.hasCustom||(G.length=M),{tokens:G,groups:X,errors:K}}handleModes(e,t,r,n){if(e.pop===!0){let a=e.push;t(n),a!==void 0&&r.call(this,a)}else e.push!==void 0&&r.call(this,e.push)}updateTokenEndLineColumnLocation(e,t,r,n,a,s,l){let u,c;t!==void 0&&(u=r===l-1,c=u?-1:0,n===1&&u===!0||(e.endLine=a+c,e.endColumn=s-1+-c))}computeNewColumn(e,t){return e+t}createOffsetOnlyToken(e,t,r,n){return{image:e,startOffset:t,tokenTypeIdx:r,tokenType:n}}createStartOnlyToken(e,t,r,n,a,s){return{image:e,startOffset:t,startLine:a,startColumn:s,tokenTypeIdx:r,tokenType:n}}createFullToken(e,t,r,n,a,s,l){return{image:e,startOffset:t,endOffset:t+l-1,startLine:a,endLine:a,startColumn:s,endColumn:s+l-1,tokenTypeIdx:r,tokenType:n}}addTokenUsingPush(e,t,r){return e.push(r),t}addTokenUsingMemberAccess(e,t,r){return e[t]=r,t++,t}handlePayloadNoCustom(e,t){}handlePayloadWithCustom(e,t){t!==null&&(e.payload=t)}match(e,t,r){return e.test(t)===!0?t.substring(r,e.lastIndex):null}matchLength(e,t,r){return e.test(t)===!0?e.lastIndex-r:-1}};xe.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.";xe.NA=/NOT_APPLICABLE/;function br(e){return Dc(e)?e.LABEL:e.name}o(br,"tokenLabel2");i(br,"tokenLabel");function Dc(e){return typeof e.LABEL=="string"&&e.LABEL!==""}o(Dc,"hasTokenLabel2");i(Dc,"hasTokenLabel");var RR="parent",kf="categories",Of="label",Mf="group",Df="push_mode",Lf="pop_mode",xf="longer_alt",Gf="line_breaks",Ff="start_chars_hint";function Lc(e){return vh(e)}o(Lc,"createToken");i(Lc,"createToken");function vh(e){let t=e.pattern,r={};if(r.name=e.name,t!==void 0&&(r.PATTERN=t),Object.hasOwn(e,RR))throw`The parent property is no longer supported.
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return Object.hasOwn(e,kf)&&(r.CATEGORIES=e[kf]),Un([r]),Object.hasOwn(e,Of)&&(r.LABEL=e[Of]),Object.hasOwn(e,Mf)&&(r.GROUP=e[Mf]),Object.hasOwn(e,Lf)&&(r.POP_MODE=e[Lf]),Object.hasOwn(e,Df)&&(r.PUSH_MODE=e[Df]),Object.hasOwn(e,xf)&&(r.LONGER_ALT=e[xf]),Object.hasOwn(e,Gf)&&(r.LINE_BREAKS=e[Gf]),Object.hasOwn(e,Ff)&&(r.START_CHARS_HINT=e[Ff]),r}o(vh,"createTokenInternal");i(vh,"createTokenInternal");var xt=Lc({name:"EOF",pattern:xe.NA});Un([xt]);function Vs(e,t,r,n,a,s,l,u){return{image:t,startOffset:r,endOffset:n,startLine:a,endLine:s,startColumn:l,endColumn:u,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}o(Vs,"createTokenInstance");i(Vs,"createTokenInstance");function Hs(e,t){return zn(e,t)}o(Hs,"tokenMatcher");i(Hs,"tokenMatcher");var bn={buildMismatchTokenMessage({expected:e,actual:t,previous:r,ruleName:n}){return`Expecting ${Dc(e)?`--> ${br(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:a}){let s="Expecting: ",u=`
but found: '`+t[0].image+"'";if(n)return s+n+u;{let y=`one of these possible Token sequences:
${e.reduce((g,m)=>g.concat(m),[]).map(g=>`[${g.map(m=>br(m)).join(", ")}]`).map((g,m)=>`  ${m+1}. ${g}`).join(`
`)}`;return s+y+u}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){let a="Expecting: ",l=`
but found: '`+t[0].image+"'";if(r)return a+r+l;{let c=`expecting at least one iteration which starts with one of these possible Token sequences::
  <${e.map(f=>`[${f.map(d=>br(d)).join(",")}]`).join(" ,")}>`;return a+c+l}}};Object.freeze(bn);var AR={buildRuleNotFoundError(e,t){return"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+`<-
inside top level rule: ->`+e.name+"<-"}},Cr={buildDuplicateFoundError(e,t){function r(d){return d instanceof ue?d.terminalType.name:d instanceof Me?d.nonTerminalName:""}o(r,"getExtraProductionArgument2"),i(r,"getExtraProductionArgument");let n=e.name,a=t[0],s=a.idx,l=nt(a),u=r(a),c=s>0,f=`->${l}${c?s:""}<- ${u?`with argument: ->${u}<-`:""}
                  appears more than once (${t.length} times) in the top level rule: ->${n}<-.                  
                  For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES 
                  `;return f=f.replace(/[ \t]+/g," "),f=f.replace(/\s\s+/g,`
`),f},buildNamespaceConflictError(e){return`Namespace conflict found in grammar.
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.
To resolve this make sure each Terminal and Non-Terminal names are unique
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(e){let t=e.prefixPath.map(a=>br(a)).join(", "),r=e.alternation.idx===0?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix
in <OR${r}> inside <${e.topLevelRule.name}> Rule,
<${t}> may appears as a prefix path in all these alternatives.
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
For Further details.`},buildAlternationAmbiguityError(e){let t=e.alternation.idx===0?"":e.alternation.idx,r=e.prefixPath.length===0,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${t}> inside <${e.topLevelRule.name}> Rule,
`;if(r)n+=`These alternatives are all empty (match no tokens), making them indistinguishable.
Only the last alternative may be empty.
`;else{let a=e.prefixPath.map(s=>br(s)).join(", ");n+=`<${a}> may appears as a prefix path in all these alternatives.
`}return n+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,n},buildEmptyRepetitionError(e){let t=nt(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
This could lead to an infinite loop.`},buildTokenNameError(e){return"deprecated"},buildEmptyAlternationError(e){return`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(e){return`An Alternation cannot have more than 256 alternatives:
<OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
 has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name,r=e.leftRecursionPath.map(s=>s.name),n=`${t} --> ${r.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar.
rule: <${t}> can be invoked from itself (directly or indirectly)
without consuming any Tokens. The grammar path that causes this is: 
 ${n}
 To fix this refactor your grammar to remove the left recursion.
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(e){return"deprecated"},buildDuplicateRuleNameError(e){let t;return e.topLevelRule instanceof xn?t=e.topLevelRule.name:t=e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function Th(e,t){let r=new ER(e,t);return r.resolveRefs(),r.errors}o(Th,"resolveGrammar");i(Th,"resolveGrammar");var ER=class extends Gn{static{o(this,"GastRefResolverVisitor")}static{i(this,"GastRefResolverVisitor")}constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){Object.values(this.nameToTopRule).forEach(e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{let r=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:r,type:De.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},CR=class extends qs{static{o(this,"AbstractNextPossibleTokensWalker")}static{i(this,"AbstractNextPossibleTokensWalker")}constructor(e,t){super(),this.topProd=e,this.path=t,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=[...this.path.ruleStack].reverse(),this.occurrenceStack=[...this.path.occurrenceStack].reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,t=[]){this.found||super.walk(e,t)}walkProdRef(e,t,r){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let n=t.concat(r);this.updateExpectedNext(),this.walk(e.referencedRule,n)}}updateExpectedNext(){this.ruleStack.length===0?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},bR=class extends CR{static{o(this,"NextAfterTokenWalker")}static{i(this,"NextAfterTokenWalker")}constructor(e,t){super(e,t),this.path=t,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,t,r){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let n=t.concat(r),a=new Ge({definition:n});this.possibleTokTypes=Fn(a),this.found=!0}}},Ys=class extends qs{static{o(this,"AbstractNextTerminalAfterProductionWalker")}static{i(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,t){super(),this.topRule=e,this.occurrence=t,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},_R=class extends Ys{static{o(this,"NextTerminalAfterManyWalker")}static{i(this,"NextTerminalAfterManyWalker")}walkMany(e,t,r){if(e.idx===this.occurrence){let n=t.concat(r)[0];this.result.isEndOfRule=n===void 0,n instanceof ue&&(this.result.token=n.terminalType,this.result.occurrence=n.idx)}else super.walkMany(e,t,r)}},jf=class extends Ys{static{o(this,"NextTerminalAfterManySepWalker")}static{i(this,"NextTerminalAfterManySepWalker")}walkManySep(e,t,r){if(e.idx===this.occurrence){let n=t.concat(r)[0];this.result.isEndOfRule=n===void 0,n instanceof ue&&(this.result.token=n.terminalType,this.result.occurrence=n.idx)}else super.walkManySep(e,t,r)}},SR=class extends Ys{static{o(this,"NextTerminalAfterAtLeastOneWalker")}static{i(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,t,r){if(e.idx===this.occurrence){let n=t.concat(r)[0];this.result.isEndOfRule=n===void 0,n instanceof ue&&(this.result.token=n.terminalType,this.result.occurrence=n.idx)}else super.walkAtLeastOne(e,t,r)}},zf=class extends Ys{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}static{i(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,t,r){if(e.idx===this.occurrence){let n=t.concat(r)[0];this.result.isEndOfRule=n===void 0,n instanceof ue&&(this.result.token=n.terminalType,this.result.occurrence=n.idx)}else super.walkAtLeastOneSep(e,t,r)}};function Is(e,t,r=[]){r=[...r];let n=[],a=0;function s(u){return u.concat(e.slice(a+1))}o(s,"remainingPathWith"),i(s,"remainingPathWith");function l(u){let c=Is(s(u),t,r);return n.concat(c)}for(o(l,"getAlternativesForProd"),i(l,"getAlternativesForProd");r.length<t&&a<e.length;){let u=e[a];if(u instanceof Ge)return l(u.definition);if(u instanceof Me)return l(u.definition);if(u instanceof Pe)n=l(u.definition);else if(u instanceof qe){let c=u.definition.concat([new Te({definition:u.definition})]);return l(c)}else if(u instanceof We){let c=[new Ge({definition:u.definition}),new Te({definition:[new ue({terminalType:u.separator})].concat(u.definition)})];return l(c)}else if(u instanceof Fe){let c=u.definition.concat([new Te({definition:[new ue({terminalType:u.separator})].concat(u.definition)})]);n=l(c)}else if(u instanceof Te){let c=u.definition.concat([new Te({definition:u.definition})]);n=l(c)}else{if(u instanceof je)return u.definition.forEach(c=>{c.definition.length!==0&&(n=l(c.definition))}),n;if(u instanceof ue)r.push(u.terminalType);else throw Error("non exhaustive match")}a++}return n.push({partialPath:r,suffixDef:e.slice(a)}),n}o(Is,"possiblePathsFrom");i(Is,"possiblePathsFrom");function $h(e,t,r,n){let a="EXIT_NONE_TERMINAL",s=[a],l="EXIT_ALTERNATIVE",u=!1,c=t.length,f=c-n-1,d=[],y=[];for(y.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});y.length!==0;){let g=y.pop();if(g===l){u&&y.at(-1).idx<=f&&y.pop();continue}let m=g.def,E=g.idx,$=g.ruleStack,T=g.occurrenceStack;if(m.length===0)continue;let R=m[0];if(R===a){let w={idx:E,def:m.slice(1),ruleStack:$.slice(0,-1),occurrenceStack:T.slice(0,-1)};y.push(w)}else if(R instanceof ue)if(E<c-1){let w=E+1,b=t[w];if(r(b,R.terminalType)){let M={idx:w,def:m.slice(1),ruleStack:$,occurrenceStack:T};y.push(M)}}else if(E===c-1)d.push({nextTokenType:R.terminalType,nextTokenOccurrence:R.idx,ruleStack:$,occurrenceStack:T}),u=!0;else throw Error("non exhaustive match");else if(R instanceof Me){let w=[...$];w.push(R.nonTerminalName);let b=[...T];b.push(R.idx);let M={idx:E,def:R.definition.concat(s,m.slice(1)),ruleStack:w,occurrenceStack:b};y.push(M)}else if(R instanceof Pe){let w={idx:E,def:m.slice(1),ruleStack:$,occurrenceStack:T};y.push(w),y.push(l);let b={idx:E,def:R.definition.concat(m.slice(1)),ruleStack:$,occurrenceStack:T};y.push(b)}else if(R instanceof qe){let w=new Te({definition:R.definition,idx:R.idx}),b=R.definition.concat([w],m.slice(1)),M={idx:E,def:b,ruleStack:$,occurrenceStack:T};y.push(M)}else if(R instanceof We){let w=new ue({terminalType:R.separator}),b=new Te({definition:[w].concat(R.definition),idx:R.idx}),M=R.definition.concat([b],m.slice(1)),L={idx:E,def:M,ruleStack:$,occurrenceStack:T};y.push(L)}else if(R instanceof Fe){let w={idx:E,def:m.slice(1),ruleStack:$,occurrenceStack:T};y.push(w),y.push(l);let b=new ue({terminalType:R.separator}),M=new Te({definition:[b].concat(R.definition),idx:R.idx}),L=R.definition.concat([M],m.slice(1)),G={idx:E,def:L,ruleStack:$,occurrenceStack:T};y.push(G)}else if(R instanceof Te){let w={idx:E,def:m.slice(1),ruleStack:$,occurrenceStack:T};y.push(w),y.push(l);let b=new Te({definition:R.definition,idx:R.idx}),M=R.definition.concat([b],m.slice(1)),L={idx:E,def:M,ruleStack:$,occurrenceStack:T};y.push(L)}else if(R instanceof je)for(let w=R.definition.length-1;w>=0;w--){let b=R.definition[w],M={idx:E,def:b.definition.concat(m.slice(1)),ruleStack:$,occurrenceStack:T};y.push(M),y.push(l)}else if(R instanceof Ge)y.push({idx:E,def:R.definition.concat(m.slice(1)),ruleStack:$,occurrenceStack:T});else if(R instanceof xn)y.push(Rh(R,E,$,T));else throw Error("non exhaustive match")}return d}o($h,"nextPossibleTokensAfter");i($h,"nextPossibleTokensAfter");function Rh(e,t,r,n){let a=[...r];a.push(e.name);let s=[...n];return s.push(1),{idx:t,def:e.definition,ruleStack:a,occurrenceStack:s}}o(Rh,"expandTopLevelRule");i(Rh,"expandTopLevelRule");var me;(function(e){e[e.OPTION=0]="OPTION",e[e.REPETITION=1]="REPETITION",e[e.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",e[e.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",e[e.ALTERNATION=5]="ALTERNATION"})(me||(me={}));function Xs(e){if(e instanceof Pe||e==="Option")return me.OPTION;if(e instanceof Te||e==="Repetition")return me.REPETITION;if(e instanceof qe||e==="RepetitionMandatory")return me.REPETITION_MANDATORY;if(e instanceof We||e==="RepetitionMandatoryWithSeparator")return me.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof Fe||e==="RepetitionWithSeparator")return me.REPETITION_WITH_SEPARATOR;if(e instanceof je||e==="Alternation")return me.ALTERNATION;throw Error("non exhaustive match")}o(Xs,"getProdType");i(Xs,"getProdType");function du(e){let{occurrence:t,rule:r,prodType:n,maxLookahead:a}=e,s=Xs(n);return s===me.ALTERNATION?yi(t,r,a):gi(t,r,s,a)}o(du,"getLookaheadPaths");i(du,"getLookaheadPaths");function Ah(e,t,r,n,a,s){let l=yi(e,t,r),u=Gc(l)?Qa:zn;return s(l,n,u,a)}o(Ah,"buildLookaheadFuncForOr");i(Ah,"buildLookaheadFuncForOr");function Eh(e,t,r,n,a,s){let l=gi(e,t,a,r),u=Gc(l)?Qa:zn;return s(l[0],u,n)}o(Eh,"buildLookaheadFuncForOptionalProd");i(Eh,"buildLookaheadFuncForOptionalProd");function Ch(e,t,r,n){let a=e.length,s=e.every(l=>l.every(u=>u.length===1));if(t)return function(l){let u=l.map(c=>c.GATE);for(let c=0;c<a;c++){let f=e[c],d=f.length,y=u[c];if(!(y!==void 0&&y.call(this)===!1))e:for(let g=0;g<d;g++){let m=f[g],E=m.length;for(let $=0;$<E;$++){let T=this.LA_FAST($+1);if(r(T,m[$])===!1)continue e}return c}}};if(s&&!n){let u=e.map(c=>c.flat()).reduce((c,f,d)=>(f.forEach(y=>{y.tokenTypeIdx in c||(c[y.tokenTypeIdx]=d),y.categoryMatches.forEach(g=>{Object.hasOwn(c,g)||(c[g]=d)})}),c),{});return function(){let c=this.LA_FAST(1);return u[c.tokenTypeIdx]}}else return function(){for(let l=0;l<a;l++){let u=e[l],c=u.length;e:for(let f=0;f<c;f++){let d=u[f],y=d.length;for(let g=0;g<y;g++){let m=this.LA_FAST(g+1);if(r(m,d[g])===!1)continue e}return l}}}}o(Ch,"buildAlternativesLookAheadFunc");i(Ch,"buildAlternativesLookAheadFunc");function bh(e,t,r){let n=e.every(s=>s.length===1),a=e.length;if(n&&!r){let s=e.flat();if(s.length===1&&s[0].categoryMatches.length===0){let u=s[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===u}}else{let l=s.reduce((u,c,f)=>(u[c.tokenTypeIdx]=!0,c.categoryMatches.forEach(d=>{u[d]=!0}),u),[]);return function(){let u=this.LA_FAST(1);return l[u.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<a;s++){let l=e[s],u=l.length;for(let c=0;c<u;c++){let f=this.LA_FAST(c+1);if(t(f,l[c])===!1)continue e}return!0}return!1}}o(bh,"buildSingleAlternativeLookaheadFunction");i(bh,"buildSingleAlternativeLookaheadFunction");var wR=class extends qs{static{o(this,"RestDefinitionFinderWalker")}static{i(this,"RestDefinitionFinderWalker")}constructor(e,t,r){super(),this.topProd=e,this.targetOccurrence=t,this.targetProdType=r}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,t,r,n){return e.idx===this.targetOccurrence&&this.targetProdType===t?(this.restDef=r.concat(n),!0):!1}walkOption(e,t,r){this.checkIsTarget(e,me.OPTION,t,r)||super.walkOption(e,t,r)}walkAtLeastOne(e,t,r){this.checkIsTarget(e,me.REPETITION_MANDATORY,t,r)||super.walkOption(e,t,r)}walkAtLeastOneSep(e,t,r){this.checkIsTarget(e,me.REPETITION_MANDATORY_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}walkMany(e,t,r){this.checkIsTarget(e,me.REPETITION,t,r)||super.walkOption(e,t,r)}walkManySep(e,t,r){this.checkIsTarget(e,me.REPETITION_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}},_h=class extends Gn{static{o(this,"InsideDefinitionFinderVisitor")}static{i(this,"InsideDefinitionFinderVisitor")}constructor(e,t,r){super(),this.targetOccurrence=e,this.targetProdType=t,this.targetRef=r,this.result=[]}checkIsTarget(e,t){e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,me.OPTION)}visitRepetition(e){this.checkIsTarget(e,me.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,me.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,me.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,me.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,me.ALTERNATION)}};function mu(e){let t=new Array(e);for(let r=0;r<e;r++)t[r]=[];return t}o(mu,"initializeArrayOfArrays");i(mu,"initializeArrayOfArrays");function os(e){let t=[""];for(let r=0;r<e.length;r++){let n=e[r],a=[];for(let s=0;s<t.length;s++){let l=t[s];a.push(l+"_"+n.tokenTypeIdx);for(let u=0;u<n.categoryMatches.length;u++){let c="_"+n.categoryMatches[u];a.push(l+c)}}t=a}return t}o(os,"pathToHashKeys");i(os,"pathToHashKeys");function Sh(e,t,r){for(let n=0;n<e.length;n++){if(n===r)continue;let a=e[n];for(let s=0;s<t.length;s++){let l=t[s];if(a[l]===!0)return!1}}return!0}o(Sh,"isUniquePrefixHash");i(Sh,"isUniquePrefixHash");function xc(e,t){let r=e.map(l=>Is([l],1)),n=mu(r.length),a=r.map(l=>{let u={};return l.forEach(c=>{os(c.partialPath).forEach(d=>{u[d]=!0})}),u}),s=r;for(let l=1;l<=t;l++){let u=s;s=mu(u.length);for(let c=0;c<u.length;c++){let f=u[c];for(let d=0;d<f.length;d++){let y=f[d].partialPath,g=f[d].suffixDef,m=os(y);if(Sh(a,m,c)||g.length===0||y.length===t){let $=n[c];if(Ps($,y)===!1){$.push(y);for(let T=0;T<m.length;T++){let R=m[T];a[c][R]=!0}}}else{let $=Is(g,l+1,y);s[c]=s[c].concat($),$.forEach(T=>{os(T.partialPath).forEach(w=>{a[c][w]=!0})})}}}}return n}o(xc,"lookAheadSequenceFromAlternatives");i(xc,"lookAheadSequenceFromAlternatives");function yi(e,t,r,n){let a=new _h(e,me.ALTERNATION,n);return t.accept(a),xc(a.result,r)}o(yi,"getLookaheadPathsForOr");i(yi,"getLookaheadPathsForOr");function gi(e,t,r,n){let a=new _h(e,r);t.accept(a);let s=a.result,u=new wR(t,e,r).startWalking(),c=new Ge({definition:s}),f=new Ge({definition:u});return xc([c,f],n)}o(gi,"getLookaheadPathsForOptionalProd");i(gi,"getLookaheadPathsForOptionalProd");function Ps(e,t){e:for(let r=0;r<e.length;r++){let n=e[r];if(n.length===t.length){for(let a=0;a<n.length;a++){let s=t[a],l=n[a];if((s===l||l.categoryMatchesMap[s.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}o(Ps,"containsPath");i(Ps,"containsPath");function wh(e,t){return e.length<t.length&&e.every((r,n)=>{let a=t[n];return r===a||a.categoryMatchesMap[r.tokenTypeIdx]})}o(wh,"isStrictPrefixOfPath");i(wh,"isStrictPrefixOfPath");function Gc(e){return e.every(t=>t.every(r=>r.every(n=>n.categoryMatches.length===0)))}o(Gc,"areTokenCategoriesNotUsed");i(Gc,"areTokenCategoriesNotUsed");function Ih(e){return e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName}).map(r=>Object.assign({type:De.CUSTOM_LOOKAHEAD_VALIDATION},r))}o(Ih,"validateLookahead");i(Ih,"validateLookahead");function Ph(e,t,r,n){let a=e.flatMap(c=>Nh(c,r)),s=zh(e,t,r),l=e.flatMap(c=>xh(c,r)),u=e.flatMap(c=>Oh(c,e,n,r));return a.concat(s,l,u)}o(Ph,"validateGrammar");i(Ph,"validateGrammar");function Nh(e,t){let r=new IR;e.accept(r);let n=r.allProductions,a=Object.groupBy(n,kh),s=Object.fromEntries(Object.entries(a).filter(([u,c])=>c.length>1));return Object.values(s).map(u=>{let c=u[0],f=t.buildDuplicateFoundError(e,u),d=nt(c),y={message:f,type:De.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:d,occurrence:c.idx},g=Fc(c);return g&&(y.parameter=g),y})}o(Nh,"validateDuplicateProductions");i(Nh,"validateDuplicateProductions");function kh(e){return`${nt(e)}_#_${e.idx}_#_${Fc(e)}`}o(kh,"identifyProductionForDuplicates");i(kh,"identifyProductionForDuplicates");function Fc(e){return e instanceof ue?e.terminalType.name:e instanceof Me?e.nonTerminalName:""}o(Fc,"getExtraProductionArgument");i(Fc,"getExtraProductionArgument");var IR=class extends Gn{static{o(this,"OccurrenceValidationCollector")}static{i(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function Oh(e,t,r,n){let a=[];if(t.reduce((l,u)=>u.name===e.name?l+1:l,0)>1){let l=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});a.push({message:l,type:De.DUPLICATE_RULE_NAME,ruleName:e.name})}return a}o(Oh,"validateRuleDoesNotAlreadyExist");i(Oh,"validateRuleDoesNotAlreadyExist");function Mh(e,t,r){let n=[],a;return t.includes(e)||(a=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:a,type:De.INVALID_RULE_OVERRIDE,ruleName:e})),n}o(Mh,"validateRuleIsOverridden");i(Mh,"validateRuleIsOverridden");function jc(e,t,r,n=[]){let a=[],s=qa(t.definition);if(s.length===0)return[];{let l=e.name;s.includes(e)&&a.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:De.LEFT_RECURSION,ruleName:l});let c=n.concat([e]),d=s.filter(y=>!c.includes(y)).flatMap(y=>{let g=[...n];return g.push(y),jc(e,y,r,g)});return a.concat(d)}}o(jc,"validateNoLeftRecursion");i(jc,"validateNoLeftRecursion");function qa(e){let t=[];if(e.length===0)return t;let r=e[0];if(r instanceof Me)t.push(r.referencedRule);else if(r instanceof Ge||r instanceof Pe||r instanceof qe||r instanceof We||r instanceof Fe||r instanceof Te)t=t.concat(qa(r.definition));else if(r instanceof je)t=r.definition.map(s=>qa(s.definition)).flat();else if(!(r instanceof ue))throw Error("non exhaustive match");let n=Za(r),a=e.length>1;if(n&&a){let s=e.slice(1);return t.concat(qa(s))}else return t}o(qa,"getFirstNoneTerminal");i(qa,"getFirstNoneTerminal");var zc=class extends Gn{static{o(this,"OrCollector")}static{i(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function Dh(e,t){let r=new zc;return e.accept(r),r.alternations.flatMap(s=>s.definition.slice(0,-1).flatMap((u,c)=>$h([u],[],zn,1).length===0?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:s,emptyChoiceIdx:c}),type:De.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:s.idx,alternative:c+1}]:[]))}o(Dh,"validateEmptyOrAlternative");i(Dh,"validateEmptyOrAlternative");function Lh(e,t,r){let n=new zc;e.accept(n);let a=n.alternations;return a=a.filter(l=>l.ignoreAmbiguities!==!0),a.flatMap(l=>{let u=l.idx,c=l.maxLookahead||t,f=yi(u,e,c,l),d=Fh(f,l,e,r),y=jh(f,l,e,r);return d.concat(y)})}o(Lh,"validateAmbiguousAlternationAlternatives");i(Lh,"validateAmbiguousAlternationAlternatives");var PR=class extends Gn{static{o(this,"RepetitionCollector")}static{i(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function xh(e,t){let r=new zc;return e.accept(r),r.alternations.flatMap(s=>s.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:s}),type:De.TOO_MANY_ALTS,ruleName:e.name,occurrence:s.idx}]:[])}o(xh,"validateTooManyAlts");i(xh,"validateTooManyAlts");function Gh(e,t,r){let n=[];return e.forEach(a=>{let s=new PR;a.accept(s),s.allProductions.forEach(u=>{let c=Xs(u),f=u.maxLookahead||t,d=u.idx;if(gi(d,a,c,f)[0].flat().length===0){let m=r.buildEmptyRepetitionError({topLevelRule:a,repetition:u});n.push({message:m,type:De.NO_NON_EMPTY_LOOKAHEAD,ruleName:a.name})}})}),n}o(Gh,"validateSomeNonEmptyLookaheadPath");i(Gh,"validateSomeNonEmptyLookaheadPath");function Fh(e,t,r,n){let a=[];return e.reduce((u,c,f)=>(t.definition[f].ignoreAmbiguities===!0||c.forEach(d=>{let y=[f];e.forEach((g,m)=>{f!==m&&Ps(g,d)&&t.definition[m].ignoreAmbiguities!==!0&&y.push(m)}),y.length>1&&!Ps(a,d)&&(a.push(d),u.push({alts:y,path:d}))}),u),[]).map(u=>{let c=u.alts.map(d=>d+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:c,prefixPath:u.path}),type:De.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:u.alts}})}o(Fh,"checkAlternativesAmbiguities");i(Fh,"checkAlternativesAmbiguities");function jh(e,t,r,n){let a=e.reduce((l,u,c)=>{let f=u.map(d=>({idx:c,path:d}));return l.concat(f)},[]);return a.flatMap(l=>{if(t.definition[l.idx].ignoreAmbiguities===!0)return[];let c=l.idx,f=l.path;return a.filter(g=>t.definition[g.idx].ignoreAmbiguities!==!0&&g.idx<c&&wh(g.path,f)).map(g=>{let m=[g.idx+1,c+1],E=t.idx===0?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:m,prefixPath:g.path}),type:De.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:E,alternatives:m}})})}o(jh,"checkPrefixAlternativesAmbiguities");i(jh,"checkPrefixAlternativesAmbiguities");function zh(e,t,r){let n=[],a=t.map(s=>s.name);return e.forEach(s=>{let l=s.name;if(a.includes(l)){let u=r.buildNamespaceConflictError(s);n.push({message:u,type:De.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:l})}}),n}o(zh,"checkTerminalAndNoneTerminalsNameSpace");i(zh,"checkTerminalAndNoneTerminalsNameSpace");function Uh(e){let t=Object.assign({errMsgProvider:AR},e),r={};return e.rules.forEach(n=>{r[n.name]=n}),Th(r,t.errMsgProvider)}o(Uh,"resolveGrammar2");i(Uh,"resolveGrammar");function Kh(e){var t;let r=(t=e.errMsgProvider)!==null&&t!==void 0?t:Cr;return Ph(e.rules,e.tokenTypes,r,e.grammarName)}o(Kh,"validateGrammar2");i(Kh,"validateGrammar");var Bh="MismatchedTokenException",qh="NoViableAltException",Wh="EarlyExitException",Vh="NotAllInputParsedException",Hh=[Bh,qh,Wh,Vh];Object.freeze(Hh);function ei(e){return Hh.includes(e.name)}o(ei,"isRecognitionException");i(ei,"isRecognitionException");var Js=class extends Error{static{o(this,"RecognitionException")}static{i(this,"RecognitionException")}constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Yh=class extends Js{static{o(this,"MismatchedTokenException")}static{i(this,"MismatchedTokenException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=Bh}},NR=class extends Js{static{o(this,"NoViableAltException")}static{i(this,"NoViableAltException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=qh}},kR=class extends Js{static{o(this,"NotAllInputParsedException")}static{i(this,"NotAllInputParsedException")}constructor(e,t){super(e,t),this.name=Vh}},OR=class extends Js{static{o(this,"EarlyExitException")}static{i(this,"EarlyExitException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=Wh}},Ro={},Xh="InRuleRecoveryException",MR=class extends Error{static{o(this,"InRuleRecoveryException")}static{i(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=Xh}},DR=class{static{o(this,"Recoverable")}static{i(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap=[],this.resyncFollows={},this.recoveryEnabled=Object.hasOwn(e,"recoveryEnabled")?e.recoveryEnabled:Gt.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Jh)}getTokenToInsert(e){let t=Vs(e,"",-1,-1,-1,-1,-1,-1);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,r,n){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,c=this.LA_FAST(1),f=this.LA_FAST(1),d=i(()=>{let y=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:c,previous:y,ruleName:this.getCurrRuleFullName()}),m=new Yh(g,c,this.LA(0));m.resyncedTokens=l.slice(0,-1),this.SAVE_ERROR(m)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,n)){d();return}else if(r.call(this)){d(),e.apply(this,t);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,t,r){return!(r===!1||this.tokenMatcher(this.LA_FAST(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t)))}getNextPossibleTokenTypes(e){let t=e.ruleStack[0],n=this.getGAstProductions()[t];return new bR(n,e).startWalking()}getFollowsForInRuleRecovery(e,t){let r=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(r)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let r=this.SKIP_TOKEN();return this.consumeToken(),r}throw new MR("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e)||t.length===0)return!1;let r=this.LA_FAST(1);return t.find(a=>this.tokenMatcher(r,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let t=this.getCurrFollowKey();return this.getFollowSetFromFollowKey(t).includes(e)}findReSyncTokenType(){let e=this.flattenFollowSet(),t=this.LA_FAST(1),r=2;for(;;){let n=e.find(a=>Hs(t,a));if(n!==void 0)return n;t=this.LA(r),r++}}getCurrFollowKey(){if(this.RULE_STACK_IDX===0)return Ro;let e=this.currRuleShortName,t=this.getLastExplicitRuleOccurrenceIndex(),r=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(r)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK,r=this.RULE_STACK_IDX+1,n=new Array(r);for(let a=0;a<r;a++)a===0?n[a]=Ro:n[a]={ruleName:this.shortRuleNameToFullName(e[a]),idxInCallingRule:t[a],inRule:this.shortRuleNameToFullName(e[a-1])};return n}flattenFollowSet(){return this.buildFullFollowKeyStack().map(t=>this.getFollowSetFromFollowKey(t)).flat()}getFollowSetFromFollowKey(e){if(e===Ro)return[xt];let t=e.ruleName+e.idxInCallingRule+Dm+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,xt)||t.push(e),t}reSyncTo(e){let t=[],r=this.LA_FAST(1);for(;this.tokenMatcher(r,e)===!1;)r=this.SKIP_TOKEN(),this.addToResyncTokens(r,t);return t.slice(0,-1)}attemptInRepetitionRecovery(e,t,r,n,a,s,l){}getCurrentGrammarPath(e,t){let r=this.getHumanReadableRuleStack(),n=this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1);return{ruleStack:r,occurrenceStack:n,lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){let e=this.RULE_STACK_IDX+1,t=new Array(e);for(let r=0;r<e;r++)t[r]=this.shortRuleNameToFullName(this.RULE_STACK[r]);return t}};function Jh(e,t,r,n,a,s,l){var u,c,f;let d=n|a,y=(u=(c=this.firstAfterRepMap)[f=this.currRuleShortName])!==null&&u!==void 0?u:c[f]=[],g=y[d];if(g===void 0){let T=this.getCurrRuleFullName(),R=this.getGAstProductions()[T];g=new s(R,a).startWalking(),y[d]=g}let m=g.token,E=g.occurrence,$=g.isEndOfRule;this.RULE_STACK_IDX===0&&$&&m===void 0&&(m=xt,E=1),!(m===void 0||E===void 0)&&this.shouldInRepetitionRecoveryBeTried(m,E,l)&&this.tryInRepetitionRecovery(e,t,r,m)}o(Jh,"attemptInRepetitionRecovery");i(Jh,"attemptInRepetitionRecovery");var Kn=8,Zh=1<<Kn,Qh=2<<Kn,hu=3<<Kn,yu=4<<Kn,gu=5<<Kn,ls=6<<Kn,Uc=class{static{o(this,"LLkLookaheadStrategy")}static{i(this,"LLkLookaheadStrategy")}constructor(e){var t;this.maxLookahead=(t=e?.maxLookahead)!==null&&t!==void 0?t:Gt.maxLookahead}validate(e){let t=this.validateNoLeftRecursion(e.rules);if(t.length===0){let r=this.validateEmptyOrAlternatives(e.rules),n=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...t,...r,...n,...a]}return t}validateNoLeftRecursion(e){return e.flatMap(t=>jc(t,t,Cr))}validateEmptyOrAlternatives(e){return e.flatMap(t=>Dh(t,Cr))}validateAmbiguousAlternationAlternatives(e,t){return e.flatMap(r=>Lh(r,t,Cr))}validateSomeNonEmptyLookaheadPath(e,t){return Gh(e,t,Cr)}buildLookaheadForAlternation(e){return Ah(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Ch)}buildLookaheadForOptional(e){return Eh(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,Xs(e.prodType),bh)}},LR=class{static{o(this,"LooksAhead")}static{i(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Object.hasOwn(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Gt.dynamicTokensEnabled,this.maxLookahead=Object.hasOwn(e,"maxLookahead")?e.maxLookahead:Gt.maxLookahead,this.lookaheadStrategy=Object.hasOwn(e,"lookaheadStrategy")?e.lookaheadStrategy:new Uc({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=[],this.currRuleLookaheadFuncs=[]}preComputeLookaheadFunctions(e){e.forEach(t=>{this.TRACE_INIT(`${t.name} Rule Lookahead`,()=>{let{alternation:r,repetition:n,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=ey(t);r.forEach(c=>{let f=c.idx===0?"":c.idx;this.TRACE_INIT(`${nt(c)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:c.idx,rule:t,maxLookahead:c.maxLookahead||this.maxLookahead,hasPredicates:c.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled});this.setLaFuncCache(this.fullRuleNameToShort[t.name],Zh|c.idx,d)})}),n.forEach(c=>{this.computeLookaheadFunc(t,c.idx,hu,"Repetition",c.maxLookahead,nt(c))}),a.forEach(c=>{this.computeLookaheadFunc(t,c.idx,Qh,"Option",c.maxLookahead,nt(c))}),s.forEach(c=>{this.computeLookaheadFunc(t,c.idx,yu,"RepetitionMandatory",c.maxLookahead,nt(c))}),l.forEach(c=>{this.computeLookaheadFunc(t,c.idx,ls,"RepetitionMandatoryWithSeparator",c.maxLookahead,nt(c))}),u.forEach(c=>{this.computeLookaheadFunc(t,c.idx,gu,"RepetitionWithSeparator",c.maxLookahead,nt(c))})})})}computeLookaheadFunc(e,t,r,n,a,s){this.TRACE_INIT(`${s}${t===0?"":t}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:n});this.setLaFuncCache(this.fullRuleNameToShort[e.name],r|t,l)})}setLaFuncCache(e,t,r){let n=this.lookAheadFuncsCache[e];n===void 0&&(n=[],this.lookAheadFuncsCache[e]=n),n[t]=r}},xR=class extends Gn{static{o(this,"DslMethodsCollectorVisitor")}static{i(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},bi=new xR;function ey(e){bi.reset(),e.accept(bi);let t=bi.dslMethods;return bi.reset(),t}o(ey,"collectMethods");i(ey,"collectMethods");function vu(e,t){e.startOffset===-1?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset&&(e.endOffset=t.endOffset)}o(vu,"setNodeLocationOnlyOffset");i(vu,"setNodeLocationOnlyOffset");function Tu(e,t){e.startOffset===-1?(e.startOffset=t.startOffset,e.startColumn=t.startColumn,e.startLine=t.startLine,e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine):e.endOffset<t.endOffset&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}o(Tu,"setNodeLocationFull");i(Tu,"setNodeLocationFull");function ty(e,t,r){e.children[r]===void 0?e.children[r]=[t]:e.children[r].push(t)}o(ty,"addTerminalToCst");i(ty,"addTerminalToCst");function ry(e,t,r){e.children[t]===void 0?e.children[t]=[r]:e.children[t].push(r)}o(ry,"addNoneTerminalToCst");i(ry,"addNoneTerminalToCst");var GR="name";function Kc(e,t){Object.defineProperty(e,GR,{enumerable:!1,configurable:!0,writable:!1,value:t})}o(Kc,"defineNameProp");i(Kc,"defineNameProp");function ny(e,t){let r=Object.keys(e),n=r.length;for(let a=0;a<n;a++){let s=r[a],l=e[s],u=l.length;for(let c=0;c<u;c++){let f=l[c];f.tokenTypeIdx===void 0&&this[f.name](f.children,t)}}}o(ny,"defaultVisit");i(ny,"defaultVisit");function ay(e,t){let r=i(function(){},"derivedConstructor");Kc(r,e+"BaseSemantics");let n={visit:i(function(a,s){if(Array.isArray(a)&&(a=a[0]),a!==void 0)return this[a.name](a.children,s)},"visit"),validateVisitor:i(function(){let a=sy(this,t);if(a.length!==0){let s=a.map(l=>l.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
	${s.join(`

`).replace(/\n/g,`
	`)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=t,r}o(ay,"createBaseSemanticVisitorConstructor");i(ay,"createBaseSemanticVisitorConstructor");function iy(e,t,r){let n=i(function(){},"derivedConstructor");Kc(n,e+"BaseSemanticsWithDefaults");let a=Object.create(r.prototype);return t.forEach(s=>{a[s]=ny}),n.prototype=a,n.prototype.constructor=n,n}o(iy,"createBaseVisitorConstructorWithDefaults");i(iy,"createBaseVisitorConstructorWithDefaults");var $u;(function(e){e[e.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",e[e.MISSING_METHOD=1]="MISSING_METHOD"})($u||($u={}));function sy(e,t){return oy(e,t)}o(sy,"validateVisitor");i(sy,"validateVisitor");function oy(e,t){return t.filter(a=>typeof e[a]!="function").map(a=>({msg:`Missing visitor method: <${a}> on ${e.constructor.name} CST Visitor.`,type:$u.MISSING_METHOD,methodName:a})).filter(Boolean)}o(oy,"validateMissingCstMethods");i(oy,"validateMissingCstMethods");var FR=class{static{o(this,"TreeBuilder")}static{i(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Object.hasOwn(e,"nodeLocationTracking")?e.nodeLocationTracking:Gt.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=()=>{},this.cstFinallyStateUpdate=()=>{},this.cstPostTerminal=()=>{},this.cstPostNonTerminal=()=>{},this.cstPostRule=()=>{};else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Tu,this.setNodeLocationFromNode=Tu,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=vu,this.setNodeLocationFromNode=vu,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=()=>{},this.setInitialNodeLocation=()=>{};else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:-1,endOffset:-1}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA_FAST(1).startOffset,endOffset:-1}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:-1,startLine:-1,startColumn:-1,endOffset:-1,endLine:-1,endColumn:-1}}setInitialNodeLocationFullRegular(e){let t=this.LA_FAST(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:-1,endLine:-1,endColumn:-1}}cstInvocationStateUpdate(e){let t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let t=this.LA(0),r=e.location;r.startOffset!==-1&&r.startOffset<=t.startOffset?(r.endOffset=t.endOffset,r.endLine=t.endLine,r.endColumn=t.endColumn):(r.startOffset=-1,r.startLine=-1,r.startColumn=-1)}cstPostRuleOnlyOffset(e){let t=this.LA(0),r=e.location;r.startOffset!==-1&&r.startOffset<=t.startOffset?r.endOffset=t.endOffset:r.startOffset=-1}cstPostTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];ty(r,t,e),this.setNodeLocationFromToken(r.location,t)}cstPostNonTerminal(e,t){let r=this.CST_STACK[this.CST_STACK.length-1];ry(r,t,e),this.setNodeLocationFromNode(r.location,e.location)}get currCSTNode(){let e=this;return e.CST_STACK[e.CST_STACK.length-1]}getBaseCstVisitorConstructor(){if(this.baseCstVisitorConstructor===void 0){let e=ay(this.className,Object.keys(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(this.baseCstVisitorWithDefaultsConstructor===void 0){let e=iy(this.className,Object.keys(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getPreviousExplicitRuleShortName(){return this.RULE_STACK[this.RULE_STACK_IDX-1]}getLastExplicitRuleOccurrenceIndex(){return this.RULE_OCCURRENCE_STACK[this.RULE_OCCURRENCE_STACK_IDX]}},jR=class{static{o(this,"LexerAdapter")}static{i(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVectorLength-2?(this.consumeToken(),this.LA_FAST(1)):Nn}LA_FAST(e){let t=this.currIdx+e;return this.tokVector[t]}LA(e){let t=this.currIdx+e;return t<0||this.tokVectorLength<=t?Nn:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVectorLength-1}getLexerPosition(){return this.exportLexerState()}},zR=class{static{o(this,"RecognizerApi")}static{i(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,t,r){return this.consumeInternal(t,e,r)}subrule(e,t,r){return this.subruleInternal(t,e,r)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,r=Ns){if(this.definedRulesNames.includes(e)){let s={message:Cr.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:De.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let n=this.defineRule(e,t,r);return this[e]=n,n}OVERRIDE_RULE(e,t,r=Ns){let n=Mh(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(n);let a=this.defineRule(e,t,r);return this[e]=a,a}BACKTRACK(e,t){var r;let n=(r=e.coreRule)!==null&&r!==void 0?r:e;return function(){this.isBackTrackingStack.push(1);let a=this.saveRecogState();try{return n.apply(this,t),!0}catch(s){if(ei(s))return!1;throw s}finally{this.reloadRecogState(a),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Im(Object.values(this.gastProductionsCache))}},UR=class{static{o(this,"RecognizerEngine")}static{i(this,"RecognizerEngine")}initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull=[],this.fullRuleNameToShort={},this.ruleShortNameIdx=0,this.tokenMatcher=Qa,this.subruleIdx=0,this.currRuleShortName=-1,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK=[],this.RULE_OCCURRENCE_STACK_IDX=-1,this.gastProductionsCache={},Object.hasOwn(t,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
	See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
	For Further details.`);if(Array.isArray(e)){if(e.length===0)throw Error(`A Token Vocabulary cannot be empty.
	Note that the first argument for the parser constructor
	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.
	See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
	For Further details.`)}if(Array.isArray(e))this.tokensMap=e.reduce((a,s)=>(a[s.name]=s,a),{});else if(Object.hasOwn(e,"modes")&&Object.values(e.modes).flat().every(gh)){let a=Object.values(e.modes).flat(),s=[...new Set(a)];this.tokensMap=s.reduce((l,u)=>(l[u.name]=u,l),{})}else if(typeof e=="object"&&e!==null)this.tokensMap=Object.assign({},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=xt;let n=(Object.hasOwn(e,"modes")?Object.values(e.modes).flat():Object.values(e)).every(a=>{var s;return((s=a.categoryMatches)===null||s===void 0?void 0:s.length)==0});this.tokenMatcher=n?Qa:zn,Un(Object.values(this.tokensMap))}defineRule(e,t,r){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let n=Object.hasOwn(r,"resyncEnabled")?r.resyncEnabled:Ns.resyncEnabled,a=Object.hasOwn(r,"recoveryValueFunc")?r.recoveryValueFunc:Ns.recoveryValueFunc,s=this.ruleShortNameIdx++;this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=i(o(function(...d){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,d);let y=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(y),y}catch(y){return this.invokeRuleCatch(y,n,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"),"invokeRuleWithTry"):l=i(o(function(...d){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,d)}catch(y){return this.invokeRuleCatch(y,n,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),"invokeRuleWithTryCst"),Object.assign(i(o(function(...d){this.onBeforeParse(e);try{return l.apply(this,d)}finally{this.onAfterParse(e)}},"rootRule"),"rootRule"),{ruleName:e,originalGrammarAction:t,coreRule:l})}invokeRuleCatch(e,t,r){let n=this.RULE_STACK_IDX===0,a=t&&!this.isBackTracking()&&this.recoveryEnabled;if(ei(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return r(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(n)return this.moveToTerminatedState(),r(e);throw s}}else throw e}optionInternal(e,t){let r=Qh|t;return this.optionInternalLogic(e,t,r)}optionInternalLogic(e,t,r){let n=this.currRuleLookaheadFuncs[r],a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=n;n=i(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(n.call(this)===!0)return a.call(this)}atLeastOneInternal(e,t){let r=yu|e;return this.atLeastOneInternalLogic(e,t,r)}atLeastOneInternalLogic(e,t,r){let n=this.currRuleLookaheadFuncs[r],a;if(typeof t!="function"){a=t.DEF;let s=t.GATE;if(s!==void 0){let l=n;n=i(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=t;if(n.call(this)===!0){let s=this.doSingleRepetition(a);for(;n.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,me.REPETITION_MANDATORY,t.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],n,yu,e,SR)}atLeastOneSepFirstInternal(e,t){let r=ls|e;this.atLeastOneSepFirstInternalLogic(e,t,r)}atLeastOneSepFirstInternalLogic(e,t,r){let n=t.DEF,a=t.SEP;if(this.currRuleLookaheadFuncs[r].call(this)===!0){n.call(this);let l=i(()=>this.tokenMatcher(this.LA_FAST(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA_FAST(1),a)===!0;)this.CONSUME(a),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,n,zf],l,ls,e,zf)}else throw this.raiseEarlyExitException(e,me.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG)}manyInternal(e,t){let r=hu|e;return this.manyInternalLogic(e,t,r)}manyInternalLogic(e,t,r){let n=this.currRuleLookaheadFuncs[r],a;if(typeof t!="function"){a=t.DEF;let l=t.GATE;if(l!==void 0){let u=n;n=i(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=t;let s=!0;for(;n.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],n,hu,e,_R,s)}manySepFirstInternal(e,t){let r=gu|e;this.manySepFirstInternalLogic(e,t,r)}manySepFirstInternalLogic(e,t,r){let n=t.DEF,a=t.SEP;if(this.currRuleLookaheadFuncs[r].call(this)===!0){n.call(this);let l=i(()=>this.tokenMatcher(this.LA_FAST(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA_FAST(1),a)===!0;)this.CONSUME(a),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,n,jf],l,gu,e,jf)}}repetitionSepSecondInternal(e,t,r,n,a){for(;r();)this.CONSUME(t),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,r,n,a],r,ls,e,a)}doSingleRepetition(e){let t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){let r=Zh|t,n=Array.isArray(e)?e:e.DEF,s=this.currRuleLookaheadFuncs[r].call(this,n);if(s!==void 0)return n[s].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){this.RULE_STACK_IDX--,this.RULE_OCCURRENCE_STACK_IDX--,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName]),this.cstFinallyStateUpdate()}subruleInternal(e,t,r){let n;try{let a=r!==void 0?r.ARGS:void 0;return this.subruleIdx=t,n=e.coreRule.apply(this,a),this.cstPostNonTerminal(n,r!==void 0&&r.LABEL!==void 0?r.LABEL:e.ruleName),n}catch(a){throw this.subruleInternalError(a,r,e.ruleName)}}subruleInternalError(e,t,r){throw ei(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,t!==void 0&&t.LABEL!==void 0?t.LABEL:r),delete e.partialCstResult),e}consumeInternal(e,t,r){let n;try{let a=this.LA_FAST(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),n=a):this.consumeInternalError(e,a,r)}catch(a){n=this.consumeInternalRecovery(e,t,a)}return this.cstPostTerminal(r!==void 0&&r.LABEL!==void 0?r.LABEL:e.name,n),n}consumeInternalError(e,t,r){let n,a=this.LA(0);throw r!==void 0&&r.ERR_MSG?n=r.ERR_MSG:n=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Yh(n,t,a))}consumeInternalRecovery(e,t,r){if(this.recoveryEnabled&&r.name==="MismatchedTokenException"&&!this.isBackTracking()){let n=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,n)}catch(a){throw a.name===Xh?r:a}}else throw r}saveRecogState(){let e=this.errors,t=this.RULE_STACK.slice(0,this.RULE_STACK_IDX+1);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState);let t=e.RULE_STACK;for(let r=0;r<t.length;r++)this.RULE_STACK[r]=t[r];this.RULE_STACK_IDX=t.length-1,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName])}ruleInvocationStateUpdate(e,t,r){this.RULE_OCCURRENCE_STACK[++this.RULE_OCCURRENCE_STACK_IDX]=r,this.RULE_STACK[++this.RULE_STACK_IDX]=e,this.currRuleShortName=e,this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[e],this.cstInvocationStateUpdate(t)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.currRuleShortName;return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),xt)}reset(){this.resetLexerState(),this.subruleIdx=0,this.currRuleShortName=-1,this.currRuleLookaheadFuncs=[],this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK_IDX=-1,this.CST_STACK=[]}onBeforeParse(e){for(let t=0;t<this.maxLookahead+1;t++)this.tokVector.push(Nn)}onAfterParse(e){if(this.isAtEndOfInput()===!1){let t=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:t,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new kR(r,t))}for(;this.tokVector.at(-1)===Nn;)this.tokVector.pop()}},KR=class{static{o(this,"ErrorHandler")}static{i(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Object.hasOwn(e,"errorMessageProvider")?e.errorMessageProvider:Gt.errorMessageProvider}SAVE_ERROR(e){if(ei(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return[...this._errors]}set errors(e){this._errors=e}raiseEarlyExitException(e,t,r){let n=this.getCurrRuleFullName(),a=this.getGAstProductions()[n],l=gi(e,a,t,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let c=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:r,ruleName:n});throw this.SAVE_ERROR(new OR(c,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){let r=this.getCurrRuleFullName(),n=this.getGAstProductions()[r],a=yi(e,n,this.maxLookahead),s=[];for(let c=1;c<=this.maxLookahead;c++)s.push(this.LA(c));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new NR(u,this.LA(1),l))}},Zs={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Zs);var Uf=!0,Kf=255,ly=Lc({name:"RECORDING_PHASE_TOKEN",pattern:xe.NA});Un([ly]);var uy=Vs(ly,`This IToken indicates the Parser is in Recording Phase
	See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(uy);var BR={name:`This CSTNode indicates the Parser is in Recording Phase
	See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},qR=class{static{o(this,"GastRecorder")}static{i(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let t=e>0?e:"";this[`CONSUME${t}`]=function(r,n){return this.consumeInternalRecord(r,e,n)},this[`SUBRULE${t}`]=function(r,n){return this.subruleInternalRecord(r,e,n)},this[`OPTION${t}`]=function(r){return this.optionInternalRecord(r,e)},this[`OR${t}`]=function(r){return this.orInternalRecord(r,e)},this[`MANY${t}`]=function(r){this.manyInternalRecord(e,r)},this[`MANY_SEP${t}`]=function(r){this.manySepFirstInternalRecord(e,r)},this[`AT_LEAST_ONE${t}`]=function(r){this.atLeastOneInternalRecord(e,r)},this[`AT_LEAST_ONE_SEP${t}`]=function(r){this.atLeastOneSepFirstInternalRecord(e,r)}}this.consume=function(e,t,r){return this.consumeInternalRecord(t,e,r)},this.subrule=function(e,t,r){return this.subruleInternalRecord(t,e,r)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let t=0;t<10;t++){let r=t>0?t:"";delete e[`CONSUME${r}`],delete e[`SUBRULE${r}`],delete e[`OPTION${r}`],delete e[`OR${r}`],delete e[`MANY${r}`],delete e[`MANY_SEP${r}`],delete e[`AT_LEAST_ONE${r}`],delete e[`AT_LEAST_ONE_SEP${r}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return Nn}topLevelRuleRecord(e,t){try{let r=new xn({definition:[],name:e});return r.name=e,this.recordingProdStack.push(r),t.call(this),this.recordingProdStack.pop(),r}catch(r){if(r.KNOWN_RECORDER_ERROR!==!0)try{r.message=r.message+`
	 This error was thrown during the "grammar recording phase" For more info see:
	https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw r}throw r}}optionInternalRecord(e,t){return mn.call(this,Pe,e,t)}atLeastOneInternalRecord(e,t){mn.call(this,qe,t,e)}atLeastOneSepFirstInternalRecord(e,t){mn.call(this,We,t,e,Uf)}manyInternalRecord(e,t){mn.call(this,Te,t,e)}manySepFirstInternalRecord(e,t){mn.call(this,Fe,t,e,Uf)}orInternalRecord(e,t){return cy.call(this,e,t)}subruleInternalRecord(e,t,r){if(ti(t),!e||!Object.hasOwn(e,"ruleName")){let l=new Error(`<SUBRULE${Ru(t)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
 inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let n=this.recordingProdStack.at(-1),a=e.ruleName,s=new Me({idx:t,nonTerminalName:a,label:r?.LABEL,referencedRule:void 0});return n.definition.push(s),this.outputCst?BR:Zs}consumeInternalRecord(e,t,r){if(ti(t),!Mc(e)){let s=new Error(`<CONSUME${Ru(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
 inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let n=this.recordingProdStack.at(-1),a=new ue({idx:t,terminalType:e,label:r?.LABEL});return n.definition.push(a),uy}};function mn(e,t,r,n=!1){ti(r);let a=this.recordingProdStack.at(-1),s=typeof t=="function"?t:t.DEF,l=new e({definition:[],idx:r});return n&&(l.separator=t.SEP),Object.hasOwn(t,"MAX_LOOKAHEAD")&&(l.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(l),s.call(this),a.definition.push(l),this.recordingProdStack.pop(),Zs}o(mn,"recordProd");i(mn,"recordProd");function cy(e,t){ti(t);let r=this.recordingProdStack.at(-1),n=Array.isArray(e)===!1,a=n===!1?e:e.DEF,s=new je({definition:[],idx:t,ignoreAmbiguities:n&&e.IGNORE_AMBIGUITIES===!0});Object.hasOwn(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD);let l=a.some(u=>typeof u.GATE=="function");return s.hasPredicates=l,r.definition.push(s),a.forEach(u=>{let c=new Ge({definition:[]});s.definition.push(c),Object.hasOwn(u,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=u.IGNORE_AMBIGUITIES:Object.hasOwn(u,"GATE")&&(c.ignoreAmbiguities=!0),this.recordingProdStack.push(c),u.ALT.call(this),this.recordingProdStack.pop()}),Zs}o(cy,"recordOrProd");i(cy,"recordOrProd");function Ru(e){return e===0?"":`${e}`}o(Ru,"getIdxSuffix");i(Ru,"getIdxSuffix");function ti(e){if(e<0||e>Kf){let t=new Error(`Invalid DSL Method idx value: <${e}>
	Idx value must be a none negative value smaller than ${Kf+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}o(ti,"assertMethodIdxIsValid");i(ti,"assertMethodIdxIsValid");var WR=class{static{o(this,"PerformanceTracer")}static{i(this,"PerformanceTracer")}initPerformanceTracer(e){if(Object.hasOwn(e,"traceInitPerf")){let t=e.traceInitPerf,r=typeof t=="number";this.traceInitMaxIdent=r?t:1/0,this.traceInitPerf=r?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=Gt.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(this.traceInitPerf===!0){this.traceInitIndent++;let r=new Array(this.traceInitIndent+1).join("	");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);let{time:n,value:a}=wc(t),s=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&s(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,a}else return t()}};function fy(e,t){t.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(a=>{if(a==="constructor")return;let s=Object.getOwnPropertyDescriptor(n,a);s&&(s.get||s.set)?Object.defineProperty(e.prototype,a,s):e.prototype[a]=r.prototype[a]})})}o(fy,"applyMixins");i(fy,"applyMixins");var Nn=Vs(xt,"",-1,-1,-1,-1,-1,-1);Object.freeze(Nn);var Gt=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:bn,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Ns=Object.freeze({recoveryValueFunc:i(()=>{},"recoveryValueFunc"),resyncEnabled:!0}),De;(function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(De||(De={}));function Au(e=void 0){return function(){return e}}o(Au,"EMPTY_ALT");i(Au,"EMPTY_ALT");var Bc=class py{static{o(this,"_Parser")}static{i(this,"Parser")}static performSelfAnalysis(t){throw Error("The **static** `performSelfAnalysis` method has been deprecated.	\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{Ic(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),this.definedRulesNames.forEach(a=>{let l=this[a].originalGrammarAction,u;this.TRACE_INIT(`${a} Rule`,()=>{u=this.topLevelRuleRecord(a,l)}),this.gastProductionsCache[a]=u})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=Uh({rules:Object.values(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(n.length===0&&this.skipValidations===!1){let a=Kh({rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),errMsgProvider:Cr,grammarName:r}),s=Ih({lookaheadStrategy:this.lookaheadStrategy,rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(a,s)}}),this.definitionErrors.length===0&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let a=Lm(Object.values(this.gastProductionsCache));this.resyncFollows=a}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var a,s;(s=(a=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(a,{rules:Object.values(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Object.values(this.gastProductionsCache))})),!py.DEFER_DEFINITION_ERRORS_HANDLING&&this.definitionErrors.length!==0)throw t=this.definitionErrors.map(a=>a.message),new Error(`Parser Definition Errors detected:
 ${t.join(`
-------------------------------
`)}`)})}constructor(t,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(t,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initGastRecorder(r),n.initPerformanceTracer(r),Object.hasOwn(r,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
	Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
	See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
	For further details.`);this.skipValidations=Object.hasOwn(r,"skipValidations")?r.skipValidations:Gt.skipValidations}};Bc.DEFER_DEFINITION_ERRORS_HANDLING=!1;fy(Bc,[DR,LR,FR,jR,UR,zR,KR,qR,WR]);var VR=class extends Bc{static{o(this,"EmbeddedActionsParser")}static{i(this,"EmbeddedActionsParser")}constructor(e,t=Gt){let r=Object.assign({},t);r.outputCst=!1,super(e,r)}};function dy(e,t){for(var r=-1,n=e==null?0:e.length,a=Array(n);++r<n;)a[r]=t(e[r],r,e);return a}o(dy,"arrayMap");i(dy,"arrayMap");var my=dy;function hy(){this.__data__=[],this.size=0}o(hy,"listCacheClear");i(hy,"listCacheClear");var HR=hy;function yy(e,t){return e===t||e!==e&&t!==t}o(yy,"eq");i(yy,"eq");var gy=yy;function vy(e,t){for(var r=e.length;r--;)if(gy(e[r][0],t))return r;return-1}o(vy,"assocIndexOf");i(vy,"assocIndexOf");var Qs=vy,YR=Array.prototype,XR=YR.splice;function Ty(e){var t=this.__data__,r=Qs(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():XR.call(t,r,1),--this.size,!0}o(Ty,"listCacheDelete");i(Ty,"listCacheDelete");var JR=Ty;function $y(e){var t=this.__data__,r=Qs(t,e);return r<0?void 0:t[r][1]}o($y,"listCacheGet");i($y,"listCacheGet");var ZR=$y;function Ry(e){return Qs(this.__data__,e)>-1}o(Ry,"listCacheHas");i(Ry,"listCacheHas");var QR=Ry;function Ay(e,t){var r=this.__data__,n=Qs(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}o(Ay,"listCacheSet");i(Ay,"listCacheSet");var eA=Ay;function Pr(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}o(Pr,"ListCache");i(Pr,"ListCache");Pr.prototype.clear=HR;Pr.prototype.delete=JR;Pr.prototype.get=ZR;Pr.prototype.has=QR;Pr.prototype.set=eA;var eo=Pr;function Ey(){this.__data__=new eo,this.size=0}o(Ey,"stackClear");i(Ey,"stackClear");var tA=Ey;function Cy(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}o(Cy,"stackDelete");i(Cy,"stackDelete");var rA=Cy;function by(e){return this.__data__.get(e)}o(by,"stackGet");i(by,"stackGet");var nA=by;function _y(e){return this.__data__.has(e)}o(_y,"stackHas");i(_y,"stackHas");var aA=_y,iA=typeof global=="object"&&global&&global.Object===Object&&global,Sy=iA,sA=typeof self=="object"&&self&&self.Object===Object&&self,oA=Sy||sA||Function("return this")(),Ft=oA,lA=Ft.Symbol,vt=lA,wy=Object.prototype,uA=wy.hasOwnProperty,cA=wy.toString,ha=vt?vt.toStringTag:void 0;function Iy(e){var t=uA.call(e,ha),r=e[ha];try{e[ha]=void 0;var n=!0}catch{}var a=cA.call(e);return n&&(t?e[ha]=r:delete e[ha]),a}o(Iy,"getRawTag");i(Iy,"getRawTag");var fA=Iy,pA=Object.prototype,dA=pA.toString;function Py(e){return dA.call(e)}o(Py,"objectToString");i(Py,"objectToString");var mA=Py,hA="[object Null]",yA="[object Undefined]",Bf=vt?vt.toStringTag:void 0;function Ny(e){return e==null?e===void 0?yA:hA:Bf&&Bf in Object(e)?fA(e):mA(e)}o(Ny,"baseGetTag");i(Ny,"baseGetTag");var Bn=Ny;function ky(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}o(ky,"isObject");i(ky,"isObject");var qc=ky,gA="[object AsyncFunction]",vA="[object Function]",TA="[object GeneratorFunction]",$A="[object Proxy]";function Oy(e){if(!qc(e))return!1;var t=Bn(e);return t==vA||t==TA||t==gA||t==$A}o(Oy,"isFunction");i(Oy,"isFunction");var My=Oy,RA=Ft["__core-js_shared__"],Ao=RA,qf=(function(){var e=/[^.]+$/.exec(Ao&&Ao.keys&&Ao.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function Dy(e){return!!qf&&qf in e}o(Dy,"isMasked");i(Dy,"isMasked");var AA=Dy,EA=Function.prototype,CA=EA.toString;function Ly(e){if(e!=null){try{return CA.call(e)}catch{}try{return e+""}catch{}}return""}o(Ly,"toSource");i(Ly,"toSource");var Nr=Ly,bA=/[\\^$.*+?()[\]{}|]/g,_A=/^\[object .+?Constructor\]$/,SA=Function.prototype,wA=Object.prototype,IA=SA.toString,PA=wA.hasOwnProperty,NA=RegExp("^"+IA.call(PA).replace(bA,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xy(e){if(!qc(e)||AA(e))return!1;var t=My(e)?NA:_A;return t.test(Nr(e))}o(xy,"baseIsNative");i(xy,"baseIsNative");var kA=xy;function Gy(e,t){return e?.[t]}o(Gy,"getValue");i(Gy,"getValue");var OA=Gy;function Fy(e,t){var r=OA(e,t);return kA(r)?r:void 0}o(Fy,"getNative");i(Fy,"getNative");var qn=Fy,MA=qn(Ft,"Map"),ri=MA,DA=qn(Object,"create"),ni=DA;function jy(){this.__data__=ni?ni(null):{},this.size=0}o(jy,"hashClear");i(jy,"hashClear");var LA=jy;function zy(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}o(zy,"hashDelete");i(zy,"hashDelete");var xA=zy,GA="__lodash_hash_undefined__",FA=Object.prototype,jA=FA.hasOwnProperty;function Uy(e){var t=this.__data__;if(ni){var r=t[e];return r===GA?void 0:r}return jA.call(t,e)?t[e]:void 0}o(Uy,"hashGet");i(Uy,"hashGet");var zA=Uy,UA=Object.prototype,KA=UA.hasOwnProperty;function Ky(e){var t=this.__data__;return ni?t[e]!==void 0:KA.call(t,e)}o(Ky,"hashHas");i(Ky,"hashHas");var BA=Ky,qA="__lodash_hash_undefined__";function By(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ni&&t===void 0?qA:t,this}o(By,"hashSet");i(By,"hashSet");var WA=By;function kr(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}o(kr,"Hash");i(kr,"Hash");kr.prototype.clear=LA;kr.prototype.delete=xA;kr.prototype.get=zA;kr.prototype.has=BA;kr.prototype.set=WA;var Wf=kr;function qy(){this.size=0,this.__data__={hash:new Wf,map:new(ri||eo),string:new Wf}}o(qy,"mapCacheClear");i(qy,"mapCacheClear");var VA=qy;function Wy(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}o(Wy,"isKeyable");i(Wy,"isKeyable");var HA=Wy;function Vy(e,t){var r=e.__data__;return HA(t)?r[typeof t=="string"?"string":"hash"]:r.map}o(Vy,"getMapData");i(Vy,"getMapData");var to=Vy;function Hy(e){var t=to(this,e).delete(e);return this.size-=t?1:0,t}o(Hy,"mapCacheDelete");i(Hy,"mapCacheDelete");var YA=Hy;function Yy(e){return to(this,e).get(e)}o(Yy,"mapCacheGet");i(Yy,"mapCacheGet");var XA=Yy;function Xy(e){return to(this,e).has(e)}o(Xy,"mapCacheHas");i(Xy,"mapCacheHas");var JA=Xy;function Jy(e,t){var r=to(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}o(Jy,"mapCacheSet");i(Jy,"mapCacheSet");var ZA=Jy;function Or(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}o(Or,"MapCache");i(Or,"MapCache");Or.prototype.clear=VA;Or.prototype.delete=YA;Or.prototype.get=XA;Or.prototype.has=JA;Or.prototype.set=ZA;var ro=Or,QA=200;function Zy(e,t){var r=this.__data__;if(r instanceof eo){var n=r.__data__;if(!ri||n.length<QA-1)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new ro(n)}return r.set(e,t),this.size=r.size,this}o(Zy,"stackSet");i(Zy,"stackSet");var eE=Zy;function Mr(e){var t=this.__data__=new eo(e);this.size=t.size}o(Mr,"Stack");i(Mr,"Stack");Mr.prototype.clear=tA;Mr.prototype.delete=rA;Mr.prototype.get=nA;Mr.prototype.has=aA;Mr.prototype.set=eE;var us=Mr,tE="__lodash_hash_undefined__";function Qy(e){return this.__data__.set(e,tE),this}o(Qy,"setCacheAdd");i(Qy,"setCacheAdd");var rE=Qy;function eg(e){return this.__data__.has(e)}o(eg,"setCacheHas");i(eg,"setCacheHas");var nE=eg;function ai(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new ro;++t<r;)this.add(e[t])}o(ai,"SetCache");i(ai,"SetCache");ai.prototype.add=ai.prototype.push=rE;ai.prototype.has=nE;var tg=ai;function rg(e,t){for(var r=-1,n=e==null?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}o(rg,"arraySome");i(rg,"arraySome");var aE=rg;function ng(e,t){return e.has(t)}o(ng,"cacheHas");i(ng,"cacheHas");var ag=ng,iE=1,sE=2;function ig(e,t,r,n,a,s){var l=r&iE,u=e.length,c=t.length;if(u!=c&&!(l&&c>u))return!1;var f=s.get(e),d=s.get(t);if(f&&d)return f==t&&d==e;var y=-1,g=!0,m=r&sE?new tg:void 0;for(s.set(e,t),s.set(t,e);++y<u;){var E=e[y],$=t[y];if(n)var T=l?n($,E,y,t,e,s):n(E,$,y,e,t,s);if(T!==void 0){if(T)continue;g=!1;break}if(m){if(!aE(t,function(R,w){if(!ag(m,w)&&(E===R||a(E,R,r,n,s)))return m.push(w)})){g=!1;break}}else if(!(E===$||a(E,$,r,n,s))){g=!1;break}}return s.delete(e),s.delete(t),g}o(ig,"equalArrays");i(ig,"equalArrays");var sg=ig,oE=Ft.Uint8Array,Vf=oE;function og(e){var t=-1,r=Array(e.size);return e.forEach(function(n,a){r[++t]=[a,n]}),r}o(og,"mapToArray");i(og,"mapToArray");var lE=og;function lg(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}o(lg,"setToArray");i(lg,"setToArray");var Wc=lg,uE=1,cE=2,fE="[object Boolean]",pE="[object Date]",dE="[object Error]",mE="[object Map]",hE="[object Number]",yE="[object RegExp]",gE="[object Set]",vE="[object String]",TE="[object Symbol]",$E="[object ArrayBuffer]",RE="[object DataView]",Hf=vt?vt.prototype:void 0,Eo=Hf?Hf.valueOf:void 0;function ug(e,t,r,n,a,s,l){switch(r){case RE:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case $E:return!(e.byteLength!=t.byteLength||!s(new Vf(e),new Vf(t)));case fE:case pE:case hE:return gy(+e,+t);case dE:return e.name==t.name&&e.message==t.message;case yE:case vE:return e==t+"";case mE:var u=lE;case gE:var c=n&uE;if(u||(u=Wc),e.size!=t.size&&!c)return!1;var f=l.get(e);if(f)return f==t;n|=cE,l.set(e,t);var d=sg(u(e),u(t),n,a,s,l);return l.delete(e),d;case TE:if(Eo)return Eo.call(e)==Eo.call(t)}return!1}o(ug,"equalByTag");i(ug,"equalByTag");var AE=ug;function cg(e,t){for(var r=-1,n=t.length,a=e.length;++r<n;)e[a+r]=t[r];return e}o(cg,"arrayPush");i(cg,"arrayPush");var fg=cg,EE=Array.isArray,Le=EE;function pg(e,t,r){var n=t(e);return Le(e)?n:fg(n,r(e))}o(pg,"baseGetAllKeys");i(pg,"baseGetAllKeys");var CE=pg;function dg(e,t){for(var r=-1,n=e==null?0:e.length,a=0,s=[];++r<n;){var l=e[r];t(l,r,e)&&(s[a++]=l)}return s}o(dg,"arrayFilter");i(dg,"arrayFilter");var mg=dg;function hg(){return[]}o(hg,"stubArray");i(hg,"stubArray");var bE=hg,_E=Object.prototype,SE=_E.propertyIsEnumerable,Yf=Object.getOwnPropertySymbols,wE=Yf?function(e){return e==null?[]:(e=Object(e),mg(Yf(e),function(t){return SE.call(e,t)}))}:bE,IE=wE;function yg(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}o(yg,"baseTimes");i(yg,"baseTimes");var PE=yg;function gg(e){return e!=null&&typeof e=="object"}o(gg,"isObjectLike");i(gg,"isObjectLike");var kn=gg,NE="[object Arguments]";function vg(e){return kn(e)&&Bn(e)==NE}o(vg,"baseIsArguments");i(vg,"baseIsArguments");var Xf=vg,Tg=Object.prototype,kE=Tg.hasOwnProperty,OE=Tg.propertyIsEnumerable,ME=Xf((function(){return arguments})())?Xf:function(e){return kn(e)&&kE.call(e,"callee")&&!OE.call(e,"callee")},no=ME;function $g(){return!1}o($g,"stubFalse");i($g,"stubFalse");var DE=$g,Rg=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Jf=Rg&&typeof module=="object"&&module&&!module.nodeType&&module,LE=Jf&&Jf.exports===Rg,Zf=LE?Ft.Buffer:void 0,xE=Zf?Zf.isBuffer:void 0,GE=xE||DE,ks=GE,FE=9007199254740991,jE=/^(?:0|[1-9]\d*)$/;function Ag(e,t){var r=typeof e;return t=t??FE,!!t&&(r=="number"||r!="symbol"&&jE.test(e))&&e>-1&&e%1==0&&e<t}o(Ag,"isIndex");i(Ag,"isIndex");var Eg=Ag,zE=9007199254740991;function Cg(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=zE}o(Cg,"isLength");i(Cg,"isLength");var Vc=Cg,UE="[object Arguments]",KE="[object Array]",BE="[object Boolean]",qE="[object Date]",WE="[object Error]",VE="[object Function]",HE="[object Map]",YE="[object Number]",XE="[object Object]",JE="[object RegExp]",ZE="[object Set]",QE="[object String]",eC="[object WeakMap]",tC="[object ArrayBuffer]",rC="[object DataView]",nC="[object Float32Array]",aC="[object Float64Array]",iC="[object Int8Array]",sC="[object Int16Array]",oC="[object Int32Array]",lC="[object Uint8Array]",uC="[object Uint8ClampedArray]",cC="[object Uint16Array]",fC="[object Uint32Array]",le={};le[nC]=le[aC]=le[iC]=le[sC]=le[oC]=le[lC]=le[uC]=le[cC]=le[fC]=!0;le[UE]=le[KE]=le[tC]=le[BE]=le[rC]=le[qE]=le[WE]=le[VE]=le[HE]=le[YE]=le[XE]=le[JE]=le[ZE]=le[QE]=le[eC]=!1;function bg(e){return kn(e)&&Vc(e.length)&&!!le[Bn(e)]}o(bg,"baseIsTypedArray");i(bg,"baseIsTypedArray");var pC=bg;function _g(e){return function(t){return e(t)}}o(_g,"baseUnary");i(_g,"baseUnary");var dC=_g,Sg=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Wa=Sg&&typeof module=="object"&&module&&!module.nodeType&&module,mC=Wa&&Wa.exports===Sg,Co=mC&&Sy.process,hC=(function(){try{var e=Wa&&Wa.require&&Wa.require("util").types;return e||Co&&Co.binding&&Co.binding("util")}catch{}})(),Qf=hC,ep=Qf&&Qf.isTypedArray,yC=ep?dC(ep):pC,Hc=yC,gC=Object.prototype,vC=gC.hasOwnProperty;function wg(e,t){var r=Le(e),n=!r&&no(e),a=!r&&!n&&ks(e),s=!r&&!n&&!a&&Hc(e),l=r||n||a||s,u=l?PE(e.length,String):[],c=u.length;for(var f in e)(t||vC.call(e,f))&&!(l&&(f=="length"||a&&(f=="offset"||f=="parent")||s&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||Eg(f,c)))&&u.push(f);return u}o(wg,"arrayLikeKeys");i(wg,"arrayLikeKeys");var TC=wg,$C=Object.prototype;function Ig(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||$C;return e===r}o(Ig,"isPrototype");i(Ig,"isPrototype");var Pg=Ig;function Ng(e,t){return function(r){return e(t(r))}}o(Ng,"overArg");i(Ng,"overArg");var RC=Ng,AC=RC(Object.keys,Object),EC=AC,CC=Object.prototype,bC=CC.hasOwnProperty;function kg(e){if(!Pg(e))return EC(e);var t=[];for(var r in Object(e))bC.call(e,r)&&r!="constructor"&&t.push(r);return t}o(kg,"baseKeys");i(kg,"baseKeys");var Og=kg;function Mg(e){return e!=null&&Vc(e.length)&&!My(e)}o(Mg,"isArrayLike");i(Mg,"isArrayLike");var ao=Mg;function Dg(e){return ao(e)?TC(e):Og(e)}o(Dg,"keys");i(Dg,"keys");var Yc=Dg;function Lg(e){return CE(e,Yc,IE)}o(Lg,"getAllKeys");i(Lg,"getAllKeys");var tp=Lg,_C=1,SC=Object.prototype,wC=SC.hasOwnProperty;function xg(e,t,r,n,a,s){var l=r&_C,u=tp(e),c=u.length,f=tp(t),d=f.length;if(c!=d&&!l)return!1;for(var y=c;y--;){var g=u[y];if(!(l?g in t:wC.call(t,g)))return!1}var m=s.get(e),E=s.get(t);if(m&&E)return m==t&&E==e;var $=!0;s.set(e,t),s.set(t,e);for(var T=l;++y<c;){g=u[y];var R=e[g],w=t[g];if(n)var b=l?n(w,R,g,t,e,s):n(R,w,g,e,t,s);if(!(b===void 0?R===w||a(R,w,r,n,s):b)){$=!1;break}T||(T=g=="constructor")}if($&&!T){var M=e.constructor,L=t.constructor;M!=L&&"constructor"in e&&"constructor"in t&&!(typeof M=="function"&&M instanceof M&&typeof L=="function"&&L instanceof L)&&($=!1)}return s.delete(e),s.delete(t),$}o(xg,"equalObjects");i(xg,"equalObjects");var IC=xg,PC=qn(Ft,"DataView"),Eu=PC,NC=qn(Ft,"Promise"),Cu=NC,kC=qn(Ft,"Set"),wn=kC,OC=qn(Ft,"WeakMap"),bu=OC,rp="[object Map]",MC="[object Object]",np="[object Promise]",ap="[object Set]",ip="[object WeakMap]",sp="[object DataView]",DC=Nr(Eu),LC=Nr(ri),xC=Nr(Cu),GC=Nr(wn),FC=Nr(bu),Tr=Bn;(Eu&&Tr(new Eu(new ArrayBuffer(1)))!=sp||ri&&Tr(new ri)!=rp||Cu&&Tr(Cu.resolve())!=np||wn&&Tr(new wn)!=ap||bu&&Tr(new bu)!=ip)&&(Tr=i(function(e){var t=Bn(e),r=t==MC?e.constructor:void 0,n=r?Nr(r):"";if(n)switch(n){case DC:return sp;case LC:return rp;case xC:return np;case GC:return ap;case FC:return ip}return t},"getTag"));var _u=Tr,jC=1,op="[object Arguments]",lp="[object Array]",_i="[object Object]",zC=Object.prototype,up=zC.hasOwnProperty;function Gg(e,t,r,n,a,s){var l=Le(e),u=Le(t),c=l?lp:_u(e),f=u?lp:_u(t);c=c==op?_i:c,f=f==op?_i:f;var d=c==_i,y=f==_i,g=c==f;if(g&&ks(e)){if(!ks(t))return!1;l=!0,d=!1}if(g&&!d)return s||(s=new us),l||Hc(e)?sg(e,t,r,n,a,s):AE(e,t,c,r,n,a,s);if(!(r&jC)){var m=d&&up.call(e,"__wrapped__"),E=y&&up.call(t,"__wrapped__");if(m||E){var $=m?e.value():e,T=E?t.value():t;return s||(s=new us),a($,T,r,n,s)}}return g?(s||(s=new us),IC(e,t,r,n,a,s)):!1}o(Gg,"baseIsEqualDeep");i(Gg,"baseIsEqualDeep");var UC=Gg;function Xc(e,t,r,n,a){return e===t?!0:e==null||t==null||!kn(e)&&!kn(t)?e!==e&&t!==t:UC(e,t,r,n,Xc,a)}o(Xc,"baseIsEqual");i(Xc,"baseIsEqual");var Fg=Xc,KC=1,BC=2;function jg(e,t,r,n){var a=r.length,s=a,l=!n;if(e==null)return!s;for(e=Object(e);a--;){var u=r[a];if(l&&u[2]?u[1]!==e[u[0]]:!(u[0]in e))return!1}for(;++a<s;){u=r[a];var c=u[0],f=e[c],d=u[1];if(l&&u[2]){if(f===void 0&&!(c in e))return!1}else{var y=new us;if(n)var g=n(f,d,c,e,t,y);if(!(g===void 0?Fg(d,f,KC|BC,n,y):g))return!1}}return!0}o(jg,"baseIsMatch");i(jg,"baseIsMatch");var qC=jg;function zg(e){return e===e&&!qc(e)}o(zg,"isStrictComparable");i(zg,"isStrictComparable");var Ug=zg;function Kg(e){for(var t=Yc(e),r=t.length;r--;){var n=t[r],a=e[n];t[r]=[n,a,Ug(a)]}return t}o(Kg,"getMatchData");i(Kg,"getMatchData");var WC=Kg;function Bg(e,t){return function(r){return r==null?!1:r[e]===t&&(t!==void 0||e in Object(r))}}o(Bg,"matchesStrictComparable");i(Bg,"matchesStrictComparable");var qg=Bg;function Wg(e){var t=WC(e);return t.length==1&&t[0][2]?qg(t[0][0],t[0][1]):function(r){return r===e||qC(r,e,t)}}o(Wg,"baseMatches");i(Wg,"baseMatches");var VC=Wg,HC="[object Symbol]";function Vg(e){return typeof e=="symbol"||kn(e)&&Bn(e)==HC}o(Vg,"isSymbol");i(Vg,"isSymbol");var io=Vg,YC=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,XC=/^\w*$/;function Hg(e,t){if(Le(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||io(e)?!0:XC.test(e)||!YC.test(e)||t!=null&&e in Object(t)}o(Hg,"isKey");i(Hg,"isKey");var Jc=Hg,JC="Expected a function";function so(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(JC);var r=i(function(){var n=arguments,a=t?t.apply(this,n):n[0],s=r.cache;if(s.has(a))return s.get(a);var l=e.apply(this,n);return r.cache=s.set(a,l)||s,l},"memoized");return r.cache=new(so.Cache||ro),r}o(so,"memoize");i(so,"memoize");so.Cache=ro;var ZC=so,QC=500;function Yg(e){var t=ZC(e,function(n){return r.size===QC&&r.clear(),n}),r=t.cache;return t}o(Yg,"memoizeCapped");i(Yg,"memoizeCapped");var eb=Yg,tb=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,rb=/\\(\\)?/g,nb=eb(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(tb,function(r,n,a,s){t.push(a?s.replace(rb,"$1"):n||r)}),t}),ab=nb,ib=1/0,cp=vt?vt.prototype:void 0,fp=cp?cp.toString:void 0;function Zc(e){if(typeof e=="string")return e;if(Le(e))return my(e,Zc)+"";if(io(e))return fp?fp.call(e):"";var t=e+"";return t=="0"&&1/e==-ib?"-0":t}o(Zc,"baseToString");i(Zc,"baseToString");var sb=Zc;function Xg(e){return e==null?"":sb(e)}o(Xg,"toString2");i(Xg,"toString");var ob=Xg;function Jg(e,t){return Le(e)?e:Jc(e,t)?[e]:ab(ob(e))}o(Jg,"castPath");i(Jg,"castPath");var Zg=Jg,lb=1/0;function Qg(e){if(typeof e=="string"||io(e))return e;var t=e+"";return t=="0"&&1/e==-lb?"-0":t}o(Qg,"toKey");i(Qg,"toKey");var oo=Qg;function ev(e,t){t=Zg(t,e);for(var r=0,n=t.length;e!=null&&r<n;)e=e[oo(t[r++])];return r&&r==n?e:void 0}o(ev,"baseGet");i(ev,"baseGet");var tv=ev;function rv(e,t,r){var n=e==null?void 0:tv(e,t);return n===void 0?r:n}o(rv,"get");i(rv,"get");var ub=rv;function nv(e,t){return e!=null&&t in Object(e)}o(nv,"baseHasIn");i(nv,"baseHasIn");var cb=nv;function av(e,t,r){t=Zg(t,e);for(var n=-1,a=t.length,s=!1;++n<a;){var l=oo(t[n]);if(!(s=e!=null&&r(e,l)))break;e=e[l]}return s||++n!=a?s:(a=e==null?0:e.length,!!a&&Vc(a)&&Eg(l,a)&&(Le(e)||no(e)))}o(av,"hasPath");i(av,"hasPath");var fb=av;function iv(e,t){return e!=null&&fb(e,t,cb)}o(iv,"hasIn");i(iv,"hasIn");var pb=iv,db=1,mb=2;function sv(e,t){return Jc(e)&&Ug(t)?qg(oo(e),t):function(r){var n=ub(r,e);return n===void 0&&n===t?pb(r,e):Fg(t,n,db|mb)}}o(sv,"baseMatchesProperty");i(sv,"baseMatchesProperty");var hb=sv;function ov(e){return e}o(ov,"identity");i(ov,"identity");var Qc=ov;function lv(e){return function(t){return t?.[e]}}o(lv,"baseProperty");i(lv,"baseProperty");var yb=lv;function uv(e){return function(t){return tv(t,e)}}o(uv,"basePropertyDeep");i(uv,"basePropertyDeep");var gb=uv;function cv(e){return Jc(e)?yb(oo(e)):gb(e)}o(cv,"property");i(cv,"property");var vb=cv;function fv(e){return typeof e=="function"?e:e==null?Qc:typeof e=="object"?Le(e)?hb(e[0],e[1]):VC(e):vb(e)}o(fv,"baseIteratee");i(fv,"baseIteratee");var lo=fv;function pv(e){return function(t,r,n){for(var a=-1,s=Object(t),l=n(t),u=l.length;u--;){var c=l[e?u:++a];if(r(s[c],c,s)===!1)break}return t}}o(pv,"createBaseFor");i(pv,"createBaseFor");var Tb=pv,$b=Tb(),Rb=$b;function dv(e,t){return e&&Rb(e,t,Yc)}o(dv,"baseForOwn");i(dv,"baseForOwn");var Ab=dv;function mv(e,t){return function(r,n){if(r==null)return r;if(!ao(r))return e(r,n);for(var a=r.length,s=t?a:-1,l=Object(r);(t?s--:++s<a)&&n(l[s],s,l)!==!1;);return r}}o(mv,"createBaseEach");i(mv,"createBaseEach");var Eb=mv,Cb=Eb(Ab),uo=Cb;function hv(e,t){var r=-1,n=ao(e)?Array(e.length):[];return uo(e,function(a,s,l){n[++r]=t(a,s,l)}),n}o(hv,"baseMap");i(hv,"baseMap");var bb=hv;function yv(e,t){var r=Le(e)?my:bb;return r(e,lo(t,3))}o(yv,"map");i(yv,"map");var Mt=yv;function gv(e,t){var r=[];return uo(e,function(n,a,s){t(n,a,s)&&r.push(n)}),r}o(gv,"baseFilter");i(gv,"baseFilter");var _b=gv;function vv(e,t){var r=Le(e)?mg:_b;return r(e,lo(t,3))}o(vv,"filter");i(vv,"filter");var Sb=vv;function Sr(e,t,r){return`${e.name}_${t}_${r}`}o(Sr,"buildATNKey");i(Sr,"buildATNKey");var Jt=1,wb=2,Tv=4,$v=5,Dr=7,Ib=8,Pb=9,Nb=10,kb=11,Rv=12,ef=class{static{o(this,"AbstractTransition")}static{i(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},co=class extends ef{static{o(this,"AtomTransition")}static{i(this,"AtomTransition")}constructor(e,t){super(e),this.tokenType=t}},Av=class extends ef{static{o(this,"EpsilonTransition")}static{i(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},fo=class extends ef{static{o(this,"RuleTransition")}static{i(this,"RuleTransition")}constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}};function Ev(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};Cv(t,e);let r=e.length;for(let n=0;n<r;n++){let a=e[n],s=Qt(t,a,a);s!==void 0&&Dv(t,a,s)}return t}o(Ev,"createATN");i(Ev,"createATN");function Cv(e,t){let r=t.length;for(let n=0;n<r;n++){let a=t[n],s=Ce(e,a,void 0,{type:wb}),l=Ce(e,a,void 0,{type:Dr});s.stop=l,e.ruleToStartState.set(a,s),e.ruleToStopState.set(a,l)}}o(Cv,"createRuleStartAndStopATNStates");i(Cv,"createRuleStartAndStopATNStates");function tf(e,t,r){return r instanceof ue?po(e,t,r.terminalType,r):r instanceof Me?Mv(e,t,r):r instanceof je?Iv(e,t,r):r instanceof Pe?Pv(e,t,r):r instanceof Te?bv(e,t,r):r instanceof Fe?_v(e,t,r):r instanceof qe?Sv(e,t,r):r instanceof We?wv(e,t,r):Qt(e,t,r)}o(tf,"atom");i(tf,"atom");function bv(e,t,r){let n=Ce(e,t,r,{type:$v});jt(e,n);let a=Lr(e,t,n,r,Qt(e,t,r));return nf(e,t,r,a)}o(bv,"repetition");i(bv,"repetition");function _v(e,t,r){let n=Ce(e,t,r,{type:$v});jt(e,n);let a=Lr(e,t,n,r,Qt(e,t,r)),s=po(e,t,r.separator,r);return nf(e,t,r,a,s)}o(_v,"repetitionSep");i(_v,"repetitionSep");function Sv(e,t,r){let n=Ce(e,t,r,{type:Tv});jt(e,n);let a=Lr(e,t,n,r,Qt(e,t,r));return rf(e,t,r,a)}o(Sv,"repetitionMandatory");i(Sv,"repetitionMandatory");function wv(e,t,r){let n=Ce(e,t,r,{type:Tv});jt(e,n);let a=Lr(e,t,n,r,Qt(e,t,r)),s=po(e,t,r.separator,r);return rf(e,t,r,a,s)}o(wv,"repetitionMandatorySep");i(wv,"repetitionMandatorySep");function Iv(e,t,r){let n=Ce(e,t,r,{type:Jt});jt(e,n);let a=Mt(r.definition,l=>tf(e,t,l));return Lr(e,t,n,r,...a)}o(Iv,"alternation");i(Iv,"alternation");function Pv(e,t,r){let n=Ce(e,t,r,{type:Jt});jt(e,n);let a=Lr(e,t,n,r,Qt(e,t,r));return Nv(e,t,r,a)}o(Pv,"option");i(Pv,"option");function Qt(e,t,r){let n=Sb(Mt(r.definition,a=>tf(e,t,a)),a=>a!==void 0);return n.length===1?n[0]:n.length===0?void 0:Ov(e,n)}o(Qt,"block");i(Qt,"block");function rf(e,t,r,n,a){let s=n.left,l=n.right,u=Ce(e,t,r,{type:kb});jt(e,u);let c=Ce(e,t,r,{type:Rv});return s.loopback=u,c.loopback=u,e.decisionMap[Sr(t,a?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=u,Re(l,u),a===void 0?(Re(u,s),Re(u,c)):(Re(u,c),Re(u,a.left),Re(a.right,s)),{left:s,right:c}}o(rf,"plus");i(rf,"plus");function nf(e,t,r,n,a){let s=n.left,l=n.right,u=Ce(e,t,r,{type:Nb});jt(e,u);let c=Ce(e,t,r,{type:Rv}),f=Ce(e,t,r,{type:Pb});return u.loopback=f,c.loopback=f,Re(u,s),Re(u,c),Re(l,f),a!==void 0?(Re(f,c),Re(f,a.left),Re(a.right,s)):Re(f,u),e.decisionMap[Sr(t,a?"RepetitionWithSeparator":"Repetition",r.idx)]=u,{left:u,right:c}}o(nf,"star");i(nf,"star");function Nv(e,t,r,n){let a=n.left,s=n.right;return Re(a,s),e.decisionMap[Sr(t,"Option",r.idx)]=a,n}o(Nv,"optional");i(Nv,"optional");function jt(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}o(jt,"defineDecisionState");i(jt,"defineDecisionState");function Lr(e,t,r,n,...a){let s=Ce(e,t,n,{type:Ib,start:r});r.end=s;for(let u of a)u!==void 0?(Re(r,u.left),Re(u.right,s)):Re(r,s);let l={left:r,right:s};return e.decisionMap[Sr(t,kv(n),n.idx)]=r,l}o(Lr,"makeAlts");i(Lr,"makeAlts");function kv(e){if(e instanceof je)return"Alternation";if(e instanceof Pe)return"Option";if(e instanceof Te)return"Repetition";if(e instanceof Fe)return"RepetitionWithSeparator";if(e instanceof qe)return"RepetitionMandatory";if(e instanceof We)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}o(kv,"getProdType2");i(kv,"getProdType");function Ov(e,t){let r=t.length;for(let s=0;s<r-1;s++){let l=t[s],u;l.left.transitions.length===1&&(u=l.left.transitions[0]);let c=u instanceof fo,f=u,d=t[s+1].left;l.left.type===Jt&&l.right.type===Jt&&u!==void 0&&(c&&f.followState===l.right||u.target===l.right)?(c?f.followState=d:u.target=d,Lv(e,l.right)):Re(l.right,d)}let n=t[0],a=t[r-1];return{left:n.left,right:a.right}}o(Ov,"makeBlock");i(Ov,"makeBlock");function po(e,t,r,n){let a=Ce(e,t,n,{type:Jt}),s=Ce(e,t,n,{type:Jt});return mo(a,new co(s,r)),{left:a,right:s}}o(po,"tokenRef");i(po,"tokenRef");function Mv(e,t,r){let n=r.referencedRule,a=e.ruleToStartState.get(n),s=Ce(e,t,r,{type:Jt}),l=Ce(e,t,r,{type:Jt}),u=new fo(a,n,l);return mo(s,u),{left:s,right:l}}o(Mv,"ruleRef");i(Mv,"ruleRef");function Dv(e,t,r){let n=e.ruleToStartState.get(t);Re(n,r.left);let a=e.ruleToStopState.get(t);return Re(r.right,a),{left:n,right:a}}o(Dv,"buildRuleHandle");i(Dv,"buildRuleHandle");function Re(e,t){let r=new Av(t);mo(e,r)}o(Re,"epsilon");i(Re,"epsilon");function Ce(e,t,r,n){let a=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(a),a}o(Ce,"newState");i(Ce,"newState");function mo(e,t){e.transitions.length===0&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}o(mo,"addTransition");i(mo,"addTransition");function Lv(e,t){e.states.splice(e.states.indexOf(t),1)}o(Lv,"removeState");i(Lv,"removeState");var Os={},Su=class{static{o(this,"ATNConfigSet")}static{i(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let t=af(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return Mt(this.configs,e=>e.alt)}get key(){let e="";for(let t in this.map)e+=t+":";return e}};function af(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(r=>r.stateNumber.toString()).join("_")}`}o(af,"getATNConfigKey");i(af,"getATNConfigKey");function xv(e,t,r){for(var n=-1,a=e.length;++n<a;){var s=e[n],l=t(s);if(l!=null&&(u===void 0?l===l&&!io(l):r(l,u)))var u=l,c=s}return c}o(xv,"baseExtremum");i(xv,"baseExtremum");var Ob=xv;function Gv(e,t){return e<t}o(Gv,"baseLt");i(Gv,"baseLt");var Mb=Gv;function Fv(e){return e&&e.length?Ob(e,Qc,Mb):void 0}o(Fv,"min");i(Fv,"min");var Db=Fv,pp=vt?vt.isConcatSpreadable:void 0;function jv(e){return Le(e)||no(e)||!!(pp&&e&&e[pp])}o(jv,"isFlattenable");i(jv,"isFlattenable");var Lb=jv;function sf(e,t,r,n,a){var s=-1,l=e.length;for(r||(r=Lb),a||(a=[]);++s<l;){var u=e[s];t>0&&r(u)?t>1?sf(u,t-1,r,n,a):fg(a,u):n||(a[a.length]=u)}return a}o(sf,"baseFlatten");i(sf,"baseFlatten");var zv=sf;function Uv(e,t){return zv(Mt(e,t),1)}o(Uv,"flatMap");i(Uv,"flatMap");var xb=Uv;function Kv(e,t,r,n){for(var a=e.length,s=r+(n?1:-1);n?s--:++s<a;)if(t(e[s],s,e))return s;return-1}o(Kv,"baseFindIndex");i(Kv,"baseFindIndex");var Gb=Kv;function Bv(e){return e!==e}o(Bv,"baseIsNaN");i(Bv,"baseIsNaN");var Fb=Bv;function qv(e,t,r){for(var n=r-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}o(qv,"strictIndexOf");i(qv,"strictIndexOf");var jb=qv;function Wv(e,t,r){return t===t?jb(e,t,r):Gb(e,Fb,r)}o(Wv,"baseIndexOf");i(Wv,"baseIndexOf");var zb=Wv;function Vv(e,t){var r=e==null?0:e.length;return!!r&&zb(e,t,0)>-1}o(Vv,"arrayIncludes");i(Vv,"arrayIncludes");var Ub=Vv;function Hv(e,t,r){for(var n=-1,a=e==null?0:e.length;++n<a;)if(r(t,e[n]))return!0;return!1}o(Hv,"arrayIncludesWith");i(Hv,"arrayIncludesWith");var Kb=Hv;function Yv(){}o(Yv,"noop");i(Yv,"noop");var Bb=Yv,qb=1/0,Wb=wn&&1/Wc(new wn([,-0]))[1]==qb?function(e){return new wn(e)}:Bb,Vb=Wb,Hb=200;function Xv(e,t,r){var n=-1,a=Ub,s=e.length,l=!0,u=[],c=u;if(r)l=!1,a=Kb;else if(s>=Hb){var f=t?null:Vb(e);if(f)return Wc(f);l=!1,a=ag,c=new tg}else c=t?[]:u;e:for(;++n<s;){var d=e[n],y=t?t(d):d;if(d=r||d!==0?d:0,l&&y===y){for(var g=c.length;g--;)if(c[g]===y)continue e;t&&c.push(y),u.push(d)}else a(c,y,r)||(c!==u&&c.push(y),u.push(d))}return u}o(Xv,"baseUniq");i(Xv,"baseUniq");var Yb=Xv;function Jv(e,t){return e&&e.length?Yb(e,lo(t,2)):[]}o(Jv,"uniqBy");i(Jv,"uniqBy");var Xb=Jv;function Zv(e){var t=e==null?0:e.length;return t?zv(e,1):[]}o(Zv,"flatten");i(Zv,"flatten");var Jb=Zv;function Qv(e,t){for(var r=-1,n=e==null?0:e.length;++r<n&&t(e[r],r,e)!==!1;);return e}o(Qv,"arrayEach");i(Qv,"arrayEach");var Zb=Qv;function eT(e){return typeof e=="function"?e:Qc}o(eT,"castFunction");i(eT,"castFunction");var Qb=eT;function tT(e,t){var r=Le(e)?Zb:uo;return r(e,Qb(t))}o(tT,"forEach");i(tT,"forEach");var bo=tT,e_="[object Map]",t_="[object Set]",r_=Object.prototype,n_=r_.hasOwnProperty;function rT(e){if(e==null)return!0;if(ao(e)&&(Le(e)||typeof e=="string"||typeof e.splice=="function"||ks(e)||Hc(e)||no(e)))return!e.length;var t=_u(e);if(t==e_||t==t_)return!e.size;if(Pg(e))return!Og(e).length;for(var r in e)if(n_.call(e,r))return!1;return!0}o(rT,"isEmpty");i(rT,"isEmpty");var a_=rT;function nT(e,t,r,n){var a=-1,s=e==null?0:e.length;for(n&&s&&(r=e[++a]);++a<s;)r=t(r,e[a],a,e);return r}o(nT,"arrayReduce");i(nT,"arrayReduce");var i_=nT;function aT(e,t,r,n,a){return a(e,function(s,l,u){r=n?(n=!1,s):t(r,s,l,u)}),r}o(aT,"baseReduce");i(aT,"baseReduce");var s_=aT;function iT(e,t,r){var n=Le(e)?i_:s_,a=arguments.length<3;return n(e,lo(t,4),r,a,uo)}o(iT,"reduce");i(iT,"reduce");var dp=iT;function sT(e,t){let r={};return n=>{let a=n.toString(),s=r[a];return s!==void 0||(s={atnStartState:e,decision:t,states:{}},r[a]=s),s}}o(sT,"createDFACache");i(sT,"createDFACache");var oT=class{static{o(this,"PredicateSet")}static{i(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="",t=this.predicates.length;for(let r=0;r<t;r++)e+=this.predicates[r]===!0?"1":"0";return e}},mp=new oT,o_=class extends Uc{static{o(this,"LLStarLookaheadStrategy")}static{i(this,"LLStarLookaheadStrategy")}constructor(e){var t,r;super(),this.logging=(t=e?.logging)!==null&&t!==void 0?t:(n=>console.log(n)),this.incomplete=(r=e?.incomplete)!==null&&r!==void 0?r:!1}initialize(e){this.atn=Ev(e.rules),this.dfas=cT(this.atn),this.callers=lT(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=this.incomplete,c=Sr(r,"Alternation",t),d=this.atn.decisionMap[c].decision,y=Mt(du({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),g=>Mt(g,m=>m[0]));if(wu(y,!1)&&!a){let g=dp(y,(m,E,$)=>(bo(E,T=>{T&&(m[T.tokenTypeIdx]=$,bo(T.categoryMatches,R=>{m[R]=$}))}),m),{});return n?function(m){var E;let $=this.LA_FAST(1),T=g[$.tokenTypeIdx];if(m!==void 0&&T!==void 0){let R=(E=m[T])===null||E===void 0?void 0:E.GATE;if(R!==void 0&&R.call(this)===!1)return}return T}:function(){let m=this.LA_FAST(1);return g[m.tokenTypeIdx]}}else return n?function(g){let m=new oT,E=g===void 0?0:g.length;for(let T=0;T<E;T++){let R=g?.[T].GATE;m.set(T,R===void 0||R.call(this))}let $=cs.call(this,s,d,m,l,u);return typeof $=="number"?$:void 0}:function(){let g=cs.call(this,s,d,mp,l,u);return typeof g=="number"?g:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=this.incomplete,c=this.callers,f=Sr(r,n,t),d=this.atn.decisionMap[f],y=d.decision,g=Mt(du({maxLookahead:1,occurrence:t,prodType:n,rule:r}),m=>Mt(m,E=>E[0]));if(wu(g)&&g[0][0]&&!a&&!uT(d,n,c)){let m=g[0],E=Jb(m);if(E.length===1&&a_(E[0].categoryMatches)){let T=E[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===T}}else{let $=dp(E,(T,R)=>(R!==void 0&&(T[R.tokenTypeIdx]=!0,bo(R.categoryMatches,w=>{T[w]=!0})),T),{});return function(){let T=this.LA_FAST(1);return $[T.tokenTypeIdx]===!0}}}return function(){let m=cs.call(this,s,y,mp,l,u);return typeof m=="object"?!1:m===0}}};function wu(e,t=!0){let r=new Set;for(let n of e){let a=new Set;for(let s of n){if(s===void 0){if(t)break;return!1}let l=[s.tokenTypeIdx].concat(s.categoryMatches);for(let u of l)if(r.has(u)){if(!a.has(u))return!1}else r.add(u),a.add(u)}}return!0}o(wu,"isLL1Sequence");i(wu,"isLL1Sequence");function lT(e){let t=new Map;for(let r of e.states)for(let n of r.transitions)if(n instanceof fo){let a=t.get(n.rule);a===void 0&&(a=[],t.set(n.rule,a)),a.push(n.followState)}return t}o(lT,"buildCallers");i(lT,"buildCallers");function Iu(e,t){let r=new Set,n=new Set,a=[e];for(;a.length>0;){let s=a.shift();if(!n.has(s)){if(n.add(s),s.type===Dr){if(t!==void 0){let l=t.get(s.rule);l!==void 0&&a.push(...l)}continue}for(let l of s.transitions)if(l instanceof co){r.add(l.tokenType.tokenTypeIdx);for(let u of l.tokenType.categoryMatches)r.add(u)}else a.push(l.target)}}return r}o(Iu,"firstSet");i(Iu,"firstSet");function uT(e,t,r){let n=t==="RepetitionMandatoryWithSeparator",a=e.transitions[n?1:0],s=e.transitions[n?0:1];if(a===void 0||s===void 0)return!1;let l=Iu(a.target),u=Iu(s.target,r);for(let c of l)if(u.has(c))return!0;return!1}o(uT,"optionalHasFollowConflict");i(uT,"optionalHasFollowConflict");function cT(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=sT(e.decisionStates[n],n);return r}o(cT,"initATNSimulator");i(cT,"initATNSimulator");function cs(e,t,r,n,a){let s=e[t](r),l=s.start;if(l===void 0){let c=RT(s.atnStartState);l=lf(s,of(c)),s.start=l}return fT.apply(this,[s,l,r,n,a])}o(cs,"adaptivePredict");i(cs,"adaptivePredict");function fT(e,t,r,n,a){let s=t,l=1,u=[],c=this.LA_FAST(l++);for(;;){let f=gT(s,c);if(f===void 0&&(f=pT.apply(this,[e,s,c,l,r,n])),f===Os)return yT(u,s,c);if(f.isAcceptState===!0){if(a===!0&&Hs(c,xt)){let d=IT(s,r);if(d!==void 0)return d}return f.prediction}s=f,u.push(c),c=this.LA(l++)}}o(fT,"performLookahead");i(fT,"performLookahead");function pT(e,t,r,n,a,s){let l=vT(t.configs,r,a);if(l.size===0)return Pu(e,t,r,Os),Os;let u=of(l),c=$T(l,a);if(c!==void 0)u.isAcceptState=!0,u.prediction=c,u.configs.uniqueAlt=c;else if(bT(l)){let f=Db(l.alts);u.isAcceptState=!0,u.prediction=f,u.configs.uniqueAlt=f,dT.apply(this,[e,n,l.alts,s])}return u=Pu(e,t,r,u),u}o(pT,"computeLookaheadTarget");i(pT,"computeLookaheadTarget");function dT(e,t,r,n){let a=[];for(let f=1;f<=t;f++)a.push(this.LA(f).tokenType);let s=e.atnStartState,l=s.rule,u=s.production,c=mT({topLevelRule:l,ambiguityIndices:r,production:u,prefixPath:a});n(c)}o(dT,"reportLookaheadAmbiguity");i(dT,"reportLookaheadAmbiguity");function mT(e){let t=Mt(e.prefixPath,a=>br(a)).join(", "),r=e.production.idx===0?"":e.production.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${hT(e.production)}${r}> inside <${e.topLevelRule.name}> Rule,
<${t}> may appears as a prefix path in all these alternatives.
`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,n}o(mT,"buildAmbiguityError");i(mT,"buildAmbiguityError");function hT(e){if(e instanceof Me)return"SUBRULE";if(e instanceof Pe)return"OPTION";if(e instanceof je)return"OR";if(e instanceof qe)return"AT_LEAST_ONE";if(e instanceof We)return"AT_LEAST_ONE_SEP";if(e instanceof Fe)return"MANY_SEP";if(e instanceof Te)return"MANY";if(e instanceof ue)return"CONSUME";throw Error("non exhaustive match")}o(hT,"getProductionDslName2");i(hT,"getProductionDslName");function yT(e,t,r){let n=xb(t.configs.elements,s=>s.state.transitions),a=Xb(n.filter(s=>s instanceof co).map(s=>s.tokenType),s=>s.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:a,tokenPath:e}}o(yT,"buildAdaptivePredictError");i(yT,"buildAdaptivePredictError");function gT(e,t){return e.edges[t.tokenTypeIdx]}o(gT,"getExistingTargetState");i(gT,"getExistingTargetState");function vT(e,t,r){let n=new Su,a=[];for(let l of e.elements){if(r.is(l.alt)===!1)continue;if(l.state.type===Dr){a.push(l);continue}let u=l.state.transitions.length;for(let c=0;c<u;c++){let f=l.state.transitions[c],d=TT(f,t);d!==void 0&&n.add({state:d,alt:l.alt,stack:l.stack})}}let s;if(a.length===0&&n.size===1&&(s=n),s===void 0){s=new Su;for(let l of n.elements)ii(l,s)}if(a.length>0&&!ET(s))for(let l of a)s.add(l);return s}o(vT,"computeReachSet");i(vT,"computeReachSet");function TT(e,t){if(e instanceof co&&Hs(t,e.tokenType))return e.target}o(TT,"getReachableTarget");i(TT,"getReachableTarget");function $T(e,t){let r;for(let n of e.elements)if(t.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}o($T,"getUniqueAlt");i($T,"getUniqueAlt");function of(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}o(of,"newDFAState");i(of,"newDFAState");function Pu(e,t,r,n){return n=lf(e,n),t.edges[r.tokenTypeIdx]=n,n}o(Pu,"addDFAEdge");i(Pu,"addDFAEdge");function lf(e,t){if(t===Os)return t;let r=t.configs.key,n=e.states[r];return n!==void 0?n:(t.configs.finalize(),e.states[r]=t,t)}o(lf,"addDFAState");i(lf,"addDFAState");function RT(e){let t=new Su,r=e.transitions.length;for(let n=0;n<r;n++){let s={state:e.transitions[n].target,alt:n,stack:[]};ii(s,t)}return t}o(RT,"computeStartState");i(RT,"computeStartState");function ii(e,t){let r=e.state;if(r.type===Dr){if(e.stack.length>0){let a=[...e.stack],l={state:a.pop(),alt:e.alt,stack:a};ii(l,t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let a=0;a<n;a++){let s=r.transitions[a],l=AT(e,s);l!==void 0&&ii(l,t)}}o(ii,"closure");i(ii,"closure");function AT(e,t){if(t instanceof Av)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof fo){let r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}o(AT,"getEpsilonTarget");i(AT,"getEpsilonTarget");function ET(e){for(let t of e.elements)if(t.state.type===Dr)return!0;return!1}o(ET,"hasConfigInRuleStopState");i(ET,"hasConfigInRuleStopState");function CT(e){for(let t of e.elements)if(t.state.type!==Dr)return!1;return!0}o(CT,"allConfigsInRuleStopStates");i(CT,"allConfigsInRuleStopStates");function bT(e){if(CT(e))return!0;let t=_T(e.elements);return ST(t)&&!wT(t)}o(bT,"hasConflictTerminatingPrediction");i(bT,"hasConflictTerminatingPrediction");function _T(e){let t=new Map;for(let r of e){let n=af(r,!1),a=t.get(n);a===void 0&&(a={},t.set(n,a)),a[r.alt]=!0}return t}o(_T,"getConflictingAltSets");i(_T,"getConflictingAltSets");function ST(e){for(let t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}o(ST,"hasConflictingAltSet");i(ST,"hasConflictingAltSet");function wT(e){for(let t of Array.from(e.values()))if(Object.keys(t).length===1)return!0;return!1}o(wT,"hasStateAssociatedWithOneAlt");i(wT,"hasStateAssociatedWithOneAlt");function IT(e,t){let r;for(let n of e.configs.elements)if(!(t.is(n.alt)===!1||n.state.type===Dr)){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}o(IT,"getBestGuess");i(IT,"getBestGuess");var PT=class{static{o(this,"CstNodeBuilder")}static{i(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new OT(e),this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let t=new uf;return t.grammarSource=e,this.appendChild(this.current,t),this.nodeStack.push(t),t}buildLeafNode(e,t){let r=this.createLeafNode(e,!t);return t&&(r.grammarSource=t),this.appendChild(this.current,r),r}createLeafNode(e,t){return new kT(e.startOffset,e.image.length,e.startLine-1,e.startColumn-1,e.endLine-1,e.endColumn,e.tokenType,t)}appendChild(e,t){t.container=e,e.content.push(t)}appendChildren(e,t){for(let r of t)r.container=e;e.content.length===0?e.content=t.slice():e.content.push(...t)}insertChildren(e,t,r){for(let n of r)n.container=e;e.content.splice(t,0,...r)}removeNode(e){let t=e.container;if(t){let r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){let t=[];for(let a of e)t.push(this.createLeafNode(a,!0));let r=this.current,n=!1;if(r.content.length>0){this.appendChildren(r,t);return}for(;r.container;){let a=r.container.content.indexOf(r);if(a>0){this.insertChildren(r.container,a,t),n=!0;break}r=r.container}n||this.insertChildren(this.rootNode,0,t)}construct(e){let t=this.current;e.$cstNode=t;let r=this.nodeStack.pop();r&&(r.content.length===0?this.removeNode(r):r.content=r.content.slice())}},NT=class{static{o(this,"AbstractCstNode")}static{i(this,"AbstractCstNode")}constructor(){this.container=void 0,this.grammarSource=void 0}get root(){let e=this;for(;e.container;)e=e.container;return e}get text(){return this.root.fullText.substring(this.offset,this.end)}},kT=class extends NT{static{o(this,"LeafCstNodeImpl")}static{i(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get astNode(){let e=this.container;if(!e)throw new Error("This node has no associated AST element");return e.astNode}get range(){return{start:{line:this._startLine,character:this._startColumn},end:{line:this._endLine,character:this._endColumn}}}constructor(e,t,r,n,a,s,l,u=!1){super(),this._hidden=u,this._offset=$r(e),this._length=$r(t),this._startLine=$r(r),this._startColumn=$r(n),this._endLine=$r(a),this._endColumn=$r(s),this._tokenType=l}};function $r(e){return e|0}o($r,"toSmi");i($r,"toSmi");var uf=class extends NT{static{o(this,"CompositeCstNodeImpl")}static{i(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=[],this._astNode=void 0,this._rangeCache=void 0}get astNode(){let e=this;for(;e;){if(e._astNode)return e._astNode;e=e.container}throw new Error("This node has no associated AST element")}set astNode(e){this._astNode=e}get hidden(){return!1}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this._rangeCache;if(e===void 0){let t=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(t&&r){let{range:n}=t,{range:a}=r;this._rangeCache=e={start:n.start,end:a.end.line<n.start.line?n.start:a.end}}else return{start:{line:0,character:0},end:{line:0,character:0}}}return e}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}},OT=class extends uf{static{o(this,"RootCstNodeImpl")}static{i(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},Nu=Symbol("Datatype");function fs(e){return e.$type===Nu}o(fs,"isDataTypeNode");i(fs,"isDataTypeNode");var hp="\u200B",MT=i(e=>e.endsWith(hp)?e:e+hp,"withRuleSuffix"),DT=class{static{o(this,"AbstractLangiumParser")}static{i(this,"AbstractLangiumParser")}constructor(e,t){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new p_(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},t,e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new xT(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},t)}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},l_=class extends DT{static{o(this,"LangiumParser")}static{i(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e,!1),this.nodeBuilder=new PT,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){let r=this.computeRuleType(e),n;Xa(e)&&(n=e.name,this.registerPrecedenceMap(e));let a=this.wrapper.DEFINE_RULE(MT(e.name),this.startImplementation(r,n,t).bind(this));return this.allRules.set(e.name,a),Tt(e)&&e.entry&&(this.mainRule=a),a}registerPrecedenceMap(e){let t=e.name,r=new Map;for(let n=0;n<e.operators.precedences.length;n++){let a=e.operators.precedences[n];for(let s of a.operators)r.set(s.value,{precedence:n,rightAssoc:a.associativity==="right"})}this.operatorPrecedence.set(t,r)}computeRuleType(e){return Xa(e)?Pn(e):e.fragment?void 0:Ec(e)?Nu:Pn(e)}parse(e,t={}){this.nodeBuilder.buildRootNode(e);let r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw new Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");let a=this.doParse(n);return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,Ts(a,{deep:!0}),{value:a,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}doParse(e){let t=this.wrapper.rule(e);if(this.stack.length>0&&(t=this.construct()),t===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 this.linkCstNode(t),t}linkCstNode(e){we(e)&&e.$cstNode&&(e.$cstNode.astNode=e)}startImplementation(e,t,r){return n=>{let a=!this.isRecording()&&e!==void 0;if(a){let s={$type:e};this.stack.push(s),e===Nu?s.value="":t!==void 0&&(s.$infixName=t)}return r(n),a?this.construct():void 0}}extractHiddenTokens(e){let t=this.lexerResult.hidden;if(!t.length)return[];let r=e.startOffset;for(let n=0;n<t.length;n++)if(t[n].startOffset>r)return t.splice(0,n);return t.splice(0,t.length)}consume(e,t,r){let n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){let a=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(a);let s=this.nodeBuilder.buildLeafNode(n,r),{assignment:l,crossRef:u}=this.getAssignment(r),c=this.current;if(l){let f=Yt(r)?n.image:this.converter.convert(n.image,s);this.assign(l.operator,l.feature,f,s,u)}else if(fs(c)){let f=n.image;Yt(r)||(f=this.converter.convert(f,s).toString()),c.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&As(e)}subrule(e,t,r,n,a){let s;!this.isRecording()&&!r&&(s=this.nodeBuilder.buildCompositeNode(n));let l;try{l=this.wrapper.wrapSubrule(e,t,a)}finally{this.isRecording()||(l===void 0&&!r&&(l=this.construct()),l!==void 0&&s&&s.length>0&&this.performSubruleAssignment(l,n,s))}}performSubruleAssignment(e,t,r){let{assignment:n,crossRef:a}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,a);else if(!n){let s=this.current;if(fs(s))s.value+=e.toString();else if(typeof e=="object"&&e){let u=this.assignWithoutOverride(e,s);this.stack.pop(),this.stack.push(u)}}}action(e,t){if(!this.isRecording()){let r=this.current;if(t.feature&&t.operator){r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode);let n=this.nodeBuilder.buildCompositeNode(t);this.nodeBuilder.appendChild(n,r.$cstNode);let a={$type:e};this.stack.push(a),this.assign(t.operator,t.feature,r,r.$cstNode)}else r.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):fs(e)?this.converter.convert(e.value,e.$cstNode):(Md(this.astReflection,e),e)}constructInfix(e,t){let r=e.parts;if(!Array.isArray(r)||r.length===0)return;let n=e.operators;if(!Array.isArray(n)||r.length<2)return r[0];let a=0,s=-1;for(let E=0;E<n.length;E++){let $=n[E],T=t.get($)??{precedence:1/0,rightAssoc:!1};T.precedence>s?(s=T.precedence,a=E):T.precedence===s&&(T.rightAssoc||(a=E))}let l=n.slice(0,a),u=n.slice(a+1),c=r.slice(0,a+1),f=r.slice(a+1),d={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:c,operators:l},y={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:f,operators:u},g=this.constructInfix(d,t),m=this.constructInfix(y,t);return{$type:e.$type,$cstNode:e.$cstNode,left:g,operator:n[a],right:m}}getAssignment(e){if(!this.assignmentMap.has(e)){let t=pi(e,Ht);this.assignmentMap.set(e,{assignment:t,crossRef:t&&mi(t.terminal)?t.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,t,r,n,a){let s=this.current,l;switch(a==="single"&&typeof r=="string"?l=this.linker.buildReference(s,t,n,r):a==="multi"&&typeof r=="string"?l=this.linker.buildMultiReference(s,t,n,r):l=r,this.linkCstNode(l),e){case"=":{s[t]=l;break}case"?=":{s[t]=!0;break}case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(l)}}assignWithoutOverride(e,t){for(let[r,n]of Object.entries(t)){let a=e[r];a===void 0?e[r]=n:Array.isArray(a)&&Array.isArray(n)&&(n.push(...a),e[r]=n)}return e.$cstNode=void 0,e}get definitionErrors(){return this.wrapper.definitionErrors}},u_=class{static{o(this,"AbstractParserErrorMessageProvider")}static{i(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return bn.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return bn.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return bn.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return bn.buildEarlyExitMessage(e)}},LT=class extends u_{static{o(this,"LangiumParserErrorMessageProvider")}static{i(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:t}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},c_=class extends DT{static{o(this,"LangiumCompletionParser")}static{i(this,"LangiumCompletionParser")}constructor(e){super(e,!0),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){let r=this.wrapper.DEFINE_RULE(MT(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{let r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,a){this.before(n),this.wrapper.wrapSubrule(e,t,a),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}},f_={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new LT},xT=class extends VR{static{o(this,"ChevrotainWrapper")}static{i(this,"ChevrotainWrapper")}constructor(e,t,r){let n=t&&"maxLookahead"in t;super(e,{...f_,lookaheadStrategy:n?new Uc({maxLookahead:t.maxLookahead}):new o_({logging:t.skipValidations?()=>{}:void 0,incomplete:r}),...t})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t,r){return this.RULE(e,t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t,void 0)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}rule(e){return e.call(this,{})}},p_=class extends xT{static{o(this,"ProfilerWrapper")}static{i(this,"ProfilerWrapper")}constructor(e,t,r,n){super(e,t,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,t,r){this.task.startSubTask(this.ruleName(t));try{return super.subrule(e,t,r)}finally{this.task.stopSubTask(this.ruleName(t))}}};function cf(e,t,r){return GT({parser:t,tokens:r,ruleNames:new Map},e),t}o(cf,"createParser");i(cf,"createParser");function GT(e,t){let r=vc(t,!1),n=ce(t.rules).filter(Tt).filter(s=>r.has(s));for(let s of n){let l={...e,consume:1,optional:1,subrule:1,many:1,or:1};e.parser.rule(s,Zt(l,s.definition))}let a=ce(t.rules).filter(Xa).filter(s=>r.has(s));for(let s of a)e.parser.rule(s,FT(e,s))}o(GT,"buildRules");i(GT,"buildRules");function FT(e,t){let r=t.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+t.call.rule.$refText);if($t(r))throw new Error("Cannot use terminal rule in infix expression");let n=t.operators.precedences.flatMap(m=>m.operators),a={$type:"Group",elements:[]},s={$container:a,$type:"Assignment",feature:"parts",operator:"+=",terminal:t.call},l={$container:a,$type:"Group",elements:[],cardinality:"*"};a.elements.push(s,l);let c={$container:l,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},f={...s,$container:l};l.elements.push(c,f);let y=n.map(m=>e.tokens[m.value]).map((m,E)=>({ALT:i(()=>e.parser.consume(E,m,c),"ALT")})),g;return m=>{g??(g=ho(e,r)),e.parser.subrule(0,g,!1,s,m),e.parser.many(0,{DEF:i(()=>{e.parser.alternatives(0,y),e.parser.subrule(1,g,!1,f,m)},"DEF")})}}o(FT,"buildInfixRule");i(FT,"buildInfixRule");function Zt(e,t,r=!1){let n;if(Yt(t))n=WT(e,t);else if(di(t))n=jT(e,t);else if(Ht(t))n=Zt(e,t.terminal);else if(mi(t))n=ff(e,t);else if(Xt(t))n=zT(e,t);else if(dc(t))n=KT(e,t);else if(yc(t))n=BT(e,t);else if(zs(t))n=qT(e,t);else if(jd(t)){let a=e.consume++;n=i(()=>e.parser.consume(a,xt,t),"method")}else throw new sm(t.$cstNode,`Unexpected element type: ${t.$type}`);return pf(e,r?void 0:si(t),n,t.cardinality)}o(Zt,"buildElement");i(Zt,"buildElement");function jT(e,t){let r=Pn(t);return()=>e.parser.action(r,t)}o(jT,"buildAction");i(jT,"buildAction");function zT(e,t){let r=t.rule.ref;if(Dn(r)){let n=e.subrule++,a=Tt(r)&&r.fragment,s=t.arguments.length>0?UT(r,t.arguments):()=>({}),l;return u=>{l??(l=ho(e,r)),e.parser.subrule(n,l,a,t,s(u))}}else if($t(r)){let n=e.consume++,a=Ms(e,r.name);return()=>e.parser.consume(n,a,t)}else if(r)Ln(r);else throw new sm(t.$cstNode,`Undefined rule: ${t.rule.$refText}`)}o(zT,"buildRuleCall");i(zT,"buildRuleCall");function UT(e,t){if(t.some(n=>n.calledByName)){let n=t.map(a=>({parameterName:a.parameter?.ref?.name,predicate:at(a.value)}));return a=>{let s={};for(let{parameterName:l,predicate:u}of n)l&&(s[l]=u(a));return s}}else{let n=t.map(a=>at(a.value));return a=>{let s={};for(let l=0;l<n.length;l++)if(l<e.parameters.length){let u=e.parameters[l].name,c=n[l];s[u]=c(a)}return s}}}o(UT,"buildRuleCallPredicate");i(UT,"buildRuleCallPredicate");function at(e){if(Fd(e)){let t=at(e.left),r=at(e.right);return n=>t(n)||r(n)}else if(Gd(e)){let t=at(e.left),r=at(e.right);return n=>t(n)&&r(n)}else if(Kd(e)){let t=at(e.value);return r=>!t(r)}else if(Bd(e)){let t=e.parameter.ref.name;return r=>r!==void 0&&r[t]===!0}else if(Ld(e)){let t=!!e.true;return()=>t}Ln(e)}o(at,"buildPredicate");i(at,"buildPredicate");function KT(e,t){if(t.elements.length===1)return Zt(e,t.elements[0]);{let r=[];for(let a of t.elements){let s={ALT:Zt(e,a,!0)},l=si(a);l&&(s.GATE=at(l)),r.push(s)}let n=e.or++;return a=>e.parser.alternatives(n,r.map(s=>{let l={ALT:i(()=>s.ALT(a),"ALT")},u=s.GATE;return u&&(l.GATE=()=>u(a)),l}))}}o(KT,"buildAlternatives");i(KT,"buildAlternatives");function BT(e,t){if(t.elements.length===1)return Zt(e,t.elements[0]);let r=[];for(let u of t.elements){let c={ALT:Zt(e,u,!0)},f=si(u);f&&(c.GATE=at(f)),r.push(c)}let n=e.or++,a=i((u,c)=>{let f=c.getRuleStack().join("-");return`uGroup_${u}_${f}`},"idFunc"),s=i(u=>e.parser.alternatives(n,r.map((c,f)=>{let d={ALT:i(()=>!0,"ALT")},y=e.parser;d.ALT=()=>{if(c.ALT(u),!y.isRecording()){let m=a(n,y);y.unorderedGroups.get(m)||y.unorderedGroups.set(m,[]);let E=y.unorderedGroups.get(m);typeof E?.[f]>"u"&&(E[f]=!0)}};let g=c.GATE;return g?d.GATE=()=>g(u):d.GATE=()=>!y.unorderedGroups.get(a(n,y))?.[f],d})),"alternatives"),l=pf(e,si(t),s,"*");return u=>{l(u),e.parser.isRecording()||e.parser.unorderedGroups.delete(a(n,e.parser))}}o(BT,"buildUnorderedGroup");i(BT,"buildUnorderedGroup");function qT(e,t){let r=t.elements.map(n=>Zt(e,n));return n=>r.forEach(a=>a(n))}o(qT,"buildGroup");i(qT,"buildGroup");function si(e){if(zs(e))return e.guardCondition}o(si,"getGuardCondition");i(si,"getGuardCondition");function ff(e,t,r=t.terminal){if(r)if(Xt(r)&&Tt(r.rule.ref)){let n=r.rule.ref,a=e.subrule++,s;return l=>{s??(s=ho(e,n)),e.parser.subrule(a,s,!1,t,l)}}else if(Xt(r)&&$t(r.rule.ref)){let n=e.consume++,a=Ms(e,r.rule.ref.name);return()=>e.parser.consume(n,a,t)}else if(Yt(r)){let n=e.consume++,a=Ms(e,r.value);return()=>e.parser.consume(n,a,t)}else throw new Error("Could not build cross reference parser");else{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);let a=Rc(t.type.ref)?.terminal;if(!a)throw new Error("Could not find name assignment for type: "+Pn(t.type.ref));return ff(e,t,a)}}o(ff,"buildCrossReference");i(ff,"buildCrossReference");function WT(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}o(WT,"buildKeyword");i(WT,"buildKeyword");function pf(e,t,r,n){let a=t&&at(t);if(!n)if(a){let s=e.or++;return l=>e.parser.alternatives(s,[{ALT:i(()=>r(l),"ALT"),GATE:i(()=>a(l),"GATE")},{ALT:Au(),GATE:i(()=>!a(l),"GATE")}])}else return r;if(n==="*"){let s=e.many++;return l=>e.parser.many(s,{DEF:i(()=>r(l),"DEF"),GATE:a?()=>a(l):void 0})}else if(n==="+"){let s=e.many++;if(a){let l=e.or++;return u=>e.parser.alternatives(l,[{ALT:i(()=>e.parser.atLeastOne(s,{DEF:i(()=>r(u),"DEF")}),"ALT"),GATE:i(()=>a(u),"GATE")},{ALT:Au(),GATE:i(()=>!a(u),"GATE")}])}else return l=>e.parser.atLeastOne(s,{DEF:i(()=>r(l),"DEF")})}else if(n==="?"){let s=e.optional++;return l=>e.parser.optional(s,{DEF:i(()=>r(l),"DEF"),GATE:a?()=>a(l):void 0})}else Ln(n)}o(pf,"wrap");i(pf,"wrap");function ho(e,t){let r=VT(e,t),n=e.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}o(ho,"getRule");i(ho,"getRule");function VT(e,t){if(Dn(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let r=t,n=r.$container,a=t.$type;for(;!Tt(n);)(zs(n)||dc(n)||yc(n))&&(a=n.elements.indexOf(r).toString()+":"+a),r=n,n=n.$container;return a=n.name+":"+a,e.ruleNames.set(t,a),a}}o(VT,"getRuleName");i(VT,"getRuleName");function Ms(e,t){let r=e.tokens[t];if(!r)throw new Error(`Token "${t}" not found."`);return r}o(Ms,"getToken");i(Ms,"getToken");function HT(e){let t=e.Grammar,r=e.parser.Lexer,n=new c_(e);return cf(t,n,r.definition),n.finalize(),n}o(HT,"createCompletionParser");i(HT,"createCompletionParser");function YT(e){let t=XT(e);return t.finalize(),t}o(YT,"createLangiumParser");i(YT,"createLangiumParser");function XT(e){let t=e.Grammar,r=e.parser.Lexer,n=new l_(e);return cf(t,n,r.definition)}o(XT,"prepareLangiumParser");i(XT,"prepareLangiumParser");var JT=class{static{o(this,"DefaultTokenBuilder")}static{i(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,t){let r=ce(vc(e,!1)),n=this.buildTerminalTokens(r),a=this.buildKeywordTokens(r,n,t);return a.push(...n),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter($t).filter(t=>!t.fragment).map(t=>this.buildTerminalToken(t)).toArray()}buildTerminalToken(e){let t=Bs(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,n={name:e.name,PATTERN:r};return typeof r=="function"&&(n.LINE_BREAKS=!0),e.hidden&&(n.GROUP=gc(t)?xe.SKIPPED:"hidden"),n}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let t=new RegExp(e,e.flags+"y");return(r,n)=>(t.lastIndex=n,t.exec(r))}buildKeywordTokens(e,t,r){return e.filter(Dn).flatMap(n=>Mn(n).filter(Yt)).distinct(n=>n.value).toArray().sort((n,a)=>a.value.length-n.value.length).map(n=>this.buildKeywordToken(n,t,!!r?.caseInsensitive))}buildKeywordToken(e,t,r){let n=this.buildKeywordPattern(e,r),a={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return typeof n=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,t){return t?new RegExp(hi(e.value),"i"):e.value}findLongerAlt(e,t){return t.reduce((r,n)=>{let a=n?.PATTERN;return a?.source&&um("^"+a.source+"$",e.value)&&r.push(n),r},[])}},ZT=class{static{o(this,"DefaultValueConverter")}static{i(this,"DefaultValueConverter")}convert(e,t){let r=t.grammarSource;if(mi(r)&&(r=dm(r)),Xt(r)){let n=r.rule.ref;if(!n)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){switch(e.name.toUpperCase()){case"INT":return kt.convertInt(t);case"STRING":return kt.convertString(t);case"ID":return kt.convertID(t)}switch($m(e)?.toLowerCase()){case"number":return kt.convertNumber(t);case"boolean":return kt.convertBoolean(t);case"bigint":return kt.convertBigint(t);case"date":return kt.convertDate(t);default:return t}}},kt;(function(e){function t(f){let d="";for(let y=1;y<f.length-1;y++){let g=f.charAt(y);if(g==="\\"){let m=f.charAt(++y);d+=r(m)}else d+=g}return d}o(t,"convertString"),i(t,"convertString"),e.convertString=t;function r(f){switch(f){case"b":return"\b";case"f":return"\f";case"n":return`
`;case"r":return"\r";case"t":return"	";case"v":return"\v";case"0":return"\0";default:return f}}o(r,"convertEscapeCharacter"),i(r,"convertEscapeCharacter");function n(f){return f.charAt(0)==="^"?f.substring(1):f}o(n,"convertID"),i(n,"convertID"),e.convertID=n;function a(f){return parseInt(f)}o(a,"convertInt"),i(a,"convertInt"),e.convertInt=a;function s(f){return BigInt(f)}o(s,"convertBigint"),i(s,"convertBigint"),e.convertBigint=s;function l(f){return new Date(f)}o(l,"convertDate"),i(l,"convertDate"),e.convertDate=l;function u(f){return Number(f)}o(u,"convertNumber"),i(u,"convertNumber"),e.convertNumber=u;function c(f){return f.toLowerCase()==="true"}o(c,"convertBoolean"),i(c,"convertBoolean"),e.convertBoolean=c})(kt||(kt={}));var he=ic(uc(),1);function QT(){return new Promise(e=>{typeof setImmediate>"u"?setTimeout(e,0):setImmediate(e)})}o(QT,"delayNextTick");i(QT,"delayNextTick");var ps=0,d_=10;function e$(){return ps=performance.now(),new he.CancellationTokenSource}o(e$,"startCancelableOperation");i(e$,"startCancelableOperation");var _n=Symbol("OperationCancelled");function vi(e){return e===_n}o(vi,"isOperationCancelled");i(vi,"isOperationCancelled");async function ke(e){if(e===he.CancellationToken.None)return;let t=performance.now();if(t-ps>=d_&&(ps=t,await QT(),ps=performance.now()),e.isCancellationRequested)throw _n}o(ke,"interruptAndCheck");i(ke,"interruptAndCheck");var df=class{static{o(this,"Deferred")}static{i(this,"Deferred")}constructor(){this.promise=new Promise((e,t)=>{this.resolve=r=>(e(r),this),this.reject=r=>(t(r),this)})}},yp=class ku{static{o(this,"_FullTextDocument")}static{i(this,"FullTextDocument")}constructor(t,r,n,a){this._uri=t,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(t){if(t){let r=this.offsetAt(t.start),n=this.offsetAt(t.end);return this._content.substring(r,n)}return this._content}update(t,r){for(let n of t)if(ku.isIncremental(n)){let a=hf(n.range),s=this.offsetAt(a.start),l=this.offsetAt(a.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(l,this._content.length);let u=Math.max(a.start.line,0),c=Math.max(a.end.line,0),f=this._lineOffsets,d=Mu(n.text,!1,s);if(c-u===d.length)for(let g=0,m=d.length;g<m;g++)f[g+u+1]=d[g];else d.length<1e4?f.splice(u+1,c-u,...d):this._lineOffsets=f=f.slice(0,u+1).concat(d,f.slice(c+1));let y=n.text.length-(l-s);if(y!==0)for(let g=u+1+d.length,m=f.length;g<m;g++)f[g]=f[g]+y}else if(ku.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=Mu(this._content,!0)),this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let r=this.getLineOffsets(),n=0,a=r.length;if(a===0)return{line:0,character:t};for(;n<a;){let l=Math.floor((n+a)/2);r[l]>t?a=l:n=l+1}let s=n-1;return t=this.ensureBeforeEOL(t,r[s]),{line:s,character:t-r[s]}}offsetAt(t){let r=this.getLineOffsets();if(t.line>=r.length)return this._content.length;if(t.line<0)return 0;let n=r[t.line];if(t.character<=0)return n;let a=t.line+1<r.length?r[t.line+1]:this._content.length,s=Math.min(n+t.character,a);return this.ensureBeforeEOL(s,n)}getLineRange(t){let r=this.getLineOffsets();if(t>=r.length){let l=r.length-1;return{start:{line:l,character:0},end:{line:l,character:this._content.length-r[l]}}}else if(t<0)return{start:{line:0,character:0},end:{line:0,character:0}};let n=r[t],a=t+1<r.length?r[t+1]:this._content.length,s=this.ensureBeforeEOL(a,n);return{start:{line:t,character:0},end:{line:t,character:s-n}}}getEOLCharacters(t){let r=this.getLineOffsets();if(t>=r.length)return"";if(t<0)return"";let n=t+1<r.length?r[t+1]:this._content.length,a=this.ensureBeforeEOL(n,r[t]);return this._content.substring(a,n)}ensureBeforeEOL(t,r){for(;t>r&&mf(this._content.charCodeAt(t-1));)t--;return t}get lineCount(){return this.getLineOffsets().length}static isIncremental(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},Ou;(function(e){function t(a,s,l,u){return new yp(a,s,l,u)}o(t,"create"),i(t,"create"),e.create=t;function r(a,s,l){if(a instanceof yp)return a.update(s,l),a;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),i(r,"update"),e.update=r;function n(a,s){let l=a.getText(),u=Ds(s.map(t$),(d,y)=>{let g=d.range.start.line-y.range.start.line;return g===0?d.range.start.character-y.range.start.character:g}),c=0,f=[];for(let d of u){let y=a.offsetAt(d.range.start);if(y<c)throw new Error("Overlapping edit");y>c&&f.push(l.substring(c,y)),d.newText.length&&f.push(d.newText),c=a.offsetAt(d.range.end)}return f.push(l.substr(c)),f.join("")}o(n,"applyEdits"),i(n,"applyEdits"),e.applyEdits=n})(Ou||(Ou={}));function Ds(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),a=e.slice(r);Ds(n,t),Ds(a,t);let s=0,l=0,u=0;for(;s<n.length&&l<a.length;)t(n[s],a[l])<=0?e[u++]=n[s++]:e[u++]=a[l++];for(;s<n.length;)e[u++]=n[s++];for(;l<a.length;)e[u++]=a[l++];return e}o(Ds,"mergeSort");i(Ds,"mergeSort");function Mu(e,t,r=0){let n=t?[r]:[];for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);mf(s)&&(s===13&&a+1<e.length&&e.charCodeAt(a+1)===10&&a++,n.push(r+a+1))}return n}o(Mu,"computeLineOffsets");i(Mu,"computeLineOffsets");function mf(e){return e===13||e===10}o(mf,"isEOL");i(mf,"isEOL");function hf(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}o(hf,"getWellformedRange");i(hf,"getWellformedRange");function t$(e){let t=hf(e.range);return t!==e.range?{newText:e.newText,range:t}:e}o(t$,"getWellformedEdit");i(t$,"getWellformedEdit");var r$;(()=>{"use strict";var e={975:D=>{function N(P){if(typeof P!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(P))}o(N,"e2"),i(N,"e");function F(P,A){for(var v,_="",k=0,S=-1,O=0,q=0;q<=P.length;++q){if(q<P.length)v=P.charCodeAt(q);else{if(v===47)break;v=47}if(v===47){if(!(S===q-1||O===1))if(S!==q-1&&O===2){if(_.length<2||k!==2||_.charCodeAt(_.length-1)!==46||_.charCodeAt(_.length-2)!==46){if(_.length>2){var H=_.lastIndexOf("/");if(H!==_.length-1){H===-1?(_="",k=0):k=(_=_.slice(0,H)).length-1-_.lastIndexOf("/"),S=q,O=0;continue}}else if(_.length===2||_.length===1){_="",k=0,S=q,O=0;continue}}A&&(_.length>0?_+="/..":_="..",k=2)}else _.length>0?_+="/"+P.slice(S+1,q):_=P.slice(S+1,q),k=q-S-1;S=q,O=0}else v===46&&O!==-1?++O:O=-1}return _}o(F,"r2"),i(F,"r");var j={resolve:i(function(){for(var P,A="",v=!1,_=arguments.length-1;_>=-1&&!v;_--){var k;_>=0?k=arguments[_]:(P===void 0&&(P=process.cwd()),k=P),N(k),k.length!==0&&(A=k+"/"+A,v=k.charCodeAt(0)===47)}return A=F(A,!v),v?A.length>0?"/"+A:"/":A.length>0?A:"."},"resolve"),normalize:i(function(P){if(N(P),P.length===0)return".";var A=P.charCodeAt(0)===47,v=P.charCodeAt(P.length-1)===47;return(P=F(P,!A)).length!==0||A||(P="."),P.length>0&&v&&(P+="/"),A?"/"+P:P},"normalize"),isAbsolute:i(function(P){return N(P),P.length>0&&P.charCodeAt(0)===47},"isAbsolute"),join:i(function(){if(arguments.length===0)return".";for(var P,A=0;A<arguments.length;++A){var v=arguments[A];N(v),v.length>0&&(P===void 0?P=v:P+="/"+v)}return P===void 0?".":j.normalize(P)},"join"),relative:i(function(P,A){if(N(P),N(A),P===A||(P=j.resolve(P))===(A=j.resolve(A)))return"";for(var v=1;v<P.length&&P.charCodeAt(v)===47;++v);for(var _=P.length,k=_-v,S=1;S<A.length&&A.charCodeAt(S)===47;++S);for(var O=A.length-S,q=k<O?k:O,H=-1,V=0;V<=q;++V){if(V===q){if(O>q){if(A.charCodeAt(S+V)===47)return A.slice(S+V+1);if(V===0)return A.slice(S+V)}else k>q&&(P.charCodeAt(v+V)===47?H=V:V===0&&(H=0));break}var Ee=P.charCodeAt(v+V);if(Ee!==A.charCodeAt(S+V))break;Ee===47&&(H=V)}var te="";for(V=v+H+1;V<=_;++V)V!==_&&P.charCodeAt(V)!==47||(te.length===0?te+="..":te+="/..");return te.length>0?te+A.slice(S+H):(S+=H,A.charCodeAt(S)===47&&++S,A.slice(S))},"relative"),_makeLong:i(function(P){return P},"_makeLong"),dirname:i(function(P){if(N(P),P.length===0)return".";for(var A=P.charCodeAt(0),v=A===47,_=-1,k=!0,S=P.length-1;S>=1;--S)if((A=P.charCodeAt(S))===47){if(!k){_=S;break}}else k=!1;return _===-1?v?"/":".":v&&_===1?"//":P.slice(0,_)},"dirname"),basename:i(function(P,A){if(A!==void 0&&typeof A!="string")throw new TypeError('"ext" argument must be a string');N(P);var v,_=0,k=-1,S=!0;if(A!==void 0&&A.length>0&&A.length<=P.length){if(A.length===P.length&&A===P)return"";var O=A.length-1,q=-1;for(v=P.length-1;v>=0;--v){var H=P.charCodeAt(v);if(H===47){if(!S){_=v+1;break}}else q===-1&&(S=!1,q=v+1),O>=0&&(H===A.charCodeAt(O)?--O==-1&&(k=v):(O=-1,k=q))}return _===k?k=q:k===-1&&(k=P.length),P.slice(_,k)}for(v=P.length-1;v>=0;--v)if(P.charCodeAt(v)===47){if(!S){_=v+1;break}}else k===-1&&(S=!1,k=v+1);return k===-1?"":P.slice(_,k)},"basename"),extname:i(function(P){N(P);for(var A=-1,v=0,_=-1,k=!0,S=0,O=P.length-1;O>=0;--O){var q=P.charCodeAt(O);if(q!==47)_===-1&&(k=!1,_=O+1),q===46?A===-1?A=O:S!==1&&(S=1):A!==-1&&(S=-1);else if(!k){v=O+1;break}}return A===-1||_===-1||S===0||S===1&&A===_-1&&A===v+1?"":P.slice(A,_)},"extname"),format:i(function(P){if(P===null||typeof P!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof P);return(function(A,v){var _=v.dir||v.root,k=v.base||(v.name||"")+(v.ext||"");return _?_===v.root?_+k:_+"/"+k:k})(0,P)},"format"),parse:i(function(P){N(P);var A={root:"",dir:"",base:"",ext:"",name:""};if(P.length===0)return A;var v,_=P.charCodeAt(0),k=_===47;k?(A.root="/",v=1):v=0;for(var S=-1,O=0,q=-1,H=!0,V=P.length-1,Ee=0;V>=v;--V)if((_=P.charCodeAt(V))!==47)q===-1&&(H=!1,q=V+1),_===46?S===-1?S=V:Ee!==1&&(Ee=1):S!==-1&&(Ee=-1);else if(!H){O=V+1;break}return S===-1||q===-1||Ee===0||Ee===1&&S===q-1&&S===O+1?q!==-1&&(A.base=A.name=O===0&&k?P.slice(1,q):P.slice(O,q)):(O===0&&k?(A.name=P.slice(1,S),A.base=P.slice(1,q)):(A.name=P.slice(O,S),A.base=P.slice(O,q)),A.ext=P.slice(S,q)),O>0?A.dir=P.slice(0,O-1):k&&(A.dir="/"),A},"parse"),sep:"/",delimiter:":",win32:null,posix:null};j.posix=j,D.exports=j}},t={};function r(D){var N=t[D];if(N!==void 0)return N.exports;var F=t[D]={exports:{}};return e[D](F,F.exports,r),F.exports}o(r,"r"),i(r,"r"),r.d=(D,N)=>{for(var F in N)r.o(N,F)&&!r.o(D,F)&&Object.defineProperty(D,F,{enumerable:!0,get:N[F]})},r.o=(D,N)=>Object.prototype.hasOwnProperty.call(D,N),r.r=D=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(D,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(D,"__esModule",{value:!0})};var n={};let a;r.r(n),r.d(n,{URI:i(()=>g,"URI"),Utils:i(()=>X,"Utils")}),typeof process=="object"?a=process.platform==="win32":typeof navigator=="object"&&(a=navigator.userAgent.indexOf("Windows")>=0);let s=/^\w[\w\d+.-]*$/,l=/^\//,u=/^\/\//;function c(D,N){if(!D.scheme&&N)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${D.authority}", path: "${D.path}", query: "${D.query}", fragment: "${D.fragment}"}`);if(D.scheme&&!s.test(D.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(D.path){if(D.authority){if(!l.test(D.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(D.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(c,"a"),i(c,"a");let f="",d="/",y=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class g{static{o(this,"l")}static{i(this,"l")}static isUri(N){return N instanceof g||!!N&&typeof N.authority=="string"&&typeof N.fragment=="string"&&typeof N.path=="string"&&typeof N.query=="string"&&typeof N.scheme=="string"&&typeof N.fsPath=="string"&&typeof N.with=="function"&&typeof N.toString=="function"}scheme;authority;path;query;fragment;constructor(N,F,j,P,A,v=!1){typeof N=="object"?(this.scheme=N.scheme||f,this.authority=N.authority||f,this.path=N.path||f,this.query=N.query||f,this.fragment=N.fragment||f):(this.scheme=(function(_,k){return _||k?_:"file"})(N,v),this.authority=F||f,this.path=(function(_,k){switch(_){case"https":case"http":case"file":k?k[0]!==d&&(k=d+k):k=d}return k})(this.scheme,j||f),this.query=P||f,this.fragment=A||f,c(this,v))}get fsPath(){return w(this,!1)}with(N){if(!N)return this;let{scheme:F,authority:j,path:P,query:A,fragment:v}=N;return F===void 0?F=this.scheme:F===null&&(F=f),j===void 0?j=this.authority:j===null&&(j=f),P===void 0?P=this.path:P===null&&(P=f),A===void 0?A=this.query:A===null&&(A=f),v===void 0?v=this.fragment:v===null&&(v=f),F===this.scheme&&j===this.authority&&P===this.path&&A===this.query&&v===this.fragment?this:new E(F,j,P,A,v)}static parse(N,F=!1){let j=y.exec(N);return j?new E(j[2]||f,G(j[4]||f),G(j[5]||f),G(j[7]||f),G(j[9]||f),F):new E(f,f,f,f,f)}static file(N){let F=f;if(a&&(N=N.replace(/\\/g,d)),N[0]===d&&N[1]===d){let j=N.indexOf(d,2);j===-1?(F=N.substring(2),N=d):(F=N.substring(2,j),N=N.substring(j)||d)}return new E("file",F,N,f,f)}static from(N){let F=new E(N.scheme,N.authority,N.path,N.query,N.fragment);return c(F,!0),F}toString(N=!1){return b(this,N)}toJSON(){return this}static revive(N){if(N){if(N instanceof g)return N;{let F=new E(N);return F._formatted=N.external,F._fsPath=N._sep===m?N.fsPath:null,F}}return N}}let m=a?1:void 0;class E extends g{static{o(this,"d")}static{i(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=w(this,!1)),this._fsPath}toString(N=!1){return N?b(this,!0):(this._formatted||(this._formatted=b(this,!1)),this._formatted)}toJSON(){let N={$mid:1};return this._fsPath&&(N.fsPath=this._fsPath,N._sep=m),this._formatted&&(N.external=this._formatted),this.path&&(N.path=this.path),this.scheme&&(N.scheme=this.scheme),this.authority&&(N.authority=this.authority),this.query&&(N.query=this.query),this.fragment&&(N.fragment=this.fragment),N}}let $={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 T(D,N,F){let j,P=-1;for(let A=0;A<D.length;A++){let v=D.charCodeAt(A);if(v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===45||v===46||v===95||v===126||N&&v===47||F&&v===91||F&&v===93||F&&v===58)P!==-1&&(j+=encodeURIComponent(D.substring(P,A)),P=-1),j!==void 0&&(j+=D.charAt(A));else{j===void 0&&(j=D.substr(0,A));let _=$[v];_!==void 0?(P!==-1&&(j+=encodeURIComponent(D.substring(P,A)),P=-1),j+=_):P===-1&&(P=A)}}return P!==-1&&(j+=encodeURIComponent(D.substring(P))),j!==void 0?j:D}o(T,"m"),i(T,"m");function R(D){let N;for(let F=0;F<D.length;F++){let j=D.charCodeAt(F);j===35||j===63?(N===void 0&&(N=D.substr(0,F)),N+=$[j]):N!==void 0&&(N+=D[F])}return N!==void 0?N:D}o(R,"y"),i(R,"y");function w(D,N){let F;return F=D.authority&&D.path.length>1&&D.scheme==="file"?`//${D.authority}${D.path}`:D.path.charCodeAt(0)===47&&(D.path.charCodeAt(1)>=65&&D.path.charCodeAt(1)<=90||D.path.charCodeAt(1)>=97&&D.path.charCodeAt(1)<=122)&&D.path.charCodeAt(2)===58?N?D.path.substr(1):D.path[1].toLowerCase()+D.path.substr(2):D.path,a&&(F=F.replace(/\//g,"\\")),F}o(w,"v"),i(w,"v");function b(D,N){let F=N?R:T,j="",{scheme:P,authority:A,path:v,query:_,fragment:k}=D;if(P&&(j+=P,j+=":"),(A||P==="file")&&(j+=d,j+=d),A){let S=A.indexOf("@");if(S!==-1){let O=A.substr(0,S);A=A.substr(S+1),S=O.lastIndexOf(":"),S===-1?j+=F(O,!1,!1):(j+=F(O.substr(0,S),!1,!1),j+=":",j+=F(O.substr(S+1),!1,!0)),j+="@"}A=A.toLowerCase(),S=A.lastIndexOf(":"),S===-1?j+=F(A,!1,!0):(j+=F(A.substr(0,S),!1,!0),j+=A.substr(S))}if(v){if(v.length>=3&&v.charCodeAt(0)===47&&v.charCodeAt(2)===58){let S=v.charCodeAt(1);S>=65&&S<=90&&(v=`/${String.fromCharCode(S+32)}:${v.substr(3)}`)}else if(v.length>=2&&v.charCodeAt(1)===58){let S=v.charCodeAt(0);S>=65&&S<=90&&(v=`${String.fromCharCode(S+32)}:${v.substr(2)}`)}j+=F(v,!0,!1)}return _&&(j+="?",j+=F(_,!1,!1)),k&&(j+="#",j+=N?k:T(k,!1,!1)),j}o(b,"b"),i(b,"b");function M(D){try{return decodeURIComponent(D)}catch{return D.length>3?D.substr(0,3)+M(D.substr(3)):D}}o(M,"C"),i(M,"C");let L=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function G(D){return D.match(L)?D.replace(L,(N=>M(N))):D}o(G,"w"),i(G,"w");var K=r(975);let Z=K.posix||K,ne="/";var X;(function(D){D.joinPath=function(N,...F){return N.with({path:Z.join(N.path,...F)})},D.resolvePath=function(N,...F){let j=N.path,P=!1;j[0]!==ne&&(j=ne+j,P=!0);let A=Z.resolve(j,...F);return P&&A[0]===ne&&!N.authority&&(A=A.substring(1)),N.with({path:A})},D.dirname=function(N){if(N.path.length===0||N.path===ne)return N;let F=Z.dirname(N.path);return F.length===1&&F.charCodeAt(0)===46&&(F=""),N.with({path:F})},D.basename=function(N){return Z.basename(N.path)},D.extname=function(N){return Z.extname(N.path)}})(X||(X={})),r$=n})();var{URI:Be,Utils:ya}=r$,Je;(function(e){e.basename=ya.basename,e.dirname=ya.dirname,e.extname=ya.extname,e.joinPath=ya.joinPath,e.resolvePath=ya.resolvePath;let t=typeof process=="object"&&process?.platform==="win32";function r(l,u){return l?.toString()===u?.toString()}o(r,"equals"),i(r,"equals"),e.equals=r;function n(l,u){let c=typeof l=="string"?Be.parse(l).path:l.path,f=typeof u=="string"?Be.parse(u).path:u.path,d=c.split("/").filter($=>$.length>0),y=f.split("/").filter($=>$.length>0);if(t){let $=/^[A-Z]:$/;if(d[0]&&$.test(d[0])&&(d[0]=d[0].toLowerCase()),y[0]&&$.test(y[0])&&(y[0]=y[0].toLowerCase()),d[0]!==y[0])return f.substring(1)}let g=0;for(;g<d.length&&d[g]===y[g];g++);let m="../".repeat(d.length-g),E=y.slice(g).join("/");return m+E}o(n,"relative"),i(n,"relative"),e.relative=n;function a(l){return Be.parse(l.toString()).toString()}o(a,"normalize"),i(a,"normalize"),e.normalize=a;function s(l,u){let c=typeof l=="string"?Be.parse(l):l,f=typeof u=="string"?Be.parse(u):u;if(c.scheme!==f.scheme)return!1;let d=c.path,y=f.path;return y.charAt(y.length-1)==="/"&&(y=y.slice(0,-1)),d.charAt(d.length-1)==="/"&&(d=d.slice(0,-1)),y===d?!0:y.length<d.length||y.charAt(d.length)!=="/"?!1:y.startsWith(d)}o(s,"contains"),i(s,"contains"),e.contains=s})(Je||(Je={}));var m_=class{static{o(this,"UriTrie")}static{i(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return Je.normalize(e)}clear(){this.root.children.clear()}insert(e,t){let r=this.getNode(this.normalizeUri(e),!0);r.element=t}delete(e){let t=this.getNode(this.normalizeUri(e),!1);t?.parent&&t.parent.children.delete(t.name)}has(e){return this.getNode(this.normalizeUri(e),!1)?.element!==void 0}hasNode(e){return this.getNode(this.normalizeUri(e),!1)!==void 0}find(e){return this.getNode(this.normalizeUri(e),!1)?.element}findNode(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);if(r)return{name:r.name,uri:Je.joinPath(Be.parse(t),r.name).toString(),element:r.element}}findChildren(e){let t=this.normalizeUri(e),r=this.getNode(t,!1);return r?Array.from(r.children.values()).map(n=>({name:n.name,uri:Je.joinPath(Be.parse(t),n.name).toString(),element:n.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let t=this.getNode(this.normalizeUri(e),!1);return t?this.collectValues(t):[]}getNode(e,t){let r=e.split("/");e.charAt(e.length-1)==="/"&&r.pop();let n=this.root;for(let a of r){let s=n.children.get(a);if(!s)if(t)s={name:a,children:new Map,parent:n},n.children.set(a,s);else return;n=s}return n}collectValues(e){let t=[];e.element&&t.push(e.element);for(let r of e.children.values())t.push(...this.collectValues(r));return t}},J;(function(e){e[e.Changed=0]="Changed",e[e.Parsed=1]="Parsed",e[e.IndexedContent=2]="IndexedContent",e[e.ComputedScopes=3]="ComputedScopes",e[e.Linked=4]="Linked",e[e.IndexedReferences=5]="IndexedReferences",e[e.Validated=6]="Validated"})(J||(J={}));var h_=class{static{o(this,"DefaultLangiumDocumentFactory")}static{i(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=he.CancellationToken.None){let r=await this.getInitialText(e,t);return this.createAsync(e,r,t)}async getInitialText(e,t){return this.fileSystemProvider.readFile(e)}fromTextDocument(e,t,r){return t=t??Be.parse(e.uri),he.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return he.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if(typeof t=="string"){let n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}else if("$model"in t){let n={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(n,e)}else{let n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if(typeof t=="string"){let n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}else{let n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let a;if(r)a={parseResult:e,uri:t,state:J.Parsed,references:[],textDocument:r};else{let s=this.createTextDocumentGetter(t,n);a={parseResult:e,uri:t,state:J.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,t){let r=e.parseResult.value.$cstNode?.root.fullText,n=this.textDocuments?.get(e.uri.toString()),a=await this.getUpdatedText(e,n,t);if(n)Object.defineProperty(e,"textDocument",{value:n});else{let s=this.createTextDocumentGetter(e.uri,a);Object.defineProperty(e,"textDocument",{get:s})}return r!==a&&(e.parseResult=await this.parseAsync(e.uri,a,t),e.parseResult.value.$document=e),e.state=J.Parsed,e}async getUpdatedText(e,t,r){return t?t.getText():await this.fileSystemProvider.readFile(e.uri)}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){let r=this.serviceRegistry,n;return()=>n??(n=Ou.create(e.toString(),r.getServices(e).LanguageMetaData.languageId,0,t??""))}},y_=class{static{o(this,"DefaultLangiumDocuments")}static{i(this,"DefaultLangiumDocuments")}constructor(e){this.documentTrie=new m_,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return ce(this.documentTrie.all())}addDocument(e){let t=e.uri.toString();if(this.documentTrie.has(t))throw new Error(`A document with the URI '${t}' is already present.`);this.documentTrie.insert(t,e)}getDocument(e){let t=e.toString();return this.documentTrie.find(t)}getDocuments(e){let t=e.toString();return this.documentTrie.findAll(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r),r)}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(n=>(this.addDocument(n),n));{let n=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(n),n}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&this.documentBuilder().resetToState(r,J.Changed),r}deleteDocument(e){let t=e.toString(),r=this.documentTrie.find(t);return r&&(r.state=J.Changed,this.documentTrie.delete(t)),r}deleteDocuments(e){let t=e.toString(),r=this.documentTrie.findAll(t);for(let n of r)n.state=J.Changed;return this.documentTrie.delete(t),r}},Hr=Symbol("RefResolving"),g_=class{static{o(this,"DefaultReferenceImpl")}static{i(this,"DefaultReferenceImpl")}constructor(e,t,r,n,a){this.resolver=e,this.node=t,this.property=r,this._ref=void 0,this.$refNode=n,this.$refText=a}get ref(){return this.resolver.resolveReference(this,this.node,this.property)}get $nodeDescription(){return this._nodeDescription}get error(){return Cn(this._ref)?this._ref:void 0}},v_=class{static{o(this,"DefaultMultiReferenceImpl")}static{i(this,"DefaultMultiReferenceImpl")}constructor(e,t,r,n,a){this.resolver=e,this.node=t,this.property=r,this._items=void 0,this.$refNode=n,this.$refText=a}get items(){return this.resolver.resolveMultiReference(this,this.node,this.property)}get error(){return this._linkingError}},T_=class{static{o(this,"DefaultLinker")}static{i(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId,this.referenceResolver={resolveReference:this.resolveReference.bind(this),resolveMultiReference:this.resolveMultiReference.bind(this)}}async link(e,t=he.CancellationToken.None){if(this.profiler?.isActive("linking")){let r=this.profiler.createTask("linking",this.languageId);r.start();try{for(let n of yt(e.parseResult.value))await ke(t),Ya(n).forEach(a=>{let s=`${n.$type}:${a.property}`;r.startSubTask(s);try{this.doLink(a,e)}finally{r.stopSubTask(s)}})}finally{r.stop()}}else for(let r of yt(e.parseResult.value))await ke(t),Ya(r).forEach(n=>this.doLink(n,e))}doLink(e,t){let r=e.reference;if("_ref"in r&&r._ref===void 0){r._ref=Hr;try{let n=this.getCandidate(e);if(Cn(n))r._ref=n;else{r._nodeDescription=n;let a=this.loadAstNode(n);r._ref=a??this.createLinkingError(e,n)}}catch(n){console.error(`An error occurred while resolving reference to '${r.$refText}':`,n);let a=n.message??String(n);r._ref={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${a}`}}t.references.push(r)}else if("_items"in r&&r._items===void 0){r._items=Hr;try{let n=this.getCandidates(e),a=[];if(Cn(n))r._linkingError=n;else for(let s of n){let l=this.loadAstNode(s);l&&a.push({ref:l,$nodeDescription:s})}r._items=a}catch(n){r._linkingError={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${n}`},r._items=[]}t.references.push(r)}}unlink(e){for(let t of e.references)"_ref"in t?(t._ref=void 0,delete t._nodeDescription):"_items"in t&&(t._items=void 0,delete t._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let r=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(n=>`${n.documentUri}#${n.path}`).toArray();return r.length>0?r:this.createLinkingError(e)}buildReference(e,t,r,n){return new g_(this.referenceResolver,e,t,r,n)}buildMultiReference(e,t,r,n){return new v_(this.referenceResolver,e,t,r,n)}resolveReference(e,t,r){if(we(e._ref))return e._ref;if(Pd(e._nodeDescription)){let n=this.loadAstNode(e._nodeDescription);e._ref=n??this.createLinkingError({reference:e,container:t,property:r},e._nodeDescription)}else if(e._ref===void 0){e._ref=Hr;let n=Ka(t).$document,a=this.getLinkedNode({reference:e,container:t,property:r});if(a.error&&n&&n.state<J.ComputedScopes)return e._ref=void 0;e._ref=a.node??a.error,e._nodeDescription=a.descr,n?.references.push(e)}else e._ref===Hr&&this.throwCyclicReferenceError(t,r,e.$refText);return we(e._ref)?e._ref:void 0}resolveMultiReference(e,t,r){if(Array.isArray(e._items))return e._items;if(e._items===void 0){e._items=Hr;let n=Ka(t).$document,a=this.getCandidates({reference:e,container:t,property:r}),s=[];if(Cn(a))e._linkingError=a;else{for(let l of a){let u=this.loadAstNode(l);u&&s.push({ref:u,$nodeDescription:l})}s.length===0&&(e._linkingError=this.createLinkingError({reference:e,container:t,property:r}))}e._items=s,n?.references.push(e)}else e._items===Hr&&this.throwCyclicReferenceError(t,r,e.$refText);return Array.isArray(e._items)?e._items:[]}throwCyclicReferenceError(e,t,r){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${r}')`)}getLinkedNode(e){try{let t=this.getCandidate(e);if(Cn(t))return{error:t};let r=this.loadAstNode(t);return r?{node:r,descr:t}:{descr:t,error:this.createLinkingError(e,t)}}catch(t){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,t);let r=t.message??String(t);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${r}`}}}}loadAstNode(e){if(e.node)return e.node;let t=this.langiumDocuments().getDocument(e.documentUri);if(t)return this.astNodeLocator.getAstNode(t.parseResult.value,e.path)}createLinkingError(e,t){let r=Ka(e.container).$document;r&&r.state<J.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);let n=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${n} named '${e.reference.$refText}'.`,targetDescription:t}}};function n$(e){return typeof e.name=="string"}o(n$,"isNamed");i(n$,"isNamed");var $_=class{static{o(this,"DefaultNameProvider")}static{i(this,"DefaultNameProvider")}getName(e){if(n$(e))return e.name}getNameNode(e){return $c(e.$cstNode,"name")}},R_=class{static{o(this,"DefaultReferences")}static{i(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=yt(e.Grammar).some(t=>mi(t)&&t.isMulti)}findDeclarations(e){if(e){let t=vm(e),r=e.astNode;if(t&&r){let n=r[t.feature];if(Xe(n)||Dt(n))return Xl(n);if(Array.isArray(n)){for(let a of n)if((Xe(a)||Dt(a))&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return Xl(a)}}if(r){let n=this.nameProvider.getNameNode(r);if(n&&(n===e||em(e,n)))return this.getSelfNodes(r)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let t=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),r=this.getNodeFromReferenceDescription(t.head());if(r){for(let n of Ya(r))if(Dt(n.reference)&&n.reference.items.some(a=>a.ref===e))return n.reference.items.map(a=>a.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;let t=this.documents.getDocument(e.sourceUri);if(t)return this.nodeLocator.getAstNode(t.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let t=this.findDeclarations(e),r=[];for(let n of t){let a=this.nameProvider.getNameNode(n)??n.$cstNode;a&&r.push(a)}return r}findReferences(e,t){let r=[];t.includeDeclaration&&r.push(...this.getSelfReferences(e));let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(a=>Je.equals(a.sourceUri,t.documentUri))),r.push(...n),ce(r)}getSelfReferences(e){let t=this.getSelfNodes(e),r=[];for(let n of t){let a=this.nameProvider.getNameNode(n);if(a){let s=ht(n),l=this.nodeLocator.getAstNodePath(n);r.push({sourceUri:s.uri,sourcePath:l,targetUri:s.uri,targetPath:l,segment:Ja(a),local:!0})}}return r}},oi=class{static{o(this,"MultiMap")}static{i(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[t,r]of e)this.add(t,r)}get size(){return Yl.sum(ce(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(t===void 0)return this.map.delete(e);{let r=this.map.get(e);if(r){let n=r.indexOf(t);if(n>=0)return r.length===1?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let t=this.map.get(e);return t?ce(t):Od}has(e,t){if(t===void 0)return this.map.has(e);{let r=this.map.get(e);return r?r.indexOf(t)>=0:!1}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(n=>e(n,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return ce(this.map.entries()).flatMap(([e,t])=>t.map(r=>[e,r]))}keys(){return ce(this.map.keys())}values(){return ce(this.map.values()).flat()}entriesGroupedByKey(){return ce(this.map.entries())}},gp=class{static{o(this,"BiMap")}static{i(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let t=this.map.get(e);return t!==void 0?(this.map.delete(e),this.inverse.delete(t),!0):!1}},A_=class{static{o(this,"DefaultScopeComputation")}static{i(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,t=he.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,t)}async collectExportedSymbolsForNode(e,t,r=js,n=he.CancellationToken.None){let a=[];this.addExportedSymbol(e,a,t);for(let s of r(e))await ke(n),this.addExportedSymbol(s,a,t);return a}addExportedSymbol(e,t,r){let n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async collectLocalSymbols(e,t=he.CancellationToken.None){let r=e.parseResult.value,n=new oi;for(let a of Mn(r))await ke(t),this.addLocalSymbol(a,e,n);return n}addLocalSymbol(e,t,r){let n=e.$container;if(n){let a=this.nameProvider.getName(e);a&&r.add(n,this.descriptions.createDescription(e,a,t))}}},vp=class{static{o(this,"StreamScope")}static{i(this,"StreamScope")}constructor(e,t,r){this.elements=e,this.outerScope=t,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===t):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.filter(n=>n.name.toLowerCase()===t):this.elements.filter(n=>n.name===e);return(this.concatOuterScope||r.isEmpty())&&this.outerScope?r.concat(this.outerScope.getElements(e)):r}},E_=class{static{o(this,"MultiMapScope")}static{i(this,"MultiMapScope")}constructor(e,t,r){this.elements=new oi,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0;for(let n of e){let a=this.caseInsensitive?n.name.toLowerCase():n.name;this.elements.add(a,n)}this.outerScope=t}getElement(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t)[0];if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return(this.concatOuterScope||r.length===0)&&this.outerScope?ce(r).concat(this.outerScope.getElements(e)):ce(r)}getAllElements(){let e=ce(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},a$=class{static{o(this,"DisposableCache")}static{i(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},C_=class extends a${static{o(this,"SimpleCache")}static{i(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){let r=t();return this.cache.set(e,r),r}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},b_=class extends a${static{o(this,"ContextCache")}static{i(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(t=>t)}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();let n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){let a=r();return n.set(t,a),a}else return}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){let t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){let t=this.converter(e),r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}},__=class extends C_{static{o(this,"WorkspaceCache")}static{i(this,"WorkspaceCache")}constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((r,n)=>{n.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},S_=class{static{o(this,"DefaultScopeProvider")}static{i(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new __(e.shared)}getScope(e){let t=[],r=this.reflection.getReferenceType(e),n=ht(e.container).localSymbols;if(n){let s=e.container;do n.has(s)&&t.push(n.getStream(s).filter(l=>this.reflection.isSubtype(l.type,r))),s=s.$container;while(s)}let a=this.getGlobalScope(r,e);for(let s=t.length-1;s>=0;s--)a=this.createScope(t[s],a);return a}createScope(e,t,r){return new vp(ce(e),t,r)}createScopeForNodes(e,t,r){let n=ce(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new vp(n,t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new E_(this.indexManager.allElements(e)))}};function i$(e){return typeof e.$comment=="string"}o(i$,"isAstNodeWithComment");i(i$,"isAstNodeWithComment");function Du(e){return typeof e=="object"&&!!e&&("$ref"in e||"$refs"in e||"$error"in e)}o(Du,"isIntermediateReference");i(Du,"isIntermediateReference");var w_=class{static{o(this,"DefaultJsonSerializer")}static{i(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){let r=t??{},n=t?.replacer,a=i((l,u)=>this.replacer(l,u,r),"defaultReplacer"),s=n?(l,u)=>n(l,u,a):a;try{return this.currentDocument=ht(e),JSON.stringify(e,s,t?.space)}finally{this.currentDocument=void 0}}deserialize(e,t){let r=t??{},n=JSON.parse(e);return this.linkNode(n,n,r),n}replacer(e,t,{refText:r,sourceText:n,textRegions:a,comments:s,uriConverter:l}){if(!this.ignoreProperties.has(e))if(Xe(t)){let u=t.ref,c=r?t.$refText:void 0;if(u){let f=ht(u),d="";this.currentDocument&&this.currentDocument!==f&&(l?d=l(f.uri,u):d=f.uri.toString());let y=this.astNodeLocator.getAstNodePath(u);return{$ref:`${d}#${y}`,$refText:c}}else return{$error:t.error?.message??"Could not resolve reference",$refText:c}}else if(Dt(t)){let u=r?t.$refText:void 0,c=[];for(let f of t.items){let d=f.ref,y=ht(f.ref),g="";this.currentDocument&&this.currentDocument!==y&&(l?g=l(y.uri,d):g=y.uri.toString());let m=this.astNodeLocator.getAstNodePath(d);c.push(`${g}#${m}`)}return{$refs:c,$refText:u}}else if(we(t)){let u;if(a&&(u=this.addAstNodeRegionWithAssignmentsTo({...t}),(!e||t.$document)&&u?.$textRegion&&(u.$textRegion.documentURI=this.currentDocument?.uri.toString())),n&&!e&&(u??(u={...t}),u.$sourceText=t.$cstNode?.text),s){u??(u={...t});let c=this.commentProvider.getComment(t);c&&(u.$comment=c.replace(/\r/g,""))}return u??t}else return t}addAstNodeRegionWithAssignmentsTo(e){let t=i(r=>({offset:r.offset,end:r.end,length:r.length,range:r.range}),"createDocumentSegment");if(e.$cstNode){let r=e.$textRegion=t(e.$cstNode),n=r.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=hm(e.$cstNode,a).map(t);s.length!==0&&(n[a]=s)}),e}}linkNode(e,t,r,n,a,s){for(let[u,c]of Object.entries(e))if(Array.isArray(c))for(let f=0;f<c.length;f++){let d=c[f];Du(d)?c[f]=this.reviveReference(e,u,t,d,r):we(d)&&this.linkNode(d,t,r,e,u,f)}else Du(c)?e[u]=this.reviveReference(e,u,t,c,r):we(c)&&this.linkNode(c,t,r,e,u);let l=e;l.$container=n,l.$containerProperty=a,l.$containerIndex=s}reviveReference(e,t,r,n,a){let s=n.$refText,l=n.$error,u;if(n.$ref){let c=this.getRefNode(r,n.$ref,a.uriConverter);if(we(c))return s||(s=this.nameProvider.getName(c)),{$refText:s??"",ref:c};l=c}else if(n.$refs){let c=[];for(let f of n.$refs){let d=this.getRefNode(r,f,a.uriConverter);we(d)&&c.push({ref:d})}if(c.length===0)u={$refText:s??"",items:c},l??(l="Could not resolve multi-reference");else return{$refText:s??"",items:c}}if(l)return u??(u={$refText:s??"",ref:void 0}),u.error={info:{container:e,property:t,reference:u},message:l},u}getRefNode(e,t,r){try{let n=t.indexOf("#");if(n===0){let u=this.astNodeLocator.getAstNode(e,t.substring(1));return u||"Could not resolve path: "+t}if(n<0){let u=r?r(t):Be.parse(t),c=this.langiumDocuments.getDocument(u);return c?c.parseResult.value:"Could not find document for URI: "+t}let a=r?r(t.substring(0,n)):Be.parse(t.substring(0,n)),s=this.langiumDocuments.getDocument(a);if(!s)return"Could not find document for URI: "+t;if(n===t.length-1)return s.parseResult.value;let l=this.astNodeLocator.getAstNode(s.parseResult.value,t.substring(n+1));return l||"Could not resolve URI: "+t}catch(n){return String(n)}}},I_=class{static{o(this,"DefaultServiceRegistry")}static{i(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let t=e.LanguageMetaData;for(let r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);if(t.fileNames)for(let r of t.fileNames)this.fileNameMap.has(r)&&console.warn(`The file name ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileNameMap.set(r,e);this.languageIdMap.set(t.languageId,e)}getServices(e){if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let t=this.textDocuments?.get(e)?.languageId;if(t!==void 0){let s=this.languageIdMap.get(t);if(s)return s}let r=Je.extname(e),n=Je.basename(e),a=this.fileNameMap.get(n)??this.fileExtensionMap.get(r);if(!a)throw t?new Error(`The service registry contains no services for the extension '${r}' for language '${t}'.`):new Error(`The service registry contains no services for the extension '${r}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function Sn(e){return{code:e}}o(Sn,"diagnosticData");i(Sn,"diagnosticData");var Lu;(function(e){e.defaults=["fast","slow","built-in"],e.all=e.defaults})(Lu||(Lu={}));var P_=class{static{o(this,"ValidationRegistry")}static{i(this,"ValidationRegistry")}constructor(e){this.entries=new oi,this.knownCategories=new Set(Lu.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if(r==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(r);for(let[n,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,t),category:r};this.addEntry(n,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,t),category:r};this.addEntry(n,l)}else Ln(s)}}wrapValidationException(e,t){return async(r,n,a)=>{await this.handleException(()=>e.call(t,r,n,a),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(a){if(vi(a))throw a;console.error(`${t}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let s=a instanceof Error?a.message:String(a);r("error",`${t}: ${s}`,{node:n})}}addEntry(e,t){if(e==="AstNode"){this.entries.add("AstNode",t);return}for(let r of this.reflection.getAllSubTypes(e))this.entries.add(r,t)}getChecks(e,t){let r=ce(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(n=>t.includes(n.category))),r.map(n=>n.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,a,s,l)=>{await this.handleException(()=>e.call(r,n,a,s,l),t,a,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},N_=Object.freeze({validateNode:!0,validateChildren:!0}),k_=class{static{o(this,"DefaultDocumentValidator")}static{i(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,t={},r=he.CancellationToken.None){let n=e.parseResult,a=[];if(await ke(r),(!t.categories||t.categories.includes("built-in"))&&(this.processLexingErrors(n,a,t),t.stopAfterLexingErrors&&a.some(s=>s.data?.code===it.LexingError)||(this.processParsingErrors(n,a,t),t.stopAfterParsingErrors&&a.some(s=>s.data?.code===it.ParsingError))||(this.processLinkingErrors(e,a,t),t.stopAfterLinkingErrors&&a.some(s=>s.data?.code===it.LinkingError))))return a;try{a.push(...await this.validateAst(n.value,t,r))}catch(s){if(vi(s))throw s;console.error("An error occurred during validation:",s)}return await ke(r),a}processLexingErrors(e,t,r){let n=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(let a of n){let s=a.severity??"error",l={severity:ds(s),range:{start:{line:a.line-1,character:a.column-1},end:{line:a.line-1,character:a.column+a.length-1}},message:a.message,data:o$(s),source:this.getSource()};t.push(l)}}processParsingErrors(e,t,r){for(let n of e.parserErrors){let a;if(As(n.token))a=tm(n.token);else if("previousToken"in n){let s=n.previousToken;if(As(s)){let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}else{let l={line:0,character:0};a={start:l,end:l}}}if(a){let s={severity:ds("error"),range:a,message:n.message,data:Sn(it.ParsingError),source:this.getSource()};t.push(s)}}}processLinkingErrors(e,t,r){for(let n of e.references){let a=n.error;if(a){let s={node:a.info.container,range:n.$refNode?.range,property:a.info.property,index:a.info.index,data:{code:it.LinkingError,containerType:a.info.container.$type,property:a.info.property,refText:a.info.reference.$refText}};t.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,t,r=he.CancellationToken.None){let n=[],a=i((s,l,u)=>{n.push(this.toDiagnostic(s,l,u))},"acceptor");return await this.validateAstBefore(e,t,a,r),await this.validateAstNodes(e,t,a,r),await this.validateAstAfter(e,t,a,r),n}async validateAstBefore(e,t,r,n=he.CancellationToken.None){let a=this.validationRegistry.checksBefore;for(let s of a)await ke(n),await s(e,r,t.categories??[],n)}async validateAstNodes(e,t,r,n=he.CancellationToken.None){if(this.profiler?.isActive("validating")){let a=this.profiler.createTask("validating",this.languageId);a.start();try{let s=yt(e).iterator();for(let l of s){a.startSubTask(l.$type);let u=this.validateSingleNodeOptions(l,t);if(u.validateNode)try{let c=this.validationRegistry.getChecks(l.$type,t.categories);for(let f of c)await f(l,r,n)}finally{a.stopSubTask(l.$type)}u.validateChildren||s.prune()}}finally{a.stop()}}else{let a=yt(e).iterator();for(let s of a){await ke(n);let l=this.validateSingleNodeOptions(s,t);if(l.validateNode){let u=this.validationRegistry.getChecks(s.$type,t.categories);for(let c of u)await c(s,r,n)}l.validateChildren||a.prune()}}}validateSingleNodeOptions(e,t){return N_}async validateAstAfter(e,t,r,n=he.CancellationToken.None){let a=this.validationRegistry.checksAfter;for(let s of a)await ke(n),await s(e,r,t.categories??[],n)}toDiagnostic(e,t,r){return{message:t,range:s$(r),severity:ds(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function s$(e){if(e.range)return e.range;let t;return typeof e.property=="string"?t=$c(e.node.$cstNode,e.property,e.index):typeof e.keyword=="string"&&(t=ym(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}o(s$,"getDiagnosticRange");i(s$,"getDiagnosticRange");function ds(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}o(ds,"toDiagnosticSeverity");i(ds,"toDiagnosticSeverity");function o$(e){switch(e){case"error":return Sn(it.LexingError);case"warning":return Sn(it.LexingWarning);case"info":return Sn(it.LexingInfo);case"hint":return Sn(it.LexingHint);default:throw new Error("Invalid diagnostic severity: "+e)}}o(o$,"toDiagnosticData");i(o$,"toDiagnosticData");var it;(function(e){e.LexingError="lexing-error",e.LexingWarning="lexing-warning",e.LexingInfo="lexing-info",e.LexingHint="lexing-hint",e.ParsingError="parsing-error",e.LinkingError="linking-error"})(it||(it={}));var O_=class{static{o(this,"DefaultAstNodeDescriptionProvider")}static{i(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){let n=r??ht(e);t??(t=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!t)throw new Error(`Node at path ${a} has no name.`);let s,l=i(()=>s??(s=Ja(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:t,get nameSegment(){return l()},selectionSegment:Ja(e.$cstNode),type:e.$type,documentUri:n.uri,path:a}}},M_=class{static{o(this,"DefaultReferenceDescriptionProvider")}static{i(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=he.CancellationToken.None){let r=[],n=e.parseResult.value;for(let a of yt(n))await ke(t),Ya(a).forEach(s=>{s.reference.error||r.push(...this.createInfoDescriptions(s))});return r}createInfoDescriptions(e){let t=e.reference;if(t.error||!t.$refNode)return[];let r=[];Xe(t)&&t.$nodeDescription?r=[t.$nodeDescription]:Dt(t)&&(r=t.items.map(u=>u.$nodeDescription).filter(u=>u!==void 0));let n=ht(e.container).uri,a=this.nodeLocator.getAstNodePath(e.container),s=[],l=Ja(t.$refNode);for(let u of r)s.push({sourceUri:n,sourcePath:a,targetUri:u.documentUri,targetPath:u.path,segment:l,local:Je.equals(u.documentUri,n)});return s}},D_=class{static{o(this,"DefaultAstNodeLocator")}static{i(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return t!==void 0?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((n,a)=>{if(!n||a.length===0)return n;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1));return n[l]?.[u]}return n[a]},e)}},L_=ic(uc(),1),x_=class{static{o(this,"DefaultConfigurationProvider")}static{i(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new df,this.onConfigurationSectionUpdateEmitter=new L_.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}async initialized(e){if(this.workspaceConfig){if(e.register){let t=this.serviceRegistry.all;e.register({section:t.map(r=>this.toSectionName(r.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let t=this.serviceRegistry.all.map(n=>({section:this.toSectionName(n.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((n,a)=>{this.updateSectionConfiguration(n.section,r[a])})}}this._ready.resolve()}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([t,r])=>{this.updateSectionConfiguration(t,r),this.onConfigurationSectionUpdateEmitter.fire({section:t,configuration:r})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;let r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},Si=ic(uc(),1),Va;(function(e){function t(r){return{dispose:i(async()=>await r(),"dispose")}}o(t,"create"),i(t,"create"),e.create=t})(Va||(Va={}));var G_=class{static{o(this,"DefaultDocumentBuilder")}static{i(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new oi,this.documentPhaseListeners=new oi,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=J.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=he.CancellationToken.None){for(let n of e){let a=n.uri.toString();if(n.state===J.Validated){if(typeof t.validation=="boolean"&&t.validation)this.resetToState(n,J.IndexedReferences);else if(typeof t.validation=="object"){let s=this.findMissingValidationCategories(n,t);s.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:s}},result:this.buildState.get(a)?.result}),n.state=J.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=J.Changed,await this.emitUpdate(e.map(n=>n.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=he.CancellationToken.None){this.currentState=J.Changed;let n=[];for(let u of t){let c=this.langiumDocuments.deleteDocuments(u);for(let f of c)n.push(f.uri),this.cleanUpDeleted(f)}let a=(await Promise.all(e.map(u=>this.findChangedUris(u)))).flat();for(let u of a){let c=this.langiumDocuments.getDocument(u);c===void 0&&(c=this.langiumDocumentFactory.fromModel({$type:"INVALID"},u),c.state=J.Changed,this.langiumDocuments.addDocument(c)),this.resetToState(c,J.Changed)}let s=ce(a).concat(n).map(u=>u.toString()).toSet();this.langiumDocuments.all.filter(u=>!s.has(u.uri.toString())&&this.shouldRelink(u,s)).forEach(u=>this.resetToState(u,J.ComputedScopes)),await this.emitUpdate(a,n),await ke(r);let l=this.sortDocuments(this.langiumDocuments.all.filter(u=>u.state<J.Validated||!this.buildState.get(u.uri.toString())?.completed||this.resultsAreIncomplete(u,this.updateBuildOptions)).toArray());await this.buildDocuments(l,this.updateBuildOptions,r)}resultsAreIncomplete(e,t){return this.findMissingValidationCategories(e,t).length>=1}findMissingValidationCategories(e,t){let r=this.buildState.get(e.uri.toString()),n=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),a=r?.result?.validationChecks?new Set(r?.result?.validationChecks):r?.completed?n:new Set,s=t===void 0||t.validation===!0?n:typeof t.validation=="object"?t.validation.categories??n:[];return ce(s).filter(l=>!a.has(l)).toArray()}async findChangedUris(e){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let r=await this.fileSystemProvider.stat(e);if(r.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(r))return[e]}catch{}return[]}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){return!!this.textDocuments?.get(e.uri)}shouldRelink(e,t){return e.references.some(r=>r.error!==void 0)?!0:this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),Va.create(()=>{let t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}resetToState(e,t){switch(t){case J.Changed:case J.Parsed:this.indexManager.removeContent(e.uri);case J.IndexedContent:e.localSymbols=void 0;case J.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case J.Linked:this.indexManager.removeReferences(e.uri);case J.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case J.Validated:}e.state>t&&(e.state=t)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=J.Changed}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,J.Parsed,r,s=>this.langiumDocumentFactory.update(s,r)),await this.runCancelable(e,J.IndexedContent,r,s=>this.indexManager.updateContent(s,r)),await this.runCancelable(e,J.ComputedScopes,r,async s=>{let l=this.serviceRegistry.getServices(s.uri).references.ScopeComputation;s.localSymbols=await l.collectLocalSymbols(s,r)});let n=e.filter(s=>this.shouldLink(s));await this.runCancelable(n,J.Linked,r,s=>this.serviceRegistry.getServices(s.uri).references.Linker.link(s,r)),await this.runCancelable(n,J.IndexedReferences,r,s=>this.indexManager.updateReferences(s,r));let a=e.filter(s=>this.shouldValidate(s)?!0:(this.markAsCompleted(s),!1));await this.runCancelable(a,J.Validated,r,async s=>{await this.validate(s,r),this.markAsCompleted(s)})}markAsCompleted(e){let t=this.buildState.get(e.uri.toString());t&&(t.completed=!0)}prepareBuild(e,t){for(let r of e){let n=r.uri.toString(),a=this.buildState.get(n);(!a||a.completed)&&this.buildState.set(n,{completed:!1,options:t,result:a?.result})}}async runCancelable(e,t,r,n){for(let s of e)s.state<t&&(await ke(r),await n(s),s.state=t,await this.notifyDocumentPhase(s,t,r));let a=e.filter(s=>s.state===t);await this.notifyBuildPhase(a,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),Va.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),Va.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;return t&&"path"in t?n=t:r=t,r??(r=he.CancellationToken.None),n?this.awaitDocumentState(e,n,r):this.awaitBuilderState(e,r)}awaitDocumentState(e,t,r){let n=this.langiumDocuments.getDocument(t);if(n){if(n.state>=e)return Promise.resolve(t);if(r.isCancellationRequested)return Promise.reject(_n);if(this.currentState>=e&&e>n.state)return Promise.reject(new Si.ResponseError(Si.LSPErrorCodes.RequestFailed,`Document state of ${t.toString()} is ${J[n.state]}, requiring ${J[e]}, but workspace state is already ${J[this.currentState]}. Returning undefined.`))}else return Promise.reject(new Si.ResponseError(Si.LSPErrorCodes.ServerCancelled,`No document found for URI: ${t.toString()}`));return new Promise((a,s)=>{let l=this.onDocumentPhase(e,c=>{Je.equals(c.uri,t)&&(l.dispose(),u.dispose(),a(c.uri))}),u=r.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(_n)})})}awaitBuilderState(e,t){return this.currentState>=e?Promise.resolve():t.isCancellationRequested?Promise.reject(_n):new Promise((r,n)=>{let a=this.onBuildPhase(e,()=>{a.dispose(),s.dispose(),r()}),s=t.onCancellationRequested(()=>{a.dispose(),s.dispose(),n(_n)})})}async notifyDocumentPhase(e,t,r){let a=this.documentPhaseListeners.get(t).slice();for(let s of a)try{await ke(r),await s(e,r)}catch(l){if(!vi(l))throw l}}async notifyBuildPhase(e,t,r){if(e.length===0)return;let a=this.buildPhaseListeners.get(t).slice();for(let s of a)await ke(r),await s(e,r)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,t){let r=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,n=this.getBuildOptions(e),a=typeof n.validation=="object"?{...n.validation}:{};a.categories=this.findMissingValidationCategories(e,n);let s=await r.validateDocument(e,a,t);e.diagnostics?e.diagnostics.push(...s):e.diagnostics=s;let l=this.buildState.get(e.uri.toString());l&&(l.result??(l.result={}),l.result.validationChecks?l.result.validationChecks=ce(l.result.validationChecks).concat(a.categories).distinct().toArray():l.result.validationChecks=[...a.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}},F_=class{static{o(this,"DefaultIndexManager")}static{i(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new b_,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){let r=ht(e).uri,n=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{Je.equals(s.targetUri,r)&&s.targetPath===t&&n.push(s)})}),ce(n)}allElements(e,t){let r=ce(this.symbolIndex.keys());return t&&(r=r.filter(n=>!t||t.has(n))),r.map(n=>this.getFileDescriptions(n,e)).flat()}getFileDescriptions(e,t){return t?this.symbolByTypeIndex.get(e,t,()=>(this.symbolIndex.get(e)??[]).filter(a=>this.astReflection.isSubtype(a.type,t))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t)}removeReferences(e){let t=e.toString();this.referenceIndex.delete(t)}async updateContent(e,t=he.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,t),a=e.uri.toString();this.symbolIndex.set(a,n),this.symbolByTypeIndex.clear(a)}async updateReferences(e,t=he.CancellationToken.None){let n=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){let r=this.referenceIndex.get(e.uri.toString());return r?r.some(n=>!n.local&&t.has(n.targetUri.toString())):!1}},j_=class{static{o(this,"DefaultWorkspaceManager")}static{i(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new df,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(t=>this.initializeWorkspace(this.folders??[],t))}async initializeWorkspace(e,t=he.CancellationToken.None){let r=await this.performStartup(e);await ke(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){let t=[],r=i(s=>{t.push(s),this.langiumDocuments.hasDocument(s.uri)||this.langiumDocuments.addDocument(s)},"collector");await this.loadAdditionalDocuments(e,r);let n=[];await Promise.all(e.map(s=>this.getRootFolder(s)).map(async s=>this.traverseFolder(s,n)));let a=ce(n).distinct(s=>s.toString()).filter(s=>!this.langiumDocuments.hasDocument(s));return await this.loadWorkspaceDocuments(a,r),this._ready.resolve(),t}async loadWorkspaceDocuments(e,t){await Promise.all(e.map(async r=>{let n=await this.langiumDocuments.getOrCreateDocument(r);t(n)}))}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return Be.parse(e.uri)}async traverseFolder(e,t){try{let r=await this.fileSystemProvider.readDirectory(e);await Promise.all(r.map(async n=>{this.shouldIncludeEntry(n)&&(n.isDirectory?await this.traverseFolder(n.uri,t):n.isFile&&t.push(n.uri))}))}catch(r){console.error("Failure to read directory content of "+e.toString(!0),r)}}async searchFolder(e){let t=[];return await this.traverseFolder(e,t),t}shouldIncludeEntry(e){let t=Je.basename(e.uri);return t.startsWith(".")?!1:e.isDirectory?t!=="node_modules"&&t!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}},z_=class{static{o(this,"DefaultLexerErrorMessageProvider")}static{i(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,t,r,n,a){return pu.buildUnexpectedCharactersMessage(e,t,r,n,a)}buildUnableToPopLexerModeMessage(e){return pu.buildUnableToPopLexerModeMessage(e)}},U_={mode:"full"},K_=class{static{o(this,"DefaultLexer")}static{i(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);let r=xu(t)?Object.values(t):t,n=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new xe(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=U_){let r=this.chevrotainLexer.tokenize(e);return{tokens:r.tokens,errors:r.errors,hidden:r.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(xu(e))return e;let t=yf(e)?Object.values(e.modes).flat():e,r={};return t.forEach(n=>r[n.name]=n),r}};function l$(e){return Array.isArray(e)&&(e.length===0||"name"in e[0])}o(l$,"isTokenTypeArray");i(l$,"isTokenTypeArray");function yf(e){return e&&"modes"in e&&"defaultMode"in e}o(yf,"isIMultiModeLexerDefinition");i(yf,"isIMultiModeLexerDefinition");function xu(e){return!l$(e)&&!yf(e)}o(xu,"isTokenTypeDictionary");i(xu,"isTokenTypeDictionary");Fs();function u$(e,t,r){let n,a;typeof e=="string"?(a=t,n=r):(a=e.range.start,n=t),a||(a=ae.create(0,0));let s=gf(e),l=yo(n),u=f$({lines:s,position:a,options:l});return m$({index:0,tokens:u,position:a})}o(u$,"parseJSDoc");i(u$,"parseJSDoc");function c$(e,t){let r=yo(t),n=gf(e);if(n.length===0)return!1;let a=n[0],s=n[n.length-1],l=r.start,u=r.end;return!!l?.exec(a)&&!!u?.exec(s)}o(c$,"isJSDoc");i(c$,"isJSDoc");function gf(e){let t="";return typeof e=="string"?t=e:t=e.text,t.split(fR)}o(gf,"getLines");i(gf,"getLines");var Tp=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,B_=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function f$(e){let t=[],r=e.position.line,n=e.position.character;for(let a=0;a<e.lines.length;a++){let s=a===0,l=a===e.lines.length-1,u=e.lines[a],c=0;if(s&&e.options.start){let d=e.options.start?.exec(u);d&&(c=d.index+d[0].length)}else{let d=e.options.line?.exec(u);d&&(c=d.index+d[0].length)}if(l){let d=e.options.end?.exec(u);d&&(u=u.substring(0,d.index))}if(u=u.substring(0,d$(u)),Ls(u,c)>=u.length){if(t.length>0){let d=ae.create(r,n);t.push({type:"break",content:"",range:Q.create(d,d)})}}else{Tp.lastIndex=c;let d=Tp.exec(u);if(d){let y=d[0],g=d[1],m=ae.create(r,n+c),E=ae.create(r,n+c+y.length);t.push({type:"tag",content:g,range:Q.create(m,E)}),c+=y.length,c=Ls(u,c)}if(c<u.length){let y=u.substring(c),g=Array.from(y.matchAll(B_));t.push(...p$(g,y,r,n+c))}}r++,n=0}return t.length>0&&t[t.length-1].type==="break"?t.slice(0,-1):t}o(f$,"tokenize");i(f$,"tokenize");function p$(e,t,r,n){let a=[];if(e.length===0){let s=ae.create(r,n),l=ae.create(r,n+t.length);a.push({type:"text",content:t,range:Q.create(s,l)})}else{let s=0;for(let u of e){let c=u.index,f=t.substring(s,c);f.length>0&&a.push({type:"text",content:t.substring(s,c),range:Q.create(ae.create(r,s+n),ae.create(r,c+n))});let d=f.length+1,y=u[1];if(a.push({type:"inline-tag",content:y,range:Q.create(ae.create(r,s+d+n),ae.create(r,s+d+y.length+n))}),d+=y.length,u.length===4){d+=u[2].length;let g=u[3];a.push({type:"text",content:g,range:Q.create(ae.create(r,s+d+n),ae.create(r,s+d+g.length+n))})}else a.push({type:"text",content:"",range:Q.create(ae.create(r,s+d+n),ae.create(r,s+d+n))});s=c+u[0].length}let l=t.substring(s);l.length>0&&a.push({type:"text",content:l,range:Q.create(ae.create(r,s+n),ae.create(r,s+n+l.length))})}return a}o(p$,"buildInlineTokens");i(p$,"buildInlineTokens");var q_=/\S/,W_=/\s*$/;function Ls(e,t){let r=e.substring(t).match(q_);return r?t+r.index:e.length}o(Ls,"skipWhitespace");i(Ls,"skipWhitespace");function d$(e){let t=e.match(W_);if(t&&typeof t.index=="number")return t.index}o(d$,"lastCharacter");i(d$,"lastCharacter");function m$(e){let t=ae.create(e.position.line,e.position.character);if(e.tokens.length===0)return new $p([],Q.create(t,t));let r=[];for(;e.index<e.tokens.length;){let s=h$(e,r[r.length-1]);s&&r.push(s)}let n=r[0]?.range.start??t,a=r[r.length-1]?.range.end??t;return new $p(r,Q.create(n,a))}o(m$,"parseJSDocComment");i(m$,"parseJSDocComment");function h$(e,t){let r=e.tokens[e.index];if(r.type==="tag")return Tf(e,!1);if(r.type==="text"||r.type==="inline-tag")return vf(e);y$(r,t),e.index++}o(h$,"parseJSDocElement");i(h$,"parseJSDocElement");function y$(e,t){if(t){let r=new $$("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}o(y$,"appendEmptyLine");i(y$,"appendEmptyLine");function vf(e){let t=e.tokens[e.index],r=t,n=t,a=[];for(;t&&t.type!=="break"&&t.type!=="tag";)a.push(g$(e)),n=t,t=e.tokens[e.index];return new Gu(a,Q.create(r.range.start,n.range.end))}o(vf,"parseJSDocText");i(vf,"parseJSDocText");function g$(e){return e.tokens[e.index].type==="inline-tag"?Tf(e,!0):$f(e)}o(g$,"parseJSDocInline");i(g$,"parseJSDocInline");function Tf(e,t){let r=e.tokens[e.index++],n=r.content.substring(1);if(e.tokens[e.index]?.type==="text")if(t){let s=$f(e);return new _o(n,new Gu([s],s.range),t,Q.create(r.range.start,s.range.end))}else{let s=vf(e);return new _o(n,s,t,Q.create(r.range.start,s.range.end))}else{let s=r.range;return new _o(n,new Gu([],s),t,s)}}o(Tf,"parseJSDocTag");i(Tf,"parseJSDocTag");function $f(e){let t=e.tokens[e.index++];return new $$(t.content,t.range)}o($f,"parseJSDocLine");i($f,"parseJSDocLine");function yo(e){if(!e)return yo({start:"/**",end:"*/",line:"*"});let{start:t,end:r,line:n}=e;return{start:ms(t,!0),end:ms(r,!1),line:ms(n,!0)}}o(yo,"normalizeOptions");i(yo,"normalizeOptions");function ms(e,t){if(typeof e=="string"||typeof e=="object"){let r=typeof e=="string"?hi(e):e.source;return t?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}else return e}o(ms,"normalizeOption");i(ms,"normalizeOption");var $p=class{static{o(this,"JSDocCommentImpl")}static{i(this,"JSDocCommentImpl")}constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let t of this.elements)if(e.length===0)e=t.toString();else{let r=t.toString();e+=Fu(e)+r}return e.trim()}toMarkdown(e){let t="";for(let r of this.elements)if(t.length===0)t=r.toMarkdown(e);else{let n=r.toMarkdown(e);t+=Fu(t)+n}return t.trim()}},_o=class{static{o(this,"JSDocTagImpl")}static{i(this,"JSDocTagImpl")}constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`,t=this.content.toString();return this.content.inlines.length===1?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}
${t}`),this.inline?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let t=this.content.toMarkdown(e);if(this.inline){let a=v$(this.name,t,e??{});if(typeof a=="string")return a}let r="";e?.tag==="italic"||e?.tag===void 0?r="*":e?.tag==="bold"?r="**":e?.tag==="bold-italic"&&(r="***");let n=`${r}@${this.name}${r}`;return this.content.inlines.length===1?n=`${n} \u2014 ${t}`:this.content.inlines.length>1&&(n=`${n}
${t}`),this.inline?`{${n}}`:n}};function v$(e,t,r){if(e==="linkplain"||e==="linkcode"||e==="link"){let n=t.indexOf(" "),a=t;if(n>0){let l=Ls(t,n);a=t.substring(l),t=t.substring(0,n)}return(e==="linkcode"||e==="link"&&r.link==="code")&&(a=`\`${a}\``),r.renderLink?.(t,a)??T$(t,a)}}o(v$,"renderInlineTag");i(v$,"renderInlineTag");function T$(e,t){try{return Be.parse(e,!0),`[${t}](${e})`}catch{return e}}o(T$,"renderLinkDefault");i(T$,"renderLinkDefault");var Gu=class{static{o(this,"JSDocTextImpl")}static{i(this,"JSDocTextImpl")}constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+=`
`)}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],a=this.inlines[r+1];t+=n.toMarkdown(e),a&&a.range.start.line>n.range.start.line&&(t+=`
`)}return t}},$$=class{static{o(this,"JSDocLineImpl")}static{i(this,"JSDocLineImpl")}constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}};function Fu(e){return e.endsWith(`
`)?`
`:`

`}o(Fu,"fillNewlines");i(Fu,"fillNewlines");var V_=class{static{o(this,"JSDocDocumentationProvider")}static{i(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let t=this.commentProvider.getComment(e);if(t&&c$(t))return u$(t).toMarkdown({renderLink:i((n,a)=>this.documentationLinkRenderer(e,n,a),"renderLink"),renderTag:i(n=>this.documentationTagRenderer(e,n),"renderTag")})}documentationLinkRenderer(e,t,r){let n=this.findNameInLocalSymbols(e,t)??this.findNameInGlobalScope(e,t);if(n&&n.nameSegment){let a=n.nameSegment.range.start.line+1,s=n.nameSegment.range.start.character+1,l=n.documentUri.with({fragment:`L${a},${s}`});return`[${r}](${l.toString()})`}else return}documentationTagRenderer(e,t){}findNameInLocalSymbols(e,t){let n=ht(e).localSymbols;if(!n)return;let a=e;do{let l=n.getStream(a).find(u=>u.name===t);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(n=>n.name===t)}},H_=class{static{o(this,"DefaultCommentProvider")}static{i(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return i$(e)?e.$comment:am(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},Y_=class{static{o(this,"DefaultAsyncParser")}static{i(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}},xs;(function(e){e[e.Normal=0]="Normal",e[e.Immediate=1]="Immediate"})(xs||(xs={}));var X_=class{static{o(this,"DefaultWorkspaceLock")}static{i(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new he.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.immediateReads=[],this.done=!0}write(e){this.cancelWrite();let t=e$();return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e,t=xs.Normal){if(t===xs.Immediate){let r=Promise.resolve().then(()=>e());this.immediateReads.push(r);let n=i(()=>{this.immediateReads.splice(this.immediateReads.indexOf(r),1)},"remove");return r.then(n,n),r}return this.enqueue(this.readQueue,e)}enqueue(e,t,r=he.CancellationToken.None){let n=new df,a={action:t,deferred:n,cancellationToken:r};return e.push(a),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)for(e.push(this.writeQueue.shift()),this.done=!1;this.immediateReads.length>0;)await Promise.allSettled(this.immediateReads.slice());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length)),this.done=!1;else return;await Promise.all(e.map(async({action:t,deferred:r,cancellationToken:n})=>{try{let a=await Promise.resolve().then(()=>t(n));r.resolve(a)}catch(a){vi(a)?r.resolve(void 0):r.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},J_=class{static{o(this,"DefaultHydrator")}static{i(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new gp,this.tokenTypeIdMap=new gp,this.cstNodeBuilder=new PT,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(t=>({...t,message:t.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let t=new Map,r=new Map;for(let n of yt(e))t.set(n,{});if(e.$cstNode)for(let n of Rs(e.$cstNode))r.set(n,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){let r=t.astNodes.get(e);r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t));for(let[n,a]of Object.entries(e))if(!n.startsWith("$"))if(Array.isArray(a)){let s=[];r[n]=s;for(let l of a)we(l)?s.push(this.dehydrateAstNode(l,t)):Xe(l)?s.push(this.dehydrateReference(l,t)):s.push(l)}else we(a)?r[n]=this.dehydrateAstNode(a,t):Xe(a)?r[n]=this.dehydrateReference(a,t):a!==void 0&&(r[n]=a);return r}dehydrateReference(e,t){let r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){let r=t.cstNodes.get(e);if(fc(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,In(e))r.content=e.content.map(n=>this.dehydrateCstNode(n,t));else if(cc(e)){r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length;let{start:n,end:a}=e.range;r.startLine=n.line,r.startColumn=n.character,r.endLine=a.line,r.endColumn=a.character}return r}hydrate(e){let t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){let t=new Map,r=new Map;for(let n of yt(e))t.set(n,{});if(e.$cstNode)for(let n of Rs(e.$cstNode)){let a;"fullText"in n?a=new OT(n.fullText):"content"in n?a=new uf:"tokenType"in n&&(a=this.hydrateCstLeafNode(n)),a&&r.set(n,a)}return{astNodes:t,cstNodes:r,linkedCstNodes:new Set}}hydrateAstNode(e,t){let r=t.astNodes.get(e);if(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode){let n=t.cstNodes.get(e.$cstNode);r.$cstNode=n,n&&!t.linkedCstNodes.has(n)&&(t.linkedCstNodes.add(n),n.astNode=r)}for(let[n,a]of Object.entries(e))if(!n.startsWith("$"))if(Array.isArray(a)){let s=[];r[n]=s;for(let l of a)we(l)?s.push(this.setParent(this.hydrateAstNode(l,t),r)):Xe(l)?s.push(this.hydrateReference(l,r,n,t)):s.push(l)}else we(a)?r[n]=this.setParent(this.hydrateAstNode(a,t),r):Xe(a)?r[n]=this.hydrateReference(a,r,n,t):a!==void 0&&(r[n]=a);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){let n=t.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),In(n)){let a=[];for(let s of e.content)a.push(this.hydrateCstNode(s,t,r++));this.cstNodeBuilder.appendChildren(n,a)}return n}hydrateCstLeafNode(e){let t=this.getTokenType(e.tokenType);return new kT(e.offset,e.length,e.startLine,e.startColumn,e.endLine,e.endColumn,t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let t of yt(this.grammar))Dd(t)&&this.grammarElementIdMap.set(t,e++)}};function R$(e){return{documentation:{CommentProvider:i(t=>new H_(t),"CommentProvider"),DocumentationProvider:i(t=>new V_(t),"DocumentationProvider")},parser:{AsyncParser:i(t=>new Y_(t),"AsyncParser"),GrammarConfig:i(t=>_m(t),"GrammarConfig"),LangiumParser:i(t=>YT(t),"LangiumParser"),CompletionParser:i(t=>HT(t),"CompletionParser"),ValueConverter:i(()=>new ZT,"ValueConverter"),TokenBuilder:i(()=>new JT,"TokenBuilder"),Lexer:i(t=>new K_(t),"Lexer"),ParserErrorMessageProvider:i(()=>new LT,"ParserErrorMessageProvider"),LexerErrorMessageProvider:i(()=>new z_,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:i(()=>new D_,"AstNodeLocator"),AstNodeDescriptionProvider:i(t=>new O_(t),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:i(t=>new M_(t),"ReferenceDescriptionProvider")},references:{Linker:i(t=>new T_(t),"Linker"),NameProvider:i(()=>new $_,"NameProvider"),ScopeProvider:i(t=>new S_(t),"ScopeProvider"),ScopeComputation:i(t=>new A_(t),"ScopeComputation"),References:i(t=>new R_(t),"References")},serializer:{Hydrator:i(t=>new J_(t),"Hydrator"),JsonSerializer:i(t=>new w_(t),"JsonSerializer")},validation:{DocumentValidator:i(t=>new k_(t),"DocumentValidator"),ValidationRegistry:i(t=>new P_(t),"ValidationRegistry")},shared:i(()=>e.shared,"shared")}}o(R$,"createDefaultCoreModule");i(R$,"createDefaultCoreModule");function A$(e){return{ServiceRegistry:i(t=>new I_(t),"ServiceRegistry"),workspace:{LangiumDocuments:i(t=>new y_(t),"LangiumDocuments"),LangiumDocumentFactory:i(t=>new h_(t),"LangiumDocumentFactory"),DocumentBuilder:i(t=>new G_(t),"DocumentBuilder"),IndexManager:i(t=>new F_(t),"IndexManager"),WorkspaceManager:i(t=>new j_(t),"WorkspaceManager"),FileSystemProvider:i(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:i(()=>new X_,"WorkspaceLock"),ConfigurationProvider:i(t=>new x_(t),"ConfigurationProvider")},profilers:{}}}o(A$,"createDefaultSharedCoreModule");i(A$,"createDefaultSharedCoreModule");var Rp;(function(e){e.merge=(t,r)=>On(On({},t),r)})(Rp||(Rp={}));function ju(e,t,r,n,a,s,l,u,c){let f=[e,t,r,n,a,s,l,u,c].reduce(On,{});return Rf(f)}o(ju,"inject");i(ju,"inject");var Z_=Symbol("isProxy");function Rf(e,t){let r=new Proxy({},{deleteProperty:i(()=>!1,"deleteProperty"),set:i(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:i((n,a)=>a===Z_?!0:zu(n,a,e,t||r),"get"),getOwnPropertyDescriptor:i((n,a)=>(zu(n,a,e,t||r),Object.getOwnPropertyDescriptor(n,a)),"getOwnPropertyDescriptor"),has:i((n,a)=>a in e,"has"),ownKeys:i(()=>[...Object.getOwnPropertyNames(e)],"ownKeys")});return r}o(Rf,"_inject");i(Rf,"_inject");var Ap=Symbol();function zu(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+e[t]);if(e[t]===Ap)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}else if(t in r){let a=r[t];e[t]=Ap;try{e[t]=typeof a=="function"?a(n):Rf(a,n)}catch(s){throw e[t]=s instanceof Error?s:void 0,s}return e[t]}else return}o(zu,"_resolve");i(zu,"_resolve");function On(e,t){if(t){for(let[r,n]of Object.entries(t))if(!(r==="__proto__"||r==="constructor"||r==="prototype")&&n!=null)if(typeof n=="object"){let a=e[r];typeof a=="object"&&a!==null?e[r]=On(a,n):e[r]=On({},n)}else e[r]=n}return e}o(On,"_merge");i(On,"_merge");var Q_=class{static{o(this,"EmptyFileSystemProvider")}static{i(this,"EmptyFileSystemProvider")}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[]}},eS={fileSystemProvider:i(()=>new Q_,"fileSystemProvider")},tS={Grammar:i(()=>{},"Grammar"),LanguageMetaData:i(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},rS={AstReflection:i(()=>new Qd,"AstReflection")};function E$(){let e=ju(A$(eS),rS),t=ju(R$({shared:e}),tS);return e.ServiceRegistry.register(t),t}o(E$,"createMinimalGrammarServices");i(E$,"createMinimalGrammarServices");function Oe(e){let t=E$(),r=t.serializer.JsonSerializer.deserialize(e);return t.shared.workspace.LangiumDocumentFactory.fromModel(r,Be.parse(`memory:/${r.name??"grammar"}.langium`)),r}o(Oe,"loadGrammarFromJson");i(Oe,"loadGrammarFromJson");var Uu;(e=>{e.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[^\[\]\r\n]+)\]/}})(Uu||(Uu={}));var Ku;(e=>{e.Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Ku||(Ku={}));var Bu;(e=>{e.Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/}})(Bu||(Bu={}));var qu;(e=>{e.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(qu||(qu={}));var Wu;(e=>{e.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Wu||(Wu={}));var Vu;(e=>{e.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Vu||(Vu={}));var Hu;(e=>{e.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Hu||(Hu={}));var Yu;(e=>{e.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Yu||(Yu={}));var Xu;(e=>{e.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/}})(Xu||(Xu={}));var Ju;(e=>{e.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/}})(Ju||(Ju={}));var Zu;(e=>{e.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//}})(Zu||(Zu={}));var Qu;(e=>{e.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/}})(Qu||(Qu={}));var ec;(e=>{e.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(ec||(ec={}));var tc;(e=>{e.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/}})(tc||(tc={}));var rc;(e=>{e.Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(rc||(rc={}));var ow={...Uu.Terminals,...Ku.Terminals,...Bu.Terminals,...qu.Terminals,...Wu.Terminals,...Vu.Terminals,...Hu.Terminals,...Yu.Terminals,...Xu.Terminals,...Ju.Terminals,...Zu.Terminals,...Qu.Terminals,...tc.Terminals,...ec.Terminals,...rc.Terminals},Ep={$type:"AbnfAlternation",alternatives:"alternatives"},Cp={$type:"AbnfConcatenation",elements:"elements"},So={$type:"AbnfElement",primary:"primary",repeat:"repeat"},bp={$type:"AbnfGroup",element:"element"},_p={$type:"AbnfNumVal",value:"value"},Sp={$type:"AbnfOptionalGroup",element:"element"},Yr={$type:"AbnfPrimary"},wo={$type:"AbnfRule",definition:"definition",name:"name"},wp={$type:"AbnfRuleName",name:"name"},Ip={$type:"AbnfStringLiteral",value:"value"},wi={$type:"Accelerator",name:"name",x:"x",y:"y"},Io={$type:"Alignment",direction:"direction",members:"members"},Ii={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},ga={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},Po={$type:"Annotations",x:"x",y:"y"},mt={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function nS(e){return Ae.isInstance(e,mt.$type)}o(nS,"isArchitecture");i(nS,"isArchitecture");var Pi={$type:"Axis",label:"label",name:"name"},hs={$type:"Branch",name:"name",order:"order"};function aS(e){return Ae.isInstance(e,hs.$type)}o(aS,"isBranch");i(aS,"isBranch");var Pp={$type:"Checkout",branch:"branch"},Ni={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},No={$type:"ClassDefStatement",className:"className",styleText:"styleText"},hn={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function iS(e){return Ae.isInstance(e,hn.$type)}o(iS,"isCommit");i(iS,"isCommit");var ki={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},or={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},Oi={$type:"Curve",entries:"entries",label:"label",name:"name"},Rr={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};function sS(e){return Ae.isInstance(e,Rr.$type)}o(sS,"isCynefin");i(sS,"isCynefin");var Mi={$type:"Deaccelerator",name:"name",x:"x",y:"y"},Np={$type:"Decorator",strategy:"strategy"},Xr={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},ys={$type:"DomainBlock",domain:"domain",items:"items"};function oS(e){return Ae.isInstance(e,ys.$type)}o(oS,"isDomainBlock");i(oS,"isDomainBlock");var nc={$type:"DomainItem",label:"label"};function lS(e){return Ae.isInstance(e,nc.$type)}o(lS,"isDomainItem");i(lS,"isDomainItem");var kp={$type:"EbnfChoice",alternatives:"alternatives"},Op={$type:"EbnfExceptionPostfix",except:"except"},Mp={$type:"EbnfGroup",element:"element"},Dp={$type:"EbnfNonTerminal",name:"name"},Lp={$type:"EbnfOneOrMorePostfix",operator:"operator"},xp={$type:"EbnfOptional",element:"element"},Gp={$type:"EbnfOptionalPostfix",operator:"operator"},va={$type:"EbnfPostfix"},lr={$type:"EbnfPrimary"},Fp={$type:"EbnfRepetition",element:"element"},ko={$type:"EbnfRule",definition:"definition",name:"name"},jp={$type:"EbnfSequence",elements:"elements"},zp={$type:"EbnfSpecial",text:"text"},Oo={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},Up={$type:"EbnfTerminal",value:"value"},Kp={$type:"EbnfZeroOrMorePostfix",operator:"operator"},ft={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},Jr={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},ur={$type:"EmFrame"},Ta={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},Bp={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},Mo={$type:"EmModelEntity",name:"name"};function uS(e){return e==="rmo"||e==="readmodel"||e==="ui"||e==="cmd"||e==="command"||e==="evt"||e==="event"||e==="pcr"||e==="processor"}o(uS,"isEmModelEntityType");i(uS,"isEmModelEntityType");var Di={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},Nt={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};function cS(e){return Ae.isInstance(e,Nt.$type)}o(cS,"isEmResetFrame");i(cS,"isEmResetFrame");var Kt={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},Do={$type:"Entry",axis:"axis",value:"value"},_t={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},qp={$type:"Evolution",stages:"stages"},Li={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},Lo={$type:"Evolve",component:"component",target:"target"},Ar={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function fS(e){return Ae.isInstance(e,Ar.$type)}o(fS,"isGitGraph");i(fS,"isGitGraph");var $a={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},za={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function pS(e){return Ae.isInstance(e,za.$type)}o(pS,"isInfo");i(pS,"isInfo");var Ra={$type:"Item",classSelector:"classSelector",name:"name"},xo={$type:"Junction",id:"id",in:"in"},Aa={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},xi={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},cr={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},yn={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function dS(e){return Ae.isInstance(e,yn.$type)}o(dS,"isMerge");i(dS,"isMerge");var Gi={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},Go={$type:"Option",name:"name",value:"value"},gn={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function mS(e){return Ae.isInstance(e,gn.$type)}o(mS,"isPacket");i(mS,"isPacket");var vn={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function hS(e){return Ae.isInstance(e,vn.$type)}o(hS,"isPacketBlock");i(hS,"isPacketBlock");var Wp={$type:"PegAny",dot:"dot"},Vp={$type:"PegGroup",element:"element"},Hp={$type:"PegIdentifier",name:"name"},Yp={$type:"PegLiteral",value:"value"},Xp={$type:"PegOrderedChoice",alternatives:"alternatives"},Fo={$type:"PegPrefix",operator:"operator",suffix:"suffix"},Ea={$type:"PegPrimary"},jo={$type:"PegRule",definition:"definition",name:"name"},Jp={$type:"PegSequence",elements:"elements"},zo={$type:"PegSuffix",operator:"operator",primary:"primary"},Er={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function yS(e){return Ae.isInstance(e,Er.$type)}o(yS,"isPie");i(yS,"isPie");var gs={$type:"PieSection",label:"label",value:"value"};function gS(e){return Ae.isInstance(e,gs.$type)}o(gS,"isPieSection");i(gS,"isPieSection");var Uo={$type:"Pipeline",components:"components",parent:"parent"},Fi={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},fr={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},Tn={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function vS(e){return Ae.isInstance(e,Tn.$type)}o(vS,"isRailroad");i(vS,"isRailroad");var $n={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function TS(e){return Ae.isInstance(e,$n.$type)}o(TS,"isRailroadAbnf");i(TS,"isRailroadAbnf");var Zp={$type:"RailroadChoiceExpr",alternatives:"alternatives"},Rn={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function $S(e){return Ae.isInstance(e,Rn.$type)}o($S,"isRailroadEbnf");i($S,"isRailroadEbnf");var St={$type:"RailroadExpression"},Qp={$type:"RailroadNonTerminalExpr",name:"name"},ed={$type:"RailroadOneOrMoreExpr",element:"element"},td={$type:"RailroadOptionalExpr",element:"element"},An={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};function RS(e){return Ae.isInstance(e,An.$type)}o(RS,"isRailroadPeg");i(RS,"isRailroadPeg");var Ko={$type:"RailroadRule",definition:"definition",name:"name"},rd={$type:"RailroadSequenceExpr",elements:"elements"},nd={$type:"RailroadSpecialExpr",text:"text"},ad={$type:"RailroadTerminalExpr",value:"value"},id={$type:"RailroadZeroOrMoreExpr",element:"element"},Bo={$type:"Section",classSelector:"classSelector",name:"name"},Zr={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},qo={$type:"Size",height:"height",width:"width"},Qr={$type:"Statement"},Ua={$type:"Transition",from:"from",label:"label",to:"to"};function AS(e){return Ae.isInstance(e,Ua.$type)}o(AS,"isTransition");i(AS,"isTransition");var En={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function ES(e){return Ae.isInstance(e,En.$type)}o(ES,"isTreemap");i(ES,"isTreemap");var Wo={$type:"TreemapRow",indent:"indent",item:"item"},en={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},Ca={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},Ie={$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 CS(e){return Ae.isInstance(e,Ie.$type)}o(CS,"isWardley");i(CS,"isWardley");var C$=class extends Nd{static{o(this,"MermaidAstReflection")}constructor(){super(...arguments),this.types={AbnfAlternation:{name:Ep.$type,properties:{alternatives:{name:Ep.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:Cp.$type,properties:{elements:{name:Cp.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:So.$type,properties:{primary:{name:So.primary},repeat:{name:So.repeat,optional:!0}},superTypes:[]},AbnfGroup:{name:bp.$type,properties:{element:{name:bp.element}},superTypes:[Yr.$type]},AbnfNumVal:{name:_p.$type,properties:{value:{name:_p.value}},superTypes:[Yr.$type]},AbnfOptionalGroup:{name:Sp.$type,properties:{element:{name:Sp.element}},superTypes:[Yr.$type]},AbnfPrimary:{name:Yr.$type,properties:{},superTypes:[]},AbnfRule:{name:wo.$type,properties:{definition:{name:wo.definition},name:{name:wo.name}},superTypes:[]},AbnfRuleName:{name:wp.$type,properties:{name:{name:wp.name}},superTypes:[Yr.$type]},AbnfStringLiteral:{name:Ip.$type,properties:{value:{name:Ip.value}},superTypes:[Yr.$type]},Accelerator:{name:wi.$type,properties:{name:{name:wi.name},x:{name:wi.x},y:{name:wi.y}},superTypes:[]},Alignment:{name:Io.$type,properties:{direction:{name:Io.direction},members:{name:Io.members,defaultValue:[]}},superTypes:[]},Anchor:{name:Ii.$type,properties:{evolution:{name:Ii.evolution},name:{name:Ii.name},visibility:{name:Ii.visibility}},superTypes:[]},Annotation:{name:ga.$type,properties:{number:{name:ga.number},text:{name:ga.text},x:{name:ga.x},y:{name:ga.y}},superTypes:[]},Annotations:{name:Po.$type,properties:{x:{name:Po.x},y:{name:Po.y}},superTypes:[]},Architecture:{name:mt.$type,properties:{accDescr:{name:mt.accDescr,optional:!0},accTitle:{name:mt.accTitle,optional:!0},alignments:{name:mt.alignments,defaultValue:[],optional:!0},edges:{name:mt.edges,defaultValue:[],optional:!0},groups:{name:mt.groups,defaultValue:[],optional:!0},junctions:{name:mt.junctions,defaultValue:[],optional:!0},services:{name:mt.services,defaultValue:[],optional:!0},title:{name:mt.title,optional:!0}},superTypes:[]},Axis:{name:Pi.$type,properties:{label:{name:Pi.label,optional:!0},name:{name:Pi.name}},superTypes:[]},Branch:{name:hs.$type,properties:{name:{name:hs.name},order:{name:hs.order}},superTypes:[Qr.$type]},Checkout:{name:Pp.$type,properties:{branch:{name:Pp.branch}},superTypes:[Qr.$type]},CherryPicking:{name:Ni.$type,properties:{id:{name:Ni.id},parent:{name:Ni.parent},tags:{name:Ni.tags,defaultValue:[]}},superTypes:[Qr.$type]},ClassDefStatement:{name:No.$type,properties:{className:{name:No.className},styleText:{name:No.styleText}},superTypes:[]},Commit:{name:hn.$type,properties:{id:{name:hn.id},message:{name:hn.message},tags:{name:hn.tags,defaultValue:[]},type:{name:hn.type}},superTypes:[Qr.$type]},Common:{name:ki.$type,properties:{accDescr:{name:ki.accDescr,optional:!0},accTitle:{name:ki.accTitle,optional:!0},title:{name:ki.title,optional:!0}},superTypes:[]},Component:{name:or.$type,properties:{decorator:{name:or.decorator,optional:!0},evolution:{name:or.evolution},inertia:{name:or.inertia,defaultValue:!1},label:{name:or.label,optional:!0},name:{name:or.name},visibility:{name:or.visibility}},superTypes:[]},Curve:{name:Oi.$type,properties:{entries:{name:Oi.entries,defaultValue:[]},label:{name:Oi.label,optional:!0},name:{name:Oi.name}},superTypes:[]},Cynefin:{name:Rr.$type,properties:{accDescr:{name:Rr.accDescr,optional:!0},accTitle:{name:Rr.accTitle,optional:!0},domains:{name:Rr.domains,defaultValue:[],optional:!0},title:{name:Rr.title,optional:!0},transitions:{name:Rr.transitions,defaultValue:[],optional:!0}},superTypes:[]},Deaccelerator:{name:Mi.$type,properties:{name:{name:Mi.name},x:{name:Mi.x},y:{name:Mi.y}},superTypes:[]},Decorator:{name:Np.$type,properties:{strategy:{name:Np.strategy}},superTypes:[]},Direction:{name:Xr.$type,properties:{accDescr:{name:Xr.accDescr},accTitle:{name:Xr.accTitle},dir:{name:Xr.dir},statements:{name:Xr.statements,defaultValue:[]},title:{name:Xr.title}},superTypes:[Ar.$type]},DomainBlock:{name:ys.$type,properties:{domain:{name:ys.domain},items:{name:ys.items,defaultValue:[],optional:!0}},superTypes:[]},DomainItem:{name:nc.$type,properties:{label:{name:nc.label}},superTypes:[]},EbnfChoice:{name:kp.$type,properties:{alternatives:{name:kp.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:Op.$type,properties:{except:{name:Op.except}},superTypes:[va.$type]},EbnfGroup:{name:Mp.$type,properties:{element:{name:Mp.element}},superTypes:[lr.$type]},EbnfNonTerminal:{name:Dp.$type,properties:{name:{name:Dp.name}},superTypes:[lr.$type]},EbnfOneOrMorePostfix:{name:Lp.$type,properties:{operator:{name:Lp.operator}},superTypes:[va.$type]},EbnfOptional:{name:xp.$type,properties:{element:{name:xp.element}},superTypes:[lr.$type]},EbnfOptionalPostfix:{name:Gp.$type,properties:{operator:{name:Gp.operator}},superTypes:[va.$type]},EbnfPostfix:{name:va.$type,properties:{},superTypes:[]},EbnfPrimary:{name:lr.$type,properties:{},superTypes:[]},EbnfRepetition:{name:Fp.$type,properties:{element:{name:Fp.element}},superTypes:[lr.$type]},EbnfRule:{name:ko.$type,properties:{definition:{name:ko.definition},name:{name:ko.name}},superTypes:[]},EbnfSequence:{name:jp.$type,properties:{elements:{name:jp.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:zp.$type,properties:{text:{name:zp.text}},superTypes:[lr.$type]},EbnfTerm:{name:Oo.$type,properties:{base:{name:Oo.base},postfixes:{name:Oo.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:Up.$type,properties:{value:{name:Up.value}},superTypes:[lr.$type]},EbnfZeroOrMorePostfix:{name:Kp.$type,properties:{operator:{name:Kp.operator}},superTypes:[va.$type]},Edge:{name:ft.$type,properties:{lhsDir:{name:ft.lhsDir},lhsGroup:{name:ft.lhsGroup,defaultValue:!1,optional:!0},lhsId:{name:ft.lhsId},lhsInto:{name:ft.lhsInto,defaultValue:!1,optional:!0},rhsDir:{name:ft.rhsDir},rhsGroup:{name:ft.rhsGroup,defaultValue:!1,optional:!0},rhsId:{name:ft.rhsId},rhsInto:{name:ft.rhsInto,defaultValue:!1,optional:!0},title:{name:ft.title,optional:!0}},superTypes:[]},EmDataEntity:{name:Jr.$type,properties:{dataBlockValue:{name:Jr.dataBlockValue},dataType:{name:Jr.dataType,optional:!0},name:{name:Jr.name}},superTypes:[]},EmFrame:{name:ur.$type,properties:{},superTypes:[]},EmGwt:{name:Ta.$type,properties:{givenStatements:{name:Ta.givenStatements,defaultValue:[]},sourceFrame:{name:Ta.sourceFrame,referenceType:ur.$type},thenStatements:{name:Ta.thenStatements,defaultValue:[]},whenStatements:{name:Ta.whenStatements,defaultValue:[],optional:!0}},superTypes:[]},EmGwtStatement:{name:Bp.$type,properties:{entityIdentifier:{name:Bp.entityIdentifier,referenceType:Mo.$type}},superTypes:[]},EmModelEntity:{name:Mo.$type,properties:{name:{name:Mo.name}},superTypes:[]},EmNoteEntity:{name:Di.$type,properties:{dataBlockValue:{name:Di.dataBlockValue},dataType:{name:Di.dataType,optional:!0},sourceFrame:{name:Di.sourceFrame,referenceType:ur.$type}},superTypes:[]},EmResetFrame:{name:Nt.$type,properties:{dataInlineValue:{name:Nt.dataInlineValue,optional:!0},dataReference:{name:Nt.dataReference,referenceType:Jr.$type,optional:!0},dataType:{name:Nt.dataType,optional:!0},entityIdentifier:{name:Nt.entityIdentifier},modelEntityType:{name:Nt.modelEntityType},name:{name:Nt.name},sourceFrames:{name:Nt.sourceFrames,defaultValue:[],referenceType:ur.$type,optional:!0}},superTypes:[ur.$type]},EmTimeFrame:{name:Kt.$type,properties:{dataInlineValue:{name:Kt.dataInlineValue,optional:!0},dataReference:{name:Kt.dataReference,referenceType:Jr.$type,optional:!0},dataType:{name:Kt.dataType,optional:!0},entityIdentifier:{name:Kt.entityIdentifier},modelEntityType:{name:Kt.modelEntityType},name:{name:Kt.name},sourceFrames:{name:Kt.sourceFrames,defaultValue:[],referenceType:ur.$type,optional:!0}},superTypes:[ur.$type]},Entry:{name:Do.$type,properties:{axis:{name:Do.axis,referenceType:Pi.$type,optional:!0},value:{name:Do.value}},superTypes:[]},EventModel:{name:_t.$type,properties:{accDescr:{name:_t.accDescr,optional:!0},accTitle:{name:_t.accTitle,optional:!0},dataEntities:{name:_t.dataEntities,defaultValue:[],optional:!0},frames:{name:_t.frames,defaultValue:[],optional:!0},gwtEntities:{name:_t.gwtEntities,defaultValue:[],optional:!0},modelEntities:{name:_t.modelEntities,defaultValue:[],optional:!0},noteEntities:{name:_t.noteEntities,defaultValue:[],optional:!0},title:{name:_t.title,optional:!0}},superTypes:[]},Evolution:{name:qp.$type,properties:{stages:{name:qp.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:Li.$type,properties:{boundary:{name:Li.boundary,optional:!0},name:{name:Li.name},secondName:{name:Li.secondName,optional:!0}},superTypes:[]},Evolve:{name:Lo.$type,properties:{component:{name:Lo.component},target:{name:Lo.target}},superTypes:[]},GitGraph:{name:Ar.$type,properties:{accDescr:{name:Ar.accDescr},accTitle:{name:Ar.accTitle},statements:{name:Ar.statements,defaultValue:[]},title:{name:Ar.title}},superTypes:[]},Group:{name:$a.$type,properties:{icon:{name:$a.icon,optional:!0},id:{name:$a.id},in:{name:$a.in},title:{name:$a.title,optional:!0}},superTypes:[]},Info:{name:za.$type,properties:{accDescr:{name:za.accDescr,optional:!0},accTitle:{name:za.accTitle,optional:!0},title:{name:za.title,optional:!0}},superTypes:[]},Item:{name:Ra.$type,properties:{classSelector:{name:Ra.classSelector,optional:!0},name:{name:Ra.name}},superTypes:[]},Junction:{name:xo.$type,properties:{id:{name:xo.id},in:{name:xo.in}},superTypes:[]},Label:{name:Aa.$type,properties:{negX:{name:Aa.negX,defaultValue:!1,optional:!0},negY:{name:Aa.negY,defaultValue:!1,optional:!0},offsetX:{name:Aa.offsetX},offsetY:{name:Aa.offsetY}},superTypes:[]},Leaf:{name:xi.$type,properties:{classSelector:{name:xi.classSelector,optional:!0},name:{name:xi.name},value:{name:xi.value}},superTypes:[Ra.$type]},Link:{name:cr.$type,properties:{arrow:{name:cr.arrow,optional:!0},from:{name:cr.from},fromPort:{name:cr.fromPort,optional:!0},linkLabel:{name:cr.linkLabel,optional:!0},to:{name:cr.to},toPort:{name:cr.toPort,optional:!0}},superTypes:[]},Merge:{name:yn.$type,properties:{branch:{name:yn.branch},id:{name:yn.id},tags:{name:yn.tags,defaultValue:[]},type:{name:yn.type}},superTypes:[Qr.$type]},Note:{name:Gi.$type,properties:{evolution:{name:Gi.evolution},text:{name:Gi.text},visibility:{name:Gi.visibility}},superTypes:[]},Option:{name:Go.$type,properties:{name:{name:Go.name},value:{name:Go.value,defaultValue:!1}},superTypes:[]},Packet:{name:gn.$type,properties:{accDescr:{name:gn.accDescr,optional:!0},accTitle:{name:gn.accTitle,optional:!0},blocks:{name:gn.blocks,defaultValue:[],optional:!0},title:{name:gn.title,optional:!0}},superTypes:[]},PacketBlock:{name:vn.$type,properties:{bits:{name:vn.bits},end:{name:vn.end,optional:!0},label:{name:vn.label},start:{name:vn.start}},superTypes:[]},PegAny:{name:Wp.$type,properties:{dot:{name:Wp.dot}},superTypes:[Ea.$type]},PegGroup:{name:Vp.$type,properties:{element:{name:Vp.element}},superTypes:[Ea.$type]},PegIdentifier:{name:Hp.$type,properties:{name:{name:Hp.name}},superTypes:[Ea.$type]},PegLiteral:{name:Yp.$type,properties:{value:{name:Yp.value}},superTypes:[Ea.$type]},PegOrderedChoice:{name:Xp.$type,properties:{alternatives:{name:Xp.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:Fo.$type,properties:{operator:{name:Fo.operator,optional:!0},suffix:{name:Fo.suffix}},superTypes:[]},PegPrimary:{name:Ea.$type,properties:{},superTypes:[]},PegRule:{name:jo.$type,properties:{definition:{name:jo.definition},name:{name:jo.name}},superTypes:[]},PegSequence:{name:Jp.$type,properties:{elements:{name:Jp.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:zo.$type,properties:{operator:{name:zo.operator,optional:!0},primary:{name:zo.primary}},superTypes:[]},Pie:{name:Er.$type,properties:{accDescr:{name:Er.accDescr,optional:!0},accTitle:{name:Er.accTitle,optional:!0},sections:{name:Er.sections,defaultValue:[],optional:!0},showData:{name:Er.showData,defaultValue:!1,optional:!0},title:{name:Er.title,optional:!0}},superTypes:[]},PieSection:{name:gs.$type,properties:{label:{name:gs.label},value:{name:gs.value}},superTypes:[]},Pipeline:{name:Uo.$type,properties:{components:{name:Uo.components,defaultValue:[]},parent:{name:Uo.parent}},superTypes:[]},PipelineComponent:{name:Fi.$type,properties:{evolution:{name:Fi.evolution},label:{name:Fi.label,optional:!0},name:{name:Fi.name}},superTypes:[]},Radar:{name:fr.$type,properties:{accDescr:{name:fr.accDescr,optional:!0},accTitle:{name:fr.accTitle,optional:!0},axes:{name:fr.axes,defaultValue:[],optional:!0},curves:{name:fr.curves,defaultValue:[],optional:!0},options:{name:fr.options,defaultValue:[],optional:!0},title:{name:fr.title,optional:!0}},superTypes:[]},Railroad:{name:Tn.$type,properties:{accDescr:{name:Tn.accDescr,optional:!0},accTitle:{name:Tn.accTitle,optional:!0},rules:{name:Tn.rules,defaultValue:[]},title:{name:Tn.title,optional:!0}},superTypes:[]},RailroadAbnf:{name:$n.$type,properties:{accDescr:{name:$n.accDescr,optional:!0},accTitle:{name:$n.accTitle,optional:!0},rules:{name:$n.rules,defaultValue:[]},title:{name:$n.title,optional:!0}},superTypes:[]},RailroadChoiceExpr:{name:Zp.$type,properties:{alternatives:{name:Zp.alternatives,defaultValue:[]}},superTypes:[St.$type]},RailroadEbnf:{name:Rn.$type,properties:{accDescr:{name:Rn.accDescr,optional:!0},accTitle:{name:Rn.accTitle,optional:!0},rules:{name:Rn.rules,defaultValue:[]},title:{name:Rn.title,optional:!0}},superTypes:[]},RailroadExpression:{name:St.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:Qp.$type,properties:{name:{name:Qp.name}},superTypes:[St.$type]},RailroadOneOrMoreExpr:{name:ed.$type,properties:{element:{name:ed.element}},superTypes:[St.$type]},RailroadOptionalExpr:{name:td.$type,properties:{element:{name:td.element}},superTypes:[St.$type]},RailroadPeg:{name:An.$type,properties:{accDescr:{name:An.accDescr,optional:!0},accTitle:{name:An.accTitle,optional:!0},rules:{name:An.rules,defaultValue:[]},title:{name:An.title,optional:!0}},superTypes:[]},RailroadRule:{name:Ko.$type,properties:{definition:{name:Ko.definition},name:{name:Ko.name}},superTypes:[]},RailroadSequenceExpr:{name:rd.$type,properties:{elements:{name:rd.elements,defaultValue:[]}},superTypes:[St.$type]},RailroadSpecialExpr:{name:nd.$type,properties:{text:{name:nd.text}},superTypes:[St.$type]},RailroadTerminalExpr:{name:ad.$type,properties:{value:{name:ad.value}},superTypes:[St.$type]},RailroadZeroOrMoreExpr:{name:id.$type,properties:{element:{name:id.element}},superTypes:[St.$type]},Section:{name:Bo.$type,properties:{classSelector:{name:Bo.classSelector,optional:!0},name:{name:Bo.name}},superTypes:[Ra.$type]},Service:{name:Zr.$type,properties:{icon:{name:Zr.icon,optional:!0},iconText:{name:Zr.iconText,optional:!0},id:{name:Zr.id},in:{name:Zr.in},title:{name:Zr.title,optional:!0}},superTypes:[]},Size:{name:qo.$type,properties:{height:{name:qo.height},width:{name:qo.width}},superTypes:[]},Statement:{name:Qr.$type,properties:{},superTypes:[]},Transition:{name:Ua.$type,properties:{from:{name:Ua.from},label:{name:Ua.label},to:{name:Ua.to}},superTypes:[]},TreeNode:{name:en.$type,properties:{classAnnotation:{name:en.classAnnotation,optional:!0},descAnnotation:{name:en.descAnnotation,optional:!0},iconAnnotation:{name:en.iconAnnotation,optional:!0},indent:{name:en.indent,optional:!0},name:{name:en.name}},superTypes:[]},TreeView:{name:Ca.$type,properties:{accDescr:{name:Ca.accDescr,optional:!0},accTitle:{name:Ca.accTitle,optional:!0},nodes:{name:Ca.nodes,defaultValue:[]},title:{name:Ca.title,optional:!0}},superTypes:[]},Treemap:{name:En.$type,properties:{accDescr:{name:En.accDescr,optional:!0},accTitle:{name:En.accTitle,optional:!0},title:{name:En.title,optional:!0},TreemapRows:{name:En.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Wo.$type,properties:{indent:{name:Wo.indent,optional:!0},item:{name:Wo.item}},superTypes:[]},Wardley:{name:Ie.$type,properties:{accDescr:{name:Ie.accDescr,optional:!0},accelerators:{name:Ie.accelerators,defaultValue:[],optional:!0},accTitle:{name:Ie.accTitle,optional:!0},anchors:{name:Ie.anchors,defaultValue:[],optional:!0},annotation:{name:Ie.annotation,defaultValue:[],optional:!0},annotations:{name:Ie.annotations,defaultValue:[],optional:!0},components:{name:Ie.components,defaultValue:[],optional:!0},deaccelerators:{name:Ie.deaccelerators,defaultValue:[],optional:!0},evolution:{name:Ie.evolution,optional:!0},evolves:{name:Ie.evolves,defaultValue:[],optional:!0},links:{name:Ie.links,defaultValue:[],optional:!0},notes:{name:Ie.notes,defaultValue:[],optional:!0},pipelines:{name:Ie.pipelines,defaultValue:[],optional:!0},size:{name:Ie.size,optional:!0},title:{name:Ie.title,optional:!0}},superTypes:[]}}}static{i(this,"MermaidAstReflection")}},Ae=new C$,sd,bS=i(()=>sd??(sd=Oe(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'|[^\\\\[\\\\]\\\\r\\\\n]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),od,_S=i(()=>od??(od=Oe(`{"$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"),ld,SS=i(()=>ld??(ld=Oe('{"$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"),ud,wS=i(()=>ud??(ud=Oe(`{"$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"),cd,IS=i(()=>cd??(cd=Oe(`{"$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"),fd,PS=i(()=>fd??(fd=Oe(`{"$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"),pd,NS=i(()=>pd??(pd=Oe(`{"$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"),dd,kS=i(()=>dd??(dd=Oe(`{"$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"),md,OS=i(()=>md??(md=Oe('{"$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"),hd,MS=i(()=>hd??(hd=Oe(`{"$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"),yd,DS=i(()=>yd??(yd=Oe(`{"$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"),gd,LS=i(()=>gd??(gd=Oe(`{"$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"),vd,xS=i(()=>vd??(vd=Oe(`{"$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"),Td,GS=i(()=>Td??(Td=Oe(`{"$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"),$d,FS=i(()=>$d??($d=Oe(`{"$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"),jS={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},zS={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},US={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},KS={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},BS={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},qS={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},WS={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},VS={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},HS={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},YS={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},XS={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},JS={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ZS={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},QS={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ew={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},lw={AstReflection:i(()=>new C$,"AstReflection")},uw={Grammar:i(()=>bS(),"Grammar"),LanguageMetaData:i(()=>jS,"LanguageMetaData"),parser:{}},cw={Grammar:i(()=>_S(),"Grammar"),LanguageMetaData:i(()=>zS,"LanguageMetaData"),parser:{}},fw={Grammar:i(()=>SS(),"Grammar"),LanguageMetaData:i(()=>US,"LanguageMetaData"),parser:{}},pw={Grammar:i(()=>wS(),"Grammar"),LanguageMetaData:i(()=>KS,"LanguageMetaData"),parser:{}},dw={Grammar:i(()=>IS(),"Grammar"),LanguageMetaData:i(()=>BS,"LanguageMetaData"),parser:{}},mw={Grammar:i(()=>PS(),"Grammar"),LanguageMetaData:i(()=>qS,"LanguageMetaData"),parser:{}},hw={Grammar:i(()=>NS(),"Grammar"),LanguageMetaData:i(()=>WS,"LanguageMetaData"),parser:{}},yw={Grammar:i(()=>kS(),"Grammar"),LanguageMetaData:i(()=>VS,"LanguageMetaData"),parser:{}},gw={Grammar:i(()=>OS(),"Grammar"),LanguageMetaData:i(()=>HS,"LanguageMetaData"),parser:{}},vw={Grammar:i(()=>MS(),"Grammar"),LanguageMetaData:i(()=>YS,"LanguageMetaData"),parser:{}},Tw={Grammar:i(()=>DS(),"Grammar"),LanguageMetaData:i(()=>XS,"LanguageMetaData"),parser:{}},$w={Grammar:i(()=>LS(),"Grammar"),LanguageMetaData:i(()=>JS,"LanguageMetaData"),parser:{}},Rw={Grammar:i(()=>xS(),"Grammar"),LanguageMetaData:i(()=>ZS,"LanguageMetaData"),parser:{}},Aw={Grammar:i(()=>GS(),"Grammar"),LanguageMetaData:i(()=>QS,"LanguageMetaData"),parser:{}},Ew={Grammar:i(()=>FS(),"Grammar"),LanguageMetaData:i(()=>ew,"LanguageMetaData"),parser:{}},tw=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,rw=/accTitle[\t ]*:([^\n\r]*)/,nw=/title([\t ][^\n\r]*|)/,aw={ACC_DESCR:tw,ACC_TITLE:rw,TITLE:nw},iw=class extends ZT{static{o(this,"AbstractMermaidValueConverter")}static{i(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return n===void 0&&(n=this.runCustomConverter(e,t,r)),n===void 0?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=aw[e.name];if(n===void 0)return;let a=n.exec(t);if(a!==null){if(a[1]!==void 0)return a[1].trim().replace(/[\t ]{2,}/gm," ");if(a[2]!==void 0)return a[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
`)}}},Cw=class extends iw{static{o(this,"CommonValueConverter")}static{i(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},sw=class extends JT{static{o(this,"AbstractMermaidTokenBuilder")}static{i(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(a=>{this.keywords.has(a.name)&&a.PATTERN!==void 0&&(a.PATTERN=new RegExp(a.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},bw=class extends sw{static{o(this,"CommonTokenBuilder")}static{i(this,"CommonTokenBuilder")}};export{i as a,R$ as b,A$ as c,ju as d,eS as e,cS as f,lw as g,uw as h,cw as i,fw as j,pw as k,dw as l,mw as m,hw as n,yw as o,gw as p,vw as q,Tw as r,$w as s,Rw as t,Aw as u,Ew as v,iw as w,Cw as x,sw as y};